XSchema Spec, Sections 2.0 and 2.1 (Draft 1)

Chris Maden crism at oreilly.com
Mon Jun 8 18:33:32 BST 1998


[Simon St.Laurent]
> <!ELEMENT XSC:XSchema (Doc?, (ElementDecl | Entity | Notation |
> Namespace | XSchema)*)>

(1) Remember that namespaces confer no magic for validation; this
declaration probably meant to be:

<!ELEMENT XSC:XSchema (XSC:Doc?, (XSC:ElementDecl | XSC:Entity |
XSC:Notation | XSC:Namespace | XSC:XSchema)*)>

Me, I'm partial to lower-case, and would even prefer:

<!ELEMENT xsc:xschema (xsc:doc?, (xsc:elementdecl | xsc:entity |
xsc:notation | xsc:namespace | xsc:xschema)*)>

(2) I feel very strongly that XSchema should not define entities for
use in documents.  If it does, you're only inventing a new syntax for
DTDs, and inheriting all of their problems, to which I say: "big
deal".

The biggest problem with DTDs (IMO) is that they conflate definitions
for a class of documents with definitions for a single document
instance.  A schema should try, as cleanly as possible, to refer only
to the *class* of documents, and leave entities out of it.  After
XSchema is successful, then we can move on to tackle a new and better
syntax for entity declaration.

Now, it may be that the "Entity" element is only intended for use
within the schema.  If so, great, but I think the name should reflect
that.  Maybe call it "module"?

<xsc:module id="para.content">
  <xsc:mixed>
    <xsc:element idref="emph"/>
    <xsc:element idref="term"/>
    <xsc:element idref="quote"/>
    <xsc:element idref="literal"/>
  </xsc:mixed>
</xsc:module>

<xsc:elementdecl id="para">
  <xsc:content>
    <xsc:modref idref="para.content"/>
  </xsc:content>
</xsc:elementdecl>

(Note: I'm making up the content model syntax here.  But you get the
idea.)

-Chris
-- 
<!NOTATION SGML.Geek PUBLIC "-//Anonymous//NOTATION SGML Geek//EN">
<!ENTITY crism PUBLIC "-//O'Reilly//NONSGML Christopher R. Maden//EN"
"<URL>http://www.oreilly.com/people/staff/crism/ <TEL>+1.617.499.7487
<USMAIL>90 Sherman Street, Cambridge, MA 02140 USA" NDATA SGML.Geek>

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;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)




More information about the Xml-dev mailing list