W3C home > Mailing lists > Public > public-owled@w3.org > August 2012

Re: Extending Manchester Syntax [via OWL: Experiences and Directions Community Group]

From: David Osumi-Sutherland <djs93@gen.cam.ac.uk>
Date: Wed, 29 Aug 2012 11:03:15 +0100
Message-Id: <10ACFDB2-09A1-4D05-A7B7-E472C34E6982@gen.cam.ac.uk>
Cc: Phillip Lord <phillip.lord@newcastle.ac.uk>, Matthew Horridge <matthew.horridge@cs.man.ac.uk>, Chris Mungall <cjmungall@lbl.gov>, Robert Stevens <robert.stevens@cs.manchester.ac.uk>, Matthew Horridge <matthew.horridge@manchester.ac.uk>, Erick Antezana <erick.antezana@gmail.com>, Matt Yoder <diapriid@gmail.com>, Simon Jupp <jupp@ebi.ac.uk>, nwilson@eol.org, Carlo Torniai <torniai@ohsu.edu>, Jane Lomax <jane@ebi.ac.uk>, Jim Balhoff <balhoff@nescent.org>, "Peter F. Patel-Schneider" <pfpschneider@gmail.com>
To: public-owled@w3.org
Hi all,

This is my second attempt to post this to the list.  Apologies if this ends up as a duplicate post.

As previously promised here are some proposals for how we could extend OMN to support GCIs.  These proposals are the result of discussion among a smaller group off-list.   Here they are for more open discussion.  Please vote on which you favour, or suggest alternatives.  For those on the cc list but not yet on the owled community list  - please sign up and reply on-list.

PROPOSAL 1 (most favoured in current discussion): Extend misc production to include SubClassOf: 
(Originally suggested by Bijan Parsia)

Changes to BNF spec:

Addition to metaproductions:

<NT>List ::= <NT> { ',' <NT> }
<NT>2List ::= <NT> ',' <NT>List 

+
<NT>BinaryList ::= <NT> ',' <NT>

misc ::= 'EquivalentClasses:' annotations description2List
      | 'DisjointClasses:' annotations description2List
      | 'EquivalentProperties:' annotations objectProperty2List
      | 'DisjointProperties:' annotations objectProperty2List
      | 'EquivalentProperties:' annotations dataProperty2List
      | 'DisjointProperties:' annotations dataProperty2List
      | 'SameIndividual:' annotations individual2List
      | 'DifferentIndividuals:' annotations individual2List
+
      | 'SubClassOf:' annotations Binary2List

e.g.
(A rel some B) SubClassOf (C rel some D)  [ GCI written as in Protege]
=>
SubClassOf: (A rel some B), (C rel some D)

Advantages:
	1. Perhaps the simplest possible extension to OMN to => expressiveness required.  In particular, avoids adding new frames.
	2. All GCIs recorded in a similar way: Misc actually already supports some types GCIs - those expressing equivalence of disjointness between class expressions (actually between every member in a list of class expressions), so the proposed extension simply completes this.

Disadvantages:
	1. GCIs using SubClassOf are expressed using SubClassOf in a prefix position, rather than infix.  This seems to go against the spirit of OMN in preferring infix wherever possible.
	2. SubClassOf is also used as a keyword in 'Class' frames.  In this case it is used in an infix position.  This is potential trap/pain for writers of syntax highlighters and parsers.  So, perhaps we should choose a different keyword for the misc case?

PROPOSAL 2: Extend Class stanzas to allow class expressions.
(Originally suggest by Matthew Horridge)

Changes to BNF spec:

classFrame ::= 'Class:' classIRI
>
classFrame ::= 'Class:' classIRI | description

e.g. 
(A rel some B) SubClassOf (C rel some D)

=>

Class: A rel some B
       SubClassOf: C rel some D

Advantages: 
	    1. Groups together SubClassOf GCIs with a common 'subject'
	    2. Retains infix use of SubClassOf
	    3. Existing spec for Class frames gives us a way to express Equivalence and Disjointness between pairs of class expressions.

Disadvantages:
    	   Difference between Class frames about named classes and unnamed classes is implicit.
	   ...

PROPOSAL 3 (least favoured so far):

Add new frame for GCIs. Presumably this would work for GCIS expressing disjointness and equivalence between pairs of class expressions as well as those expressing subclassing.

Changes to BNF spec:

<Not attempted this yet>

e.g.

(A rel some B) SubClassOf (C rel some D)  [ GCI written as in Protege]
=>
GCI: (A rel some B) SubClassOf (C rel some D)

Advantages:
Retains infix in a way that mirrors how GCIs look in Protege and how regular (English speaking, non-logician) users likely to write them in specs/presentations.

Disadvantages:
Adds a whole new frame with all relevant spec....

Cheers,

David
Received on Wednesday, 29 August 2012 10:03:59 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 29 August 2012 10:03:59 GMT