- From: Bijan Parsia <bparsia@cs.man.ac.uk>
- Date: Thu, 31 Jul 2008 12:42:20 +0100
- To: "Michael Schneider" <schneid@fzi.de>
- Cc: <public-owl-wg@w3.org>
On 31 Jul 2008, at 08:48, Michael Schneider wrote: > Hi! > > After the Metamodel session at F2F3, I am still confused about one > point: > How is it possible to automatically generate the Functional Syntax > grammar > from the diagrams? Think of the Metamodel as a nondeterministic machine and a concrete grammar as *one* run of that machine. Different runs can make different choices thus ending up with different grammars that conform to the abstract description. Thus, to generate a particular grammar you have to additionally specify some choices. > IIRC, it has been claimed that this will be possible. > > Take for example class assertions, which have the following grammar > according to sec. 8.5.3 of the Syntax document: > > ClassAssertion := 'ClassAssertion' '(' { Annotation } > ClassExpression Individual ')' > > One must not change the ordering of the arguments in a class > assertion, See above. A functional syntax with the reverse ordering would be perfectly coherent. > because this would swap a class expression and an individual. > > However, the respective diagram at the beginning of sec. 8.5 [1] > does not contain such ordering information for ClassAssertion. > And I do not know how it is possible to specify such a ordering in > UML, > at least for situations, where different types are involved > (classes and individuals in our case). Adding ordering to the diagram would import concrete details into the abstract view. Think of it this way: Suppose you wanted to use dictionary/hash tables as your api. So a class assertion would be something like: {"type": "ClassAssertion"; "Annotations":[]; "Individual": someURi; "ClassExpression": someClassExpression} Oh NOES! I got the sequence of individual and classexpression wrong way around!!! Obviously, it doesn't matter for this linear syntax, so the above reaction would be incorrect. Hope this helps. Cheers, Bijan.
Received on Thursday, 31 July 2008 11:40:21 UTC