Re: Jena comment: Syntax Checker Implementation Report]

Jeremy - we definitely want this in our public comments list.  I will 
move it there.
In this message, your group mentions [1] and suggests its inclusion 
somewhere in our specs or at least available -- as I recall, this is 
something you had included as part of a formal objection that later 
got retracted, so this document is in something of an "orphan" state 
-- on the other hand, it seem to provide something that several 
comments have asked for -- maybe we could bring it out of the scrap 
heap and the WG could consider whether and where to make it available 
-- would you, as author, be willing to do this?
  -JH


[1] http://lists.w3.org/Archives/Public/www-archive/2003Mar/att-0089/m

At 10:29 +0100 5/12/03, Jeremy Carroll wrote:
>The following comment, which I drafted, was approved by the Jena team, and
>then I was not sure where to send it on Friday, and the task got lost.
>
>Jim
>
>do you want to:
>- move this to public-webont-comments yourself
>- have me post it there on behalf of Jena team
>- just work with the comment in this list
>- have some other member of the Jena team post it to the comments list
>
>Jeremy
>
>
>[[[
>
>This is a comment on OWL Test Cases and Last Call Comment on OWL S&AS.
>
>http://www.w3.org/TR/2003/WD-owl-semantics-20030331/
>http://www.w3.org/TR/2003/WD-owl-test-20030331/
>
>There are five specific points at the end of this message which we 
>ask the WG to consider.
>
>We implemented an OWL Syntax Checker, as defined in OWL Test Cases, 
>based on the mapping rules in OWL S&AS.
>
>The approach used was to:
>1: compute the imports closure
>
>2: follow the triple tables found in:
>
>http://lists.w3.org/Archives/Public/www-archive/2003Mar/att-0089/m
>
>and to work from those to iteratively classify every node in the RDF graph
>
>3: additional actions are used to check that restrictions, for instance, do
>not have too many components, and that blank nodes are the object of 
>at most one triple
>
>4: the syntax checker behaves incrementally in the sense that we can check
>whether any non OWL Lite or non OWL DL constructs have been used
>
>5: when all the triples have been processed we have a final check 
>for things like orphan restrictions, untyped nodes etc.
>
>We have slightly updated the tables.
>(The actual table used can be found at
>http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jena/jena2/src/com/hp/hpl/jena
>/ontology/tidy/Grammar.java?rev=HEAD&content-type=text/vnd.viewcvs-markup )
>
>
>In this process we have not implemented the following:
>
>A: exact constraints concerning owl:disjointWith
>B: exact constriants concerning owl:equivalentClass
>C: non cyclic restricition on unnamed individuals
>D: allowing blank restriction nodes to have class owl:Class
>
>C and to some extent A and D are a result of laziness; and we can imagine
>implementing them soon.
>
>We believe that
>**Comment 1**
>+  *B* is seriously flawed in S&AS and should be fixed.
>     (i.e. the constraints on owl:equivalentClass triples cannot
>    even be articulated let alone implemented, let alone
>    implemented reasonably efficiently).
>
>**Comment 2**
>+ *A* seems unnecessarily complex
>    Do these constraints  on owl:disjointWith have to be as complicated as
>  they are?
>
>**Comment 3**
>* *D* is clunky and we ask the group to reconsider both optional triples in
>mapping rules such as:
>
>restriction(ID maxCardinality(max))
>==>
>_:x rdf:type owl:Restriction .
>_:x rdf:type owl:Class . [opt]
>_:x rdf:type rdfs:Class . [opt]
>_:x owl:onProperty T(ID) .
>_:x owl:maxCardinality "max"^^xsd:nonNegativeInteger .
>
>(the owl:Class optional triple is more problematic than the 
>rdfs:Class, since it makes the rule on requiring explicit type for 
>all nodes more complicated.
>owl:Class is a possible explicit type for classID and description 
>nodes, but not for restriction nodes). We suggest removing the 
>optional triples from this rule, and other similar rules.
>
>**Comment 4**
>A further clunkiness was with owl:OntologyProperty.
>Triples such as
>owl:priorVersion rdf:type owl:OntologyProperty .
>are permitted by the grammar iff owl:priorVersion is used somewhere else.
>We have correctly implemented this, but it is surprising.
>
>We suggest either:
>- removing the term OntologyProperty from the owl namespace and simply
>modifiying the mapping rules that produce these triples to not do so.
>or:
>- allowing user defined OntologyProperty's with annotations with an 
>abstract syntax axiom
>
>**Comment 5**
>We did not work directly from the WD, and cannot imagine how one 
>might easily do so. We found the tables in
>http://lists.w3.org/Archives/Public/www-archive/2003Mar/att-0089/m
>considerable more accessable than the mapping rules, and suggest that these
>tables should be included in the OWL recommendation.
>
>]]]

-- 
Professor James Hendler				  hendler@cs.umd.edu
Director, Semantic Web and Agent Technologies	  301-405-2696
Maryland Information and Network Dynamics Lab.	  301-405-6707 (Fax)
Univ of Maryland, College Park, MD 20742	  240-731-3822 (Cell)
http://www.cs.umd.edu/users/hendler

Received on Monday, 12 May 2003 09:12:39 UTC