- From: Michael Schneider <schneid@fzi.de>
- Date: Wed, 18 Mar 2009 21:36:11 +0100
- To: "Boris Motik" <boris.motik@comlab.ox.ac.uk>
- Cc: "W3C OWL Working Group" <public-owl-wg@w3.org>
- Message-ID: <0EF30CAA69519C4CB91D01481AEA06A0011330BD@judith.fzi.de>
>-----Original Message----- >From: public-owl-wg-request@w3.org [mailto:public-owl-wg-request@w3.org] >On Behalf Of Boris Motik >Sent: Wednesday, March 18, 2009 6:37 PM >To: 'W3C OWL Working Group' >Subject: A problem with HasKey in the functional-style syntax > >Hello, > >I've just noticed a problem in the functional-style syntax for HasKey. >The >current syntax is > >HasKey( CE P1 ... Pn ) > >where Pi are either object or data properties. But this means that the >axiom is >not fully typed. Consider, for example, the following axiom: > >HasKey( a:MyClass a:MyProperty ) > >>From this axiom alone, it is not clear whether a:MyProperty is an >object or a >data property. Effectively, this means that we haven't addressed >correctly the >comment by Matthew Horridge. > >My proposal for fixing this is to write the above axiom like this: > >HasKey( a:MyClass ObjectPropertyList( a:MyProperty ) ) > >More generally, the grammar would be like this: > >HasKey := 'HasKey' '(' ClassExpression > 'ObjectPropertyList' '(' { ObjectPropertyExpression } ')' | > 'DataPropertyList' '(' { DataPropertyExpression } ')' >')' I don't understand this proposal. It seems to only cover the special cases, where there are exclusively either object properties or data properties in the argument list. What about mixtures of object and data properties? I first also wondered what this does buy us (or Matthew) at all, since this doesn't make the HasKey axiom "typed". But I think what you mean is that the declarations will be at least "local" to the axiom here, and won't be spread around over the whole ontology, as it is currently the case. Is this right? Then, the obvious idea to me would be to generally allow for "inlined" entity declarations, as in HasKey ( Class(CE) ObjectProperty(P1) DataProperty(P2) ObjectProperty(P3) DataProperty(P4) ) One can allow this for every type of axiom, and make it mandatory in cases such as for the properties in HasKey axioms. Yes, I know, yet another larger change. But is there an alternative? (Maybe I totally miss the point here?) Best, Michael -- Dipl.-Inform. Michael Schneider Research Scientist, Dept. Information Process Engineering (IPE) Tel : +49-721-9654-726 Fax : +49-721-9654-727 Email: michael.schneider@fzi.de WWW : http://www.fzi.de/michael.schneider ======================================================================= FZI Forschungszentrum Informatik an der Universität Karlsruhe Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe Tel.: +49-721-9654-0, Fax: +49-721-9654-959 Stiftung des bürgerlichen Rechts, Az 14-0563.1, RP Karlsruhe Vorstand: Prof. Dr.-Ing. Rüdiger Dillmann, Dipl. Wi.-Ing. Michael Flor, Prof. Dr. Dr. h.c. Wolffried Stucky, Prof. Dr. Rudi Studer Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus =======================================================================
Received on Wednesday, 18 March 2009 20:36:56 UTC