[sc34wg3] TMQL Chapter 4, Sections 1 + 2

Patrick Durusau patrick at durusau.net
Sun Jul 5 19:23:42 EDT 2009


Greetings!

Apologies for being late. It was a long week.

Continuing to explore the recesses and crannies of the latest draft of 
TMQL (http://www.isotopicmaps.org/tmql/tmql.html).

First, let me say up front that I would lose all the examples, both here 
and elsewhere.

I assume this is being authored in markup so production of a version 
with even *more* examples for an annotated version of the final text 
should be trivial. That would allow an annotated version to concentrate 
on being a tutorial like document and allow the standard to concentrate 
on being a standard.

4.2 becomes:

*****
Atoms are values drawn from the data types listed in Table 1.
*****

Only partially defined by CTM. References W3C for date and date-time 
(note error in TMQL draft, which reports dateTime).

Might be easier to simply invoke the data types as defined by the W3C 
and list those in table 1.

Besides, number is simply wrong. There are lot of non-ASCII digits in 
the world. I really don't see why we need this limitation.

I don't know what to make up decimal patterns being preferred over 
shorter integer patterns? For what purposes? By who or what? Suggest 
lose that line without more explanation.

The rest of that paragraph is just repeitition so strike it as well.

Well, except for the escape character doesn't appear in the regex. Need 
to fix that or better yet reference a regex with it already present.

Lose the examples as I said before.

Oh, the IRI or QName to explicitly provide data type? Not available 
except on strings. I don't see how the reference to clause 8 helps 
anything?

The next paragraph starts:

"For references either absolute IRIs or QNames can be used:"

Should read:

"Item references can be either absolute IRIs or QNames."

Suggestion: Rather than dipping in and out of the formal syntax, why not 
simply make all the prose statements, uninterrupted by the formal syntax 
and then express the same material in a concluding section? Or subsection?

Actually my preference would be to simply define all the material once, 
in prose and then in a normative annex have the formal grammar that 
tracks the statements in the prose.

That serves the audience of readers who prefer prose as well as those 
who prefer to simply read formal productions.

Not to mention that it would be easier to say: IRIs as defined by RFC 
3987 and then to move on. Noting that the productions there bear little 
resemblance to /([^<>'{}|^`] - [#x00-#x20]])*/ as found in TMQL.

Same should be true for prefix.

Odd that identifier should be limited to ASCII text under the current 
proposal.

Lose the language following [16] identifier.

IRIs can be defined both in prose and in productions but let's do it 
fully in both places, not half in and half out.

Same observation for QNames.

Lose the Note on prefixes.

In the paragraph that starts: "If the item reference is a QName, then 
the ...."

Suggest: "If an item reference is a QName, then the QName prefix 
(without the trailing colon ":") is a topic identifier for a topic of 
type tmql:ontology in the effective map. It is an error if no such topic 
exists."

OK, now what? We have declared an error condition. Does the processor 
just laugh? Out loud or silently?

Then,...

"If no subject indicator for that ontology topic exists, then an error 
will be flagged."

Gee, that sounds a lot worse than simply having an error. ;-)

It seems to assume that the tmql:ontology topic exists, so we are past 
the first error condition, but now we find that the topic exists but 
doesn't have a subject indicator? Now we get "flagged." Now what?

We can say the handling of errors is implementation defined but we 
really should say something.

Besides, all this is at odds with: "This International Standard does not 
define an API (application programming interface) to interact with query 
processors and also refrains from naming certain error conditions."

Unless you think these are "certain other error conditions."

And that paragraph concludes:

"Otherwise one such subject indicator - together with the identifier in 
the QName - is used to construct an absolute IRI according to the rules 
in [RFC3986] (5.2, Relative Resolution)."

The final statement seems to presume that the subject indicator can 
meaningfully be used with the QName to construct an identifier. I don't 
know of any fixed relationship between QNames and subject indicators 
that are found in a topic. Is this meant to enforce such a relationship? 
Particularly since a topic can have more than one subject indicator.

Hopefully this will be a better week.

Hope everyone is at the start of a great week!

Patrick

-- 
Patrick Durusau
patrick at durusau.net
Chair, V1 - US TAG to JTC 1/SC 34
Convener, JTC 1/SC 34/WG 3 (Topic Maps)
Editor, OpenDocument Format TC (OASIS), Project Editor ISO/IEC 26300
Co-Editor, ISO/IEC 13250-1, 13250-5 (Topic Maps)



More information about the sc34wg3 mailing list