All Downloads are FREE. Search and download functionalities are using the official Maven repository.

xerces-2_12_1-xml-schema-1.1.docs.xml-schema.xml Maven / Gradle / Ivy

Go to download

Xerces2 is the next generation of high performance, fully compliant XML parsers in the Apache Xerces family. This new version of Xerces introduces the Xerces Native Interface (XNI), a complete framework for building parser components and configurations that is extremely modular and easy to program. The Apache Xerces2 parser is the reference implementation of XNI but other parser components, configurations, and parsers can be written using the Xerces Native Interface. For complete design and implementation documents, refer to the XNI Manual. Xerces2 is a fully conforming XML Schema 1.0 processor. A partial experimental implementation of the XML Schema 1.1 Structures and Datatypes Working Drafts (December 2009) and an experimental implementation of the XML Schema Definition Language (XSD): Component Designators (SCD) Candidate Recommendation (January 2010) are provided for evaluation. For more information, refer to the XML Schema page. Xerces2 also provides a complete implementation of the Document Object Model Level 3 Core and Load/Save W3C Recommendations and provides a complete implementation of the XML Inclusions (XInclude) W3C Recommendation. It also provides support for OASIS XML Catalogs v1.1. Xerces2 is able to parse documents written according to the XML 1.1 Recommendation, except that it does not yet provide an option to enable normalization checking as described in section 2.13 of this specification. It also handles namespaces according to the XML Namespaces 1.1 Recommendation, and will correctly serialize XML 1.1 documents if the DOM level 3 load/save APIs are in use.

There is a newer version: 2.12.2-xml-schema-1.1
Show newest version
<?xml version='1.0' encoding='UTF-8'?>
<!--
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 * 
 *      http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
-->
<!DOCTYPE s1 SYSTEM 'dtd/document.dtd'>
<s1 title="XML Schema">
    <s2 title="Introduction">
        <p>This package contains the implementations of the W3C XML 
        Schema 1.0 and 1.1 Languages, that are recommendation of the Worldwide Web Consortium.
        The XML Schema 1.0 Language is available in three parts:  
        <jump href="http://www.w3.org/TR/XMLSchema-0">XML Schema:  Primer</jump>  and
        <jump href="http://www.w3.org/TR/XMLSchema-1">XML Schema:  Structures</jump>  and
        <jump href="http://www.w3.org/TR/XMLSchema-2">XML Schema:  Datatypes</jump>.        
        The XML Schema 1.1 Language is available in two parts:
        <jump href='http://www.w3.org/TR/xmlschema11-1/'>Structures</jump> and
        <jump href='http://www.w3.org/TR/xmlschema11-2/'>Datatypes</jump>.
        The XML Schema 1.1 features supported by this release are listed below.
        In this document we also discuss our interpretation of the
        specifications where it seems to us particularly likely that
        others might arrive at a different interpretation.
        We consider this implementation to be complete except for the
        limitations cited below. The implementation has been
        extensively tested and known problem areas are set out below.
        Please read this document before using this package.
        </p>
    </s2>

<s2 title="XML Schema Programmer's Guide">
<p>This section provides the following topics:</p>

<ul>
<li><jump href='#supported-schema-1.1-features'>Supported XML Schema 1.1 Features</jump></li>
<li><jump href='#schema-limitations'>Limitations and known bugs</jump></li>
<li><link idref='faq-xs'>How do I?</link> -- 
    the most frequently asked questions
    about XML Schema that include some sample code.</li>
</ul>
</s2>
<anchor name="supported-schema-1.1-features"/>
    <s2 title="Supported XML Schema 1.1 Features">
        <ul>
           <li>All Groups</li>
           <ul>
              <li>maxOccurs may now be >1</li>
              <li>Wildcards are now allowed</li>
              <li>Derivation by extension</li>
              <li>xs:group is allowed as a child of xs:all</li>
           </ul>
           <li>Assertions</li>
           <li>Conditional Type Assignment</li>
           <li>Simplified Complex Type restriction rules (also known as Subsumption)</li>
           <li>Open Content and Default Open Content</li>
           <li>Default attribute group</li>
           <li>Target namespace on local element/attribute declarations</li>
           <li>Element declarations allowed in more than one substitution group</li>
           <li>Wildcards</li>
           <ul>
              <li>not namespace</li>
              <li>not QName</li>
              <li>not #defined</li>
              <li>not #definedSibling</li>
              <li>Relaxation of UPA in the presence of wildcards</li>
           </ul>
           <li>Overriding component definitions (xs:override)</li>
           <li>Conditional Inclusion</li>
           <ul>
              <li>vc:minVersion</li>
              <li>vc:maxVersion</li>
              <li>vc:typeAvailable</li>
              <li>vc:typeUnavailable</li>
              <li>vc:facetAvailable</li>
              <li>vc:facetUnavailable</li>
           </ul>
           <li>Context property for local simple/complex type definitions</li>
           <li>explicitTimezone facet and dateTimeStamp derived type</li>
           <li>yearMonthDuration and dayTimeDuration derived types</li>
           <li>precisionDecimal type</li>
           <li>Union types not expanded</li>
           <li>ID/IDREF</li>
           <ul>
              <li>Lists of ID</li>
              <li>Unions involving ID</li>
              <li>Multiple attributes of type ID</li>
              <li>Default values of type IDREF</li>
              <li>Default values for elements or attributes of type ID</li>
           </ul>
        </ul>
    </s2>
<anchor name='schema-limitations'/>
    <s2 title="Limitations">
        <ul>
            <li> Length, minLength, and maxLength facets are limited to the value 
            2147483647. Items larger than this limit will not be validated 
            correctly.</li>
            <li> The values of minOccurs and maxOccurs attributes are limited to
            the value 2147483647. Items larger than this limit will not be
            validated correctly.</li>
            <li> The values of minimum and maximum quantifiers in the pattern
            regular expressions are limited to the value 2147483647.
            Items larger than this limit will not be validated correctly.</li>
            <li> The absolute values of the fraction portion of the second values
            in date/time datatypes are limited to the value 2147483647.
            Items larger than this limit will not be validated correctly.
            i.e. 11.2147483648 is not supported as a second value. </li>
            <li> Leap seconds are not supported in the values of date/time datatypes.</li>
        </ul>
    </s2>
    <s2 title='Problem Areas/Known Bugs'>
        <ul>
            <li> For larger values of maxOccurs, an OutOfMemoryError may occur.
            The workaround for this problem, if your application permits it, 
            is to change the maxOccurs value to unbounded. If you are unable to
            change the schema you can configure Xerces-J so that it fails more
            gracefully by enabling the JAXP secure processing feature. See the
            Javadoc for javax.xml.XMLConstants.FEATURE_SECURE_PROCESSING for
            more details.
            </li>
            <li> The JAXP class javax.xml.validation.Schema is defined to be thread 
            safe. That is, applications are encouraged to share javax.xml.validation.Schema objects 
            across multiple threads. Some Xerces users have reported that, while doing XML Schema 1.1 
            validation javax.xml.validation.Schema is seen to be not thread safe. This problem was 
            observed in certain use cases, while using the XSD 1.1 construct &lt;assert&gt; in the 
            XSD documents. But there are also, various cases observed while using XSD 1.1 
            construct &lt;assert&gt;, when thread safety of javax.xml.validation.Schema is 
            seen to be working correctly.
            </li>
        </ul>
    </s2>
    <s2 title="Other Notes">
      <ul>
        <li> As of version 2.2.1, it is hoped that Xerces-J will always 
        be able to parse the Schema for Schemas current at the time of the product's release.  As of version
        2.2.1, this implies inserting special logic to permit the presence of
        the built-in Schema datatypes in this particular schema; an
        issue has been raised with the Schema Working Group, in hopes the document
        will be modified so that the built-in types are no
        longer presented as global components.  Thus, anyone planning
        to rely on the Schema for Schemas should be aware that the
        possibility exists that a change of this sort might be made in the future.</li>
        <li> In the original XML Schema recommendation, the lexical space of
        the simple type <code>gMonth</code> is <code>--MM--</code>. An erratum E2-12
        changed that to <code>--MM</code>. For compatibility reasons, Xerces currently
        supports both forms. To align with the recommendation, we have decided to
        deprecate the old form, and plan to discontinue support for that form
        in a future release. </li>
      </ul>
    </s2>
</s1>




© 2015 - 2024 Weber Informatics LLC | Privacy Policy