Re: SubObjectPropertyChain question

On 3/9/07 4:56 PM, Xiaoshu Wang wrote:
>
> Hi,
>
> I am trying to figure out the translation of OWL 1.1 to the OWL RDF 
> syntax.  But I have some trouble to understand the translation of the 
> SubObjectPropertyChain.  From [1], it says that
>
> SubObjectPropertyOf(subObjectPropertyChain(op_1 ... op_n ) op) should 
> be translated into
> T(SEQ op_1 ... op_n ) SUBPROPERTYOF[op_1 ,...,op_n ,op] T(op).
>
> If I understand correctly (if not, please let me know), this 
> translation will suggest an rdf:List will be an rdf:Property.  Since 
> the domain of rdfs:subPropertyOf is rdf:Property.  But rdf:List is 
> defined to be a rdfs:Class in http://www.w3.org/1999/02/22-rdf-syntax-ns, 
Note that, these definitions do not have a meaning in OWL-DL. Both 
rdfs:subsPropertyOf and rdf:List (as other built-in vocabulary) are 
considered to be part of syntax in OWL-DL.
> so this automatically put OWL1.1 into OWL-full.  
Not exactly because of the reason you say but yes such a definition puts 
you in OWL-DL because in OWL-DL both the subject and object of an 
rdfs:subPropertyOf triple should be URIs which are typed as 
owl:ObjectProperty. Note that, nearly all the other constructs in OWL 
1.1 would also put an OWL 1.1 document in OWL-Full, e.g. [p rdf:type 
owl11:ReflexiveProperty]. I would think that existing OWL species 
definitions need to be updated to take OWL 1.1 into consideration.
> Or, the OWL 1.1's punning comes to rescue here?
>
> I wonder if it be cleaner to translate this as an Axiom.  For 
> instance, define a term called owl11:ObjectPropertyChainAxiom and 
> assign it two property "propChain" which ranges over an rdf:List and a 
> superProp ranges over an Object.  So it would be something like
>
> _:x rdf:type owl11:ObjectPropertyChainAxiom;
>      owl11:propChain T(SEQ p1, ... pn).
>      owl11:superProp op.
With a different motivation, sometime ago I suggested the following 
alternative syntax (possibly with different keywords):

<owl11:PropertyChain>
  <owl11:members rdf:parseType="Collection">
       <owl11:ObjectProperty rdf:ID="p1"/>
        ...
   </owl11:members>
   <rdfs:subPropertyOf rdf:resource="#p"/>
</owl11:PropertyChain>
>
> Another question about the document is why all collection is 
> transformed to rdf:List.  Most should be a BAG.  In RDF/XML, writing a 
> list is quite cumbersome, but for BAG, parsetype="Collection" can be 
> used.  I wonder it is just a careless of writing or is there a reason 
> that rdf:List must be used?
I think there is a confusion here because parseType="Collection" is used 
for rdf:Lists. The only requirement is that the list be an object of a 
triple. However, the current specification maps the rdf:List to a 
subject position which makes it impossible to use 
parseType="Collection".  With a different encoding (like the one you or 
I suggest) it would be possible to use parseType. Even though we think 
RDF/XML is not for humans to look at, sometimes it is inevitable (sigh!) 
and I think these kind of shortcuts would be useful.

Cheers,
Evren

>
> Xiaoshu
>
>
> 1. http://www.w3.org/Submission/owl11-rdf_mapping/
>

Received on Saturday, 10 March 2007 02:04:29 UTC