W3C home > Mailing lists > Public > public-owl-wg@w3.org > September 2008

personal review of SKOS Reference for WG consideration

From: Peter F. Patel-Schneider <pfps@research.bell-labs.com>
Date: Tue, 30 Sep 2008 09:40:41 -0400 (EDT)
Message-Id: <20080930.094041.61134786.pfps@research.bell-labs.com>
To: public-owl-wg@w3.org

I will almost certainly be sending in this review.  It might be a good
idea to have the WG determine whether to have this (slightly modified)
as a WG review as well.  Note that the deadline for reviews is 3
October (2008).


PS:  I sent almost all of this review to the WG a while ago, but I don't
think that it was discussed.

Review of SKOS Reference last call document

The avoidance of formality in the reference is disturbing.  It would have
been much better to have the definitions in some machine-readable format
as much as possible.  I understand that there is an RDF document for
this purpose, at http://www.w3.org/2008/05/skos, but there is no mention
of this RDF document in the reference document.  I would find it very
much better to have the RDF or OWL (partial) definitions for the SKOS
vocabulary in this document.

I have performed an analysis (from the reference document, not from the
RDF document) of the bits of SKOS that are not in OWL 1 DL.  For those
bits that are not in OWL 2 DL, I have suggestions on how SKOS could be
changed to make it fit within OWL 2 DL, where I could figure this out.
I note that much of the bits that are not OWL 2 DL are in the examples.

Section         Language        What bit / Suggestions to put into OWL 2 DL

skos:Concept    OWL 2 DL        individual/class/property punning (examples)

Concept Schemes OWL 2 DL        individual/ontology "punning" (example)

Lexical Labels  OWL 2 Full      subproperty of rdfs:label
                                  suggestion: don't use rdfs:label

                OWL 2 DL        property disjointness

                not OWL         axiom schema for unique prefLabel
                                  suggestion: include qualified
                                  cardinality restrictions only 
                                  for languages used (defined using
                                  datatype restrictions) 

                OWL 2 DL        individual / class punning (example)

                OWL 2 Full      objects as values of data property (example)
                                  suggestion: don't do this

Notations       extra datatypes various extra datatypes
                                  suggestion: sort of in OWL 1 DL
                                  already, but unlikely to be supported
                                  by all tools

Documentation   OWL 2 Full      using literal in object property (examples)
                                  suggestion: don't do this

                OWL 2 Full      use of rdf:value (example)
                                  suggestion: don't use rdf:value

                OWL 2 DL        individual/class punning (example)

Semantic Rel's  OWL 2 DL        disjoint properties

Concept Coll'ns OWL 2 Full      ordering with typing
                                  suggestion: see below

Mapping Props   OWL 2 DL        disjoint properties

SKOS X          OWL 2 Full      data property chains
                                 suggestion: ??

Here is a way of handling typed ordering that should fit within OWL 2
DL, although I haven't checked all the details.

Declare( ObjectProperty(skos:firstMember) )
Declare( ObjectProperty(skos:nextMembers) )
Declare( ObjectProperty(skos:otherMembers) )

Domain( skos:firstMember skos:OrderedCollection )
Range( skos:firstMember UnionOf(skos:Concept skos:ConceptScheme) ) ??

Domain( skos:nextMembers skos:OrderedCollection )
Domain( skos:nextMembers skos:OrderedCollection )
Domain( skos:otherMembers skos:OrderedCollection )
Domain( skos:otherMembers skos:OrderedCollection )

SubPropertyOf( skos:nextMembers skos:otherMembers )
SubPropertyOf( PropertyChain(skos:otherMembers skos:nextMembers) skos:otherMembers )

SubPropertyOf( skos:firstMember skos:member )
SubpropertyOf( PropertyChain(skos:otherMembers skos:firstMember) skos:member )

Specific comments:

The introduction uses some sophisticated Turtle constructs without even
any mention of the syntax being used.  At least a pointer is required


"data are" vs "data does"

counter-intuitive meaning -> counter-intuitive feeling
Received on Tuesday, 30 September 2008 13:41:30 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:41:52 UTC