Our proposal for the OWL Knowledge Base Language is given in an
abstract syntax. This syntax identifies the language's constructions:
the basic terms of the language, and how they can be combined.
The precise surface syntax(es) remains to be determined.
Our grammar may be ambigous in a few places. We
consider this unimportant at this stage. We aimed for a readable
grammar that could be the basis of discussion on the WG. Ambiguities
etc. will be ironed out when defining the surface syntax(es).
We believe that this proposal is in line with our
first
sketch of OWL's language features, which was agreed upon during the
7 March teleconf. We also believe it to be consistent with
our charter's
requirement to take DAML+OIL as the basis for OWL.
Our proposal for the OWL Knowledge Base Language comes in two parts:
- The first ("light") part is loosely based on the frame idiom found
in the frame-style systems that have been used in AI for decades.
This idiom has been extended with commonly found ontology modelling
idioms and a number of features that are important in the Web
context.
This "light" version will provide a lower entry threshold to the
language, while still providing much of the required
expressiveness.
- The second ("full") part is very close DAML+OIL.
Since this part is already well understood, our comments concentrate
on the "light" segment of our proposal.
The frame portion of the definitions captures the widely understood frame
idiom.
- Each frame-idiom class-definition contains
- a collection of super-classes and
- a collection of property definitions, in the form of the slot construct.
The slot construct states
- the local range of a property,
- whether a value is optional or required,
- whether there can be multiple values,
- a collection of required values.
These can be specified
- either as individuals,
- or as ranges from which these values must be taken.
- Classes can also be defined by enumeration.
- Classes can be made the same or disjoint;
- Properties
- can be made
- SingleValued
- UniquelyIdentifying
- transitive,
- can be arranged in a property hierarchy
- can be given a global range and domain
- Individuals
- can be made the same or different.
- can be given values for their properties
- can be given names or can be anonymous
- Notice that the "light" idiom only uses named classes for
superclasses, domains, ranges, etc. The use of arbitrary
class-expressions is still possible in full OWL.
- Notice that the "light" part includes all the RDF Schema idioms.
- Notice that the "light" idiom limits cardinality constraints
to the values 1 and "greater than 1"
(as mathematicians say: "0,1,infinity" :-)
- Notice that the (in)equality statements for individuals, classes and
properties are all n-ary, for compact expressiveness.
- Notice that our proposal only deals with the "knowledge-base language" part
of OWL. Requirements like tagging, importing ontologies, etc are not
dealt with.