OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

plcs-dex message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: SV: SV: FW: [plcs-dex] Unique constraints -> identification and versioning


Hi Peter,

There are two related issues: 1) How do we use External_class to identify a 
particular class? and 2) How do we use External_class_library to identify a 
context for all instances of External_class?

I think the problem with the approach currently specified in DEXLib is that it 
does not define which ontology is the "context ontology" for an exchange. The 
approach I'm suggesting addresses that problem by using 
External_class_library.

The statement "When the RDL in OASIS has become stable and agreed upon, there 
will be one OWL file that all other RDLs must specialize from (called in the 
examples urn:plcs:rdl:std)." is what makes me think folks have slightly 
misunderstood what's required. It's not the PLCS std ontology that's the 
context for an exchange, it's the organization-specific ontoloies that extend 
the PLCS std one. That organization may include multiple other ontologies:

OASIS standardizes urn:plcs:rdl:std:<class>

NIST standardizes http://www.nist.gov/units/<class>

DOD standardizes http://dod.usarmy.mil/OperationalViews#<class>

and

LockheedMartin imports the ontologies containing the classes above and adds 
http://LockheedMartin.com/ProgrammeX/<class>

So in this scenario it's the http://LockheedMartin.com/ProgrammeX ontology 
that provides the complete context for the exchange. It's almost never the 
PLCS std ontology that's the context, that's now how OWL import works.

So, my point is that what's written in DEXLib should be based on planning on 
their being numerous ontologies used together during exchange and that 
because of how OWL works, it's necessary to define one as the context 
ontology (just like you pick one schema in EXPRESS upon which the long form 
generation is based). The contedt ontology is the most specific of the 
ontologies, not the PLCS std one. Seems to me that External_class_library 
satisfies the requirement if we simply use the External_class.id with a full 
URI for the identifier of a class.

Cheers,
David

On Tuesday 19 December 2006 18:48, Peter Bergström wrote:
> OK. But if I used the same urn for both examples, then you mean it would
> work? Because urn:plcs:rdl:mycompany:peter is based on urn:plcs:rdl:std.
>
> Or is the problem that we don't have the class name and the urn in the same
> string?
>
> Peter
>
> -----Original Message-----
> From: David Price [mailto:david.price@eurostep.com]
> Sent: den 19 december 2006 19:34
> To: Peter Bergström
> Cc: plcs-dex@lists.oasis-open.org; mats.nilsson@fmv.se
> Subject: Re: SV: SV: FW: [plcs-dex] Unique constraints -> identification
> and versioning
>
> As I've said in my emails, I don't think this approach works. It's based on
> a misunderstanding of how OWL and the ontologies making up the reference
> data need to work together.
>
> Cheers,
> David
>
> On Tuesday 19 December 2006 18:23, Peter Bergström wrote:
> > For some reason, I'm unable to post to the list...
> >
> >
> >
> > Dave, consider the following:
> >
> >
> >
> > I have a part. The ID assignment (@2 below) is classified as 'Peters_id'
> > and found in 'urn:plcs:rdl:mycompany:peter'. That RDL has in the owl file
> > a reference to 'urn:plcs:rdl:std', and 'peters_id' is defined as a
> > subclass of 'Part_number', which is defined in 'urn:plcs:rdl:std'.
> >
> >
> >
> > I also have a class assigned (@21) to the Part, 'Engine', located in
> > 'urn:plcs:rdl:std'.
> >
> >
> >
> > Do you have any problem if I do the following:
> >
> >
> >
> >
> >
> >
> >
> > I have here references to two RDLs (of which one specializes the other).
> > Remember, all RDLs that are used together with PLCS are required to use
> > the OWL-representation of AP239 entities. When the RDL in OASIS has
> > become stable and agreed upon, there will be one OWL file that all other
> > RDLs must specialize from (called in the examples urn:plcs:rdl:std).
> >
> >
> >
> > This is how all examples in DEXlib are built up to illustrate how to use
> > reference data, in all templates. If you are not OK with this, then we
> > need to sort out quickly what the problem is and how to solve it...
> >
> >
> >
> > Peter
> >
> >
> >
> >
> >
> >
> >
> > -----Original Message-----
> > From: David Price [mailto:david.price@eurostep.com]
> > Sent: den 19 december 2006 17:30
> > To: plcs-dex@lists.oasis-open.org
> > Subject: Re: SV: SV: FW: [plcs-dex] Unique constraints -> identification
> > and versioning
> >
> >
> >
> > Hi Mats, See below for two replies. Cheers, David
> >
> > On Tuesday 19 December 2006 09:38, mats.nilsson@fmv.se wrote:
> > > Hi David,
> > >
> > >
> > >
> > > This is one of your examples of a "class.id URI";
> > >
> > > >> urn:iso:std:iso:ts:10303:-1017:ed-1:tech-taxonomy:Part
> > >
> > > If I understand you correctly, you suggests to include both the URI for
> > > the
> > >
> > > RDL ("urn:iso:std:iso:ts:10303:-1017:ed-1:tech-taxonomy") as well as
> > > the
> > >
> > > class identifier ("Part") in the 'external_class.id' (the 'id'
> > > attribute in
> > >
> > > the 'external_class' entity).
> > >
> > >
> > >
> > > I thought (see the last of my three slides) 'external_class_library.id'
> > > was
> > >
> > > going to be used for the URI of the RDL, and that the identifier within
> > > the
> > >
> > > RDL (i.e. 'external_class.id') only should contain the actual
> > >
> > > "classification" or "term" identifier, in your example "Part".
> >
> > I don't think that works because of the other issues I mentioned (i.e.
> > there
> >
> > are multiple ontologies involved and one ontology has to be identified as
> > the
> >
> > context ontology). The context ontology is the most organization-specific
> >
> > ontology that uses the more general and standard ontologies.
> >
> > External_class_library is really the only entity type in PLCS that makes
> >
> > sense for that requirement and so I think there should be one instance of
> > it
> >
> > that all the External_class entity instances point to (actually I don't
> > think
> >
> > it's a big problem if there are multiple instances of
> > External_class_library
> >
> > as long as they all refer to the same URI. So, if you've followed and
> > agreed
> >
> > with the logic of requiring a context ontology then I think it's clear
> > that
> >
> > the External_class.id needs to be the full URI.
> >
> >
> >
> > For what it's worth, I think people have been assuming that
> > "urn:oasis:plcs"
> >
> > was "the reference data library", when in fact in real-world usage that
> > is
> >
> > unlikely to be the case. The RDL that is the context for an exchange is
> >
> > actually the ontology developed by the using organization with its
> > extensions
> >
> > to the PLCS standard classes which is imported in read-only mode. Because
> > of
> >
> > the flexibility enabled by the use of the OWL language, it's important to
> >
> > have that context ontology named in the exchange file. If you look at
> > some of
> >
> > the OWL APIs you'll see that they often force you to supply an ontology
> > when
> >
> > you'd think only a class is required as input. That's because the same
> > class
> >
> > can have different subclasses *and* superclasses (not to mention
> > properties)
> >
> > depending on how it is extended in using ontologies.
> >
> > > Please help me understand if I've got things wrong! If someone else has
> > > an
> > >
> > > opinion, please help David help me...
> > >
> > >
> > >
> > >
> > >
> > > Now over to your question David. In my not so organized world (I call
> > > it
> > >
> > > FMV...) people use more than one term for the same concept
> > > (concept=class).
> > >
> > > OWL has the 'rdfs:label' element, which makes it possible to assign
> > > more
> > >
> > > than one term for each class. This is useful for me because the guys
> > > who
> > >
> > > drive helocopters and those who drive boats often have different
> > >
> > > terminology, and I can use this functionality to make them understand
> > > each
> > >
> > > other and the data they send. There is also this need to be
> > > "interoperable"
> > >
> > > within e.g. the EU Battle Groups or NATO joint operations, and then we
> > >
> > > swedes meet people that uses the word "lubricate" for what we call
> > >
> > > "smörja"...
> > >
> > >
> > >
> > > To accompish this I'd like to use a "meaningless" identifier for the
> > >
> > > 'external_class.id' field, e.g. "rd000453" (or with versioning
> > >
> > > "rd000453v1"), and then use the 'external_class.name' field for the
> > >
> > > readable classification (i.e. one of the available 'rdfs:label's in the
> > >
> > > RDL/OWL-file).
> > >
> > >
> > >
> > > This was what I meant by the question;
> > >
> > > >> David: How do you suggest the label used for
> > > >>
> > > >> classification should be identified in case there are multiple
> > > >> labels
> > > >>
> > > >> for the same class/RD?
> > >
> > > If I have both "lubricate" and "smörja" in the same class (that is a
> > >
> > > subclass of 'activity'/'task') with some unique id, I need to specify
> > > which
> > >
> > > one is used.
> > >
> > >
> > >
> > > Clearer? Or don't you see this scenario with synonyms and multiple
> > >
> > > languages (used for the same class/concept)?
> >
> > I understand the question now. From what I've seen on the Semantic Web,
> > the
> >
> > best practice is to use a (somewhat) human-interpretable name for the
> >
> > identifiers of classes in an ontology (within the limitations of what you
> > can
> >
> > use in a URL or URI).  I agree that the use of rdfs:label is the proper
> > way
> >
> > to specify the "name" of the class for use in browsers and GUI
> > applications.
> >
> > However, I don't see any advantage in not following the Semantic Web
> >
> > practices. I've never really understood why anyone would want classes
> > with
> >
> > ids like rd0049404 when they can have SerialNumber. The only rationale
> > I've
> >
> > heard that made any sense to me was related to handling the uniqueness of
> > ids
> >
> > but since we're engineering the reference data I don't think the cost in
> >
> > human understandability is outweighed by the small benefit of slightly
> > easier
> >
> > uniqueness. That said, I also think that the PLCS RD should be broken up
> > into
> >
> > sub-ontologies on a domain-by-domain basis for manageability, subsetting
> > and
> >
> > to help with the overloading of terms.
> >
> >
> >
> > All that said, I'm not sure that the External_class.name is really useful
> > for
> >
> > transfering rdfs:label values. I'm not sure of the business need for that
> > for
> >
> > a start. If the External_class.id is the full URI then that's sufficient
> > for
> >
> > an application to process. If for some reason the rdfs:label is needed
> > then I
> >
> > think name_assignment is the only way to handle the fact that a class may
> >
> > have multiple rdfs:label values for different languages. However, it
> > seems to
> >
> > me it's better to keep all the labels in the ontology itself rather than
> >
> > duplicating them in the exchange file.
> >
> > > Regards,
> > >
> > >   Mats
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > -----Ursprungligt meddelande-----
> > >
> > > Från: David Price [mailto:david.price@eurostep.com]
> > >
> > > Skickat: den 18 december 2006 18:05
> > >
> > > Till: plcs-dex@lists.oasis-open.org
> > >
> > > Ämne: Re: SV: FW: [plcs-dex] Unique constraints -> identification and
> > >
> > > versioning
> > >
> > >
> > >
> > > Hi Mats, a few replies follow (although I'm confused by one question.
> > >
> > > On Monday 18 December 2006 07:51, mats.nilsson@fmv.se wrote:
> > > > Questions below...
> > > >
> > > > Happy for opinions!
> > > >
> > > >
> > > >
> > > > Regards,
> > > >
> > > >   Mats
> > > >
> > > > >> David: Could you please give an example of what an (external)
> > > > >> class.id
> > > > >>
> > > > >> URI could look like?
> > >
> > > It would be a URN or a URL depending on what organization defines it
> > > the
> > >
> > > class and the approach they happen to have adopted. It would be the
> > > compete
> > >
> > > URI for the class though it's technically only the identifier and so
> > > may
> > >
> > > not be sufficient for location (e.g. if it's a URN then some other
> > > means
> > >
> > > would have to be established for an application/user to find more info
> > >
> > > about the class ... for example, an organization might have to buy an
> > > ISO
> > >
> > > standard). Examples could be:
> > >
> > >
> > >
> > > urn:iso:std:iso:ts:10303:-1017:ed-1:tech-taxonomy:Part
> > >
> > >
> > >
> > > http://schema.omg.org/spec/UML/2.1/ParameterDirectionKind
> > >
> > >
> > >
> > > http://www.madeupdod.mil/ActivityOntology#Training
> > >
> > > > >> David: How do you suggest the label used for
> > > > >>
> > > > >> classification should be identified in case there are multiple
> > > > >> labels
> > > > >>
> > > > >> for the same class/RD?
> > >
> > > I don't understand what "the label used for classification" means. Can
> > > you
> > >
> > > rephrase the question or explain that phrase?
> > >
> > >
> > >
> > > Cheers,
> > >
> > > David

-- 
Mobile +44 7788 561308
UK +44 2072217307
Skype +1 336 283 0606


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]