[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 >