ORA-DM-165-C: Confusing what the mandate for comments is

SECTION 6.6.3: Comment information item

It says "Although the data model is able to represent comments, 
it may be unnecessary or even onerous for some applications to 
do so. Applications should construct nodes in the data model to 
represent comments. The decision whether or not to represent
comments is considered outside the scope of the data model, 
consequently the data model makes no attempt to control or
identify if any or all comments are ignored."

This paragraph is confusing.  Either "application" is referring
to a program that invokes an XQuery or XPath processor, or
"application" means the XQuery or XPath processor itself.  

In the first interpretation,
it is hard to interpret the sentence "Applications
should construct nodes in the data model to represent comments"
for two reasons: a) it is not the user program's responsibility
to construct nodes at all; nodes are a formalism of the data
model and not necessarily things that the user program knows 
how to construct, aside from invoking the XQuery or XPath 
processor (where is the C or Java library to create a node?)
b) It is not the business of the data model to tell
users how to write their programs anyway.

The second interpretation seems to give the XQuery 
or XPath processor the license to discard comments from the user's
XML data.  Granted the user may want them discarded, but there
are ways he can express that desire, for example, using XPath
expressions that filter out comments.  In addition, if the 
user has explicitly coded a comment constructor in his XQuery
expression, is it really right to disregard the user's stated 
desire to create a comment?  If you really intend that XQuery
support for comments is optional, then it ought to be called out
in the list of optional features (Xquery section 2.6 "Optional
features").

- Steve B.

Received on Monday, 16 February 2004 17:26:50 UTC