Ambiguous content models -- allowed or disallowed by XSDL?

I am involved in a discussion regarding XBRL (eXtensible Business
Reporting Language) in which a person closely involved in the
development of XBRL is maintaining that ambiguous content models (ACMs)
are an "open issue" as to whether or not they are permitted by the
normative XSDL spec (er, sorry, "recommendation").  Their statement can
be found below (between lines).  Basically, I am questioning the
specific sentence "To be specific, the XSDL standard does not disallow
ambiguous content models.".  I believe it does explicitly disallow ACMs,
and would appreciate some clarification from those who are better versed
on the subject.

-----------------------------------------------------------------------
One man's basic conformance is another's matter of opinion, in this
case. To be specific, the XSDL standard does not disallow ambiguous
content models.  There is a non-normative appendix on the subject in the
basic XML standard, for the purposes of relating XML DTDs to SGML DTDs.
It requires two assumptions (non-normative really is normative, and what
was written for DTDs applies to schemas) to turn ambiguous content
models into a conformance issue.

Six months ago, all of the current versions of XSD tools accepted the
XBRL schemas as valid. The XSDL standard hasn't changed in six months,
neither have the XBRL schemas. What has changed is the interpretation by
software designers of the standard or the parts of the standard that
they choose to implement. We originally had some key/keyref constraints
in the schema that had to be removed because no tool implemented this
part of the standard correctly. Substitution groups and the use of
anySimpleType is an issue still in flux. XSDL tools vendors are a long
way from acheiving stability and consensus. Until such time as they do,
we have to rely on our own careful reading of the XSDL standard.
-----------------------------------------------------------------------

My position is that the tools may not have caught ambiguous content
models but that ACMs are not, and never have been, accepted as part of
XSDL.  They should, therefore, not be created in schemas.

Furthermore, just because available tools do not assert XSDL
requirements does not mean that it is acceptable to create schemas which
violate the normative spec (er, "recommendation").  The real problem
arises when tools _require_ a schema to contain some illegal feature.
To the best of my knowledge, this rarely occurs -- although the author
of the above comment pointed out that early XSDL tools required a
minimal schema document which defined the XML namespace and bound the
prefix "xml" to this to allow attributes such as xml:lang="en" to exist.
Correct me if I am wrong, but I believe this clearly is an example of a
tool requiring illegal declarations (I understand it has now been
fixed).

Comments from others on this issue would be greatly appreciated.  If you
wish to review the XBRL schemas, they can be found at:

http://www.xbrl.org/Core/2002-01-09/default.htm

Regards,

Ian Stokes-Rees

-- 
Ian Stokes-Rees, Client Services      DecisionSoft Ltd.
Telephone: +44-1865-203192            http://www.decisionsoft.com

Received on Wednesday, 12 June 2002 11:32:33 UTC