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

 


Help: OASIS Mailing Lists Help | MarkMail Help

uddi-spec message

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


Subject: Re: [uddi-spec] requirement to make name significant in key/name/valuefor some types of searches


I agree with Max that would be good to find a way to use properties in 
UDDI, but I also share the concern about name in a way that is 
inconsistent with the rest of UDDI. It just does not feel like a good 
solution. The use of keyedReferenceGroup is a bit longer to express, but 
it is fully consistent with the UDDI specs. What follows is my proposal 
to express the Max's examples.

Any property in OWL has three componens: subject, object and predicate.

For instance in Max's example the subject is the domain of the property 
(the thing the property applies to) the predicate is the property itself 
and the subject is the value of the keyedReference.

I propose to define three additional tModels for subject, object and 
predicate. Than we can define the KeyedReferenceGroup as follows

<keyedReferenceGroup tModelKey=tModel:Key >
<keyedReference tModelKey=uddi:owl:subejct
keyName=dealerX
keyValue=someURL#DealerX />

<keyedReference
tModelKey=uddi:owl:predicate"
keyName=Price
keyValue=someURL#Price />

<keyedReference
tModelKey=uddi:owl:object"
keyName=the value
keyValue=100 />
</keyedReferenceGroup>


The verfication of the model should make sure that the instance or 
concept someURL#DealerX is in the ontology tModel:Key and that the 
predicate someURL#Price in the same ontology relates dealers to numbers.

Equivalently, we can specify relations with other OWL concepts and 
instances. For instance, we may want to express that the dealer has some 
accreditation, for instance that it won the price for best dealer in 
town. Here priceURL:bestDealerInTown is defined is some ontology as an 
instance of price or as a type of price. Bottom like it is an OWL thing, 
not an XML schema value like 100 would be.

<keyedReferenceGroup tModelKey=tModel:Key >
<keyedReference tModelKey=uddi:owl:subejct
keyName=dealerX
keyValue=someURL#DealerX />

<keyedReference
tModelKey=uddi:owl:predicate"
keyName=Price
keyValue=someURL#Winner />

<keyedReference
tModelKey=uddi:owl:object"
keyName=the price"
keyValue=priceURL:bestDealerInTown />
</keyedReferenceGroup>

Anyway, we can encode the same information that can be encoded in Max's 
examples, but in a way that is more consistent with UDDI since it does 
not create any new case and intuitive with OWL (OWL people would 
understand this immediately). The only drawback is that it is a bit 
longer, but working with XML stuff to be succint is a lost battle.

--- Massimo





Max Voskob wrote:

>Claus,
>
>keyedReferenceGroup approach is not as elegant as making the name
>significant. This is also the way Massimo proposed to deal with properties,
>but he admitted it is quite awkward.
>
>I'm not sure if the requirement to make name significant from RQ 20 is in
>coz during the dicussion on taxonomies/ontologies we agreed it is not.
>
>Is there any additonal cost involved with using name wherever it is
>specified in the search and ignoring if it's not?
>If we do it for keywords, then I can't see why we can't do it for OWL.
>
>I'd suggest a compromise - we do it for keywords and OWL only :-)
>
>I think we are losing a lot of expressivity if we limit what we can state
>about individuals to assigning them to classes only.
>
>Cheers,
>Max
>
>
>----- Original Message ----- 
>From: "Von Riegen, Claus" <claus.von.riegen@sap.com>
>To: "uddi-spec" <uddi-spec@lists.oasis-open.org>
>Sent: Thursday, April 15, 2004 7:08 AM
>Subject: RE: [uddi-spec] requirement to make name significant in
>key/name/value for some types of searches
>
>
>  
>
>>Hi Max,
>>
>>I believe that the use case you mention can be supported by using a
>>    
>>
>keyedReferenceGroup that groups the category ("Product"), the price type
>(e.g. "dealer") and the price (e.g. "100") together.
>  
>
>>Also, this would be much more flexible, since keyedReferenceGroups allow
>>    
>>
>any number of keyedReferences to be grouped.
>  
>
>>Thoughts?
>>
>>Claus
>>
>>-----Original Message-----
>>From: Max Voskob [mailto:max.voskob@paradise.net.nz]
>>Sent: Mittwoch, 14. April 2004 13:29
>>To: uddi-spec
>>Subject: [uddi-spec] requirement to make name significant in
>>    
>>
>key/name/value for some types of searches
>  
>
>>Hi all,
>>
>>First of all, thanx for coming to NZ to those who came and for those who
>>didn't - we were missing you. :-)
>>I hope you enjoyed your stay here.
>>
>>I would like to return to the proposal I made at the very end of the last
>>FTF: make name significant for some searchers on keyedReference. This is
>>required for some semantic and non-semantic searches when an OWL
>>    
>>
>onlotology
>  
>
>>is used.
>>
>>Ontology example:
>>
>> <owl:Class rdf:ID="Product"/>
>>
>> <owl:Class rdf:ID="Price">
>>  <rdfs:subClassOf rdf:resource="#Product"/>
>> </owl:Class>
>>
>> <owl:Class rdf:ID="DeliveryTerm">
>>  <rdfs:subClassOf rdf:resource="#Product"/>
>>  <owl:oneOf rdf:parseType="Collection">
>>   <owl:Thing rdf:about="#Overnight"/>
>>   <owl:Thing rdf:about="#AirMail"/>
>>   <owl:Thing rdf:about="#UPSInternational"/>
>>  </owl:oneOf>
>> </owl:Class>
>>
>> <owl:DatatypeProperty rdf:about="#dealer">
>>  <rdfs:domain rdf:resource="#Price"/>
>>  <rdf:range rdf:resource="&xsd;decimal"/>
>> </owl:DatatypeProperty>
>>
>> <owl:DatatypeProperty rdf:about="#distributor">
>>  <rdfs:domain rdf:resource="#Price"/>
>>  <rdf:range rdf:resource="&xsd;decimal"/>
>> </owl:DatatypeProperty>
>>
>> <owl:DatatypeProperty rdf:about="#retial">
>>  <rdfs:domain rdf:resource="#Price"/>
>>  <rdf:range rdf:resource="&xsd;decimal"/>
>> </owl:DatatypeProperty>
>>
>>Ontology graph:
>>
>>Product
>> - Price
>>   - dealer
>>   - distributor
>>   - retail
>> - DeliveryTerm
>>
>>where dealer, distributor and retail are properties of Price with XML
>>    
>>
>Schema
>  
>
>>decimal datatype and DeliveryTerm can take values from the enumeration
>>[Overnight, AirMail, UPSInternational] only.
>>
>>
>>Ontology use example as RDF/XML:
>>
>> <Product>
>>  <Price>
>>   <dealer rdf:datatype="&xsd;decimal">100</dealer>
>>   <distributor rdf:datatype="&xsd;decimal">50</distributor>
>>   <retail rdf:datatype="&xsd;decimal">150</retail>
>>  </Price>
>> </Product>
>>
>>
>>
>>Ontology use example as keyedReference in a category bag:
>>
>>
>>Ontology:tModel:Key    #Product //the name is omited - the entity is
>>categorised as #Product
>>Ontology:tModel:Key  #dealer   100     //dealer price is 100
>>Ontology:tModel:Key  #distributor 50      //distributor price is 50
>>Ontology:tModel:Key  #retail   150     //retail price is 150
>>
>>
>>_Find use case:
>>
>>I need to find all products with dealer price 100.
>>I use an ontology registered as a tModel with key Ontology:tModel:Key.
>>Parsing the ontology I understand that what I'm looking for must be
>>categorised as #Product with a property #dealer = 100. This makes the name
>>significant for searches. At the same time, there is no need for UDDI to
>>understand the semantics of the search as the reasoning can be done
>>    
>>
>outside
>  
>
>>of UDDI.
>>
>>
>>I discussed this scenario and solution with Massimo and he agreed that it
>>    
>>
>is
>  
>
>>a common scenario, but suggested a workaround that he will post to the
>>    
>>
>list
>  
>
>>shortly.
>>I think it is very important for us to include this in the spec if we use
>>OWL for ontologies.
>>
>>If names a not significant, then all you can say about an individual is
>>    
>>
>that
>  
>
>>it belongs to some class.
>>E.g. one can easily state that an entity is a #Product, but there is no no
>>simple way to state what the #DeliveryTerm is.
>>
>>Another fundamental reason to make name significant is the very nature of
>>RDF - it is a triple.
>>Subject - the entity
>>Predicate - name
>>Object - value
>>and the key refers to a tModel which refers to the ontology
>>There can be other RDF bits beyond the triple, e.g. rdf:datatype
>>    
>>
>attribute,
>  
>
>>but we can do without it in the meantime.
>>
>>Well, I can be wrong with all this, so please, feel free to put me right.
>>
>>Regards,
>>Max
>>
>>
>>To unsubscribe from this mailing list (and be removed from the roster of
>>    
>>
>the OASIS TC), go to
>http://www.oasis-open.org/apps/org/workgroup/uddi-spec/members/leave_workgroup.php.
>  
>
>>To unsubscribe from this mailing list (and be removed from the roster of
>>    
>>
>the OASIS TC), go to
>http://www.oasis-open.org/apps/org/workgroup/uddi-spec/members/leave_workgroup.php.
>  
>
>>    
>>
>
>
>To unsubscribe from this mailing list (and be removed from the roster of the OASIS TC), go to http://www.oasis-open.org/apps/org/workgroup/uddi-spec/members/leave_workgroup.php.
>
>
>  
>



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