Questions Re Abstract Syntax

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:

2.  Is there anywhere a tutorial or paper on using the Abstract Syntax for those who don't understand BNF?

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.

4.  Is it permitted to use Qnames anywhere in the Abstract Syntax (even in values)?

5.  Save me some time ... what books do I need to read, and in what order, to reasonably understand the formal Logic behind DLs.

--- Stephen

[1] http://www.cs.man.ac.uk/~horrocks/Teaching/cs646/Slides/why.ppt

Received on Friday, 23 July 2004 17:23:35 UTC