[tmcl-wg] Consistency of TMCL Schemas ?

Bernard Vatant tmcl-wg@isotopicmaps.org
Fri, 9 Jan 2004 12:06:38 +0100


Lars Marius

> What I meant was that TMCL may have more of a constraint focus and
> less of an ontology focus than you expect. In fact, I think that if
> people want TMCL to have ontology parts as well they should speak up
> and try to get it into the requirements.

I'm not sure I share or even understand your distinction between "ontology"
and "constraints", and what you wrote below just added to my perplexity
about it. So, instead of trying to understand how you see it, I'll try to
expand on how I see it :)

In a nutshell, for me an ontology for a topic map describes what the TM is
about: classes of subjects and relations (IOW association and role types)
and constraints on those. If my TM is about car engineering, classes of
subjects should be "Car", "Engine", "Piston", "Wheel" "Valve" ... and roles
are "System" "Organ" for "System_Components" association etc. But "Flower",
"Opera", "Compositor", "Mammal" are not allowed ...

Note (to answer your question below) that it includes also declaration of
types of occurrences and their domain (which class they are attached to).
Types of occurrences can be simply defined by XML datatypes, or named
occurrence type with no more constraint on its data type. But they can also
constrain complex data types in a broader acception. For example for every
type of component in my car I have a specification sheet for technical
data, with a specific data structure (defined e.g. by an XML schema). The
XML schema itself is not part of the ontology, but the ontology declares
that for this type of component, this type of occurrence have that data
structure defied by that specific schema (identified by whatever
identifier). Topic Map engine will just ensure that the data are passed as
black boxes attached to topics with the occurrence type providing the
reference to the schema, so that dedicated software will be able to open
the box knowing what is inside, and process data according to the schema
(see recent exchnages about "foreign markup")

So the TM ontology can contain information both for the topic map software,
and for the software to which the topic map will pass information, and
which will handle the data (e.g. computing simulations on the specific car
described in a specific topic map).

In that schema, constraints are at every level, and I can't see the
ontology otherwise than a consistent set of constraints.

Now my guess is that when you speak about TMCL constraints not being
"ontological", it means you consider the topic map as a set of data,
singularly conformant to TMDM, and TMCL add more constraints on the data
structure, but is sort of agnostic about what the topic map represents. Am
I right?

> | What do you mean by "constraint parts" and "ontology parts" of OWL,
> | exactly?
>
> If you look at <URL: http://www.w3.org/TR/owl-features/ > I'd roughly
> categorize these features as:
>
>   CONSTRAINTS              ONTOLOGY                METADATA
>   ===========================================================
>   rdfs:domain              Rest of RDFS            Annotation
>   rdfs:range               Equality                Versioning
>   owl:FunctionalProperty   owl:inverseOf           Header
>   owl:InverseFun...        owl:TransitiveProperty
>   Restricted cardinality
>
> I know this isn't complete, but I need to get to bed soon. :)
>
> Basically, not all of OWL is constraints. Some of it is just a kind of
> semantic annotation, and that's the bit that I'd call the "ontology
> part", except for the bit in "METADATA" above, which talks about the
> ontology more than the domain (except for rdfs:label and rdfs:comment,
> which talk about the domain, but are not machine-processable).

Honestly, I think we have radically different views of what an ontology is.
I agree on metadata - that's quite obvious, but the other distinction I
don't grasp. Why e.g. FunctionalProperty is on one side, and
TransitiveProperty on the other ?

> how do you say that something must be an occurrence type rather than an
> association type? And how do you constrain association role types?
> Surely OWL alone can't do that?

There are two ways to see this question. Either you take an out-of-the
shelf OWL and want to use it to constrain your topic map, and this is not
the easy way and your questions are indeed relevant, or you define your
ontology with the declared purpose of constraining TMs, and there you can
declare : this is an association type, that is an occurrence type by
reference to standard classes.

Both ways will be addressed in the paper.

> | BTW I've submitted a paper on this subject for XML Europe, and if
> | it's accepted, we'll have a chance of discussing it in Amsterdam
> | (around a beer).
>
> That would be very interesting, and it does sound like something that
> would be approved. I was about to propose that we do a joint paper on
> this, but if you already have a solution to this that you'd like to
> present you should probably just go ahead with that.

Thanks for the proposal, but in fact the abstract is already submitted and
the paper drafted (at least in my mind) so I guess I'll go ahead alone. But
I will happily push it to you or any other interested party for review well
before final submission, to have the time to take judicious remarks into
account :))

Bernard Vatant
Senior Consultant
Knowledge Engineering
Mondeca - www.mondeca.com
bernard.vatant@mondeca.com