For this sort of modeling I would recommend, at least for the moment,
some kind of macro facility.
Since my own tool is based on common lisp, and works off a version of
the abstract syntax that is expressed as s-expressions, I can and do
use the common lisp macro faciltiy to implement this sort of thing.
I started a thread about this on the OWL list in May suggesting that
a macro language, which operates at the abstract syntax level, be
considered for addition to OWL, but the consensus seemed to be that
this should be outside the scope of OWL proper. I tend to disagree,
because if this sort of thing is not standardized each tool will
implement it in a different way.
http://lists.mindswap.org/pipermail/owl/2006-May/thread.html (top of
the page: [OWL] Abstract syntax proposal )
Bijan Parsia suggested he may come up with some sort of proposal, but
I don't know if he pursued this (http://lists.mindswap.org/pipermail/
owl/2006-May/000299.html)
Another way to think about it would be to embed, as annotation
properties, information which could be used to augment an ontology by
a postprocessing tool. As an example of this approach, there are a
couple of pages off http://tinyurl.com/rhzto , in which I show
examples of representing constraints that can't currently be
expressed in OWL, to be interpreted by a second program.
-Alan
On Aug 22, 2006, at 12:28 PM, Larry Hunter wrote:
In my experience, many complex knowledge modeling projects benefit
from
the use of metaclasses. For example, if the domain of a
relationship is
limited to several specific classes, it makes sense to model those
classes as members of a particular metaclass (i.e., one that
supports a
particular slot type). There are gyrations one can do to avoid
metaclasses (the GO/OBO folks have really been trying hard), but I
think
that these load the knowledge models with counter-intuitive structures
for very little gain. The "non-computability" of OWL-Full is a
worst-case problem that doesn't seem to me to have been a practical
concern in many real-world cases.
Larry