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.