RationaleThe mathematical nature of description logics has meant that domain experts find it hard to understand OWL-based ontologies. This forms a significant impediment to their creation and reuse. If domain experts' knowledge is to be represented and verified, an easily readable syntax for writing ontologies is needed. Features- Reading (rendering) and writing
Scoping Issues- Language coverage alternatives
- All of OWL 2, including extralogical features, annotations, datatypes, etc.
- Concept expression language only (with axiomatic structure indicated otherwise, e.g., by indentation)
- Some tractable fragment(s)
- Core OWL 2 axioms only (i.e., logical content only)
- Strict roundtrippability
- Syntax-preserving round-tripping?
- Semantics-preserving round-tripping?
- Task - what's the language trying to do? Ontology specification, Querying and Reasoning may each be suited to different specifications.
- Testing - how do we actually know people find it easy/easier than other syntaxes?
Morphology issuesOWL has (named) classes, object properties, data properties, individuals, numbers, datatype facets. What are their CNL counterparts? - Class names
- Nouns?
- Countable nouns? Mass nouns?
- Both singular and plural (e.g. man, men)?
- Both lowercase and uppercase (e.g. man, Man)?
- Multiword units (e.g. bus driver) are allowed?
- Always preceded by a determiner (e.g. a, an, the, some, every, no)?
- Attributive adjectives (rich man)?
- Predicative adjectives (a man is rich)?
- Intransitive verbs (a man waits)?
- ing-forms (a man is smiling) are allowed?
- Object property names
- Transitive verbs (like)?
- Both 3rd person forms (likes) and infinitives (does not like, do like)?
- Transitive adjectives (fond of)?
- Comparative adjectives (taller than)?
- Multiword units (e.g. smiles at) are allowed?
- Passives (is liked by) are allowed?
- Non-contiguous forms (has ... as a father) are allowed?
- of-construction + noun (the father of John) is allowed?
- Saxon genitive + noun (John's father) is allowed?
- "weird" verbs (John has-father Bill) are allowed?
- Nouns (John father Bill) are allowed?
- Data property names
- Transitive verbs (E equals 2.718...)?
- of-construction + noun (The age of John is 10) is allowed?
- Saxon genitive + noun (John's age is 20) is allowed?
- Anonymous individuals
- Common nouns (e.g. There is a man that owns a car.)?
- Numbers
- Numbers are 0, 1, 2, ...?
- Numbers as words (one, two, ...) are allowed?
- Should 0 be allowed? Forcing one to use negation instead would maybe result in more readable texts...
- Datatype facets
- Could we allow, e.g. John's age is >21.; John's age is 13-19.
- ...
Syntax IssuesOWL descriptions and (possible) corresponding CNL function words. (Note: data property restrictions are missing.) | Description | CNL function words | | owl:Thing | something, somebody | | ObjectUnionOf | or | | ObjectIntersectionOf | and, that | | ObjectComplementOf | no, not, does/do not, is/are not | | ObjectOneOf | or | | ObjectAllValuesFrom | nothing but, only | | ObjectSomeValuesFrom | a, some | | ObjectExistsSelf | itself, himself, herself, himself/herself | | ObjectHasValue | | | ObjectMinCardinality | at least N, more than N-1 | | ObjectMaxCardinality | at most N, less than N+1 | | ObjectExactCardinality | exactly N |
OWL axioms and (possible) corresponding CNL function words. (Note: data property axioms are missing.) | Class Axiom | CNL keywords | | SubClassOf | every, if ... then ..., is a kind of | | EquivalentClasses | every, if ... then ..., classes ... are equivalent, every <class> is defined as, the class <class> is fully defined as ... | | DisjointClasses | no, if ... then ..., classes ... are mutually exclusive | | DisjointUnion | |
| Object Property Axiom | CNL keywords | | SubObjectPropertyOf | Everything that <relationship1> something that <relationship2> something will also <relationship3> that thing.; If something X <relationship1> something that <relationship2> something Y then X <relationship3> Y.; If X <relationship1> Y and Y <relationship2> Z then X <relationship3> Z. | | DisjointObjectProperties | mutually exclusive; If something X <relationship1> something Y then it is false that X <relationship2> Y. | | ... | ... |
| Fact | CNL keywords | | SameIndividual | is, are the same thing, are the same individual | | DifferentIndividuals | is not, are different things, are different individuals | | ClassAssertion | <individual> is a <class> , <individual> is not/does not/ ... | | ObjectPropertyAssertion | <individual1> <relationship> <individual2> | | NegativeObjectPropertyAssertion | <individual1> <relationship negation> <individual2> |
Some notes- Data-properties can be hard to handle, see e.g. the definition of data ranges in the OWL 2 spec: http://www.w3.org/TR/owl2-syntax/#Data_Ranges
- Some OWL 2 axioms (e.g. DisjointUnion) are a concise notation to express a large number of axioms. At least in some cases, graphical means seem better. e.g. the pie-chart visualization of DisjointUnion that Protege 4 offers seems better than any natural language representation.
- Long syntactic patterns - useful to convey meaning the first time, but tiresome to type 100 times...
Comparison of existing Controlled English syntaxes for OWL- Comparison of Rabbit, SOS, and ACE
Implementations- ACE and OWL
- Translator ACE->OWL/SWRL is part of Attempto Parsing Engine
- Translator OWL->ACE
- ACE View editor (plugin for Protege 4)
- AceWiki
TODO- Consideration of Empirical Studies - which approach has been found most effective?
- Min Shi (Uli Sattler's student) conducting some empirical tests - Anne to chase up current status / results
- Start moving towards consensus on the best CNL translation for each OWL 2 construct
BibliographyPeople- Catherine Dolbear (point person)
- Bijan Parsia
- Kaarel Kaljurand
- Anne Cregan
|