- From: Evren Sirin <evren@clarkparsia.com>
- Date: Fri, 09 Mar 2007 21:04:19 -0500
- To: wangxiao@musc.edu
- CC: public-owl-dev@w3.org
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