[tmcl-wg] Feedback on TMCL requirements 1.7
Lars Marius Garshol
tmcl-wg@isotopicmaps.org
03 Apr 2003 13:37:30 +0200
Hi Mary,
Went through the document now. Comments below.
General:
- in general I think this is a major leap forward. The document is
still something of a dumping ground for not-yet-digested ideas, but
that was probably the intent.
- you may find looking at the TMQL requirements document instructive.
Of everything I've written, that's still one of the things I'm
happiest with.
- TMCL must support some form of controlled combination of schemas.
This includes merging of schemas (already in there), but also the
possibility for one schema to build on/extend another.
- I think we should replace "the TMCL" by "TMCL" everywhere. Ditto
for TMQL.
Specific:
- 1: Good stuff, but the correct URI for the IRC channel is
<URL: irc://irc.freenode.net/#topicmaps >. This applies to 8 as
well.
- 2.1: I'd say "express constraints" rather than "express constraint
mechanisms" in the first line
- 2.2: Why define "validity constraint"? Also, why the reference to
XTM?
- 2.2: The phrase "with these constraints" seems like it can be
removed from the definition of "TMCL schema".
- 3.1: I'd say "may" make use of TMQL rather than "will".
- 3.2: It's difficult to write this section without making
inappropriate assumptions about how TMCL will work. What you might
do is to define a constraint as "a requirement that information
items which match a given criterion (called the selector) must also
match a second criterion (called the restriction)". This allows us
to say what 3.2 says without assuming too much about how TMCL will
work.
Example: "all composers must have exactly one name in the
unconstrained scope". Here the selector is "all topics of type
composer", while the restriction is "must have exactly one name in
the unconstrained scope".
- 3.2.1: Not sure what the first sentence means. Maybe this could now
be written something like this:
"TMCL must:
- support selectors that select topics by their type,
- support the restriction that a topic may only be used as a type
[uh, actually, I'm not sure this is meaningful],
- [your third bullet I can't understand]"
- 3.2.2: Could now be rewritten using the terms "selectors" and
"restriction", but is actually impressively precise without them,
so it may not be worth the clutter.
Note that the last bullet is a typing constraint. Could be written
as follows:
- restricting the allowed instances of a type to a specified set
of topics (that is, to an enumeration)
- 3.2.4: XML Schema can't be used to constrain topic maps. It's just
not possible. The second para makes too many assumptions about
TMCL and is in any case not a requirement, but a design wish. If
they could say *why* they want this we'd have a requirement.
- 3.2.5: We could now rephrase this as:
"TMCL may make use of TMQL to define both selectors and
restrictions."
- 3.3.1: What is a validation exception? The part about strict/loose
validation should be made a separate paragraph. We may want to
rephrase this in terms of an open/closed assumption.
- 3.3.4: first bullet: I'd say "TMCL schemas shall be able to aid
applications in providing more intuitive user interfaces." That
removes the how and focuses on the what.
- 3.3.5: this should be merged with 3.3.4, I think. It's about the
same thing. Dmitry talks about how (templating) as do I
(introspection). The hows should be factored out so that we're
left with only the whats.
- 3.4.1: "schemas"
- 3.4.3: What does this mean?
- 3.5.1: Some explanation is probably good.
- 3.5.5: Should perhaps say more clearly that ISO is not going to do
this, but that others are encouraged to do it. As it is now it
seems to be saying both that we will and that we won't. :)
- 3.6: What does this mean?
- 4: I think this can be rewritten using the selector/restriction
terminology.
- 5: section numbers are wrong.
--
Lars Marius Garshol, Ontopian <URL: http://www.ontopia.net >
GSM: +47 98 21 55 50 <URL: http://www.garshol.priv.no >