XSchema Spec - XSchema Element (Sections 2.0 and 2.1), Draft 4
SimonStL at classic.msn.com
Thu Jul 9 21:57:28 BST 1998
This is the latest version of the XSchema element. Namespaces now must appear
before element and notation declarations. I've attempted to clear up some of
the language surrounding the XSchema specification version and XSchemas
created using that specification.
Major Question: Do we want Attribute declarations allowed outside of element
declarations? If yes, we need to do that here. This will be fairly minor
surgery; the AttDef element will also need a new attribute for its parent
element. The XML 1.0 spec doesn't have any such production - it just uses
As always, a prettier HTML version of this will be posted shortly at
Dynamic HTML: A Primer / XML: A Primer / Cookies
2.0 XSchema Syntax
This section describes the XSchema document syntax. The XSchema document is an
XML document containing a single XSchema element in which information
describing the schema is nested. The XSchema element must be preceded by an
XML declaration and may be preceded by other declarations, comments, and
2.1 The XSchema Element
The XSchema element is the root element for all XSchema documents. The
declaration for the XSchema element is:
<!ELEMENT XSC:XSchema (XSC:Doc?, XSC:More?, XSC:Namespace? (XSC:ElementDecl |
XSC:Notation | XSC:XSchema)*)>
Version CDATA #FIXED "1.0"
MimeType CDATA "application/xml"
FileExtension CDATA "xml">
The XSC:XSchema element contains other elements describing the XSchema and
building a schema. These elements are described in later sections of this
specification. The XSC:XSchema element may also contain other XSC:XSchema
elements nested inside of it.
The XSC:XSchema element's attributes include information about the version of
the XSchema specification used as well as information about the type of
documents described by the XSchema.
Information about the XSchema specification version used to create this
XSchema, contained in the XSC:Version attribute, is critical to proper
handling of documents should the specification be updated in the future. This
specification is identified as version 1.0. Future major and minor versions of
the XSchema specification should identify themselves differently. No provision
is made at this time for nesting XSchemas using different versions of the
specification under a parent XSchema element.
The XSC:MimeType and XSC:FileExtension attributes are used to provide a
suggested MIME (Multipurpose Internet Mail Extensions) Content-type and file
extension for documents created using a particular XSchema. Applications may
use this information to identify XML document types. A document library that
generates XML documents dynamically could assign file extensions and MIME
types based on the XSchema used.
Applications using this information should use the values stored in the first
XSchema encountered during processing. For instance, if an XSchema includes
another nested XSchema, the values for the XSC:MimeType and XSC:FileExtension
attributes of the root XSchema should be used.
By default, most XML documents are assumed to have a MIME type of
application/xml, as described in "XML Media Types" by E.J. Whitehead and
Murata Makoto. Developers who need different MIME types for documents created
using particular XSchemas may register other MIME types with the IETF, as
described in RFC 1590, or use the 'x-' prefix syntax for subtypes, as
described in RFC 1521.
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