





















|
| |
This package contains an implementation of the W3C XML
Schema language. This implementation is experimental. The
XML Schema
language is in candidate recommendation stage: it is still
possible that some changes in the specification could
occur. You should also not necessarily
consider this implementation complete or correct.
The limitations of this implementation are detailed below.
Please read this document before using this package.
|
| |
This package contains an implementation of a subset of the
W3C XML Schema Language as specified in the 24 October 2000
Candidate Recommendations for Structures and
Datatypes. The
parsers contained in this package are able to read and
validate XML documents with the grammar specified in either
DTD or XML Schema format. There is no functionality for
accessing typed data.
We are making this package available in order to get
feedback on the features in the XML Schema language
design and on representing an XML document's grammar
as part of the document's DOM tree. We intend to update
this package until it implements all of the functionality
of the then current XML Schema Draft. If you are
interested in a particular unimplemented feature, we welcome
your feedback on the Xerces-J mailing list.
|
| |
The XML Schema implementation in this package is a
subset of the features defined in the 24 October 2000
XML Schema Candidate Recommendations.
|
| |
- Element declarations
- Model group definitions: group
- Model groups: all, choice, sequence
- Attribute declarations
- Attribute group definitions
- Simple type definitions
- Complex type definitions
- Wildcards: any
- Wildcards: anyAttribute
- import and include
- Notation declaration
- Annotation
- Redefine
- Identity constraints: unique, key, keyref
(experimental)
|
| |
- Type derivation
- Anonymous types
- Nested element declaration
- Separate symbol spaces for elements, types, groups, and
attribute groups
- Substitution Groups
- Target namespace
- "xsi:schemaLocation" and "xsi:noNamespaceSchemaLocation"
- Include
- Import
- "xsi:type"
|
| |
- Constraints in Chapter 5 and elsewhere in the
specifications
- Nullable
- Block and final
- Fixed and default values of elements
|
| |
- Built-in simple types (primitive, derived)
- Simple type derivation (restriction, list, union)
- Regular expressions
- Binary (base64, hex)
- Constraining facets
|
| |
- Date/time -- ISO8601 (work in progress)
|
| |
The schema is specified by the xsi:schemaLocation or
xsi:noNamespaceSchemaLocation attribute on the root
element of the document. The xsi prefix must be bound to the
Schema document instance namespace, as specified by the
candidate recommendation specification. See the sample provided in the
Usage section.
When a schemaLocation attribute appears in an instance
document, only the first targetNamespace URI/schema
location pair will be considered (the remaining pairs will
be ignored). Subsequent schemaLocation attributes will
also be ignored. To validate an instance document against
multiple schemas, it is necessary to use <include>,
<import> or <redefine> element information items
within one of the schema documents.
We also emphasize that support for schema ID constraints is
highly experimental. Some of the limitations of this support
are:
- Very little error-checking has been performed.
- Identity constraints will not work if the schema under
consideration has a targetNamespace.
- The XPath expressions used for specifying selectors and
fields are
a subset of XPath. Currently, only the self, child, and
attribute axes are supported.
- Field values are currently compared in the lexical space.
Therefore, the values "1" and "1.0" are NOT equal for a
field of type "decimal" (even though they should be).
Finally, note that in <all> model groups fewer than 8 elements must
be used.
|
|
|