[sc34wg3] TMCL: 4.4.1 Topic Type Constraint
Robert Barta
rho at devc.at
Thu Feb 14 07:46:00 EST 2008
On Thu, Feb 14, 2008 at 12:13:13PM -0000, Graham Moore wrote:
>
> >> Is this statement part of the original map? Probably not?
> >> Is this statement part of the schema? Maybe.
> >> But then TMCL has to say somewhere that the TMQL expression (or
> actually
> >> the whole validation is done on the merge of
> >> original_map + schema
>
> My expectation has been that a schema CTM document contains normal ctm
> statements and uses the templates provided by tmcl.
So far, so good.
> So
>
> Person isa tmcl:topictype
> occurrenceConstraint(age, 1, 1)
> nameConstraint(pseudo, 1, 1)
This is part of the schema then.
> Given that the constraints themselves are topics in the map, ....
Uhm, that is my point: When does that happen?
> .............................................................and that
> the schema is a topic then how it actually all got into the map doesn't
> matter.
Oh.
> And...
>
> If a processor wants to keep a set of constraints separate and merge
> them in right before validation, it can do.
Well, no. Because if we say in a TMQL statement (or whatever means),
_what_ precisely has to happen, then we have to commit ourselves where
the things for the {true|false} decisions are coming from.
So if we have there
... // tmcl:topicType
then the information _what_ instances are there effectively has to be
take from the schema. So if that AND the map are queried in one go,
then a processor
(a) MUST merge them,
(b) or we invent something else
\rho
> -----Original Message-----
> From: Robert Barta [mailto:rho at devc.at]
> Sent: 14 February 2008 12:35
> To: Graham Moore
> Cc: Discussion of ISO/IEC 13250 Topic Maps
> Subject: Re: [sc34wg3] TMCL: 4.4.1 Topic Type Constraint
>
> On Thu, Feb 14, 2008 at 10:21:32AM -0000, Graham Moore wrote:
> >
> > A couple of things...
> >
> > >> We still have to say something about making the fact
> > >> Person isa tmcl:topicType
> > >> accessible to the TMQL processor which effectively checks the map.
> >
> > This fact should have been stated by the author of the map.
>
> Is this statement part of the original map? Probably not?
>
> Is this statement part of the schema? Maybe.
>
> But then TMCL has to say somewhere that the TMQL expression (or actually
> the whole validation is done on the merge of
>
> original_map + schema
>
> > >> uniq ( // tm:topic >> types ) -- // tmcl:topicType == null
> >
> > This looks good, just to clarify, this says that the set of topics
> that
> > have instances and are not of the type topic-type is 0?
>
> Yes:
>
> // tm:topic # find all instances of topics (so no assocs, occs,
> ...)
> >> types # find from there all their types, direct or indirect
> uniq () # make sure that we remove all the duplices
>
> // tmcl:topicType # find all those which are marked as topic Types
> -- # this give only those which are used as type, but are
> not
> # ear-marked
>
> == null # we do not want this 'set' to be non-empty
>
> \rho
>
>
> > -----Original Message-----
> > From: Robert Barta [mailto:rho at devc.at]
> > Sent: 14 February 2008 09:38
> > To: Graham Moore
> > Cc: Discussion of ISO/IEC 13250 Topic Maps
> > Subject: Re: [sc34wg3] TMCL: 4.4.1 Topic Type Constraint
> >
> > On Thu, Feb 14, 2008 at 07:40:53AM -0000, Graham Moore wrote:
> > > >> How is 4.4.1. to be understood?
> > > >> "..only topics ... defined as topic types can have instances"
> > > >> What about association types, occurrence types and name types?
> They
> > > >> definitely need to be "topics allowed to have instances".
> > >
> > > Firstly, this is a map wide constraint.
> >
> > Yes, many constraints in TMCL are map wide.
> >
> > > It is trying to say that if a topic plays the role of type in the
> > > type-instance association and it is NOT an instance of the topic
> > > tmcl:topic-type that the given type topic violates the topic type
> > > constraint.
> >
> > > .... The evaluation function knows the topic of topic-type (its
> > > defined in TMCL) and can thus derive the list of all topic types at
> > > evaluation time.
> >
> > Hmm, 4.1. says that "Constraints are independent from each other....",
> > but obviously TMCL somehow makes a distinction between allowing to say
> >
> > "Person isa tmcl:topicType"
> >
> > and the actual TopicTypeConstraint which is sort-of hovering in the
> > background. I didn't get this from the text. But my interpretation
> >
> > > uniq ( // tm:topic >> types ) -- // tmcl:topicType == null
> >
> > would then reflect this. Good.
> >
> > > I'm not sure I follow the bit about having to adopt the tmrm-tmdm
> > > mapping stuff. TMCL aims to be self contained in terms of TMDM and
> > > TMRQL. Given we can identify the topic-type topic we don't need the
> > > tm:topic in order to formulate the query.
> >
> > Well, TMQL _has_ to use TMDM and needs hooks to get access to the
> > innards of a map.
> >
> > > Hope this starts to clear some things up.
> >
> > We still have to say something about making the fact
> >
> > Person isa tmcl:topicType
> >
> > accessible to the TMQL processor which effectively checks the map.
> >
> > \rho
> > --
> > Austrian Research Centers, Environmental Monitoring Systems
> > http://www.smart-systems.at/rd/rd_environment_en.html
> >
>
> --
> And then he said: "You should read my blog." http://kill.devc.at/
>
--
And then he said: "You should read my blog." http://kill.devc.at/
More information about the sc34wg3
mailing list