XSchema: New draft of John Cowan's proposal
tms at ansa.co.uk
Thu Jun 4 13:06:01 BST 1998
John> John Cowan <URL:mailto:cowan at locke.ccil.org>
=> In article <357594B7.E555C044 at locke.ccil.org>, John wrote:
John> The new URL is at
John> Changes include adopting the ID/IDREF model, renaming NAME to REF,
John> splitting off ENUM from VALUE (for use in ENUMTYPE elements), using
John> an attribute for *, ?, and + rather than elements, forbidding SEQ
John> within SEQ and CHOICE within CHOICE, getting NOTATION attributes
I like the changes; no argument here.
[I cheated by reading only the DTD; I assume the prose is similar to
that of XSchema-draft-19980601]
I'm not sure if the name "VALUE" for the default value of an attribute
is the clearest possible:
John> <!ELEMENT ATT ((TYPE|ENUMTYPE)?, (REQUIRED|IMPLIED|FIXED|VALUE))>
For somebody reading an actual Xschema, it might be assumed that VALUE
represented a fixed, rather than default, value - particularly if
FIXED never occurs in that particular Xschema. Would FIXEDVALUE and
DEFAULTVALUE be better names for FIXED and VALUE?
Another issue which different people will have different opinions on
is the content of the DOCTYPE element - instead of having freely
mixable content of (ELEMENT|ENTITY|NOTATION)*, it might be better to
enforce the grouping of declarations: (NOTATION*, ENTITY*, ELEMENT*).
What do other people think?
John> Still to be dealt with: ..., embedded doco in XSchemas, ...
Can I have a first cut at this?
<!-- use #PCDATA for this now; we can loosen the content model as the
spec evolves (in particular, we will want to link to IDs
elsewhere in the XSchema -->
<!ELEMENT DOC (#PCDATA)>
<!ELEMENT DOCTYPE (DOC?, (ELEMENT|ENTITY|NOTATION)*)>
<!ELEMENT ELEMENT (DOC?, (EMPTY|ANY|MIXED|REF|CHOICE|SEQ), (ATT)*)>
<!ELEMENT ATT (DOC?, (TYPE|ENUMTYPE)?, (REQUIRED|IMPLIED|FIXED|VALUE))>
Do individual ENUM values need documenting? Or is it sufficient to
have the DOC in ATT describe them?
Do entities and notations need documentation?
A final comment, on conformance: should valid documents having a DTD which
uses the XSchema DTD as a base architecture be considered conformant? Or
should we insist that only the results of architectural forms processing
can qualify? (Using architectural forms means that an internal subset may
be used if it is compatible with the base architecture. Incidentally, I
think an internal subset should be allowed in conforming XSchema documents,
if it contains only general entity definitions (and notations?); as it is,
entities must be expanded.)
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev