- From: Ian Horrocks <horrocks@cs.man.ac.uk>
- Date: Sun, 25 Jul 2004 16:13:09 +0100
- To: Stephen Rhoads <rhoadsnyc@mac.com>
- Cc: www-rdf-logic@w3.org
Stephen Rhoads wrote: > Folks, > > I'm building an ontology by hand in the Abstract Syntax (which, I must say, is quite enjoyable -- it's so very intuitive) and have a few questions: > > 1. What is the preferred (or correct) method of describing multiple complete definitions for a class? > > Just use multiple complete Class definitions ... > > Class(LandscapeAspectRatio complete > intersectionOf(AspectRatio > restriction(frameWidth hasValue(1.33)) > restriction(frameHeight hasValue(1.00)))) > > Class(LandscapeAspectRatio complete > intersectionOf(AspectRatio > restriction(frameWidth hasValue(4.00)) > restriction(frameHeight hasValue(3.00)))) > > ... or describe a Class which is the unionOf all of the definitions ... > > Class(LandscapeAspectRatio complete > unionOf( > intersectionOf(AspectRatio restriction(frameWidth hasValue(1.33)) > restriction(frameHeight hasValue(1.00))) > intersectionOf(AspectRatio restriction(frameWidth hasValue(4.00)) > restriction(frameHeight hasValue(3.00))))) > > Actually, my knowledge of formal Logic is pretty weak so I don't even know whether the latter approach is technically accurate. Which brings me to my next two questions: The two are not equivalent - in the first case you wrote something like: C1 <-> C2 C1 <-> C3 with the obvious consequence that C2 <-> C3. In the second case you wrote something like: C1 <-> C2 u C3 In this case C2 <-> C3 is obviously not a consequence. > > 2. Is there anywhere a tutorial or paper on using the Abstract Syntax for those who don't understand BNF? Not that I know of. If I were you I would use an editor instead - much easier and you can export various different syntaxes, including RDF syntax as and when you need it. The most popular choices are OilEd and Protege. > 3. Is there anywhere a tutorial or paper which can help a layperson (Logically speaking) understand the distribution rules for existential and universal quantification? I stumbled onto [1] but could not fully comprehend. The Co-Ode project has now produced an extensive tutorial [1]. > > 4. Is it permitted to use Qnames anywhere in the Abstract Syntax (even in values)? Individual values are URIrefs but data values are (possibly typed) literals. > > 5. Save me some time ... what books do I need to read, and in what order, to reasonably understand the formal Logic behind DLs. If you really want to understand DLs then I recommend the DL Handbook [2]. Ian [1] http://www.co-ode.org/resources/tutorials/ProtegeOWLTutorial.pdf [2] http://books.cambridge.org/0521781760.htm > > --- Stephen > > [1] http://www.cs.man.ac.uk/~horrocks/Teaching/cs646/Slides/why.ppt > >
Received on Sunday, 25 July 2004 11:13:46 UTC