Re: A proposal for ISSUE-104 (built-in vocabulary)

Ivan Herman wrote:
> Boris,
> I just want to flag an issue that may come up later in comments: on 
> practical sense your proposal has a downside for RDF users. Indeed, the 
> two major serializations formats, ie, RDF/XML and Turtle, have syntactic 
> shorthands for RDF Lists, and these would not be valid for the owl 
> version of those. 

Actually, to be more precise: in RDF/XML there is a shorthand when 
rdf:next is an object property. When the list elements are literals, 
then the list has to be spelled out...

Turtle's shorthand works in all cases.


>                     And coding first/rest pairs explicitly is not pretty.
> There may not be a way out due to the data/object property issue, but we 
> have to know about this downside I guess...
> Ivan
> Boris Motik wrote:
>> Hello,
>> The discussion around ISSUE-104 (reserved vocabulary) seemed to show 
>> that lists and reification are the main, if not the only part
>> of the reserved vocabulary that might be useful in OWL 2 DL. (If we 
>> feel that it is necessary, we may verify this by sending an
>> e-mail to owl-dev once we have fleshed out our proposal. I personally 
>> don't think we need to do this, given my experience how the
>> built-in vocabulary has been used in OWL 1.)
>> Based on the assumption that we more or less agree on the above 
>> observation, I would like to put forward a proposal for resolving
>> this issue. Before I do so, let me first explain why the obvious way 
>> of resolving the problem does not work.
>> 1. A slight problem with exempting rdf:List from the reserved vocabulary
>> ------------------------------------------------------------------------
>> For a property to be used in any OWL 2 DL axiom, the property must be 
>> declared as either an object or a data property. Now this
>> causes a slight problem for rdf:List: we would make a hard-and-fast 
>> choice about how to treat rdf:first. Thus, we would have to
>> decide whether rdf:first is an object or a data property, which would 
>> essentially restrict the usage of lists in OWL 2 DL in a nasty
>> way.
>> 2. A possible way forward
>> -------------------------
>> To allow for lists, we would introduce four new vocabulary elements in 
>> OWL 2:
>> - owl:List
>> - owl:firstLiteral
>> - owl:firstIndividual
>> - owl:rest
>> To ensure semantic compatibility with OWL Full, we would make owl:List 
>> a subclass of rdf:List, owl:firstLiteral and
>> owl:firstIndividual a subproperty of rdf:first, and owl:rest a 
>> subproperty of rdf:rest.
>> We would extend the structural spec to provide built-in declarations 
>> for these properties (in the obvious way). We would also add a
>> subsection to the structural spec and to the primer about how these 
>> are to be used in ontologies.
>> We would leave the rest of the built-in vocabulary in OWL 2 DL as it 
>> currently is.
>> Note that this does not address the reification vocabulary. 
>> Reification is considered bad in RDF anyway, and it would introduce
>> similar problems in OWL 2 DL; therefore, it seems to me that 
>> disallowing it in OWL 2 DL is not a big deal.
>> Let me know how you feel about this.
>> Regards,
>>     Boris


Ivan Herman, W3C Semantic Web Activity Lead
PGP Key:

Received on Wednesday, 11 June 2008 13:16:25 UTC