Re: Encoding an incomplete date as xsd:dateTime

Le 26/06/2014 12:06, Svensson, Lars a écrit :
> Simon, all,
>
>> There's already a slight problem in vCard's treatment of bday; it
>> includes  xsd:gYear, which is not permitted in OWL2-DL, and it does
>> not include xsd:string, which is available, and which is required
>> by the RFC.
>
> If I declare the use of xsd:gYear in my ontology, can I use it then?
> I'm not familiar enough with OWL to answer that question myself, but
> the way I read §9.4 of the OWL syntax [1] I can use any datatype. Can
> someone more familiar with this topic shed some light on this?

In OWL 2 DL, you can't declare any term in the xsd:, rdf:, rdfs: and 
owl: namespaces, according to the spec. Even if you could, you would not 
be able to define xsd:gYear because any datatype must be either an 
OWL-compatible datatype (see Section 4.1 of the structural spec), the 
special datatype rdfs:Literal, or a custom datatype that is built from 
unions, intersections, enumerations, complements of, or restrictions of 
already defined datatypes (See Section 5.2 and Section 7). With these 
constructs, you would never be able to define the value space of gYear, 
which is disjoint from all OWL-compatible datatypes.

Now, you can still use xsd:gYear if you want because OWL 2 DL processors 
do not have to reject all non-compliant ontologies. Actually, most OWL 
processors would not bother much about gYear. Besides, these 
restrictions are for OWL 2 DL ontologies but the OWL specs also specify 
OWL Full ontologies, which are all valid RDF graphs.
Depending on what tools you expect to be used on your ontology, the 
restrictions might be irrelevant.

>> OWL2-DL allows for facets on dataTime  to specify a minimum and
>> maximum time point value, which can be used in restrictions on
>> individuals to yield the appropriate models;  however, this
>> approach is not ideal.
>
> What would an ideal approach look like?

My suggestion would be one of two ways:
   1. use xsd:gYear in spite of the spec's restriction; or
   2. use xsd:integer. Although gYear is formally disjoint from integer, 
in practice they are almost treated exactly in the same way.


AZ.

>
> [1] http://www.w3.org/TR/owl2-syntax/#Datatype_Definitions
>
> Thanks,
>
> Lars
>
>

Received on Thursday, 26 June 2014 12:02:43 UTC