Another abandoned server code base... this is kind of an ancestor of taskrambler.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

8360 lines
380 KiB

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en-US" xmlns="http://www.w3.org/1999/xhtml" xml:lang=
"en-US">
<head>
<meta name="generator" content=
"HTML Tidy for Mac OS X (vers 31 October 2006 - Apple Inc. build 13), see www.w3.org" />
<title>Basic XML Schema Patterns for Databinding Version
1.0</title>
<style type="text/css">
/*<![CDATA[*/
code { font-family: monospace; }
div.constraint,
div.issue,
div.note,
div.notice { margin-left: 2em; }
dt.label { display: run-in; }
li, p { margin-top: 0.3em;
margin-bottom: 0.3em; }
.diff-chg { background-color: yellow; }
.diff-del { background-color: red; text-decoration: line-through;}
.diff-add { background-color: lime; }
table { empty-cells: show; }
table caption {
font-weight: normal;
font-style: italic;
text-align: left;
margin-bottom: .5em;
}
div.issue {
color: red;
}
div.exampleInner pre { margin-left: 1em;
margin-top: 0em; margin-bottom: 0em}
div.exampleOuter {border: 4px double gray;
margin: 0em; padding: 0em}
div.exampleInner { background-color: #d5dee3;
border-top-width: 4px;
border-top-style: double;
border-top-color: #d3d3d3;
border-bottom-width: 4px;
border-bottom-style: double;
border-bottom-color: #d3d3d3;
padding: 4px; margin: 0em }
div.exampleWrapper { margin: 4px }
div.exampleHeader { font-weight: bold;
margin: 4px}
p { clear: both }
th
{
color: #000000;
background-color: #CCCC99;
}
span.test-assertion
{
background-color: #FFC0CB;
}
span.test-assertion-tr:hover
{
background-color: #FFC0CB;
}
.prefix
{
float:left; width: 15%;
background: yellow;
color: black;
border: solid black thin;
padding: .1em;
margin-left: 0%;
margin-right: 2%;
}
div.xpath
{
text-align: center;
background-color: #FFCC88;
border-top-width: 4px;
border-top-style: double;
border-top-color: #FFEECC;
border-bottom-width: 4px;
border-bottom-style: double;
border-bottom-color: #FFEECC;
padding: 8px;
margin: 0em
}
pre em
{
font-style: italic;
font-weight: bold;
}
/*]]>*/
</style>
<link rel="stylesheet" type="text/css" href=
"http://www.w3.org/StyleSheets/TR/W3C-WG-NOTE" />
<link rel="contents" href="#contents" />
</head>
<body>
<div class="head">
<p><a href="http://www.w3.org/"><img src=
"http://www.w3.org/Icons/w3c_home" alt="W3C" height="48" width=
"72" /></a></p>
<h1>Basic XML Schema Patterns for Databinding Version 1.0</h1>
<h2>W3C Working Group Note 05 May 2009</h2>
<dl>
<dt>This version:</dt>
<dd><a href=
"http://www.w3.org/TR/2009/NOTE-xmlschema-patterns-20090505/">http://www.w3.org/TR/2009/NOTE-xmlschema-patterns-20090505/</a></dd>
<dt>Latest version:</dt>
<dd><a href=
"http://www.w3.org/TR/xmlschema-patterns">http://www.w3.org/TR/xmlschema-patterns</a></dd>
<dt>Previous versions:</dt>
<dd><a href=
"http://www.w3.org/TR/2008/WD-xmlschema-patterns-20080328/">http://www.w3.org/TR/2008/WD-xmlschema-patterns-20080328/</a></dd>
<dt>Editors:</dt>
<dd>Jonathan Calladine, BT</dd>
<dd>George Cowe, Origo Services Limited</dd>
<dd>Paul Downey, BT</dd>
<dd>Yves Lafon, W3C</dd>
</dl>
<p class="copyright"><a href=
"http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a>
© 2009 <a href="http://www.w3.org/"><acronym title=
"World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href=
"http://www.csail.mit.edu/"><acronym title=
"Massachusetts Institute of Technology">MIT</acronym></a>, <a href=
"http://www.ercim.org/"><acronym title=
"European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
<a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved.
W3C <a href=
"http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
<a href=
"http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>
and <a href=
"http://www.w3.org/Consortium/Legal/copyright-documents">document
use</a> rules apply.</p>
</div>
<hr />
<div>
<h2><a name="abstract" id="abstract">Abstract</a></h2>
<p>This specification provides a set of basic <a href=
"#XMLSchema">[XML Schema 1.0]</a> patterns known to be
interoperable between state of the art databinding implementations.
The patterns may be used to describe <a href="#XML">[XML 1.0]</a>
representations of commonly used data structures. The data
structures described are intended to be independent of any
particular programming language, database or modelling
environment.</p>
</div>
<div>
<h2><a name="status" id="status">Status of this Document</a></h2>
<p><em>This section describes the status of this document at the
time of its publication. Other documents may supersede this
document. A list of current W3C publications and the latest
revision of this technical report can be found in the <a href=
"http://www.w3.org/TR/">W3C technical reports index</a> at
http://www.w3.org/TR/.</em></p>
<p>This is a public Working Group Note produced by the <a href=
"http://www.w3.org/2002/ws/databinding/">XML Schema Patterns for
Databinding Working Group</a>, which is part of the <a href=
"http://www.w3.org/2002/ws/Activity">W3C Web Services Activity</a>.
This publication as a Working Group Note coincides with the end of
the Working Group's charter period, and represents the culmination
of the group's work.</p>
<p>Comments from interested parties and incorporates comments
received since the first Last Call publication on <a href=
"http://www.w3.org/TR/2006/WD-xmlschema-patterns-20061122/">22
November 2006</a> of this document were sent to the public <a href=
"mailto:public-xsd-databinding-comments@w3.org">public-xsd-databinding-comments@w3.org</a>
mailing list (<a href=
"http://lists.w3.org/Archives/Public/public-xsd-databinding-comments/">public
archive</a>).</p>
<p>This document was built using evidence and experience gained
examining the interoperability of a significant number of state of
the art databinding implementations using a <a href=
"http://www.w3.org/2002/ws/databinding/testsuite/">test suite</a>,
see the <a href=
"http://www.w3.org/2002/ws/databinding/edcopy/report/basic.html">Basic
Patterns Implementation Report</a> and a collection of
implementation reports including the <a href=
"http://www.w3.org/2002/ws/databinding/edcopy/collection/">collection</a>
of patterns detected from "the wild".</p>
<p>The Working Group also produced an accompanying <a href=
"#AdvancedPatterns">[Advanced Patterns]</a> document, which
includes <a href="#XMLSchema">[XML Schema 1.0]</a> patterns in
common use, but which were discovered not to be well supported by
state of the art databinding implementations.</p>
<p>Publication as a Working Group Note does not imply endorsement
by the W3C Membership. This is a draft document and may be updated,
replaced or obsoleted by other documents at any time. It is
inappropriate to cite this document as other than work in
progress.</p>
<p>This document was produced by a group operating under the
<a href="http://www.w3.org/Consortium/Patent-Policy-20040205/">5
February 2004 W3C Patent Policy</a>. W3C maintains a <a rel=
"disclosure" href=
"http://www.w3.org/2004/01/pp-impl/38435/status#specs">public list
of any patent disclosures</a> made in connection with the
deliverables of the group; that page also includes instructions for
disclosing a patent. An individual who has actual knowledge of a
patent which the individual believes contains <a href=
"http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">
Essential Claim(s)</a> must disclose the information in accordance
with <a href=
"http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">
section 6 of the W3C Patent Policy</a>.</p>
</div>
<hr />
<div class="toc">
<h2><a name="contents" id="contents">Table of Contents</a></h2>
<p class="toc">1. <a href="#Introduction">Introduction</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;1.1 <a href="#notation">Notational
Conventions</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;1.2 <a href=
"#namespaces">Namespaces</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;1.3 <a href=
"#document-conformance">Document Conformance</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;1.4 <a href=
"#implementation-conformance">Implementation Conformance</a><br />
2. <a href="#patterns">Schema Patterns</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.1 <a href="#group-SchemaElement">Schema
Element</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.2 <a href=
"#group-Annotations">Annotations</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.3 <a href=
"#group-Properties">Properties</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.4 <a href="#group-Import">Import and
Include</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.5 <a href="#group-GlobalElement">Global
Element Declarations</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.6 <a href="#group-GlobalAttribute">Global
Attribute Declarations</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.7 <a href="#group-Element">Element
Declarations</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.8 <a href="#group-Attribute">Attribute
Declarations</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.9 <a href=
"#group-GlobalSimpleType">Global SimpleType Declarations</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.10 <a href=
"#group-GlobalComplexType">Global ComplexType
Declarations</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.11 <a href="#group-SimpleType">SimpleType
Declarations</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.12 <a href=
"#group-ComplexType">ComplexType Declarations</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.13 <a href=
"#group-Sequence">Sequences</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.14 <a href=
"#group-ElementPredefinedTypes">Element Predefined Types</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;2.15 <a href=
"#group-AttributePredefinedTypes">Attribute Predefined
Types</a><br />
3. <a href="#refs">References</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;3.1 <a href="#normrefs">Normative
References</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;3.2 <a href="#informrefs">Informative
References</a><br /></p>
<h3><a name="appendix" id="appendix">Appendices</a></h3>
<p class="toc">A. <a href="#structures">Data Types &amp;
Structures</a> (Non-Normative)<br />
&nbsp;&nbsp;&nbsp;&nbsp;A.1 <a href="#optional">Null
Value</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;A.2 <a href="#default">Default
Value</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;A.3 <a href=
"#enumeration">Enumeration</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;A.4 <a href=
"#collection">Collection</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;A.5 <a href="#inheritance">Inherited
Collection</a><br />
&nbsp;&nbsp;&nbsp;&nbsp;A.6 <a href="#vector">Vector</a><br />
B. <a href="#detection">Detecting Patterns</a>
(Non-Normative)<br />
C. <a href="#xpath-idioms">XPath 2.0 Idioms</a>
(Non-Normative)<br />
D. <a href="#patternsummary">Pattern Summary</a>
(Non-Normative)<br />
E. <a href="#assertionsummary">Assertion Summary</a>
(Non-Normative)<br />
F. <a href="#schemasummary">Supported XML Schema elements,
attributes and simple types</a> (Non-Normative)<br />
G. <a href="#WS-I">Relationship with the WS-I Basic Profile</a>
(Non-Normative)<br />
H. <a href="#acknowledgments">Acknowledgements</a>
(Non-Normative)<br /></p>
</div>
<hr />
<div class="body">
<div class="div1">
<h2><a name="Introduction" id="Introduction"></a>1.
Introduction</h2>
<p>A databinding tool generates a mapping between <a href=
"#XML">[XML 1.0]</a> documents which conform to an <a href=
"#XMLSchema">[XML Schema 1.0]</a> schema and an internal data
representation. For example, a Web services databinding tool may
use <a href="#XMLSchema">[XML Schema 1.0]</a> descriptions inside a
<a href="#WSDL20">[WSDL 2.0]</a> or <a href="#WSDL11">[WSDL
1.1]</a> document to produce and consume <a href="#XML">[XML
1.0]</a>, <a href="#SOAP12">[SOAP 1.2]</a> and <a href=
"#SOAP11">[SOAP 1.1]</a> messages in terms of data structures in a
programming language or data held inside a database.</p>
<p><a href="#XMLSchema">[XML Schema 1.0]</a> provides a wide
variety of methods for describing the same <a href="#XML">[XML
1.0]</a> structure. Conversely an abstract concept such as "null"
may be represented in a wide variety of different ways using
<a href="#XMLSchema">[XML Schema 1.0]</a>.</p>
<p>A representative collection of databinding implementations in
common use has been used to provide an indication of the "state of
the art". State of the art databinding implementations have
displayed uneven and inconsistent support of the W3C <a href=
"#XMLSchema">[XML Schema 1.0]</a> Recommendation resulting in
impaired interoperability and a poor user experience of databinding
tools:</p>
<ul>
<li>rejecting valid <a href="#XMLSchema">[XML Schema 1.0]</a>
documents,</li>
<li>rejecting valid <a href="#XML">[XML 1.0]</a> instance
documents, and</li>
<li>making the content of valid <a href="#XML">[XML 1.0]</a>
instance documents unavailable in mapped data structures.</li>
</ul>
<p>This specification provides a basic set of example <a href=
"#XMLSchema">[XML Schema 1.0]</a> constructs and types in the form
of concrete <a href="#XPath20">[XPath 2.0]</a> expressions. These
patterns are known to work well with state of the art databinding
implementations.</p>
<p>Authors of <a href="#XMLSchema">[XML Schema 1.0]</a> documents
may find these patterns useful in providing a better user
experience for consumers of their schemata using databinding tools.
Whilst it is not possible to guarantee that schemata produced using
these patterns will give a good user experience with the universal
set of databinding tools, the patterns contained in this
specification have been all been tested with a number of different
tools covering a variety of different programming languages and
environments.</p>
<p>Implementers of databinding tools may find these patterns useful
to represent simple and common place data structures. Ensuring
tools recognize at least these simple <a href="#XMLSchema">[XML
Schema 1.0]</a> patterns and present them in terms most appropriate
to the specific language, database or environment will provide an
improved user experience when using databinding tools. It is
inappropriate to use this specification to constrain implementation
of the <a href="#XMLSchema">[XML Schema 1.0]</a>
Recommendation.</p>
<div class="div2">
<h3><a name="notation" id="notation"></a>1.1 Notational
Conventions</h3>
<p>All parts of this specification are normative, with the
EXCEPTION of notes, examples, and sections explicitly marked as
Non-Normative.</p>
<p>The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL"
in this specification are to be interpreted as described in
<a href="#RFC2119">[RFC 2119]</a>.</p>
<p>Each <a href="#XMLSchema">[XML Schema 1.0]</a> pattern is
defined using a single <a href="#XPath20">[XPath 2.0]</a>
expression constraining one or more <a href="#XMLSchema">[XML
Schema 1.0]</a> items.</p>
<p id="ISSUE-52">Each <a href="#XMLSchema">[XML Schema 1.0]</a>
pattern is identified using a unique and stable URI <a href=
"#RFC3986">[RFC 3986]</a>.</p>
<p>Assertions about documents and implementations that are not
enforced by the normative patterns are marked by a dagger symbol
(†) at the end of a sentence. Each assertion has been assigned a
unique and stable identifier. The assertion identifiers may be used
by implementations of this specification for any purpose, such as
error reporting. The assertions and their identifiers are
summarized in section <a href="#assertionsummary"><b>E. Assertion
Summary</b></a>.</p>
</div>
<div class="div2">
<h3><a name="namespaces" id="namespaces"></a>1.2 Namespaces</h3>
<p>This specification uses a number of namespace prefixes
throughout; they are listed in <a href="#nsprefix">Table 1-1</a>.
Note that the choice of any namespace prefix is arbitrary and not
semantically significant (see <a href="#XMLNS">[XML
Namespaces]</a>).</p>
<a name="nsprefix" id="nsprefix"></a>
<table summary="Namespace prefixes usage in this specification"
border="1">
<caption>Table 1-1. Prefixes and Namespaces used in this
specification</caption>
<tbody>
<tr>
<th align="left" rowspan="1" colspan="1">Prefix</th>
<th align="left" rowspan="1" colspan="1">Namespace</th>
</tr>
<tr>
<td class="label" rowspan="1" colspan="1">xs</td>
<td rowspan="1" colspan="1">http://www.w3.org/2001/XMLSchema</td>
</tr>
<tr>
<td class="label" rowspan="1" colspan="1">xsi</td>
<td rowspan="1" colspan="1">
http://www.w3.org/2001/XMLSchema-instance</td>
</tr>
<tr>
<td class="label" rowspan="1" colspan="1">soap11</td>
<td rowspan="1" colspan="1">
http://schemas.xmlsoap.org/soap/envelope/</td>
</tr>
<tr>
<td class="label" rowspan="1" colspan="1">soap12</td>
<td rowspan="1" colspan="1">
http://www.w3.org/2003/05/soap-envelope</td>
</tr>
<tr>
<td class="label" rowspan="1" colspan="1">wsdl11</td>
<td rowspan="1" colspan="1">http://schemas.xmlsoap.org/wsdl/</td>
</tr>
<tr>
<td class="label" rowspan="1" colspan="1">wsdl20</td>
<td rowspan="1" colspan="1">http://www.w3.org/2005/08/wsdl</td>
</tr>
<tr>
<td class="label" rowspan="1" colspan="1">pat</td>
<td rowspan="1" colspan="1">
http://www.w3.org/2002/ws/databinding/patterns/6/09/</td>
</tr>
<tr>
<td class="label" rowspan="1" colspan="1">ex</td>
<td rowspan="1" colspan="1">
http://www.w3.org/2002/ws/databinding/examples/6/09/</td>
</tr>
</tbody>
</table>
<br /></div>
<div class="div2">
<h3><a name="document-conformance" id=
"document-conformance"></a>1.3 Document Conformance</h3>
<p id="ISSUE-40">A document claiming conformance to this
specification:</p>
<ul>
<li><span id="assert-Unicode" class="test-assertion-tr">MUST use
either the UTF-8 or UTF-16 <a href="#Unicode">[Unicode]</a>
encoding.<sup><a href="#assert-Unicode-summary" title=
"Link to assertion assert-Unicode summary"></a></sup></span></li>
<li><span id="assert-BOM" class="test-assertion-tr">MAY include the
<a href="#Unicode">[Unicode]</a> Byte Order Mark (<a href=
"#BOM">[BOM]</a>).<sup><a href="#assert-BOM-summary" title=
"Link to assertion assert-BOM summary"></a></sup></span></li>
<li><span id="assert-XML10" class="test-assertion-tr">MUST be a
well-formed <a href="#XML">[XML 1.0]</a> document<sup><a href=
"#assert-XML10-summary" title=
"Link to assertion assert-XML10 summary"></a></sup></span></li>
<li><span id="assert-XMLSchema10" class="test-assertion-tr">MUST be
a 'schema document', as defined in <a href="#XMLSchema">[XML Schema
1.0]</a>, and MUST therefore meet the "<a href=
"http://www.w3.org/TR/xmlschema-1/#gloss-src">Constraints on the
representation of schema components in XML</a>" provided
therein.<sup><a href="#assert-XMLSchema10-summary" title=
"Link to assertion assert-XMLSchema10 summary"></a></sup></span></li>
<li><span id="assert-BasicPatterns" class="test-assertion-tr">MUST
only contain <a href="#XML">[XML 1.0]</a> element nodes and
attribute nodes which form a part of one or more complete patterns
contained in this specification.<sup><a href=
"#assert-BasicPatterns-summary" title=
"Link to assertion assert-BasicPatterns summary"></a></sup></span></li>
<li><span id="assert-CommentsAndPIs" class="test-assertion-tr">MAY
contain additional <a href="#XML">[XML 1.0]</a> comment nodes and
processing instruction nodes.<sup><a href=
"#assert-CommentsAndPIs-summary" title=
"Link to assertion assert-CommentsAndPIs summary"></a></sup></span></li>
</ul>
</div>
<div class="div2">
<h3><a name="implementation-conformance" id=
"implementation-conformance"></a>1.4 Implementation
Conformance</h3>
<p>An implementation that claims conformance to this
specification:</p>
<ul>
<li><span id="assert-SchemaValid" class="test-assertion-tr">MUST be
able to process any <a href="#XMLSchema">[XML Schema 1.0]</a>
document conforming to this specification<sup><a href=
"#assert-SchemaValid-summary" title=
"Link to assertion assert-SchemaValid summary"></a></sup></span></li>
<li><span id="assert-DataModel" class="test-assertion-tr">MUST
produce a data model exposing all of the <a href="#XML">[XML
1.0]</a> element node and attribute node content constrained by the
originating <a href="#XMLSchema">[XML Schema 1.0]</a>
document.<sup><a href="#assert-DataModel-summary" title=
"Link to assertion assert-DataModel summary"></a></sup></span></li>
<li><span id="assert-ConsumeXML" class="test-assertion-tr">MUST be
able to consume any well-formed <a href="#XML">[XML 1.0]</a>
document which satisfies local-schema validity against the
originating <a href="#XMLSchema">[XML Schema 1.0]</a> document
exposing all of the <a href="#XML">[XML 1.0]</a> element node and
attribute node content in the data model.<sup><a href=
"#assert-ConsumeXML-summary" title=
"Link to assertion assert-ConsumeXML summary"></a></sup></span></li>
<li><span id="assert-ProduceXML" class="test-assertion-tr">MUST be
able to produce well-formed <a href="#XML">[XML 1.0]</a> instance
documents which satisfy local-schema validity against the
originating <a href="#XMLSchema">[XML Schema 1.0]</a> document
containing values exposed in the data model.<sup><a href=
"#assert-ProduceXML-summary" title=
"Link to assertion assert-ProduceXML summary"></a></sup></span></li>
<li><span id="assert-ConsumeInvalidAllowed" class=
"test-assertion-tr">MAY consume well-formed <a href="#XML">[XML
1.0]</a> instance documents which do not satisfy local-schema
validity against the originating <a href="#XMLSchema">[XML Schema
1.0]</a> document.<sup><a href=
"#assert-ConsumeInvalidAllowed-summary" title=
"Link to assertion assert-ConsumeInvalidAllowed summary"></a></sup></span></li>
<li><span id="assert-ProduceInvalidAllowed" class=
"test-assertion-tr">MAY allow the production of well-formed
<a href="#XML">[XML 1.0]</a> instance documents containing values
exposed in the data model which do not satisfy local-schema
validity against the originating <a href="#XMLSchema">[XML Schema
1.0]</a> document.<sup><a href=
"#assert-ProduceInvalidAllowed-summary" title=
"Link to assertion assert-ProduceInvalidAllowed summary"></a></sup></span></li>
</ul>
<p id="ISSUE-3">Describing the form of the data model provided by a
databinding implementation is beyond the scope of this
specification. For example, the unconstrained built-in numeric
primitive types, <code>xs:decimal</code>, <code>xs:integer</code>,
<code>xs:negativeInteger</code>, <code>xs:positiveInteger</code>,
<code>xs:nonNegativeInteger</code> and
<code>xs:nonPositiveInteger</code>, do not map directly to native
types in many programming languages and are likely to be presented
as a toolkit specific construct or more generalised ways, such as a
'string'.</p>
<p id="ISSUE-72">Note that although the patterns contained in this
document are defined using <a href="#XPath20">[XPath 2.0]</a>,
there is no requirement for a conformant implementation to support
<a href="#XPath20">[XPath 2.0]</a>.</p>
</div>
</div>
<div class="div1">
<h2><a name="patterns" id="patterns"></a>2. Schema Patterns</h2>
<p>This section defines the set of concrete <a href=
"#XMLSchema">[XML Schema 1.0]</a> patterns which may appear inside
a conformant document. A pattern definition includes the following
information:</p>
<dl>
<dt class="label"><a name="patterns-URI" id=
"patterns-URI"></a>URI</dt>
<dd>
<p>A URI <a href="#RFC3986">[RFC 3986]</a> is provided to identify
the pattern. The URI can be dereferenced to return informal
documentation for the pattern including a list of examples and
public schemas which exhibit the pattern.</p>
</dd>
<dt class="label"><a name="patterns-xpath" id=
"patterns-xpath"></a>XPath</dt>
<dd>
<p>A normative <a href="#XPath20">[XPath 2.0]</a> expression, used
to detect a pattern in an <a href="#XMLSchema">[XML Schema 1.0]</a>
document, returning a set of one or more XML element and attribute
nodes. The <a href="#XPath20">[XPath 2.0]</a> expression having a
context node of an <code>&lt;xs:schema&gt;</code> element node
which may be an <a href="#XMLSchema">[XML Schema 1.0]</a> document
element, or an <code>&lt;xs:schema&gt;</code> element contained
inside an <a href="#XML">[XML 1.0]</a> document such as <a href=
"#WSDL20">[WSDL 2.0]</a> description.</p>
<p>Note, the <a href="#XPath20">[XPath 2.0]</a> expressions used to
identify individual patterns may be wrapped inside an <a href=
"#XSLT20">[XSLT 2.0]</a> stylesheet or <a href=
"#Schematron">[Schematron]</a> schema and used to detect <a href=
"#XMLSchema">[XML Schema 1.0]</a> patterns contained in a <a href=
"#WSDL20">[WSDL 2.0]</a> or other document, see <a href=
"#detection"><b>B. Detecting Patterns</b></a> and <a href=
"#document-conformance"><b>1.3 Document Conformance</b></a>.
Readers unfamiliar with <a href="#XPath20">[XPath 2.0]</a> may find
the list of <a href="#xpath-idioms"><b>C. XPath 2.0 Idioms</b></a>
used within this specification useful.</p>
</dd>
<dt class="label"><a name="patterns-examples" id=
"patterns-examples"></a>Examples</dt>
<dd>
<p>Optionally one or more non-normative <a href="#XMLSchema">[XML
Schema 1.0]</a> documents or fragments, followed by one or more
valid instance document fragments.</p>
</dd>
</dl>
<p>A collection of patterns, including patterns beyond the scope of
this specification, are available from <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/">http://www.w3.org/2002/ws/databinding/patterns/6/09/</a>.
This document offers no additional semantics for the schema
patterns presented beyond those specified by the <a href=
"#XMLSchema">[XML Schema 1.0]</a> Recommendation.</p>
<div class="div2">
<h3><a name="group-SchemaElement" id="group-SchemaElement"></a>2.1
Schema Element</h3>
<p><span id="assert-SchemaElement" class="test-assertion-tr">The
<code>xs:schema</code> element MAY be the document element, but MAY
also appear within other descriptions such as a <a href=
"#WSDL20">[WSDL 2.0]</a> or <a href="#WSDL11">[WSDL 1.1]</a>
document. <sup><a href="#assert-SchemaElement-summary" title=
"Link to assertion assert-SchemaElement summary"></a></sup></span></p>
<div class="div3">
<h4><a name="pattern-TargetNamespace" id=
"pattern-TargetNamespace"></a>2.1.1 TargetNamespace</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace">
TargetNamespace</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace">
http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-TargetNamespace">
<code>.[@targetNamespace]/ (., @targetNamespace)</code></div>
<p id="ISSUE-26-1"><span id="assert-TargetNamespace" class=
"test-assertion-tr">An <a href="#XMLSchema">[XML Schema 1.0]</a>
document conforming to this specification MUST define a
<code>targetNamespace</code> whose value is an absolute URI.
<sup><a href="#assert-TargetNamespace-summary" title=
"Link to assertion assert-TargetNamespace summary"></a></sup></span></p>
<p>The following example <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/TargetNamespace">TargetNamespace</a>]
illustrates the use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace">
TargetNamespace</a> pattern:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:schema</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> targetNamespace</b>="http://www.w3.org/2002/ws/databinding/examples/6/09/" elementFormDefault="qualified"&gt;
&lt;xs:element name="targetNamespace" type="xs:string" /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:schema</b>&gt;
</pre></div>
<p id="instance-TargetNamespace01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/TargetNamespace#TargetNamespace01">TargetNamespace01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:targetNamespace&gt;foo&lt;/ex:targetNamespace&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-QualifiedLocalElements" id=
"pattern-QualifiedLocalElements"></a>2.1.2
QualifiedLocalElements</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements">
QualifiedLocalElements</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements">
http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-QualifiedLocalElements">
<code>.[@elementFormDefault = 'qualified']/
(@elementFormDefault)</code></div>
<p id="ISSUE-27"><span id="assert-QualifiedLocalElements" class=
"test-assertion-tr">An <a href="#XMLSchema">[XML Schema 1.0]</a>
document conforming to this specification MUST namespace qualify
all locally declared elements using a schema element
<code>elementFormDefault</code> attribute value of
<code>qualified</code>. <sup><a href=
"#assert-QualifiedLocalElements-summary" title=
"Link to assertion assert-QualifiedLocalElements summary"></a></sup></span></p>
<p>The following example <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/QualifiedLocalElements">QualifiedLocalElements</a>]
illustrates the use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements">
QualifiedLocalElements</a> pattern:</p>
<div class="exampleInner">
<pre>
&lt;xs:schema targetNamespace="http://www.w3.org/2002/ws/databinding/examples/6/09/" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> elementFormDefault</b>="qualified"&gt;
&lt;xs:element name="qualifiedLocalElements"&gt;
&lt;xs:complexType&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="element1" type="xs:string" /&gt;
&lt;xs:element name="element2" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
&lt;/xs:element&gt;
&lt;/xs:schema&gt;
</pre></div>
<p id="instance-QualifiedLocalElements01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/QualifiedLocalElements#QualifiedLocalElements01">QualifiedLocalElements01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:qualifiedLocalElements&gt;
&lt;ex:element1&gt;some data&lt;/ex:element1&gt;
&lt;ex:element2&gt;some more data&lt;/ex:element2&gt;
&lt;/ex:qualifiedLocalElements&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-UnqualifiedLocalAttributes" id=
"pattern-UnqualifiedLocalAttributes"></a>2.1.3
UnqualifiedLocalAttributes</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes">
UnqualifiedLocalAttributes</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes">
http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-UnqualifiedLocalAttributes">
<code>.[not(@attributeFormDefault) or @attributeFormDefault =
'unqualified']/ (., @attributeFormDefault)</code></div>
<p>The following example <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/UnqualifiedLocalAttributes">UnqualifiedLocalAttributes</a>]
illustrates the use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes">
UnqualifiedLocalAttributes</a> pattern:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:schema</b> targetNamespace="http://www.w3.org/2002/ws/databinding/examples/6/09/" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> attributeFormDefault</b>="unqualified" elementFormDefault="qualified"&gt;
&lt;xs:element name="unqualifiedLocalAttributes" type="xs:string" /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:schema</b>&gt;
</pre></div>
<p id="instance-UnqualifiedLocalAttributes01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/UnqualifiedLocalAttributes#UnqualifiedLocalAttributes01">UnqualifiedLocalAttributes01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:unqualifiedLocalAttributes&gt;foo&lt;/ex:unqualifiedLocalAttributes&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-SchemaVersion" id=
"pattern-SchemaVersion"></a>2.1.4 SchemaVersion</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SchemaVersion">
SchemaVersion</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SchemaVersion">
http://www.w3.org/2002/ws/databinding/patterns/6/09/SchemaVersion</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-SchemaVersion">
<code>./@version</code></div>
<p>The following example <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SchemaVersion">SchemaVersion</a>]
illustrates the use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SchemaVersion">
SchemaVersion</a> pattern:</p>
<div class="exampleInner">
<pre>
&lt;xs:schema targetNamespace="http://www.w3.org/2002/ws/databinding/examples/6/09/" elementFormDefault="qualified" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> version</b>="this is version 42"&gt;
&lt;xs:element name="schemaVersion" type="xs:string" /&gt;
&lt;/xs:schema&gt;
</pre></div>
<p id="instance-SchemaVersion01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SchemaVersion#SchemaVersion01">SchemaVersion01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:schemaVersion&gt;foo&lt;/ex:schemaVersion&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-Annotations" id="group-Annotations"></a>2.2
Annotations</h3>
<div class="div3">
<h4><a name="pattern-DocumentationElement" id=
"pattern-DocumentationElement"></a>2.2.1 DocumentationElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DocumentationElement">
DocumentationElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DocumentationElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/DocumentationElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-DocumentationElement">
<code>.//xs:annotation/xs:documentation/ (.., ., .//*,
.//@*)</code></div>
<p id="example-DocumentationElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DocumentationElement">
DocumentationElement</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DocumentationElement">DocumentationElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:annotation</b>&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:documentation</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> xml:lang</b>="en" /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:annotation</b>&gt;
&lt;xs:element name="documentationElement" type="xs:string"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:annotation</b>&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:documentation</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> xml:lang</b>="en" /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:annotation</b>&gt;
&lt;/xs:element&gt;
</pre></div>
<p id="instance-DocumentationElement01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DocumentationElement#DocumentationElement01">DocumentationElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:documentationElement&gt;hello world&lt;/ex:documentationElement&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-Properties" id="group-Properties"></a>2.3
Properties</h3>
<div class="div3">
<h4><a name="pattern-IdentifierName" id=
"pattern-IdentifierName"></a>2.3.1 IdentifierName</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName">
IdentifierName</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName">
http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-IdentifierName">
<code>.//.[matches(@name, "^[A-Za-z_]([A-Za-z0-9_]{0,31})$")]/
(@name)</code></div>
<p id="ISSUE-10">Note, this pattern represents a subset of the
native identifier formats supported by many, but not all,
implementations and is therefore most likely to be supported by a
databinding tools which directly maps an <a href="#XML">[XML
1.0]</a> <a href=
"http://www.w3.org/TR/REC-xml-names/#NT-NCName">NCName</a> to an
native identifier.</p>
<p><span id="assert-AttributeElementNameClash" class=
"test-assertion-tr">The <a href=
"http://www.w3.org/TR/REC-xml-names/#NT-NCName">NCName</a> used to
declare an <a href="#XML">[XML 1.0]</a> attribute MUST NOT be used
as the declared <a href=
"http://www.w3.org/TR/REC-xml-names/#NT-NCName">NCName</a> of a
child element. <sup><a href=
"#assert-AttributeElementNameClash-summary" title=
"Link to assertion assert-AttributeElementNameClash summary"></a></sup></span></p>
<p id="example-IdentifierName">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName">
IdentifierName</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IdentifierName">IdentifierName</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="identifierName" type="xs:string" /&gt;
</pre></div>
<p id="instance-IdentifierName02">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IdentifierName#IdentifierName02">IdentifierName02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:identifierName&gt;Hello&lt;/ex:identifierName&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NonIdentifierName" id=
"pattern-NonIdentifierName"></a>2.3.2 NonIdentifierName</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName">
NonIdentifierName</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NonIdentifierName"><code>.//.[@name
and not(matches(@name, "^[A-Za-z_]([A-Za-z0-9_]{0,31})$"))]/
(@name)</code></div>
<p id="example-NonIdentifierName">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName">
NonIdentifierName</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NonIdentifierName">NonIdentifierName</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="non-Identifier-Name" type="xs:string" /&gt;
</pre></div>
<p id="instance-NonIdentifierName02">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NonIdentifierName#NonIdentifierName02">NonIdentifierName02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:non-Identifier-Name&gt;Hello&lt;/ex:non-Identifier-Name&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NotMixed" id="pattern-NotMixed"></a>2.3.3
NotMixed</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NotMixed">NotMixed</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NotMixed">http://www.w3.org/2002/ws/databinding/patterns/6/09/NotMixed</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NotMixed"><code>.//.[@mixed =
'false']/ (@mixed)</code></div>
<p id="example-NotMixed">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NotMixed">NotMixed</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NotMixed">NotMixed</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="notMixed" type="ex:NotMixed" /&gt;
&lt;xs:complexType name="NotMixed" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> mixed</b>="false"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="notMixedElement" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-NotMixedExample01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NotMixed#NotMixedExample01">NotMixedExample01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:notMixed&gt;
&lt;ex:notMixedElement&gt;Stuff&lt;/ex:notMixedElement&gt;
&lt;/ex:notMixed&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-MinOccurs1" id="pattern-MinOccurs1"></a>2.3.4
MinOccurs1</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1">MinOccurs1</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1">http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-MinOccurs1"><code>.//.[@minOccurs =
'1']/ (@minOccurs)</code></div>
<p id="example-MinOccurs1">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1">MinOccurs1</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/MinOccurs1">MinOccurs1</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="minOccurs1" type="ex:MinOccurs1" /&gt;
&lt;xs:complexType name="MinOccurs1"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="value" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> minOccurs</b>="1" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-MinOccurs01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/MinOccurs1#MinOccurs01">MinOccurs01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:minOccurs1&gt;
&lt;ex:value&gt;44&lt;/ex:value&gt;
&lt;/ex:minOccurs1&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-MaxOccurs1" id="pattern-MaxOccurs1"></a>2.3.5
MaxOccurs1</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/MaxOccurs1">MaxOccurs1</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/MaxOccurs1">http://www.w3.org/2002/ws/databinding/patterns/6/09/MaxOccurs1</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-MaxOccurs1"><code>.//.[@maxOccurs =
'1']/ (@maxOccurs)</code></div>
<p id="example-MaxOccurs1">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/MaxOccurs1">MaxOccurs1</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/MaxOccurs1">MaxOccurs1</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="maxOccurs1" type="ex:MaxOccurs1" /&gt;
&lt;xs:complexType name="MaxOccurs1"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="value" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> maxOccurs</b>="1" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-MaxOccurs01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/MaxOccurs1#MaxOccurs01">MaxOccurs01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:maxOccurs1&gt;
&lt;ex:value&gt;44&lt;/ex:value&gt;
&lt;/ex:maxOccurs1&gt;
</pre></div>
<p id="instance-MaxOccurs02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/MaxOccurs1#MaxOccurs02">MaxOccurs02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:maxOccurs1&gt;
&lt;ex:value&gt;4&lt;/ex:value&gt;
&lt;/ex:maxOccurs1&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-Id" id="pattern-Id"></a>2.3.6 Id</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/Id">Id</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/Id">http://www.w3.org/2002/ws/databinding/patterns/6/09/Id</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-Id"><code>.//@id</code></div>
<p id="example-Id">The following example <a href="#XMLSchema">[XML
Schema 1.0]</a> extract illustrates the use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/Id">Id</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/Id">Id</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="idExample" type="ex:IdExample" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> id</b>="node1" /&gt;
&lt;xs:complexType name="IdExample" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> id</b>="node2"&gt;
&lt;xs:sequence <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> id</b>="node3"&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> id</b>="node4" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="string" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> id</b>="node5" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-IdExample01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/Id#IdExample01">IdExample01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:idExample string="hello"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ComplexTypeConcrete" id=
"pattern-ComplexTypeConcrete"></a>2.3.7 ComplexTypeConcrete</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeConcrete">
ComplexTypeConcrete</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeConcrete">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeConcrete</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ComplexTypeConcrete">
<code>.//xs:complexType[@abstract='false']/
(@abstract)</code></div>
<p id="example-ComplexTypeConcrete">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeConcrete">
ComplexTypeConcrete</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeConcrete">ComplexTypeConcrete</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="complexTypeConcrete" type="ex:ComplexTypeConcrete" /&gt;
&lt;xs:complexType name="ComplexTypeConcrete" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> abstract</b>="false"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="premium" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ComplexTypeConcreteExample01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeConcrete#ComplexTypeConcreteExample01">ComplexTypeConcreteExample01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:complexTypeConcrete&gt;
&lt;ex:premium&gt;1175&lt;/ex:premium&gt;
&lt;/ex:complexTypeConcrete&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-GlobalElementConcrete" id=
"pattern-GlobalElementConcrete"></a>2.3.8
GlobalElementConcrete</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementConcrete">
GlobalElementConcrete</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementConcrete">
http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementConcrete</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-GlobalElementConcrete">
<code>./xs:element[@abstract='false']/ (@abstract)</code></div>
<p id="example-GlobalElementConcrete">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementConcrete">
GlobalElementConcrete</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElementConcrete">GlobalElementConcrete</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="globalElementConcrete" type="xs:string" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> abstract</b>="false" /&gt;
</pre></div>
<p id="instance-GlobalElementConcreteExample01">The following
example <a href="#XML">[XML 1.0]</a> element is valid against the
above example <a href="#XMLSchema">[XML Schema 1.0]</a> when
included inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElementConcrete#GlobalElementConcreteExample01">GlobalElementConcreteExample01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:globalElementConcrete&gt;Stuff&lt;/ex:globalElementConcrete&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-Import" id="group-Import"></a>2.4 Import and
Include</h3>
<div class="div3">
<h4><a name="pattern-ImportTypesNamespace" id=
"pattern-ImportTypesNamespace"></a>2.4.1 ImportTypesNamespace</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportTypesNamespace">
ImportTypesNamespace</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportTypesNamespace">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportTypesNamespace</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ImportTypesNamespace">
<code>.//xs:import[@namespace and not(@schemaLocation) and
(@namespace = ../../xs:schema/@targetNamespace)]/ (.,
@namespace)</code></div>
<p>This pattern is designed to capture a reference to a namespace
defined within a WSDL document types section.</p>
<p id="example-ImportTypesNamespace">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportTypesNamespace">
ImportTypesNamespace</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ImportTypesNamespace">ImportTypesNamespace</a>]:</p>
<div class="exampleInner">
<pre>
&lt;wsdl&gt;
&lt;xs:schema targetNamespace="http://www.w3.org/2002/ws/databinding/examples/6/09/static/1" elementFormDefault="qualified"&gt;
&lt;xs:element name="importTypesNamespace" type="xs:string" /&gt;
&lt;/xs:schema&gt;
&lt;xs:schema targetNamespace="http://www.w3.org/2002/ws/databinding/examples/6/09/static/2" elementFormDefault="qualified"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:import</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> namespace</b>="http://www.w3.org/2002/ws/databinding/examples/6/09/static/1" /&gt;
&lt;/xs:schema&gt;
&lt;/wsdl&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ImportNamespace" id=
"pattern-ImportNamespace"></a>2.4.2 ImportNamespace</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportNamespace">
ImportNamespace</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportNamespace">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportNamespace</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ImportNamespace">
<code>./xs:import[@namespace and not(@schemaLocation) and
not(@namespace = 'http://www.w3.org/2001/XMLSchema')]/ (.,
@namespace)</code></div>
<p id="example-ImportNamespace">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportNamespace">
ImportNamespace</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ImportNamespace">ImportNamespace</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:import</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> namespace</b>="http://example.com/a/namespace" /&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ImportSchema" id=
"pattern-ImportSchema"></a>2.4.3 ImportSchema</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportSchema">ImportSchema</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportSchema">http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportSchema</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ImportSchema">
<code>./xs:import[@namespace and @schemaLocation]/ (., @namespace,
@schemaLocation)</code></div>
<p id="example-ImportSchema">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportSchema">ImportSchema</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ImportSchema">ImportSchema</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:import</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> namespace</b>="http://example.com/a/namespace" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> schemaLocation</b>="http://www.w3.org/2002/ws/databinding/examples/6/09/static/Imported.xsd" /&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-Include" id="pattern-Include"></a>2.4.4
Include</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/Include">Include</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/Include">http://www.w3.org/2002/ws/databinding/patterns/6/09/Include</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-Include">
<code>./xs:include[@schemaLocation]/ (.,
@schemaLocation)</code></div>
<p id="example-Include">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/Include">Include</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/Include">Include</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:include</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> schemaLocation</b>="http://www.w3.org/2002/ws/databinding/examples/6/09/static/Included.xsd" /&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-GlobalElement" id="group-GlobalElement"></a>2.5
Global Element Declarations</h3>
<div class="div3">
<h4><a name="pattern-GlobalElement" id=
"pattern-GlobalElement"></a>2.5.1 GlobalElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement">
GlobalElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-GlobalElement">
<code>./xs:element[@name and @type and contains(@type, ':')]/ (.,
@name, @type)</code></div>
<p id="example-GlobalElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement">
GlobalElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElement">GlobalElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="globalElement" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:string" /&gt;
</pre></div>
<p id="instance-GlobalElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElement#GlobalElement01">GlobalElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:globalElement/&gt;
</pre></div>
<p id="instance-GlobalElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElement#GlobalElement02">GlobalElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:globalElement&gt;a value&lt;/ex:globalElement&gt;
</pre></div>
<p id="instance-GlobalElement03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElement#GlobalElement03">GlobalElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:globalElement&gt;another Value&lt;/ex:globalElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-GlobalElementSequence" id=
"pattern-GlobalElementSequence"></a>2.5.2
GlobalElementSequence</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence">
GlobalElementSequence</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence">
http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-GlobalElementSequence">
<code>./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/
(../../(., @name), .., ., xs:element/(., @name))</code></div>
<p id="example-GlobalElementSequence">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence">
GlobalElementSequence</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElementSequence">GlobalElementSequence</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="globalElementSequence"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexType</b>&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:sequence</b>&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="foo" type="xs:string" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="bar" type="xs:string" /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:sequence</b>&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexType</b>&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b>&gt;
</pre></div>
<p id="instance-GlobalElementSequence01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElementSequence#GlobalElementSequence01">GlobalElementSequence01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:globalElementSequence&gt;
&lt;ex:foo&gt;one&lt;/ex:foo&gt;
&lt;ex:bar&gt;two&lt;/ex:bar&gt;
&lt;/ex:globalElementSequence&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-GlobalElementComplexType" id=
"pattern-GlobalElementComplexType"></a>2.5.3
GlobalElementComplexType</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementComplexType">
GlobalElementComplexType</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementComplexType">
http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementComplexType</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-GlobalElementComplexType">
<code>.//xs:element[parent::xs:schema]/xs:complexType /
(.,..)</code></div>
<p id="example-GlobalElementComplexType">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementComplexType">
GlobalElementComplexType</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElementComplexType">GlobalElementComplexType</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="globalElementComplexType"&gt;
&lt;xs:complexType&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="name"&gt;
&lt;xs:complexType&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="firstName" type="xs:string" /&gt;
&lt;xs:element name="lastName" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
&lt;/xs:element&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
&lt;/xs:element&gt;
</pre></div>
<p id="instance-GlobalElementComplexType01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalElementComplexType#GlobalElementComplexType01">GlobalElementComplexType01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:globalElementComplexType&gt;
&lt;ex:name&gt;
&lt;ex:firstName&gt;Paul&lt;/ex:firstName&gt;
&lt;ex:lastName&gt;Paul&lt;/ex:lastName&gt;
&lt;/ex:name&gt;
&lt;/ex:globalElementComplexType&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-GlobalAttribute" id=
"group-GlobalAttribute"></a>2.6 Global Attribute Declarations</h3>
<div class="div3">
<h4><a name="pattern-GlobalAttribute" id=
"pattern-GlobalAttribute"></a>2.6.1 GlobalAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttribute">
GlobalAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-GlobalAttribute">
<code>./xs:attribute[@name and @type and contains(@type, ":")]/ (.,
@name, @type)</code></div>
<p id="example-GlobalAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttribute">
GlobalAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalAttribute">GlobalAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:attribute</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="globalAttributeAttr" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:string" /&gt;
&lt;xs:complexType name="GlobalAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="globalAttributeElement" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute ref="ex:globalAttributeAttr" /&gt;
&lt;/xs:complexType&gt;
&lt;xs:element name="globalAttribute" type="ex:GlobalAttribute" /&gt;
</pre></div>
<p id="instance-GlobalAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalAttribute#GlobalAttribute01">GlobalAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:globalAttribute ex:globalAttributeAttr="string"&gt;
&lt;ex:globalAttributeElement&gt;another string&lt;/ex:globalAttributeElement&gt;
&lt;/ex:globalAttribute&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-Element" id="group-Element"></a>2.7 Element
Declarations</h3>
<div class="div3">
<h4><a name="pattern-ElementMinOccurs0" id=
"pattern-ElementMinOccurs0"></a>2.7.1 ElementMinOccurs0</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0">
ElementMinOccurs0</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementMinOccurs0">
<code>.//xs:element[@minOccurs = '0' and (not(@maxOccurs) or
@maxOccurs = '1')]/ (@minOccurs, @maxOccurs)</code></div>
<p id="example-ElementMinOccurs0">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0">
ElementMinOccurs0</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs0">ElementMinOccurs0</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="elementMinOccurs0" type="ex:ElementMinOccurs0" /&gt;
&lt;xs:complexType name="ElementMinOccurs0"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="firstName" type="xs:string" /&gt;
&lt;xs:element name="middleName" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> minOccurs</b>="0" /&gt;
&lt;xs:element name="lastName" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ElementMinOccurs001">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs0#ElementMinOccurs001">ElementMinOccurs001</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:elementMinOccurs0&gt;
&lt;ex:firstName&gt;Paul&lt;/ex:firstName&gt;
&lt;ex:lastName&gt;Downey&lt;/ex:lastName&gt;
&lt;/ex:elementMinOccurs0&gt;
</pre></div>
<p id="instance-ElementMinOccurs002">as is the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs0#ElementMinOccurs002">ElementMinOccurs002</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:elementMinOccurs0&gt;
&lt;ex:firstName&gt;Paul&lt;/ex:firstName&gt;
&lt;ex:middleName&gt;Sumner&lt;/ex:middleName&gt;
&lt;ex:lastName&gt;Downey&lt;/ex:lastName&gt;
&lt;/ex:elementMinOccurs0&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ElementMinOccurs1" id=
"pattern-ElementMinOccurs1"></a>2.7.2 ElementMinOccurs1</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1">
ElementMinOccurs1</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementMinOccurs1">
<code>.//xs:element[@minOccurs = '1' and (not(@maxOccurs) or
@maxOccurs = '1')]/ (@minOccurs, @maxOccurs)</code></div>
<p id="example-ElementMinOccurs1">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1">
ElementMinOccurs1</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs1">ElementMinOccurs1</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="elementMinOccurs1" type="ex:ElementMinOccurs1" /&gt;
&lt;xs:complexType name="ElementMinOccurs1"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="elementMinOccurs1item" type="xs:string" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> minOccurs</b>="1" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ElementMinOccurs101">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs1#ElementMinOccurs101">ElementMinOccurs101</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:elementMinOccurs1&gt;
&lt;ex:elementMinOccurs1item&gt;item1&lt;/ex:elementMinOccurs1item&gt;
&lt;/ex:elementMinOccurs1&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ElementMaxOccurs1" id=
"pattern-ElementMaxOccurs1"></a>2.7.3 ElementMaxOccurs1</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccurs1">
ElementMaxOccurs1</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccurs1">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccurs1</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementMaxOccurs1">
<code>.//xs:element[(not(@minOccurs) or @minOccurs = '1') and
@maxOccurs = '1']/ (@minOccurs, @maxOccurs)</code></div>
<p id="example-ElementMaxOccurs1">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccurs1">
ElementMaxOccurs1</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMaxOccurs1">ElementMaxOccurs1</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="elementMaxOccurs1" type="ex:ElementMaxOccurs1" /&gt;
&lt;xs:complexType name="ElementMaxOccurs1"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="value" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> minOccurs</b>="1" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> maxOccurs</b>="1" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ElementMaxOccurs101">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMaxOccurs1#ElementMaxOccurs101">ElementMaxOccurs101</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:elementMaxOccurs1&gt;
&lt;ex:value&gt;44&lt;/ex:value&gt;
&lt;/ex:elementMaxOccurs1&gt;
</pre></div>
<p id="instance-ElementMaxOccurs102">as is the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMaxOccurs1#ElementMaxOccurs102">ElementMaxOccurs102</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:elementMaxOccurs1&gt;
&lt;ex:value&gt;4&lt;/ex:value&gt;
&lt;/ex:elementMaxOccurs1&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ElementMinOccurs0MaxOccursUnbounded" id=
"pattern-ElementMinOccurs0MaxOccursUnbounded"></a>2.7.4
ElementMinOccurs0MaxOccursUnbounded</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded">
ElementMinOccurs0MaxOccursUnbounded</a> pattern identified using
the URI <a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementMinOccurs0MaxOccursUnbounded">
<code>.//xs:element[@minOccurs = '0' and @maxOccurs = 'unbounded']/
(@minOccurs, @maxOccurs)</code></div>
<p id="example-NestedSequenceElementList">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded">
ElementMinOccurs0MaxOccursUnbounded</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NestedSequenceElementList">NestedSequenceElementList</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="nestedSequenceElementList" type="ex:NestedSequenceElementList" /&gt;
&lt;xs:complexType name="NestedItem"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="item" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> minOccurs</b>="0" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> maxOccurs</b>="unbounded" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
&lt;xs:complexType name="NestedSequenceElementList"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="nestedItem" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> minOccurs</b>="0" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> maxOccurs</b>="unbounded" type="ex:NestedItem" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-NestedSequenceElementList01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NestedSequenceElementList#NestedSequenceElementList01">NestedSequenceElementList01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nestedSequenceElementList&gt;
&lt;ex:nestedItem&gt;
&lt;ex:item&gt;item onexone&lt;/ex:item&gt;
&lt;ex:item&gt;item onextwo&lt;/ex:item&gt;
&lt;ex:item&gt;item onexthree&lt;/ex:item&gt;
&lt;ex:item&gt;item onexfour&lt;/ex:item&gt;
&lt;/ex:nestedItem&gt;
&lt;ex:nestedItem&gt;
&lt;ex:item&gt;item twoxone&lt;/ex:item&gt;
&lt;ex:item&gt;item twoxtwo&lt;/ex:item&gt;
&lt;ex:item&gt;item twoxthree&lt;/ex:item&gt;
&lt;ex:item&gt;item twoxfour&lt;/ex:item&gt;
&lt;/ex:nestedItem&gt;
&lt;/ex:nestedSequenceElementList&gt;
</pre></div>
<p id="example-ElementMinOccurs0MaxOccursUnbounded">The following
example <a href="#XMLSchema">[XML Schema 1.0]</a> extract
illustrates the use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded">
ElementMinOccurs0MaxOccursUnbounded</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs0MaxOccursUnbounded">ElementMinOccurs0MaxOccursUnbounded</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="durationList" type="ex:DurationList" /&gt;
&lt;xs:complexType name="DurationList"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="durationValue" type="xs:short" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> minOccurs</b>="0" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> maxOccurs</b>="unbounded" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ElementMinOccurs0MaxOccursUnbounded101">The
following example <a href="#XML">[XML 1.0]</a> element is valid
against the above example <a href="#XMLSchema">[XML Schema 1.0]</a>
when included inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs0MaxOccursUnbounded#ElementMinOccurs0MaxOccursUnbounded101">ElementMinOccurs0MaxOccursUnbounded101</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:durationList/&gt;
</pre></div>
<p id="instance-ElementMinOccurs0MaxOccursUnbounded102">as is the
following element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs0MaxOccursUnbounded#ElementMinOccurs0MaxOccursUnbounded102">ElementMinOccurs0MaxOccursUnbounded102</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:durationList&gt;
&lt;ex:durationValue&gt;24&lt;/ex:durationValue&gt;
&lt;ex:durationValue&gt;34&lt;/ex:durationValue&gt;
&lt;ex:durationValue&gt;44&lt;/ex:durationValue&gt;
&lt;/ex:durationList&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ElementMinOccurs1MaxOccursUnbounded" id=
"pattern-ElementMinOccurs1MaxOccursUnbounded"></a>2.7.5
ElementMinOccurs1MaxOccursUnbounded</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1MaxOccursUnbounded">
ElementMinOccurs1MaxOccursUnbounded</a> pattern identified using
the URI <a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1MaxOccursUnbounded">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1MaxOccursUnbounded</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementMinOccurs1MaxOccursUnbounded">
<code>.//xs:element[(not(@minOccurs) or @minOccurs = '1') and
@maxOccurs = 'unbounded']/ (@minOccurs, @maxOccurs)</code></div>
<p id="example-ElementMaxOccursUnbounded">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1MaxOccursUnbounded">
ElementMinOccurs1MaxOccursUnbounded</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMaxOccursUnbounded">ElementMaxOccursUnbounded</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="publications" type="ex:Publications" /&gt;
&lt;xs:complexType name="Publications"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="day" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> maxOccurs</b>="unbounded" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ElementMaxOccursUnbounded01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMaxOccursUnbounded#ElementMaxOccursUnbounded01">ElementMaxOccursUnbounded01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:publications&gt;
&lt;ex:day&gt;2002-09-24&lt;/ex:day&gt;
&lt;ex:day&gt;2003-04-14&lt;/ex:day&gt;
&lt;ex:day&gt;2004-03-31&lt;/ex:day&gt;
&lt;ex:day&gt;2005-06-04&lt;/ex:day&gt;
&lt;ex:day&gt;2006-07-03&lt;/ex:day&gt;
&lt;/ex:publications&gt;
</pre></div>
<p id="instance-ElementMaxOccursUnbounded02">as is the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMaxOccursUnbounded#ElementMaxOccursUnbounded02">ElementMaxOccursUnbounded02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:publications&gt;
&lt;ex:day&gt;2006-01-26&lt;/ex:day&gt;
&lt;/ex:publications&gt;
</pre></div>
<p id="example-ElementMinOccurs1MaxOccursUnbounded">The following
example <a href="#XMLSchema">[XML Schema 1.0]</a> extract
illustrates the use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1MaxOccursUnbounded">
ElementMinOccurs1MaxOccursUnbounded</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs1MaxOccursUnbounded">ElementMinOccurs1MaxOccursUnbounded</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="ageList" type="ex:AgeList" /&gt;
&lt;xs:complexType name="AgeList"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="ageValue" type="xs:short" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> minOccurs</b>="1" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> maxOccurs</b>="unbounded" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ElementMinOccurs1MaxOccursUnbounded101">The
following example <a href="#XML">[XML 1.0]</a> element is valid
against the above example <a href="#XMLSchema">[XML Schema 1.0]</a>
when included inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs1MaxOccursUnbounded#ElementMinOccurs1MaxOccursUnbounded101">ElementMinOccurs1MaxOccursUnbounded101</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:ageList&gt;
&lt;ex:ageValue&gt;44&lt;/ex:ageValue&gt;
&lt;/ex:ageList&gt;
</pre></div>
<p id="instance-ElementMinOccurs1MaxOccursUnbounded102">as is the
following element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementMinOccurs1MaxOccursUnbounded#ElementMinOccurs1MaxOccursUnbounded102">ElementMinOccurs1MaxOccursUnbounded102</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:ageList&gt;
&lt;ex:ageValue&gt;24&lt;/ex:ageValue&gt;
&lt;ex:ageValue&gt;34&lt;/ex:ageValue&gt;
&lt;ex:ageValue&gt;44&lt;/ex:ageValue&gt;
&lt;/ex:ageList&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ElementFormQualified" id=
"pattern-ElementFormQualified"></a>2.7.6 ElementFormQualified</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementFormQualified">
ElementFormQualified</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementFormQualified">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementFormQualified</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementFormQualified">
<code>.//xs:element[@form='qualified']/ (@form)</code></div>
<p id="example-ElementFormQualified">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementFormQualified">
ElementFormQualified</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementFormQualified">ElementFormQualified</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="elementFormQualified" type="ex:ElementFormQualified" /&gt;
&lt;xs:complexType name="ElementFormQualified"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="premium" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> form</b>="qualified" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ElementFormQualified01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementFormQualified#ElementFormQualified01">ElementFormQualified01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:elementFormQualified&gt;
&lt;ex:premium&gt;1175&lt;/ex:premium&gt;
&lt;/ex:elementFormQualified&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-SequenceElement" id=
"pattern-SequenceElement"></a>2.7.7 SequenceElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement">
SequenceElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-SequenceElement">
<code>.//xs:sequence/xs:element/(.)</code></div>
<p id="example-SequenceElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement">
SequenceElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceElement">SequenceElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="sequenceElement" type="ex:SequenceElement" /&gt;
&lt;xs:complexType name="SequenceElement"&gt;
&lt;xs:sequence&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b> name="element1" type="xs:string" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b> name="element2" type="xs:string" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b> name="element3" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-SequenceElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceElement#SequenceElement01">SequenceElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:sequenceElement&gt;
&lt;ex:element1&gt;element1&lt;/ex:element1&gt;
&lt;ex:element2&gt;element2&lt;/ex:element2&gt;
&lt;ex:element3&gt;element3&lt;/ex:element3&gt;
&lt;/ex:sequenceElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-SequenceSingleRepeatedElement" id=
"pattern-SequenceSingleRepeatedElement"></a>2.7.8
SequenceSingleRepeatedElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement">
SequenceSingleRepeatedElement</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-SequenceSingleRepeatedElement">
<code>.//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs =
'unbounded']/ (., @maxOccurs)</code></div>
<p id="example-SequenceSingleRepeatedElement">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement">
SequenceSingleRepeatedElement</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceSingleRepeatedElement">SequenceSingleRepeatedElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="sequenceSingleRepeatedElement" type="ex:SequenceSingleRepeatedElement" /&gt;
&lt;xs:complexType name="SequenceSingleRepeatedElement"&gt;
&lt;xs:sequence&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b> name="element" type="xs:string" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> maxOccurs</b>="unbounded" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-SequenceSingleRepeatedElement01">The following
example <a href="#XML">[XML 1.0]</a> element is valid against the
above example <a href="#XMLSchema">[XML Schema 1.0]</a> when
included inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceSingleRepeatedElement#SequenceSingleRepeatedElement01">SequenceSingleRepeatedElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:sequenceSingleRepeatedElement&gt;
&lt;ex:element&gt;element&lt;/ex:element&gt;
&lt;ex:element&gt;element&lt;/ex:element&gt;
&lt;ex:element&gt;element&lt;/ex:element&gt;
&lt;ex:element&gt;element&lt;/ex:element&gt;
&lt;ex:element&gt;element&lt;/ex:element&gt;
&lt;/ex:sequenceSingleRepeatedElement&gt;
</pre></div>
<p id="instance-SequenceSingleRepeatedElement02">as is the
following element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceSingleRepeatedElement#SequenceSingleRepeatedElement02">SequenceSingleRepeatedElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:sequenceSingleRepeatedElement&gt;
&lt;ex:element&gt;element&lt;/ex:element&gt;
&lt;/ex:sequenceSingleRepeatedElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ElementEmptySequence" id=
"pattern-ElementEmptySequence"></a>2.7.9 ElementEmptySequence</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptySequence">
ElementEmptySequence</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptySequence">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptySequence</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementEmptySequence">
<code>.//xs:element[@name]/xs:complexType/xs:sequence[not(node())]/
(., .., ../.., ../../@name)</code></div>
<p id="example-ElementEmptySequence">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptySequence">
ElementEmptySequence</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementEmptySequence">ElementEmptySequence</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="elementEmptySequence"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexType</b>&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:sequence</b> /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexType</b>&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b>&gt;
</pre></div>
<p id="instance-ElementEmptySequence01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementEmptySequence#ElementEmptySequence01">ElementEmptySequence01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:elementEmptySequence/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ElementEmptyComplexType" id=
"pattern-ElementEmptyComplexType"></a>2.7.10
ElementEmptyComplexType</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptyComplexType">
ElementEmptyComplexType</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptyComplexType">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptyComplexType</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementEmptyComplexType">
<code>.//xs:element[@name]/xs:complexType[not(node())]/ (., ..,
../@name)</code></div>
<p id="example-ElementEmptyComplexType">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptyComplexType">
ElementEmptyComplexType</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementEmptyComplexType">ElementEmptyComplexType</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="elementEmptyComplexType"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexType</b> /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b>&gt;
</pre></div>
<p id="instance-ElementEmptyComplexType01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementEmptyComplexType#ElementEmptyComplexType01">ElementEmptyComplexType01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:elementEmptyComplexType/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NillableElement" id=
"pattern-NillableElement"></a>2.7.11 NillableElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NillableElement">
NillableElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NillableElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NillableElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NillableElement">
<code>.//xs:element[@nillable = 'true' and not(@minOccurs = '0')]/
(@nillable)</code></div>
<p id="example-NillableElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NillableElement">
NillableElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NillableElement">NillableElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="nillableMiddleName" type="ex:NillableMiddleName" /&gt;
&lt;xs:complexType name="NillableMiddleName"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="firstName" type="xs:string" /&gt;
&lt;xs:element name="middleName" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> nillable</b>="true" /&gt;
&lt;xs:element name="lastName" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-NillableElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NillableElement#NillableElement01">NillableElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nillableMiddleName&gt;
&lt;ex:firstName&gt;Paul&lt;/ex:firstName&gt;
&lt;ex:middleName xsi:nil="true"/&gt;
&lt;ex:lastName&gt;Downey&lt;/ex:lastName&gt;
&lt;/ex:nillableMiddleName&gt;
</pre></div>
<p id="instance-NillableElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NillableElement#NillableElement02">NillableElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nillableMiddleName&gt;
&lt;ex:firstName&gt;Paul&lt;/ex:firstName&gt;
&lt;ex:middleName&gt;Sumner&lt;/ex:middleName&gt;
&lt;ex:lastName&gt;Downey&lt;/ex:lastName&gt;
&lt;/ex:nillableMiddleName&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NotNillableElement" id=
"pattern-NotNillableElement"></a>2.7.12 NotNillableElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NotNillableElement">
NotNillableElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NotNillableElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NotNillableElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NotNillableElement">
<code>.//xs:element[@nillable = 'false']/ (@nillable)</code></div>
<p id="example-NotNillableElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NotNillableElement">
NotNillableElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NotNillableElement">NotNillableElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="notNillableElement" type="ex:NotNillableElement" /&gt;
&lt;xs:complexType name="NotNillableElement"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="notNillableElement" type="xs:string" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> nillable</b>="false" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-NotNillableElement01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NotNillableElement#NotNillableElement01">NotNillableElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:notNillableElement&gt;
&lt;ex:notNillableElement&gt;Stuff&lt;/ex:notNillableElement&gt;
&lt;/ex:notNillableElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ElementTypeReference" id=
"pattern-ElementTypeReference"></a>2.7.13 ElementTypeReference</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference">
ElementTypeReference</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementTypeReference">
<code>.//xs:element[@name and @type and
namespace-uri-from-QName(resolve-QName(@type,.)) !=
'http://www.w3.org/2001/XMLSchema' and contains(@type, ':')]/ (.,
@name, @type)</code></div>
<p id="example-ElementTypeReference">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference">
ElementTypeReference</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementTypeReference">ElementTypeReference</a>]:</p>
<div class="exampleInner">
<pre>
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="elementTypeReference" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="ex:ElementTypeReference" /&gt;
&lt;xs:complexType name="ElementTypeReferenced"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="referenced" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
&lt;xs:complexType name="ElementTypeReference"&gt;
&lt;xs:sequence&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="text" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="ex:ElementTypeReferenced" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ElementTypeReference01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementTypeReference#ElementTypeReference01">ElementTypeReference01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:elementTypeReference&gt;
&lt;ex:text&gt;
&lt;ex:referenced&gt;foo&lt;/ex:referenced&gt;
&lt;/ex:text&gt;
&lt;/ex:elementTypeReference&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ElementReference" id=
"pattern-ElementReference"></a>2.7.14 ElementReference</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference">
ElementReference</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ElementReference">
<code>.//xs:element[@ref and contains(@ref, ':')]/ (.,
@ref)</code></div>
<p id="example-ElementReference">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference">
ElementReference</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementReference">ElementReference</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="customerName" type="ex:CustomerName" /&gt;
&lt;xs:element name="firstName" type="xs:string" /&gt;
&lt;xs:element name="lastName" type="xs:string" /&gt;
&lt;xs:complexType name="CustomerName"&gt;
&lt;xs:sequence&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> ref</b>="ex:firstName" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> ref</b>="ex:lastName" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ElementReference01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ElementReference#ElementReference01">ElementReference01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:customerName&gt;
&lt;ex:firstName&gt;Bobby&lt;/ex:firstName&gt;
&lt;ex:lastName&gt;Sox&lt;/ex:lastName&gt;
&lt;/ex:customerName&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-LocalElementComplexType" id=
"pattern-LocalElementComplexType"></a>2.7.15
LocalElementComplexType</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/LocalElementComplexType">
LocalElementComplexType</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/LocalElementComplexType">
http://www.w3.org/2002/ws/databinding/patterns/6/09/LocalElementComplexType</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-LocalElementComplexType">
<code>.//xs:element[not(parent::xs:schema)]/xs:complexType</code></div>
<p id="example-LocalElementComplexType">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/LocalElementComplexType">
LocalElementComplexType</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LocalElementComplexType">LocalElementComplexType</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="localElementComplexType" type="ex:LocalElementComplexType" /&gt;
&lt;xs:complexType name="LocalElementComplexType"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="name"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexType</b>&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="firstName" type="xs:string" /&gt;
&lt;xs:element name="lastName" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexType</b>&gt;
&lt;/xs:element&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-LocalElementComplexType01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LocalElementComplexType#LocalElementComplexType01">LocalElementComplexType01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:localElementComplexType&gt;
&lt;ex:name&gt;
&lt;ex:firstName&gt;Paul&lt;/ex:firstName&gt;
&lt;ex:lastName&gt;Paul&lt;/ex:lastName&gt;
&lt;/ex:name&gt;
&lt;/ex:localElementComplexType&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-Attribute" id="group-Attribute"></a>2.8
Attribute Declarations</h3>
<div class="div3">
<h4><a name="pattern-AttributeFormUnqualified" id=
"pattern-AttributeFormUnqualified"></a>2.8.1
AttributeFormUnqualified</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeFormUnqualified">
AttributeFormUnqualified</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeFormUnqualified">
http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeFormUnqualified</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-AttributeFormUnqualified">
<code>.//xs:attribute[@form='unqualified']/ (@form)</code></div>
<p id="example-AttributeFormUnqualified">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeFormUnqualified">
AttributeFormUnqualified</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeFormUnqualified">AttributeFormUnqualified</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="attributeFormUnqualified" type="ex:AttributeFormUnqualified" /&gt;
&lt;xs:complexType name="AttributeFormUnqualified"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="premium" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="id" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> form</b>="unqualified" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-AttributeFormUnqualifiedExample01">The following
example <a href="#XML">[XML 1.0]</a> element is valid against the
above example <a href="#XMLSchema">[XML Schema 1.0]</a> when
included inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeFormUnqualified#AttributeFormUnqualifiedExample01">AttributeFormUnqualifiedExample01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:attributeFormUnqualified id="id01"&gt;
&lt;ex:premium&gt;1175&lt;/ex:premium&gt;
&lt;/ex:attributeFormUnqualified&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-AttributeOptional" id=
"pattern-AttributeOptional"></a>2.8.2 AttributeOptional</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeOptional">
AttributeOptional</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeOptional">
http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeOptional</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-AttributeOptional">
<code>.//xs:attribute[@use = 'optional']/ (@use)</code></div>
<p id="example-AttributeOptional">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeOptional">
AttributeOptional</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeOptional">AttributeOptional</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="attributeOptional" type="ex:AttributeOptional" /&gt;
&lt;xs:complexType name="AttributeOptional"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="amount" type="xs:long" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="id" type="xs:string" /&gt;
&lt;xs:attribute name="currency" type="xs:string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> use</b>="optional" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-AttributeOptional01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeOptional#AttributeOptional01">AttributeOptional01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:attributeOptional id="1711" currency="EUR"&gt;
&lt;ex:amount&gt;1250&lt;/ex:amount&gt;
&lt;/ex:attributeOptional&gt;
</pre></div>
<p id="instance-AttributeOptional02">as is the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeOptional#AttributeOptional02">AttributeOptional02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:attributeOptional id="1712"&gt;
&lt;ex:amount&gt;1250&lt;/ex:amount&gt;
&lt;/ex:attributeOptional&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-AttributeReference" id=
"pattern-AttributeReference"></a>2.8.3 AttributeReference</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReference">
AttributeReference</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReference">
http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReference</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-AttributeReference">
<code>.//xs:attribute[@ref and contains(@ref, ":")]/ (.,
@ref)</code></div>
<p id="example-AttributeReference">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReference">
AttributeReference</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeReference">AttributeReference</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="clientName" type="ex:ClientName" /&gt;
&lt;xs:attribute name="phoneNumber" type="xs:string" /&gt;
&lt;xs:complexType name="ClientName"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="firstName" type="xs:string" /&gt;
&lt;xs:element name="lastName" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:attribute</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> ref</b>="ex:phoneNumber" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-AttributeReference01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeReference#AttributeReference01">AttributeReference01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:clientName ex:phoneNumber="0123456789"&gt;
&lt;ex:firstName&gt;Bobby&lt;/ex:firstName&gt;
&lt;ex:lastName&gt;Sox&lt;/ex:lastName&gt;
&lt;/ex:clientName&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-AttributeTypeReference" id=
"pattern-AttributeTypeReference"></a>2.8.4
AttributeTypeReference</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeTypeReference">
AttributeTypeReference</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeTypeReference">
http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeTypeReference</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-AttributeTypeReference">
<code>.//xs:attribute[@name and @type and
namespace-uri-from-QName(resolve-QName(@type,.)) !=
'http://www.w3.org/2001/XMLSchema' and contains(@type, ':')]/ (.,
@name, @type)</code></div>
<p id="example-AttributeTypeReference">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeTypeReference">
AttributeTypeReference</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeTypeReference">AttributeTypeReference</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="attributeTypeReference" type="ex:AttributeTypeReference" /&gt;
&lt;xs:simpleType name="SimpleType"&gt;
&lt;xs:restriction base="xs:string"&gt;
&lt;xs:enumeration value="value1" /&gt;
&lt;xs:enumeration value="value2" /&gt;
&lt;/xs:restriction&gt;
&lt;/xs:simpleType&gt;
&lt;xs:complexType name="AttributeTypeReference"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="element" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:attribute</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="attr" <b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="ex:SimpleType" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-AttributeTypeReference01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeTypeReference#AttributeTypeReference01">AttributeTypeReference01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:attributeTypeReference attr="value1"&gt;
&lt;ex:element&gt;string&lt;/ex:element&gt;
&lt;/ex:attributeTypeReference&gt;
</pre></div>
<p id="instance-AttributeTypeReference02">as is the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AttributeTypeReference#AttributeTypeReference02">AttributeTypeReference02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:attributeTypeReference attr="value2"&gt;
&lt;ex:element&gt;string&lt;/ex:element&gt;
&lt;/ex:attributeTypeReference&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-GlobalSimpleType" id=
"group-GlobalSimpleType"></a>2.9 Global SimpleType
Declarations</h3>
<div class="div3">
<h4><a name="pattern-GlobalSimpleType" id=
"pattern-GlobalSimpleType"></a>2.9.1 GlobalSimpleType</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType">
GlobalSimpleType</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType">
http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-GlobalSimpleType">
<code>./xs:simpleType[@name]/ (., @name)</code></div>
<p id="example-GlobalSimpleType">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType">
GlobalSimpleType</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalSimpleType">GlobalSimpleType</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="globalSimpleType" type="ex:GlobalSimpleType" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:simpleType</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="GlobalSimpleType"&gt;
&lt;xs:restriction base="xs:string"&gt;
&lt;xs:enumeration value="foo" /&gt;
&lt;/xs:restriction&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:simpleType</b>&gt;
</pre></div>
<p id="instance-GlobalSimpleType01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalSimpleType#GlobalSimpleType01">GlobalSimpleType01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:globalSimpleType&gt;foo&lt;/ex:globalSimpleType&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-GlobalComplexType" id=
"group-GlobalComplexType"></a>2.10 Global ComplexType
Declarations</h3>
<div class="div3">
<h4><a name="pattern-GlobalComplexType" id=
"pattern-GlobalComplexType"></a>2.10.1 GlobalComplexType</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType">
GlobalComplexType</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType">
http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-GlobalComplexType">
<code>./xs:complexType[@name]/ (., @name)</code></div>
<p id="example-GlobalComplexType">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType">
GlobalComplexType</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalComplexType">GlobalComplexType</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="globalComplexType" type="ex:GlobalComplexType" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexType</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="GlobalComplexType"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="premium" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexType</b>&gt;
</pre></div>
<p id="instance-GlobalComplexTypeExample01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/GlobalComplexType#GlobalComplexTypeExample01">GlobalComplexTypeExample01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:globalComplexType&gt;
&lt;ex:premium&gt;1175&lt;/ex:premium&gt;
&lt;/ex:globalComplexType&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-SimpleType" id="group-SimpleType"></a>2.11
SimpleType Declarations</h3>
<div class="div3">
<h4><a name="pattern-StringEnumerationType" id=
"pattern-StringEnumerationType"></a>2.11.1
StringEnumerationType</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType">
StringEnumerationType</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType">
http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-StringEnumerationType">
<code>.//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) =
xs:QName('xs:string') and xs:enumeration]/ (., @base,
xs:enumeration/(., @value))</code></div>
<p id="ISSUE-6">Note, this pattern may be further constrained by
the regular expression used by the <a href=
"#pattern-IdentifierName"><b>2.3.1 IdentifierName</b></a> pattern
to support databinding tools which directly map an
<code>xs:enumeration</code> value to an native identifier.</p>
<p id="example-StringEnumerationType">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType">
StringEnumerationType</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringEnumerationType">StringEnumerationType</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="beatle" type="ex:Beatle" /&gt;
&lt;xs:simpleType name="Beatle"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:restriction</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> base</b>="xs:string"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:enumeration</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> value</b>="John" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:enumeration</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> value</b>="Paul" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:enumeration</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> value</b>="George" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:enumeration</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> value</b>="Stuart" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:enumeration</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> value</b>="Pete" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:enumeration</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> value</b>="Ringo" /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:restriction</b>&gt;
&lt;/xs:simpleType&gt;
</pre></div>
<p id="instance-StringEnumerationType01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringEnumerationType#StringEnumerationType01">StringEnumerationType01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:beatle&gt;John&lt;/ex:beatle&gt;
</pre></div>
<p id="instance-StringEnumerationType02">as is the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringEnumerationType#StringEnumerationType02">StringEnumerationType02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:beatle&gt;Paul&lt;/ex:beatle&gt;
</pre></div>
<p id="instance-StringEnumerationType03">and the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringEnumerationType#StringEnumerationType03">StringEnumerationType03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:beatle&gt;Ringo&lt;/ex:beatle&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NullEnumerationType" id=
"pattern-NullEnumerationType"></a>2.11.2 NullEnumerationType</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NullEnumerationType">
NullEnumerationType</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NullEnumerationType">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NullEnumerationType</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NullEnumerationType">
<code>.//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) =
xs:QName('xs:string') and count(xs:enumeration) le 1 and
xs:enumeration = '']/ (@base, xs:enumeration/(.,
@value))</code></div>
<p id="example-NullEnumerationType">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NullEnumerationType">
NullEnumerationType</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NullEnumerationType">NullEnumerationType</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="nullEnumerationType" type="ex:NullEnumerationType" /&gt;
&lt;xs:simpleType name="NullEnumerationType"&gt;
&lt;xs:restriction <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> base</b>="xs:string"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:enumeration</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> value</b>="" /&gt;
&lt;/xs:restriction&gt;
&lt;/xs:simpleType&gt;
</pre></div>
<p id="instance-NullEnumerationType01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NullEnumerationType#NullEnumerationType01">NullEnumerationType01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nullEnumerationType/&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-ComplexType" id="group-ComplexType"></a>2.12
ComplexType Declarations</h3>
<div class="div3">
<h4><a name="pattern-ComplexTypeAttribute" id=
"pattern-ComplexTypeAttribute"></a>2.12.1 ComplexTypeAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute">
ComplexTypeAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ComplexTypeAttribute">
<code>.//xs:complexType/xs:attribute[@name]/ (.,
@name)</code></div>
<p id="example-ComplexTypeAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute">
ComplexTypeAttribute</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeAttribute">ComplexTypeAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="complexTypeAttribute" type="ex:ComplexTypeAttribute" /&gt;
&lt;xs:complexType name="ComplexTypeAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="premium" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:attribute</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="id" type="xs:string" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:attribute</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="currency" type="xs:string" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ComplexTypeAttribute01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeAttribute#ComplexTypeAttribute01">ComplexTypeAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:complexTypeAttribute id="1711" currency="EUR"&gt;
&lt;ex:premium&gt;a1250&lt;/ex:premium&gt;
&lt;/ex:complexTypeAttribute&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ComplexTypeSequence" id=
"pattern-ComplexTypeSequence"></a>2.12.2 ComplexTypeSequence</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence">
ComplexTypeSequence</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ComplexTypeSequence">
<code>.//xs:complexType/xs:sequence/ (., xs:element/(.,
@name))</code></div>
<p id="example-ComplexTypeSequence">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence">
ComplexTypeSequence</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeSequence">ComplexTypeSequence</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="complexTypeSequence" type="ex:ComplexTypeSequence" /&gt;
&lt;xs:complexType name="ComplexTypeSequence"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:sequence</b>&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="name" type="xs:string" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="shade" type="xs:string" /&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="length" type="xs:int" /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:sequence</b>&gt;
&lt;xs:attribute name="id" type="xs:string" /&gt;
&lt;xs:attribute name="inStock" type="xs:int" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ComplexTypeSequence01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeSequence#ComplexTypeSequence01">ComplexTypeSequence01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:complexTypeSequence id="6026" inStock="232"&gt;
&lt;ex:name&gt;Widget&lt;/ex:name&gt;
&lt;ex:shade&gt;Light Blue&lt;/ex:shade&gt;
&lt;ex:length&gt;33&lt;/ex:length&gt;
&lt;/ex:complexTypeSequence&gt;
</pre></div>
<p id="instance-ComplexTypeSequence02">as is the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeSequence#ComplexTypeSequence02">ComplexTypeSequence02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:complexTypeSequence inStock="52" id="6026"&gt;
&lt;ex:name&gt;Widget&lt;/ex:name&gt;
&lt;ex:shade&gt;Green&lt;/ex:shade&gt;
&lt;ex:length&gt;1233&lt;/ex:length&gt;
&lt;/ex:complexTypeSequence&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ComplexTypeAttributeExtension" id=
"pattern-ComplexTypeAttributeExtension"></a>2.12.3
ComplexTypeAttributeExtension</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttributeExtension">
ComplexTypeAttributeExtension</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttributeExtension">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttributeExtension</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ComplexTypeAttributeExtension">
<code>.//xs:complexType/xs:complexContent[xs:extension[@base]/xs:attribute]/
(., xs:extension/(., @base, xs:attribute/(., @name)))</code></div>
<p id="example-ComplexTypeAttributeExtension">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttributeExtension">
ComplexTypeAttributeExtension</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeAttributeExtension">ComplexTypeAttributeExtension</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="complexTypeAttributeExtension" type="ex:ComplexTypeAttributeExtension" /&gt;
&lt;xs:complexType name="ComplexTypeAttributeBase"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="name" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
&lt;xs:complexType name="ComplexTypeAttributeExtension"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexContent</b>&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:extension</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> base</b>="ex:ComplexTypeAttributeBase"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:attribute</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="gender" type="xs:string" /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:extension</b>&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexContent</b>&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ComplexTypeAttributeExtension01">The following
example <a href="#XML">[XML 1.0]</a> element is valid against the
above example <a href="#XMLSchema">[XML Schema 1.0]</a> when
included inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeAttributeExtension#ComplexTypeAttributeExtension01">ComplexTypeAttributeExtension01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:complexTypeAttributeExtension gender="female"&gt;
&lt;ex:name&gt;Mary&lt;/ex:name&gt;
&lt;/ex:complexTypeAttributeExtension&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ComplexTypeSequenceExtension" id=
"pattern-ComplexTypeSequenceExtension"></a>2.12.4
ComplexTypeSequenceExtension</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequenceExtension">
ComplexTypeSequenceExtension</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequenceExtension">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequenceExtension</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ComplexTypeSequenceExtension">
<code>.//xs:complexType/xs:complexContent[xs:extension[@base]/xs:sequence]/
(., xs:extension/ (., @base, xs:sequence/(., xs:element/(.,
@name))))</code></div>
<p id="example-ComplexTypeSequenceExtension">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequenceExtension">
ComplexTypeSequenceExtension</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeSequenceExtension">ComplexTypeSequenceExtension</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="complexTypeSequenceExtension" type="ex:ComplexTypeSequenceExtension" /&gt;
&lt;xs:complexType name="ComplexTypeSequenceBase"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="name" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
&lt;xs:complexType name="ComplexTypeSequenceExtension"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexContent</b>&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:extension</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> base</b>="ex:ComplexTypeSequenceBase"&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:sequence</b>&gt;
&lt;<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:element</b><b xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> name</b>="description" type="xs:string" /&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:sequence</b>&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:extension</b>&gt;
&lt;/<b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance">xs:complexContent</b>&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ComplexTypeSequenceExtension01">The following
example <a href="#XML">[XML 1.0]</a> element is valid against the
above example <a href="#XMLSchema">[XML Schema 1.0]</a> when
included inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ComplexTypeSequenceExtension#ComplexTypeSequenceExtension01">ComplexTypeSequenceExtension01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:complexTypeSequenceExtension&gt;
&lt;ex:name&gt;Mary&lt;/ex:name&gt;
&lt;ex:description&gt;tall&lt;/ex:description&gt;
&lt;/ex:complexTypeSequenceExtension&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-Sequence" id="group-Sequence"></a>2.13
Sequences</h3>
<div class="div3">
<h4><a name="pattern-SequenceMinOccurs1" id=
"pattern-SequenceMinOccurs1"></a>2.13.1 SequenceMinOccurs1</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs1">
SequenceMinOccurs1</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs1">
http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs1</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-SequenceMinOccurs1">
<code>.//xs:sequence[@minOccurs = '1' and (not(@maxOccurs) or
@maxOccurs = '1')]/ (@minOccurs, @maxOccurs)</code></div>
<p id="example-SequenceMinOccurs1">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs1">
SequenceMinOccurs1</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceMinOccurs1">SequenceMinOccurs1</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="sequenceMinOccurs1" type="ex:SequenceMinOccurs1" /&gt;
&lt;xs:complexType name="SequenceMinOccurs1"&gt;
&lt;xs:sequence <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> minOccurs</b>="1"&gt;
&lt;xs:element name="sequenceMinOccurs1item" type="xs:string" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-SequenceMinOccurs101">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceMinOccurs1#SequenceMinOccurs101">SequenceMinOccurs101</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:sequenceMinOccurs1&gt;
&lt;ex:sequenceMinOccurs1item&gt;item1&lt;/ex:sequenceMinOccurs1item&gt;
&lt;/ex:sequenceMinOccurs1&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-SequenceMaxOccurs1" id=
"pattern-SequenceMaxOccurs1"></a>2.13.2 SequenceMaxOccurs1</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMaxOccurs1">
SequenceMaxOccurs1</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMaxOccurs1">
http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMaxOccurs1</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-SequenceMaxOccurs1">
<code>.//xs:sequence[(not(@minOccurs) or @minOccurs = '1') and
@maxOccurs = '1']/ (@minOccurs, @maxOccurs)</code></div>
<p id="example-SequenceMaxOccurs1">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMaxOccurs1">
SequenceMaxOccurs1</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceMaxOccurs1">SequenceMaxOccurs1</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="myAgeDetails" type="ex:MyAgeDetails" /&gt;
&lt;xs:complexType name="MyAgeDetails"&gt;
&lt;xs:sequence <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> maxOccurs</b>="1"&gt;
&lt;xs:element name="myAge" type="xs:short" /&gt;
&lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-SequenceMaxOccurs101">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceMaxOccurs1#SequenceMaxOccurs101">SequenceMaxOccurs101</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:myAgeDetails&gt;
&lt;ex:myAge&gt;44&lt;/ex:myAge&gt;
&lt;/ex:myAgeDetails&gt;
</pre></div>
<p id="instance-SequenceMaxOccurs102">as is the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/SequenceMaxOccurs1#SequenceMaxOccurs102">SequenceMaxOccurs102</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:myAgeDetails&gt;
&lt;ex:myAge&gt;4&lt;/ex:myAge&gt;
&lt;/ex:myAgeDetails&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-ElementPredefinedTypes" id=
"group-ElementPredefinedTypes"></a>2.14 Element Predefined
Types</h3>
<div class="div3">
<h4><a name="pattern-StringElement" id=
"pattern-StringElement"></a>2.14.1 StringElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement">
StringElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-StringElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:string')]</code></div>
<p id="example-StringElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement">
StringElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringElement">StringElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="stringElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:string" /&gt;
</pre></div>
<p id="instance-StringElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringElement#StringElement01">StringElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:stringElement/&gt;
</pre></div>
<p id="instance-StringElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringElement#StringElement02">StringElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:stringElement&gt;Hello cruel world.&lt;/ex:stringElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-BooleanElement" id=
"pattern-BooleanElement"></a>2.14.2 BooleanElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanElement">
BooleanElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-BooleanElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:boolean')]</code></div>
<p id="example-BooleanElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanElement">
BooleanElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/BooleanElement">BooleanElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="booleanElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:boolean" /&gt;
</pre></div>
<p id="instance-BooleanElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/BooleanElement#BooleanElement01">BooleanElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:booleanElement&gt;false&lt;/ex:booleanElement&gt;
</pre></div>
<p id="instance-BooleanElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/BooleanElement#BooleanElement02">BooleanElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:booleanElement&gt;true&lt;/ex:booleanElement&gt;
</pre></div>
<p id="instance-BooleanElement03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/BooleanElement#BooleanElement03">BooleanElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:booleanElement&gt;0&lt;/ex:booleanElement&gt;
</pre></div>
<p id="instance-BooleanElement04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/BooleanElement#BooleanElement04">BooleanElement04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:booleanElement&gt;1&lt;/ex:booleanElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-DoubleElement" id=
"pattern-DoubleElement"></a>2.14.3 DoubleElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleElement">
DoubleElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-DoubleElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:double')]</code></div>
<p id="example-DoubleElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleElement">
DoubleElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DoubleElement">DoubleElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="doubleElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:double" /&gt;
</pre></div>
<p id="instance-DoubleElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DoubleElement#DoubleElement01">DoubleElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:doubleElement&gt;-1E4&lt;/ex:doubleElement&gt;
</pre></div>
<p id="instance-DoubleElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DoubleElement#DoubleElement02">DoubleElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:doubleElement&gt;1267.432233E12&lt;/ex:doubleElement&gt;
</pre></div>
<p id="instance-DoubleElement03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DoubleElement#DoubleElement03">DoubleElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:doubleElement&gt;12.78e-2&lt;/ex:doubleElement&gt;
</pre></div>
<p id="instance-DoubleElement04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DoubleElement#DoubleElement04">DoubleElement04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:doubleElement&gt;12&lt;/ex:doubleElement&gt;
</pre></div>
<p id="instance-DoubleElement05">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DoubleElement#DoubleElement05">DoubleElement05</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:doubleElement&gt;INF&lt;/ex:doubleElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-DateTimeElement" id=
"pattern-DateTimeElement"></a>2.14.4 DateTimeElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeElement">
DateTimeElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-DateTimeElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:dateTime')]</code></div>
<p id="example-DateTimeElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeElement">
DateTimeElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeElement">DateTimeElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="dateTimeElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:dateTime" /&gt;
</pre></div>
<p id="instance-DateTimeElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeElement#DateTimeElement01">DateTimeElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeElement&gt;1999-05-31T13:20:00-05:42&lt;/ex:dateTimeElement&gt;
</pre></div>
<p id="instance-DateTimeElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeElement#DateTimeElement02">DateTimeElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeElement&gt;2000-03-04T23:00:00+03:00&lt;/ex:dateTimeElement&gt;
</pre></div>
<p id="instance-DateTimeElement03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeElement#DateTimeElement03">DateTimeElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeElement&gt;2000-03-04T23:00:00Z&lt;/ex:dateTimeElement&gt;
</pre></div>
<p id="instance-DateTimeElement04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeElement#DateTimeElement04">DateTimeElement04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeElement&gt;2038-12-12T23:00:00&lt;/ex:dateTimeElement&gt;
</pre></div>
<p id="instance-DateTimeElement05">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeElement#DateTimeElement05">DateTimeElement05</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeElement&gt;0739-03-04T23:00:00&lt;/ex:dateTimeElement&gt;
</pre></div>
<p id="instance-DateTimeElement06">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeElement#DateTimeElement06">DateTimeElement06</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeElement&gt;10739-03-04T23:00:00&lt;/ex:dateTimeElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-Base64BinaryElement" id=
"pattern-Base64BinaryElement"></a>2.14.5 Base64BinaryElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/Base64BinaryElement">
Base64BinaryElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/Base64BinaryElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/Base64BinaryElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-Base64BinaryElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:base64Binary')]</code></div>
<p id="example-Base64BinaryElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/Base64BinaryElement">
Base64BinaryElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/Base64BinaryElement">Base64BinaryElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="base64BinaryElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:base64Binary" /&gt;
</pre></div>
<p id="instance-Base64BinaryElement01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/Base64BinaryElement#Base64BinaryElement01">Base64BinaryElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:base64BinaryElement&gt;bQ==&lt;/ex:base64BinaryElement&gt;
</pre></div>
<p id="instance-Base64BinaryElement02">as is the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/Base64BinaryElement#Base64BinaryElement02">Base64BinaryElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:base64BinaryElement&gt;eHdmb3Rh&lt;/ex:base64BinaryElement&gt;
</pre></div>
<p id="instance-Base64BinaryElement03">and the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/Base64BinaryElement#Base64BinaryElement03">Base64BinaryElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:base64BinaryElement&gt;cnRjbGNyZW9scg==&lt;/ex:base64BinaryElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-AnyURIElement" id=
"pattern-AnyURIElement"></a>2.14.6 AnyURIElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIElement">
AnyURIElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-AnyURIElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:anyURI')]</code></div>
<p id="example-AnyURIElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIElement">
AnyURIElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AnyURIElement">AnyURIElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="anyURIElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:anyURI" /&gt;
</pre></div>
<p id="instance-AnyURIElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AnyURIElement#AnyURIElement01">AnyURIElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:anyURIElement&gt;http://www.w3.org/2002/ws/databinding/&lt;/ex:anyURIElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-QNameElement" id=
"pattern-QNameElement"></a>2.14.7 QNameElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameElement">QNameElement</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameElement">http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-QNameElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:QName')]</code></div>
<p id="example-QNameElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameElement">QNameElement</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/QNameElement">QNameElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="QNameElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:QName" /&gt;
</pre></div>
<p id="instance-QNameElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/QNameElement#QNameElement01">QNameElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:QNameElement&gt;ex:QNameElement&lt;/ex:QNameElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NormalizedStringElement" id=
"pattern-NormalizedStringElement"></a>2.14.8
NormalizedStringElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringElement">
NormalizedStringElement</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NormalizedStringElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:normalizedString')]</code></div>
<p id="example-NormalizedStringElement">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringElement">
NormalizedStringElement</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NormalizedStringElement">NormalizedStringElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="normalizedStringElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:normalizedString" /&gt;
</pre></div>
<p id="instance-NormalizedStringElement01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NormalizedStringElement#NormalizedStringElement01">NormalizedStringElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:normalizedStringElement/&gt;
</pre></div>
<p id="instance-NormalizedStringElement02">as is the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NormalizedStringElement#NormalizedStringElement02">NormalizedStringElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:normalizedStringElement&gt;How now brown cow.&lt;/ex:normalizedStringElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-TokenElement" id=
"pattern-TokenElement"></a>2.14.9 TokenElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenElement">TokenElement</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenElement">http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-TokenElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:token')]</code></div>
<p id="example-TokenElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenElement">TokenElement</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/TokenElement">TokenElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="tokenElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:token" /&gt;
</pre></div>
<p id="instance-TokenElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/TokenElement#TokenElement01">TokenElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:tokenElement&gt;tokenElement&lt;/ex:tokenElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NameElement" id=
"pattern-NameElement"></a>2.14.10 NameElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NameElement">NameElement</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NameElement">http://www.w3.org/2002/ws/databinding/patterns/6/09/NameElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NameElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:Name')]</code></div>
<p id="example-NameElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NameElement">NameElement</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NameElement">NameElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="NameElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:Name" /&gt;
</pre></div>
<p id="instance-NameElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NameElement#NameElement01">NameElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:NameElement&gt;foo&lt;/ex:NameElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NCNameElement" id=
"pattern-NCNameElement"></a>2.14.11 NCNameElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameElement">
NCNameElement</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NCNameElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:NCName')]</code></div>
<p id="example-NCNameElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameElement">
NCNameElement</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NCNameElement">NCNameElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="NCNameElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:NCName" /&gt;
</pre></div>
<p id="instance-NCNameElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NCNameElement#NCNameElement01">NCNameElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:NCNameElement&gt;foo&lt;/ex:NCNameElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-LongElement" id=
"pattern-LongElement"></a>2.14.12 LongElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/LongElement">LongElement</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/LongElement">http://www.w3.org/2002/ws/databinding/patterns/6/09/LongElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-LongElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:long')]</code></div>
<p id="example-LongElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/LongElement">LongElement</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongElement">LongElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="longElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:long" /&gt;
</pre></div>
<p id="instance-LongElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongElement#LongElement01">LongElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longElement&gt;1&lt;/ex:longElement&gt;
</pre></div>
<p id="instance-LongElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongElement#LongElement02">LongElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longElement&gt;-1&lt;/ex:longElement&gt;
</pre></div>
<p id="instance-LongElement03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongElement#LongElement03">LongElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longElement&gt;+42&lt;/ex:longElement&gt;
</pre></div>
<p id="instance-LongElement04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongElement#LongElement04">LongElement04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longElement&gt;-9223372036854775808&lt;/ex:longElement&gt;
</pre></div>
<p id="instance-LongElement05">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongElement#LongElement05">LongElement05</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longElement&gt;9223372036854775807&lt;/ex:longElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-IntElement" id=
"pattern-IntElement"></a>2.14.13 IntElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement">IntElement</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement">http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-IntElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:int')]</code></div>
<p id="example-IntElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement">IntElement</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntElement">IntElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="intElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:int" /&gt;
</pre></div>
<p id="instance-IntElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntElement#IntElement01">IntElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intElement&gt;1&lt;/ex:intElement&gt;
</pre></div>
<p id="instance-IntElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntElement#IntElement02">IntElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intElement&gt;-42&lt;/ex:intElement&gt;
</pre></div>
<p id="instance-IntElement03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntElement#IntElement03">IntElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intElement&gt;+42&lt;/ex:intElement&gt;
</pre></div>
<p id="instance-IntElement04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntElement#IntElement04">IntElement04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intElement&gt;2147483647&lt;/ex:intElement&gt;
</pre></div>
<p id="instance-IntElement05">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntElement#IntElement05">IntElement05</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intElement&gt;-2147483648&lt;/ex:intElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ShortElement" id=
"pattern-ShortElement"></a>2.14.14 ShortElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortElement">ShortElement</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortElement">http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ShortElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:short')]</code></div>
<p id="example-ShortElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortElement">ShortElement</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortElement">ShortElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="shortElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:short" /&gt;
</pre></div>
<p id="instance-ShortElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortElement#ShortElement01">ShortElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:shortElement&gt;1&lt;/ex:shortElement&gt;
</pre></div>
<p id="instance-ShortElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortElement#ShortElement02">ShortElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:shortElement&gt;+42&lt;/ex:shortElement&gt;
</pre></div>
<p id="instance-ShortElement03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortElement#ShortElement03">ShortElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:shortElement&gt;32767&lt;/ex:shortElement&gt;
</pre></div>
<p id="instance-ShortElement04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortElement#ShortElement04">ShortElement04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:shortElement&gt;-32768&lt;/ex:shortElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ByteElement" id=
"pattern-ByteElement"></a>2.14.15 ByteElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteElement">ByteElement</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteElement">http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ByteElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:byte')]</code></div>
<p id="example-ByteElement">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteElement">ByteElement</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ByteElement">ByteElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="byteElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:byte" /&gt;
</pre></div>
<p id="instance-ByteElement01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ByteElement#ByteElement01">ByteElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:byteElement&gt;1&lt;/ex:byteElement&gt;
</pre></div>
<p id="instance-ByteElement02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ByteElement#ByteElement02">ByteElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:byteElement&gt;127&lt;/ex:byteElement&gt;
</pre></div>
<p id="instance-ByteElement03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ByteElement#ByteElement03">ByteElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:byteElement&gt;-128&lt;/ex:byteElement&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-PositiveIntegerElement" id=
"pattern-PositiveIntegerElement"></a>2.14.16
PositiveIntegerElement</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerElement">
PositiveIntegerElement</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerElement">
http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerElement</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-PositiveIntegerElement">
<code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:positiveInteger')]</code></div>
<p id="example-PositiveIntegerElement">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerElement">
PositiveIntegerElement</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/PositiveIntegerElement">PositiveIntegerElement</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="positiveIntegerElement" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:positiveInteger" /&gt;
</pre></div>
<p id="instance-PositiveIntegerElement01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/PositiveIntegerElement#PositiveIntegerElement01">PositiveIntegerElement01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:positiveIntegerElement&gt;1&lt;/ex:positiveIntegerElement&gt;
</pre></div>
<p id="instance-PositiveIntegerElement02">as is the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/PositiveIntegerElement#PositiveIntegerElement02">PositiveIntegerElement02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:positiveIntegerElement&gt;+42&lt;/ex:positiveIntegerElement&gt;
</pre></div>
<p id="instance-PositiveIntegerElement03">and the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/PositiveIntegerElement#PositiveIntegerElement03">PositiveIntegerElement03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:positiveIntegerElement&gt;153452759384758934752984759387692835739846739486754598674&lt;/ex:positiveIntegerElement&gt;
</pre></div>
</div>
</div>
<div class="div2">
<h3><a name="group-AttributePredefinedTypes" id=
"group-AttributePredefinedTypes"></a>2.15 Attribute Predefined
Types</h3>
<div class="div3">
<h4><a name="pattern-StringAttribute" id=
"pattern-StringAttribute"></a>2.15.1 StringAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute">
StringAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-StringAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:string')]</code></div>
<p id="example-StringAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute">
StringAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringAttribute">StringAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="stringAttribute" type="ex:StringAttribute" /&gt;
&lt;xs:complexType name="StringAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="string" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:string" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-StringAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringAttribute#StringAttribute01">StringAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:stringAttribute string="hello"/&gt;
</pre></div>
<p id="instance-StringAttribute02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/StringAttribute#StringAttribute02">StringAttribute02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:stringAttribute string="0123456789"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-BooleanAttribute" id=
"pattern-BooleanAttribute"></a>2.15.2 BooleanAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanAttribute">
BooleanAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-BooleanAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:boolean')]</code></div>
<p id="example-BooleanAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanAttribute">
BooleanAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/BooleanAttribute">BooleanAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="booleanAttribute" type="ex:BooleanAttribute" /&gt;
&lt;xs:complexType name="BooleanAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="boolean" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:boolean" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-BooleanAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/BooleanAttribute#BooleanAttribute01">BooleanAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:booleanAttribute boolean="true"/&gt;
</pre></div>
<p id="instance-BooleanAttribute02">as is the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/BooleanAttribute#BooleanAttribute02">BooleanAttribute02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:booleanAttribute boolean="0"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-DoubleAttribute" id=
"pattern-DoubleAttribute"></a>2.15.3 DoubleAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleAttribute">
DoubleAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-DoubleAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:double')]</code></div>
<p id="example-DoubleAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleAttribute">
DoubleAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DoubleAttribute">DoubleAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="doubleAttribute" type="ex:DoubleAttribute" /&gt;
&lt;xs:complexType name="DoubleAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="double" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:double" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-DoubleAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DoubleAttribute#DoubleAttribute01">DoubleAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:doubleAttribute double="12.334"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-DateTimeAttribute" id=
"pattern-DateTimeAttribute"></a>2.15.4 DateTimeAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeAttribute">
DateTimeAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-DateTimeAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:dateTime')]</code></div>
<p id="example-DateTimeAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeAttribute">
DateTimeAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeAttribute">DateTimeAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="dateTimeAttribute" type="ex:DateTimeAttribute" /&gt;
&lt;xs:complexType name="DateTimeAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="dateTime" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:dateTime" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-DateTimeAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeAttribute#DateTimeAttribute01">DateTimeAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeAttribute dateTime="2006-10-26T04:51:00-05:42"/&gt;
</pre></div>
<p id="instance-DateTimeAttribute02">as is the following element
when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeAttribute#DateTimeAttribute02">DateTimeAttribute02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeAttribute dateTime="2006-10-26T04:51:00+03:00"/&gt;
</pre></div>
<p id="instance-DateTimeAttribute03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeAttribute#DateTimeAttribute03">DateTimeAttribute03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeAttribute dateTime="2006-10-26T04:51:00Z"/&gt;
</pre></div>
<p id="instance-DateTimeAttribute04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeAttribute#DateTimeAttribute04">DateTimeAttribute04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeAttribute dateTime="2038-12-12T23:59:59"/&gt;
</pre></div>
<p id="instance-DateTimeAttribute05">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeAttribute#DateTimeAttribute05">DateTimeAttribute05</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeAttribute dateTime="0739-04-04T04:51:00"/&gt;
</pre></div>
<p id="instance-DateTimeAttribute06">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/DateTimeAttribute#DateTimeAttribute06">DateTimeAttribute06</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:dateTimeAttribute dateTime="10739-04-04T04:51:00"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-AnyURIAttribute" id=
"pattern-AnyURIAttribute"></a>2.15.5 AnyURIAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIAttribute">
AnyURIAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-AnyURIAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:anyURI')]</code></div>
<p id="example-AnyURIAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIAttribute">
AnyURIAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AnyURIAttribute">AnyURIAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="anyURIAttribute" type="ex:AnyURIAttribute" /&gt;
&lt;xs:complexType name="AnyURIAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="anyURI" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:anyURI" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-AnyURIAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/AnyURIAttribute#AnyURIAttribute01">AnyURIAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:anyURIAttribute anyURI="http://www.w3.org/2002/ws/"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-QNameAttribute" id=
"pattern-QNameAttribute"></a>2.15.6 QNameAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameAttribute">
QNameAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-QNameAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:QName')]</code></div>
<p id="example-QNameAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameAttribute">
QNameAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/QNameAttribute">QNameAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="QNameAttribute" type="ex:QNameAttribute" /&gt;
&lt;xs:complexType name="QNameAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="QName" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:QName" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-QNameAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/QNameAttribute#QNameAttribute01">QNameAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:QNameAttribute QName="ex:QNameAttribute"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NormalizedStringAttribute" id=
"pattern-NormalizedStringAttribute"></a>2.15.7
NormalizedStringAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringAttribute">
NormalizedStringAttribute</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NormalizedStringAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:normalizedString')]</code></div>
<p id="example-NormalizedStringAttribute">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringAttribute">
NormalizedStringAttribute</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NormalizedStringAttribute">NormalizedStringAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="normalizedStringAttribute" type="ex:NormalizedStringAttribute" /&gt;
&lt;xs:complexType name="NormalizedStringAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="normalizedString" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:normalizedString" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-NormalizedStringAttribute01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NormalizedStringAttribute#NormalizedStringAttribute01">NormalizedStringAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:normalizedStringAttribute normalizedString="Hello Paris"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-TokenAttribute" id=
"pattern-TokenAttribute"></a>2.15.8 TokenAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenAttribute">
TokenAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-TokenAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:token')]</code></div>
<p id="example-TokenAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenAttribute">
TokenAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/TokenAttribute">TokenAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="tokenAttribute" type="ex:TokenAttribute" /&gt;
&lt;xs:complexType name="TokenAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="token" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:token" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-TokenAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/TokenAttribute#TokenAttribute01">TokenAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:tokenAttribute token="hello"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NameAttribute" id=
"pattern-NameAttribute"></a>2.15.9 NameAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NameAttribute">
NameAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NameAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NameAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NameAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:Name')]</code></div>
<p id="example-NameAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NameAttribute">
NameAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NameAttribute">NameAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="nameAttribute" type="ex:NameAttribute" /&gt;
&lt;xs:complexType name="NameAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="name" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:Name" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-NameAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NameAttribute#NameAttribute01">NameAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nameAttribute name="foo"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NCNameAttribute" id=
"pattern-NCNameAttribute"></a>2.15.10 NCNameAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameAttribute">
NCNameAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NCNameAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:NCName')]</code></div>
<p id="example-NCNameAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameAttribute">
NCNameAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NCNameAttribute">NCNameAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="NCNameAttribute" type="ex:NCNameAttribute" /&gt;
&lt;xs:complexType name="NCNameAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="NCName" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:NCName" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-NCNameAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NCNameAttribute#NCNameAttribute01">NCNameAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:NCNameAttribute NCName="bar"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-LongAttribute" id=
"pattern-LongAttribute"></a>2.15.11 LongAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/LongAttribute">
LongAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/LongAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/LongAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-LongAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:long')]</code></div>
<p id="example-LongAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/LongAttribute">
LongAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongAttribute">LongAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="longAttribute" type="ex:LongAttribute" /&gt;
&lt;xs:complexType name="LongAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="long" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:long" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-LongAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongAttribute#LongAttribute01">LongAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longAttribute long="1066"/&gt;
</pre></div>
<p id="instance-LongAttribute02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongAttribute#LongAttribute02">LongAttribute02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longAttribute long="-1515"/&gt;
</pre></div>
<p id="instance-LongAttribute03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongAttribute#LongAttribute03">LongAttribute03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longAttribute long="+42"/&gt;
</pre></div>
<p id="instance-LongAttribute04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongAttribute#LongAttribute04">LongAttribute04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longAttribute long="-9223372036854775808"/&gt;
</pre></div>
<p id="instance-LongAttribute05">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/LongAttribute#LongAttribute05">LongAttribute05</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:longAttribute long="9223372036854775807"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-IntAttribute" id=
"pattern-IntAttribute"></a>2.15.12 IntAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/IntAttribute">IntAttribute</a>
pattern identified using the URI <a href="#RFC3986">[RFC 3986]</a>
<a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/IntAttribute">http://www.w3.org/2002/ws/databinding/patterns/6/09/IntAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-IntAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:int')]</code></div>
<p id="example-IntAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/IntAttribute">IntAttribute</a>
pattern within an <a href="#XMLSchema">[XML Schema 1.0]</a>
document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntAttribute">IntAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="intAttribute" type="ex:IntAttribute" /&gt;
&lt;xs:complexType name="IntAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="int" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:int" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-IntAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntAttribute#IntAttribute01">IntAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intAttribute int="42"/&gt;
</pre></div>
<p id="instance-IntAttribute02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntAttribute#IntAttribute02">IntAttribute02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intAttribute int="-42"/&gt;
</pre></div>
<p id="instance-IntAttribute03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntAttribute#IntAttribute03">IntAttribute03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intAttribute int="+42"/&gt;
</pre></div>
<p id="instance-IntAttribute04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntAttribute#IntAttribute04">IntAttribute04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intAttribute int="2147483647"/&gt;
</pre></div>
<p id="instance-IntAttribute05">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/IntAttribute#IntAttribute05">IntAttribute05</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:intAttribute int="-2147483648"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ShortAttribute" id=
"pattern-ShortAttribute"></a>2.15.13 ShortAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortAttribute">
ShortAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ShortAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:short')]</code></div>
<p id="example-ShortAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortAttribute">
ShortAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortAttribute">ShortAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="shortAttribute" type="ex:ShortAttribute" /&gt;
&lt;xs:complexType name="ShortAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="short" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:short" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ShortAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortAttribute#ShortAttribute01">ShortAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:shortAttribute short="22"/&gt;
</pre></div>
<p id="instance-ShortAttribute02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortAttribute#ShortAttribute02">ShortAttribute02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:shortAttribute short="+42"/&gt;
</pre></div>
<p id="instance-ShortAttribute03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortAttribute#ShortAttribute03">ShortAttribute03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:shortAttribute short="32767"/&gt;
</pre></div>
<p id="instance-ShortAttribute04">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ShortAttribute#ShortAttribute04">ShortAttribute04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:shortAttribute short="-32768"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-ByteAttribute" id=
"pattern-ByteAttribute"></a>2.15.14 ByteAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteAttribute">
ByteAttribute</a> pattern identified using the URI <a href=
"#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-ByteAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:byte')]</code></div>
<p id="example-ByteAttribute">The following example <a href=
"#XMLSchema">[XML Schema 1.0]</a> extract illustrates the use of
the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteAttribute">
ByteAttribute</a> pattern within an <a href="#XMLSchema">[XML
Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ByteAttribute">ByteAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="byteAttribute" type="ex:ByteAttribute" /&gt;
&lt;xs:complexType name="ByteAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="byte" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:byte" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-ByteAttribute01">The following example <a href=
"#XML">[XML 1.0]</a> element is valid against the above example
<a href="#XMLSchema">[XML Schema 1.0]</a> when included inside an
instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ByteAttribute#ByteAttribute01">ByteAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:byteAttribute byte="64"/&gt;
</pre></div>
<p id="instance-ByteAttribute02">as is the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ByteAttribute#ByteAttribute02">ByteAttribute02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:byteAttribute byte="127"/&gt;
</pre></div>
<p id="instance-ByteAttribute03">and the following element when
included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/ByteAttribute#ByteAttribute03">ByteAttribute03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:byteAttribute byte="-128"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-NonNegativeIntegerAttribute" id=
"pattern-NonNegativeIntegerAttribute"></a>2.15.15
NonNegativeIntegerAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NonNegativeIntegerAttribute">
NonNegativeIntegerAttribute</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NonNegativeIntegerAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/NonNegativeIntegerAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-NonNegativeIntegerAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:nonNegativeInteger')]</code></div>
<p id="example-NonNegativeIntegerAttribute">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/NonNegativeIntegerAttribute">
NonNegativeIntegerAttribute</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NonNegativeIntegerAttribute">NonNegativeIntegerAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="nonNegativeIntegerAttribute" type="ex:NonNegativeIntegerAttribute" /&gt;
&lt;xs:complexType name="NonNegativeIntegerAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="nonNegativeInteger" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:nonNegativeInteger" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-NonNegativeIntegerAttribute01">The following
example <a href="#XML">[XML 1.0]</a> element is valid against the
above example <a href="#XMLSchema">[XML Schema 1.0]</a> when
included inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NonNegativeIntegerAttribute#NonNegativeIntegerAttribute01">NonNegativeIntegerAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nonNegativeIntegerAttribute nonNegativeInteger="20"/&gt;
</pre></div>
<p id="instance-NonNegativeIntegerAttribute02">as is the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NonNegativeIntegerAttribute#NonNegativeIntegerAttribute02">NonNegativeIntegerAttribute02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nonNegativeIntegerAttribute nonNegativeInteger="-0"/&gt;
</pre></div>
<p id="instance-NonNegativeIntegerAttribute03">and the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NonNegativeIntegerAttribute#NonNegativeIntegerAttribute03">NonNegativeIntegerAttribute03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nonNegativeIntegerAttribute nonNegativeInteger="0"/&gt;
</pre></div>
<p id="instance-NonNegativeIntegerAttribute04">and the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NonNegativeIntegerAttribute#NonNegativeIntegerAttribute04">NonNegativeIntegerAttribute04</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nonNegativeIntegerAttribute nonNegativeInteger="+42"/&gt;
</pre></div>
<p id="instance-NonNegativeIntegerAttribute05">and the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/NonNegativeIntegerAttribute#NonNegativeIntegerAttribute05">NonNegativeIntegerAttribute05</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:nonNegativeIntegerAttribute nonNegativeInteger="3141592653531415926536106615151970884848347234273984723"/&gt;
</pre></div>
</div>
<div class="div3">
<h4><a name="pattern-PositiveIntegerAttribute" id=
"pattern-PositiveIntegerAttribute"></a>2.15.16
PositiveIntegerAttribute</h4>
<p>An <a href="#XMLSchema">[XML Schema 1.0]</a>, or other <a href=
"#XML">[XML 1.0]</a> document containing an <a href=
"#XMLSchema">[XML Schema 1.0]</a> element
<code>&lt;xs:schema&gt;</code>, exhibits the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerAttribute">
PositiveIntegerAttribute</a> pattern identified using the URI
<a href="#RFC3986">[RFC 3986]</a> <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerAttribute">
http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerAttribute</a>
when the following <a href="#XPath20">[XPath 2.0]</a> expression
applied to a document or element node with a context node of
<code>//xs:schema</code> results in an <a href="#XPath20">[XPath
2.0]</a> node-set containing at least one node:</p>
<div class="xpath" id="xpath-PositiveIntegerAttribute">
<code>.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:positiveInteger')]</code></div>
<p id="example-PositiveIntegerAttribute">The following example
<a href="#XMLSchema">[XML Schema 1.0]</a> extract illustrates the
use of the <a href=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerAttribute">
PositiveIntegerAttribute</a> pattern within an <a href=
"#XMLSchema">[XML Schema 1.0]</a> document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/PositiveIntegerAttribute">PositiveIntegerAttribute</a>]:</p>
<div class="exampleInner">
<pre>
&lt;xs:element name="positiveIntegerAttribute" type="ex:PositiveIntegerAttribute" /&gt;
&lt;xs:complexType name="PositiveIntegerAttribute"&gt;
&lt;xs:sequence&gt;
&lt;xs:element name="text" type="xs:string" minOccurs="0" /&gt;
&lt;/xs:sequence&gt;
&lt;xs:attribute name="positiveInteger" <b xmlns:pat=
"http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:ex=
"http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" xmlns:xs=
"http://www.w3.org/2001/XMLSchema" xmlns:xsi=
"http://www.w3.org/2001/XMLSchema-instance"> type</b>="xs:positiveInteger" /&gt;
&lt;/xs:complexType&gt;
</pre></div>
<p id="instance-PositiveIntegerAttribute01">The following example
<a href="#XML">[XML 1.0]</a> element is valid against the above
example <a href="#XMLSchema">[XML Schema 1.0]</a> when included
inside an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/PositiveIntegerAttribute#PositiveIntegerAttribute01">PositiveIntegerAttribute01</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:positiveIntegerAttribute positiveInteger="257"/&gt;
</pre></div>
<p id="instance-PositiveIntegerAttribute02">as is the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/PositiveIntegerAttribute#PositiveIntegerAttribute02">PositiveIntegerAttribute02</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:positiveIntegerAttribute positiveInteger="+42"/&gt;
</pre></div>
<p id="instance-PositiveIntegerAttribute03">and the following
element when included in an instance document [<a href=
"http://www.w3.org/2002/ws/databinding/examples/6/09/PositiveIntegerAttribute#PositiveIntegerAttribute03">PositiveIntegerAttribute03</a>]:</p>
<div class="exampleInner">
<pre>
&lt;ex:positiveIntegerAttribute positiveInteger="153452759384758934752984759387692835739846739486754598674"/&gt;
</pre></div>
</div>
</div>
</div>
<div class="div1">
<h2><a name="refs" id="refs"></a>3. References</h2>
<div class="div2">
<h3><a name="normrefs" id="normrefs"></a>3.1 Normative
References</h3>
<dl>
<dt class="label"><a name="XMLSchema" id="XMLSchema"></a>[XML
Schema 1.0]</dt>
<dd>Henry S. Thompson, David Beech, Murray Maloney, and Noah
Mendelsohn, Editors. World Wide Web Consortium. <em>XML Schema,
Parts 0, 1, and 2 (Second Edition)</em>. W3C Recommendation, 28
October 2004. See <a href=
"http://www.w3.org/TR/xmlschema-0/">http://www.w3.org/TR/xmlschema-0/</a>,
<a href=
"http://www.w3.org/TR/xmlschema-1/">http://www.w3.org/TR/xmlschema-1/</a>,
and <a href=
"http://www.w3.org/TR/xmlschema-2/">http://www.w3.org/TR/xmlschema-2/</a>.</dd>
<dt class="label"><a name="XPath20" id="XPath20"></a>[XPath
2.0]</dt>
<dd><a href=
"http://www.w3.org/TR/2006/CR-xpath20-20060608/"><cite>XML Path
Language (XPath) 2.0</cite></a>, Don Chamberlin , Anders Berglund,
Scott Boag, et. al., Editors. World Wide Web Consortium, 3 Nov
2005. The <a href="http://www.w3.org/TR/xpath20/">latest
version</a> is available at http://www.w3.org/TR/xpath20/. (See
<a href=
"http://www.w3.org/TR/2006/CR-xpath20-20060608/">http://www.w3.org/TR/2006/CR-xpath20-20060608/</a>.)</dd>
<dt class="label"><a name="XMLNS" id="XMLNS"></a>[XML
Namespaces]</dt>
<dd><cite>Namespaces in XML</cite>, T. Bray, D. Hollander, and A.
Layman, Editors. World Wide Web Consortium, 14 January 1999. The
<a href="http://www.w3.org/TR/REC-xml-names">latest version</a> is
available at http://www.w3.org/TR/REC-xml-names. (See <a href=
"http://www.w3.org/TR/1999/REC-xml-names-19990114">http://www.w3.org/TR/1999/REC-xml-names-19990114</a>.)</dd>
<dt class="label"><a name="XML" id="XML"></a>[XML 1.0]</dt>
<dd>World Wide Web Consortium. <em>Extensible Markup Language (XML)
1.0. (Fourth Edition)</em> W3C Recommendation, 16 August 2006. See
<a href=
"http://www.w3.org/TR/REC-xml">http://www.w3.org/TR/REC-xml</a></dd>
<dt class="label"><a name="RFC2119" id="RFC2119"></a>[RFC
2119]</dt>
<dd><a href="http://www.ietf.org/rfc/rfc2119.txt"><cite>Key words
for use in RFCs to Indicate Requirement Levels</cite></a>, S.
Bradner, Editor. IETF, March 1997. (See <a href=
"http://www.ietf.org/rfc/rfc2119.txt">http://www.ietf.org/rfc/rfc2119.txt</a>.)</dd>
<dt class="label"><a name="RFC3986" id="RFC3986"></a>[RFC
3986]</dt>
<dd><cite>Uniform Resource Identifiers (URI): Generic
Syntax</cite>, T. Berners-Lee, R. Fielding, L. Masinter, Authors.
Internet Engineering Task Force, January 2005. Available at
http://www.ietf.org/rfc/rfc3986.txt. (See <a href=
"http://www.ietf.org/rfc/rfc3986.txt">http://www.ietf.org/rfc/rfc3986.txt</a>.)</dd>
<dt class="label"><a name="Unicode" id="Unicode"></a>[Unicode]</dt>
<dd>The Unicode Consortium. <em>The Unicode Standard, Version
4.0</em>. Reading, Mass.: Addison-Wesley, 2003, as updated from
time to time by the publication of new versions. (See <a href=
"http://www.unicode.org/unicode/standard/versions">http://www.unicode.org/unicode/standard/versions</a>
for the latest version and additional information on versions of
the standard and of the Unicode Character Database)</dd>
</dl>
</div>
<div class="div2">
<h3><a name="informrefs" id="informrefs"></a>3.2 Informative
References</h3>
<dl>
<dt class="label"><a name="AdvancedPatterns" id=
"AdvancedPatterns"></a>[Advanced Patterns]</dt>
<dd><a href=
"http://www.w3.org/TR/xmlschema-patterns-advanced"><cite>Advanced
XML Schema Patterns for Databinding 1.0</cite></a> , Jonathan
Calladine, George Cowe, Paul Downey, Yves Lafon, Editors. World
Wide Web Consortium, May, 2009. The latest version of <a href=
"http://www.w3.org/TR/xmlschema-patterns-advanced/">Advanced
Patterns</a> is available at
http://www.w3.org/TR/xmlschema-patterns-advanced/. (See <a href=
"http://www.w3.org/TR/xmlschema-patterns-advanced/">http://www.w3.org/TR/xmlschema-patterns-advanced/</a>.)</dd>
<dt class="label"><a name="WSDL20" id="WSDL20"></a>[WSDL 2.0]</dt>
<dd><cite>Web Services Description Language (WSDL) Version 2.0 Part
1: Core Language</cite>, R. Chinnici, J. J. Moreau, A. Ryman, S.
Weerawarana, Editors. World Wide Web Consortium, 6 January 2006.
The <a href="http://www.w3.org/TR/wsdl20">latest version</a> is
available at http://www.w3.org/TR/wsdl20. (See <a href=
"http://www.w3.org/TR/2006/CR-wsdl20-20060106/">http://www.w3.org/TR/2006/CR-wsdl20-20060106/</a>.)</dd>
<dt class="label"><a name="WSDL11" id="WSDL11"></a>[WSDL 1.1]</dt>
<dd>E. Christensen, et al, <cite>Web Services Description Language
(WSDL) 1.1</cite>, March 2001. (See <a href=
"http://www.w3.org/TR/2001/NOTE-wsdl-20010315">http://www.w3.org/TR/2001/NOTE-wsdl-20010315</a>.)</dd>
<dt class="label"><a name="SOAP12" id="SOAP12"></a>[SOAP 1.2]</dt>
<dd><cite>SOAP Version 1.2 Part 1: Messaging Framework</cite>, M.
Gudgin, M. Hadley, N. Mendelsohn, J-J. Moreau, H. Frystyk Nielsen,
Editors. World Wide Web Consortium, 24 June 2003. The <a href=
"http://www.w3.org/TR/soap12-part1/">latest version</a> is
available at http://www.w3.org/TR/soap12-part1/. (See <a href=
"http://www.w3.org/TR/2003/REC-soap12-part1-20030624/">http://www.w3.org/TR/2003/REC-soap12-part1-20030624/</a>.)</dd>
<dt class="label"><a name="SOAP11" id="SOAP11"></a>[SOAP 1.1]</dt>
<dd><cite>Simple Object Access Protocol (SOAP) 1.1</cite>, D. Box,
D. Ehnebuske, G. Kakivaya, A. Layman, N. Mendelsohn, H Frystyk
Nielsen, S. Thatte, D. Winer, Editors. W3C Member Submission, 8 May
2000. (See <a href=
"http://www.w3.org/TR/2000/NOTE-SOAP-20000508/">http://www.w3.org/TR/2000/NOTE-SOAP-20000508/</a>.)</dd>
<dt class="label"><a name="XSLT20" id="XSLT20"></a>[XSLT 2.0]</dt>
<dd><cite>XSL Transformations (XSLT) Version 2.0</cite>, M. Kay,
Editor. World Wide Web Consortium, 8 June 2006. The <a href=
"http://www.w3.org/TR/xslt20/">latest version</a> is available at
http://www.w3.org/TR/xslt20. (See <a href=
"http://www.w3.org/TR/2006/CR-xslt20-20060608/">http://www.w3.org/TR/2006/CR-xslt20-20060608/</a>.)</dd>
<dt class="label"><a name="WSI-BP" id="WSI-BP"></a>[WS-I Basic
Profile 1.1]</dt>
<dd><cite>WS-I Basic Profile 1.1</cite>, Web Services
Interoperability Organization, April 2004 The <a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1.html">latest
version</a> and errata is available from
http://www.ws-i.org/Profiles/BasicProfile-1.1.html. (See <a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html">http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html</a>.)</dd>
<dt class="label"><a name="Schematron" id=
"Schematron"></a>[Schematron]</dt>
<dd><a href=
"http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=40833&amp;ICS1=35&amp;ICS2=240&amp;ICS3=30">
<cite>ISO/IEC 19757-3:2006</cite></a>, Information technology -
Document Schema Definition Languages (DSDL) - Part 3: Rule-based
validation - International Standards Organization (JTC1/SC34) -
<a href="http://www.schematron.com">Schematron</a>. (See <a href=
"http://standards.iso.org/ittf/PubliclyAvailableStandards/c040833_ISO_IEC_19757-3_2006%28E%29.zip">
http://standards.iso.org/ittf/PubliclyAvailableStandards/c040833_ISO_IEC_19757-3_2006%28E%29.zip</a>.)</dd>
<dt class="label"><a name="BOM" id="BOM"></a>[BOM]</dt>
<dd><cite>Unicode Frequently Asked Questions</cite> (See <a href=
"http://www.unicode.org/unicode/faq/utf_bom.html#BOM">http://www.unicode.org/unicode/faq/utf_bom.html#BOM</a>.)</dd>
<dt class="label"><a name="Timezone" id=
"Timezone"></a>[Timezone]</dt>
<dd><cite>Working with Time Zones</cite>, Addison Phillips, Felix
Sasaki, Mark Davis, Martin Dürst, Editors. World Wide Web
Consortium, 13 October 2005. The <a href=
"http://www.w3.org/TR/timezone/">latest version</a> is available at
http://www.w3.org/TR/timezone/. (See <a href=
"http://www.w3.org/TR/2005/NOTE-timezone-20051013/">http://www.w3.org/TR/2005/NOTE-timezone-20051013/</a>.)</dd>
</dl>
</div>
</div>
</div>
<div class="back">
<div class="div1">
<h2><a name="structures" id="structures"></a>A. Data Types &amp;
Structures (Non-Normative)</h2>
<p id="ISSUE-37">This section offers one or more patterns which may
be used to represent an abstract data structure. Each data
structure presented is intended to be independent of any particular
programming language, database or modeling environment. No
semantics are implied by the order in which patterns are listed for
a given abstract data structure.</p>
<div class="div2">
<h3><a name="optional" id="optional"></a>A.1 Null Value</h3>
<dl>
<dt class="label">Definition</dt>
<dd>A special value used to represent an "unknown", "missing", "not
applicable", "uninitialised" or "undefined value".</dd>
<dt class="label">Patterns</dt>
<dd>
<ul>
<li><a href="#pattern-ElementMinOccurs0"><b>2.7.1
ElementMinOccurs0</b></a></li>
<li><a href="#pattern-NillableElement"><b>2.7.11
NillableElement</b></a></li>
<li><a href="#pattern-NullEnumerationType"><b>2.11.2
NullEnumerationType</b></a></li>
<li><a href="#pattern-ElementEmptySequence"><b>2.7.9
ElementEmptySequence</b></a></li>
<li><a href="#pattern-ElementEmptyComplexType"><b>2.7.10
ElementEmptyComplexType</b></a></li>
</ul>
</dd>
</dl>
</div>
<div class="div2">
<h3><a name="default" id="default"></a>A.2 Default Value</h3>
<dl>
<dt class="label">Definition</dt>
<dd>A preselected value used by when no alternative is explicitly
specified.</dd>
<dt class="label">Patterns</dt>
<dd>
<ul>
<li><em>none</em></li>
</ul>
</dd>
</dl>
</div>
<div class="div2">
<h3><a name="enumeration" id="enumeration"></a>A.3 Enumeration</h3>
<dl>
<dt class="label">Definition</dt>
<dd>A type whose definition contains an exhaustive list of possible
values.</dd>
<dt class="label">Patterns</dt>
<dd>
<ul>
<li><a href="#pattern-StringEnumerationType"><b>2.11.1
StringEnumerationType</b></a></li>
</ul>
</dd>
</dl>
</div>
<div class="div2">
<h3><a name="collection" id="collection"></a>A.4 Collection</h3>
<dl>
<dt class="label">Definition</dt>
<dd>A collection of data items, typically contained by a
programming language "object", "class", "structure", or
"record".</dd>
<dt class="label">Patterns</dt>
<dd>
<ul>
<li><a href="#pattern-GlobalComplexType"><b>2.10.1
GlobalComplexType</b></a></li>
<li><a href="#pattern-GlobalElementSequence"><b>2.5.2
GlobalElementSequence</b></a></li>
<li><a href="#pattern-LocalElementComplexType"><b>2.7.15
LocalElementComplexType</b></a></li>
<li><a href="#pattern-ComplexTypeSequence"><b>2.12.2
ComplexTypeSequence</b></a></li>
<li><a href="#pattern-ComplexTypeAttribute"><b>2.12.1
ComplexTypeAttribute</b></a></li>
</ul>
</dd>
</dl>
</div>
<div class="div2">
<h3><a name="inheritance" id="inheritance"></a>A.5 Inherited
Collection</h3>
<dl>
<dt class="label">Definition</dt>
<dd>A collection which extends an existing collection.</dd>
<dt class="label">Patterns</dt>
<dd>
<ul>
<li><a href="#pattern-ComplexTypeAttributeExtension"><b>2.12.3
ComplexTypeAttributeExtension</b></a></li>
<li><a href="#pattern-ComplexTypeSequenceExtension"><b>2.12.4
ComplexTypeSequenceExtension</b></a></li>
</ul>
</dd>
</dl>
</div>
<div class="div2">
<h3><a name="vector" id="vector"></a>A.6 Vector</h3>
<dl>
<dt class="label">Definition</dt>
<dd>An ordered sequence of items of the same type. This construct
appears in programming languages as an array or list.</dd>
<dt class="label">Patterns</dt>
<dd>
<ul>
<li><a href="#pattern-ElementMinOccurs0MaxOccursUnbounded"><b>2.7.4
ElementMinOccurs0MaxOccursUnbounded</b></a></li>
<li><a href="#pattern-ElementMinOccurs1MaxOccursUnbounded"><b>2.7.5
ElementMinOccurs1MaxOccursUnbounded</b></a></li>
<li><a href="#pattern-SequenceSingleRepeatedElement"><b>2.7.8
SequenceSingleRepeatedElement</b></a></li>
</ul>
</dd>
</dl>
</div>
</div>
<div class="div1">
<h2><a name="detection" id="detection"></a>B. Detecting Patterns
(Non-Normative)</h2>
<p>The patterns defined by this specification may be detected in a
description such as an <a href="#XMLSchema">[XML Schema 1.0]</a>,
<a href="#WSDL20">[WSDL 2.0]</a> or <a href="#WSDL11">[WSDL
1.1]</a> document using an <a href="#XPath20">[XPath 2.0]</a>
processor. The following example illustrates detecting a pattern
using an <a href="#XSLT20">[XSLT 2.0]</a> stylesheet:</p>
<div class="exampleInner">
<pre>
&lt;xsl:stylesheet version="2.0"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/"&gt;
&lt;xsl:output method="text" /&gt;
&lt;xsl:template match="/"&gt;
&lt;xsl:apply-templates select="//xs:schema" mode="detect"/&gt;
&lt;/xsl:template&gt;
&lt;xsl:template match="*" mode="detect"&gt;
&lt;xsl:if test="count(.//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]) gt 0"&gt;
http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement
&lt;/xsl:if&gt;
&lt;!-- tests to detect other patterns .. --&gt;
&lt;/xsl:template&gt;
&lt;xsl:template match="text()"/&gt;
&lt;/xsl:stylesheet&gt;
</pre></div>
<p>Similarly a <a href="#Schematron">[Schematron]</a> schema may be
assembled from this specification and used in conjunction with a
processor which supports <a href="#XPath20">[XPath 2.0]</a> as
follows:</p>
<div class="exampleInner">
<pre>
&lt;sch:schema xmlns:sch="http://purl.oclc.org/dsdl/schematron"&gt;
&lt;sch:ns prefix="xs" uri="http://www.w3.org/2001/XMLSchema"&gt;&lt;/sch:ns&gt;
&lt;sch:pattern name="Basic"&gt;
&lt;sch:rule&gt;
&lt;sch:report
test="count(.//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]) gt 0"&gt;
http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement
&lt;/sch:report&gt;
&lt;/sch:rule&gt;
&lt;!-- reports to detect other patterns .. --&gt;
&lt;/sch:pattern&gt;
&lt;/sch:schema&gt;
</pre></div>
<p>The <a href="#XPath20">[XPath 2.0]</a> for each <a href=
"#XMLSchema">[XML Schema 1.0]</a> pattern is constructed to return
a set containing all of the Element and Attribute nodes covered by
an individual pattern. Elements and attributes contained within a
<a href="#XMLSchema">[XML Schema 1.0]</a> document not covered by a
set of patterns may be detected using an <a href="#">[XPath2.0]</a>
expression as in the following <a href="#XSLT20">[XSLT 2.0]</a>
extract:</p>
<div class="exampleInner">
<pre>
&lt;xsl:if select="(.//* | .//@*) except
( @targetNamespace
| .//xs:element[resolve-QName(@type,.) = xs:QName('xs:string')]/(@type)
| .. other pattern XPaths ..
)"&gt;
unexpected elements or attributes detected
&lt;/xsl:if&gt;
</pre></div>
</div>
<div class="div1">
<h2><a name="xpath-idioms" id="xpath-idioms"></a>C. XPath 2.0
Idioms (Non-Normative)</h2>
<p>The following <a href="#">[XPath2.0]</a> examples are intended
to illustrate the idiomatic use of <a href="#">[XPath2.0]</a> by
this specification when defining <a href="#XMLSchema">[XML Schema
1.0]</a> patterns.</p>
<table width="100%" border="1">
<caption>Table C. XPath 2.0 Idioms</caption>
<thead>
<tr>
<th>XPath 2.0 Sample</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr id="xpath-idiom-elementFormDefault">
<td><code>./(@elementFormDefault)</code></td>
<td>returns the <code>elementFormDefault</code> attribute of the
<code>xs:schema</code> element</td>
</tr>
<tr id="xpath-idiom-elementFormDefaultQualified">
<td>
<code>.[@elementFormDefault='qualified']/(@elementFormDefault)</code></td>
<td>returns the <code>elementFormDefault</code> attribute of the
<code>xs:schema</code> element, where the contents of the
<code>elementFormDefault</code> attribute is the string
<code>'qualified'</code>.</td>
</tr>
<tr id="xpath-idiom-mixed-attribute-value">
<td><code>.//.[@mixed = 'false']/(@mixed)</code></td>
<td>returns the set of <code>mixed</code> attributes contained on
any element found beneath the <code>xs:schema</code> element, where
the contents of the <code>mixed</code> attribute is the string
value <code>'false'</code>.</td>
</tr>
<tr id="xpath-idiom-parent">
<td>
<code>.//xs:element[not(parent::xs:schema)]/xs:complexType</code></td>
<td>returns the <code>xs:complexType</code> element where the
parent node is not the element <code>xs:schema</code>.</td>
</tr>
<tr id="xpath-idiom-wildcard-nodes">
<td><code>.//xs:annotation/xs:documentation/ (.., ., .//*,
.//@*)</code></td>
<td>returns the parent node, the current node, all descendant
elements and all descendant attributes for all
<code>xs:documentation</code> elements.</td>
</tr>
<tr id="xpath-idiom-resolve-qname">
<td><code>.//xs:element/@type[resolve-QName(.,..) =
xs:QName('xs:string')]</code></td>
<td>returns the <code>type</code> attribute where the QName value
of the <code>type</code> attribute is a local part
<code>string</code> in the namespace found by resolving the prefix
<code>xs</code> in <a href="#namespaces"><b>1.2 Namespaces</b></a>,
i.e <code>'http://www.w3.org/2001/XMLSchema'</code>.</td>
</tr>
<tr id="xpath-idiom-resolve-qname-el">
<td><code>.//xs:element[@name and @type and
namespace-uri-from-QName(resolve-QName(@type,.)) !=
'http://www.w3.org/2001/XMLSchema' and contains(@type, ':')]/ (.,
@name, @type)</code></td>
<td>returns the <code>xs:element</code>, <code>name</code> and
<code>type</code> attributes where the string value of the
<code>type</code> attribute contains a ':' character, and the
resultant QName value is not the <a href="#XML">[XML 1.0]</a>
datatypes namespace, i.e. an explicitly qualified datatype in the
<code>##targetNamespace</code> or <code>##other</code>
namespace.</td>
</tr>
<tr id="xpath-idiom-not-schemalocation">
<td><code>./xs:import[@namespace and not(@schemaLocation) and
not(@namespace = 'http://www.w3.org/2001/XMLSchema')]/ (.,
@namespace)</code></td>
<td>returns the <code>xs:import</code> element and
<code>namespace</code> attribute for an <code>xs:import</code>
element with an absent <code>schemaLocation</code> attribute or one
matching the <a href="#XMLSchema">[XML Schema 1.0]</a> datatypes
namespace.</td>
</tr>
<tr id="xpath-idiom-not-maxoccurs">
<td><code>.//xs:element[@minOccurs = '0' and (not(@maxOccurs) or
@maxOccurs = '1')]/ (@minOccurs, @maxOccurs)</code></td>
<td>returns the <code>minOccurs</code> and <code>maxOccurs</code>
attributes for an <code>xs:element</code> element where the
<code>minOccurs</code> attribute has a string value of
<code>'0'</code> and the <code>maxOccurs</code> attribute is absent
or has a string value of <code>'1'</code>.</td>
</tr>
<tr id="xpath-idiom-count">
<td><code>.//xs:sequence[count(xs:element) =
1]/xs:element[@maxOccurs = 'unbounded']/ (.,
@maxOccurs)</code></td>
<td>returns the <code>xs:element</code> element and
<code>maxOccurs</code> attribute where a <code>sequence</code> has
a single <code>xs:element</code> element that is defined with
<code>maxOccurs</code> attribute string value of
<code>'unbounded'</code>.</td>
</tr>
<tr id="xpath-idiom-not-node">
<td><code>.//xs:element[@name]/xs:complexType[not(node())]/(., ..,
../@name)</code></td>
<td>returns the <code>xs:complexType</code> and
<code>xs:element</code> element, and the <code>xs:element</code>
<code>name</code> attribute where the complexType does not have any
child nodes.</td>
</tr>
</tbody>
</table>
</div>
<div class="div1">
<h2><a name="patternsummary" id="patternsummary"></a>D. Pattern
Summary (Non-Normative)</h2>
<a name="pattern-summary" id="pattern-summary"></a>
<table width="100%" border="1">
<caption>Table D-1. Summary of Patterns</caption>
<col width="20%" span="1" />
<col width="80%" span="1" />
<tbody>
<tr>
<th rowspan="1" colspan="1">Id</th>
<th rowspan="1" colspan="1">Pattern</th>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-AnyURIAttribute-summary" href="#pattern-AnyURIAttribute"
id=
"pattern-AnyURIAttribute-summary">pattern-AnyURIAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:anyURI')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-AnyURIElement-summary"
href="#pattern-AnyURIElement" id=
"pattern-AnyURIElement-summary">pattern-AnyURIElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:anyURI')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-AttributeFormUnqualified-summary" href=
"#pattern-AttributeFormUnqualified" id=
"pattern-AttributeFormUnqualified-summary">pattern-AttributeFormUnqualified</a></td>
<td rowspan="1" colspan="1">.//xs:attribute[@form='unqualified']/
(@form)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-AttributeOptional-summary" href=
"#pattern-AttributeOptional" id=
"pattern-AttributeOptional-summary">pattern-AttributeOptional</a></td>
<td rowspan="1" colspan="1">.//xs:attribute[@use = 'optional']/
(@use)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-AttributeReference-summary" href=
"#pattern-AttributeReference" id=
"pattern-AttributeReference-summary">pattern-AttributeReference</a></td>
<td rowspan="1" colspan="1">.//xs:attribute[@ref and contains(@ref,
":")]/ (., @ref)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-AttributeTypeReference-summary" href=
"#pattern-AttributeTypeReference" id=
"pattern-AttributeTypeReference-summary">pattern-AttributeTypeReference</a></td>
<td rowspan="1" colspan="1">.//xs:attribute[@name and @type and
namespace-uri-from-QName(resolve-QName(@type,.)) !=
'http://www.w3.org/2001/XMLSchema' and contains(@type, ':')]/ (.,
@name, @type)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-Base64BinaryElement-summary" href=
"#pattern-Base64BinaryElement" id=
"pattern-Base64BinaryElement-summary">pattern-Base64BinaryElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:base64Binary')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-BooleanAttribute-summary" href="#pattern-BooleanAttribute"
id=
"pattern-BooleanAttribute-summary">pattern-BooleanAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:boolean')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-BooleanElement-summary" href="#pattern-BooleanElement" id=
"pattern-BooleanElement-summary">pattern-BooleanElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:boolean')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-ByteAttribute-summary"
href="#pattern-ByteAttribute" id=
"pattern-ByteAttribute-summary">pattern-ByteAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:byte')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-ByteElement-summary"
href="#pattern-ByteElement" id=
"pattern-ByteElement-summary">pattern-ByteElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:byte')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ComplexTypeAttribute-summary" href=
"#pattern-ComplexTypeAttribute" id=
"pattern-ComplexTypeAttribute-summary">pattern-ComplexTypeAttribute</a></td>
<td rowspan="1" colspan="1">.//xs:complexType/xs:attribute[@name]/
(., @name)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ComplexTypeAttributeExtension-summary" href=
"#pattern-ComplexTypeAttributeExtension" id=
"pattern-ComplexTypeAttributeExtension-summary">pattern-ComplexTypeAttributeExtension</a></td>
<td rowspan="1" colspan="1">
.//xs:complexType/xs:complexContent[xs:extension[@base]/xs:attribute]/
(., xs:extension/(., @base, xs:attribute/(., @name)))</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ComplexTypeConcrete-summary" href=
"#pattern-ComplexTypeConcrete" id=
"pattern-ComplexTypeConcrete-summary">pattern-ComplexTypeConcrete</a></td>
<td rowspan="1" colspan="1">.//xs:complexType[@abstract='false']/
(@abstract)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ComplexTypeSequence-summary" href=
"#pattern-ComplexTypeSequence" id=
"pattern-ComplexTypeSequence-summary">pattern-ComplexTypeSequence</a></td>
<td rowspan="1" colspan="1">.//xs:complexType/xs:sequence/ (.,
xs:element/(., @name))</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ComplexTypeSequenceExtension-summary" href=
"#pattern-ComplexTypeSequenceExtension" id=
"pattern-ComplexTypeSequenceExtension-summary">pattern-ComplexTypeSequenceExtension</a></td>
<td rowspan="1" colspan="1">
.//xs:complexType/xs:complexContent[xs:extension[@base]/xs:sequence]/
(., xs:extension/ (., @base, xs:sequence/(., xs:element/(.,
@name))))</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-DateTimeAttribute-summary" href=
"#pattern-DateTimeAttribute" id=
"pattern-DateTimeAttribute-summary">pattern-DateTimeAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:dateTime')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-DateTimeElement-summary" href="#pattern-DateTimeElement"
id=
"pattern-DateTimeElement-summary">pattern-DateTimeElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:dateTime')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-DocumentationElement-summary" href=
"#pattern-DocumentationElement" id=
"pattern-DocumentationElement-summary">pattern-DocumentationElement</a></td>
<td rowspan="1" colspan="1">.//xs:annotation/xs:documentation/ (..,
., .//*, .//@*)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-DoubleAttribute-summary" href="#pattern-DoubleAttribute"
id=
"pattern-DoubleAttribute-summary">pattern-DoubleAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:double')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-DoubleElement-summary"
href="#pattern-DoubleElement" id=
"pattern-DoubleElement-summary">pattern-DoubleElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:double')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementEmptyComplexType-summary" href=
"#pattern-ElementEmptyComplexType" id=
"pattern-ElementEmptyComplexType-summary">pattern-ElementEmptyComplexType</a></td>
<td rowspan="1" colspan="1">
.//xs:element[@name]/xs:complexType[not(node())]/ (., ..,
../@name)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementEmptySequence-summary" href=
"#pattern-ElementEmptySequence" id=
"pattern-ElementEmptySequence-summary">pattern-ElementEmptySequence</a></td>
<td rowspan="1" colspan="1">
.//xs:element[@name]/xs:complexType/xs:sequence[not(node())]/ (.,
.., ../.., ../../@name)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementFormQualified-summary" href=
"#pattern-ElementFormQualified" id=
"pattern-ElementFormQualified-summary">pattern-ElementFormQualified</a></td>
<td rowspan="1" colspan="1">.//xs:element[@form='qualified']/
(@form)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementMaxOccurs1-summary" href=
"#pattern-ElementMaxOccurs1" id=
"pattern-ElementMaxOccurs1-summary">pattern-ElementMaxOccurs1</a></td>
<td rowspan="1" colspan="1">.//xs:element[(not(@minOccurs) or
@minOccurs = '1') and @maxOccurs = '1']/ (@minOccurs,
@maxOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementMinOccurs0-summary" href=
"#pattern-ElementMinOccurs0" id=
"pattern-ElementMinOccurs0-summary">pattern-ElementMinOccurs0</a></td>
<td rowspan="1" colspan="1">.//xs:element[@minOccurs = '0' and
(not(@maxOccurs) or @maxOccurs = '1')]/ (@minOccurs,
@maxOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementMinOccurs0MaxOccursUnbounded-summary" href=
"#pattern-ElementMinOccurs0MaxOccursUnbounded" id=
"pattern-ElementMinOccurs0MaxOccursUnbounded-summary">pattern-ElementMinOccurs0MaxOccursUnbounded</a></td>
<td rowspan="1" colspan="1">.//xs:element[@minOccurs = '0' and
@maxOccurs = 'unbounded']/ (@minOccurs, @maxOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementMinOccurs1-summary" href=
"#pattern-ElementMinOccurs1" id=
"pattern-ElementMinOccurs1-summary">pattern-ElementMinOccurs1</a></td>
<td rowspan="1" colspan="1">.//xs:element[@minOccurs = '1' and
(not(@maxOccurs) or @maxOccurs = '1')]/ (@minOccurs,
@maxOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementMinOccurs1MaxOccursUnbounded-summary" href=
"#pattern-ElementMinOccurs1MaxOccursUnbounded" id=
"pattern-ElementMinOccurs1MaxOccursUnbounded-summary">pattern-ElementMinOccurs1MaxOccursUnbounded</a></td>
<td rowspan="1" colspan="1">.//xs:element[(not(@minOccurs) or
@minOccurs = '1') and @maxOccurs = 'unbounded']/ (@minOccurs,
@maxOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementReference-summary" href="#pattern-ElementReference"
id=
"pattern-ElementReference-summary">pattern-ElementReference</a></td>
<td rowspan="1" colspan="1">.//xs:element[@ref and contains(@ref,
':')]/ (., @ref)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ElementTypeReference-summary" href=
"#pattern-ElementTypeReference" id=
"pattern-ElementTypeReference-summary">pattern-ElementTypeReference</a></td>
<td rowspan="1" colspan="1">.//xs:element[@name and @type and
namespace-uri-from-QName(resolve-QName(@type,.)) !=
'http://www.w3.org/2001/XMLSchema' and contains(@type, ':')]/ (.,
@name, @type)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-GlobalAttribute-summary" href="#pattern-GlobalAttribute"
id=
"pattern-GlobalAttribute-summary">pattern-GlobalAttribute</a></td>
<td rowspan="1" colspan="1">./xs:attribute[@name and @type and
contains(@type, ":")]/ (., @name, @type)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-GlobalComplexType-summary" href=
"#pattern-GlobalComplexType" id=
"pattern-GlobalComplexType-summary">pattern-GlobalComplexType</a></td>
<td rowspan="1" colspan="1">./xs:complexType[@name]/ (.,
@name)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-GlobalElement-summary"
href="#pattern-GlobalElement" id=
"pattern-GlobalElement-summary">pattern-GlobalElement</a></td>
<td rowspan="1" colspan="1">./xs:element[@name and @type and
contains(@type, ':')]/ (., @name, @type)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-GlobalElementComplexType-summary" href=
"#pattern-GlobalElementComplexType" id=
"pattern-GlobalElementComplexType-summary">pattern-GlobalElementComplexType</a></td>
<td rowspan="1" colspan="1">
.//xs:element[parent::xs:schema]/xs:complexType / (.,..)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-GlobalElementConcrete-summary" href=
"#pattern-GlobalElementConcrete" id=
"pattern-GlobalElementConcrete-summary">pattern-GlobalElementConcrete</a></td>
<td rowspan="1" colspan="1">./xs:element[@abstract='false']/
(@abstract)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-GlobalElementSequence-summary" href=
"#pattern-GlobalElementSequence" id=
"pattern-GlobalElementSequence-summary">pattern-GlobalElementSequence</a></td>
<td rowspan="1" colspan="1">
./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/
(../../(., @name), .., ., xs:element/(., @name))</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-GlobalSimpleType-summary" href="#pattern-GlobalSimpleType"
id=
"pattern-GlobalSimpleType-summary">pattern-GlobalSimpleType</a></td>
<td rowspan="1" colspan="1">./xs:simpleType[@name]/ (., @name)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-Id-summary" href=
"#pattern-Id" id="pattern-Id-summary">pattern-Id</a></td>
<td rowspan="1" colspan="1">.//@id</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-IdentifierName-summary" href="#pattern-IdentifierName" id=
"pattern-IdentifierName-summary">pattern-IdentifierName</a></td>
<td rowspan="1" colspan="1">.//.[matches(@name,
"^[A-Za-z_]([A-Za-z0-9_]{0,31})$")]/ (@name)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ImportNamespace-summary" href="#pattern-ImportNamespace"
id=
"pattern-ImportNamespace-summary">pattern-ImportNamespace</a></td>
<td rowspan="1" colspan="1">./xs:import[@namespace and
not(@schemaLocation) and not(@namespace =
'http://www.w3.org/2001/XMLSchema')]/ (., @namespace)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-ImportSchema-summary"
href="#pattern-ImportSchema" id=
"pattern-ImportSchema-summary">pattern-ImportSchema</a></td>
<td rowspan="1" colspan="1">./xs:import[@namespace and
@schemaLocation]/ (., @namespace, @schemaLocation)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ImportTypesNamespace-summary" href=
"#pattern-ImportTypesNamespace" id=
"pattern-ImportTypesNamespace-summary">pattern-ImportTypesNamespace</a></td>
<td rowspan="1" colspan="1">.//xs:import[@namespace and
not(@schemaLocation) and (@namespace =
../../xs:schema/@targetNamespace)]/ (., @namespace)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-Include-summary" href=
"#pattern-Include" id=
"pattern-Include-summary">pattern-Include</a></td>
<td rowspan="1" colspan="1">./xs:include[@schemaLocation]/ (.,
@schemaLocation)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-IntAttribute-summary"
href="#pattern-IntAttribute" id=
"pattern-IntAttribute-summary">pattern-IntAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:int')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-IntElement-summary"
href="#pattern-IntElement" id=
"pattern-IntElement-summary">pattern-IntElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:int')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-LocalElementComplexType-summary" href=
"#pattern-LocalElementComplexType" id=
"pattern-LocalElementComplexType-summary">pattern-LocalElementComplexType</a></td>
<td rowspan="1" colspan="1">
.//xs:element[not(parent::xs:schema)]/xs:complexType</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-LongAttribute-summary"
href="#pattern-LongAttribute" id=
"pattern-LongAttribute-summary">pattern-LongAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:long')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-LongElement-summary"
href="#pattern-LongElement" id=
"pattern-LongElement-summary">pattern-LongElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:long')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-MaxOccurs1-summary"
href="#pattern-MaxOccurs1" id=
"pattern-MaxOccurs1-summary">pattern-MaxOccurs1</a></td>
<td rowspan="1" colspan="1">.//.[@maxOccurs = '1']/
(@maxOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-MinOccurs1-summary"
href="#pattern-MinOccurs1" id=
"pattern-MinOccurs1-summary">pattern-MinOccurs1</a></td>
<td rowspan="1" colspan="1">.//.[@minOccurs = '1']/
(@minOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-NCNameAttribute-summary" href="#pattern-NCNameAttribute"
id=
"pattern-NCNameAttribute-summary">pattern-NCNameAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:NCName')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-NCNameElement-summary"
href="#pattern-NCNameElement" id=
"pattern-NCNameElement-summary">pattern-NCNameElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:NCName')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-NameAttribute-summary"
href="#pattern-NameAttribute" id=
"pattern-NameAttribute-summary">pattern-NameAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:Name')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-NameElement-summary"
href="#pattern-NameElement" id=
"pattern-NameElement-summary">pattern-NameElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:Name')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-NillableElement-summary" href="#pattern-NillableElement"
id=
"pattern-NillableElement-summary">pattern-NillableElement</a></td>
<td rowspan="1" colspan="1">.//xs:element[@nillable = 'true' and
not(@minOccurs = '0')]/ (@nillable)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-NonIdentifierName-summary" href=
"#pattern-NonIdentifierName" id=
"pattern-NonIdentifierName-summary">pattern-NonIdentifierName</a></td>
<td rowspan="1" colspan="1">.//.[@name and not(matches(@name,
"^[A-Za-z_]([A-Za-z0-9_]{0,31})$"))]/ (@name)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-NonNegativeIntegerAttribute-summary" href=
"#pattern-NonNegativeIntegerAttribute" id=
"pattern-NonNegativeIntegerAttribute-summary">pattern-NonNegativeIntegerAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:nonNegativeInteger')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-NormalizedStringAttribute-summary" href=
"#pattern-NormalizedStringAttribute" id=
"pattern-NormalizedStringAttribute-summary">pattern-NormalizedStringAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:normalizedString')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-NormalizedStringElement-summary" href=
"#pattern-NormalizedStringElement" id=
"pattern-NormalizedStringElement-summary">pattern-NormalizedStringElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:normalizedString')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-NotMixed-summary"
href="#pattern-NotMixed" id=
"pattern-NotMixed-summary">pattern-NotMixed</a></td>
<td rowspan="1" colspan="1">.//.[@mixed = 'false']/ (@mixed)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-NotNillableElement-summary" href=
"#pattern-NotNillableElement" id=
"pattern-NotNillableElement-summary">pattern-NotNillableElement</a></td>
<td rowspan="1" colspan="1">.//xs:element[@nillable = 'false']/
(@nillable)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-NullEnumerationType-summary" href=
"#pattern-NullEnumerationType" id=
"pattern-NullEnumerationType-summary">pattern-NullEnumerationType</a></td>
<td rowspan="1" colspan="1">
.//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) =
xs:QName('xs:string') and count(xs:enumeration) le 1 and
xs:enumeration = '']/ (@base, xs:enumeration/(., @value))</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-PositiveIntegerAttribute-summary" href=
"#pattern-PositiveIntegerAttribute" id=
"pattern-PositiveIntegerAttribute-summary">pattern-PositiveIntegerAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:positiveInteger')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-PositiveIntegerElement-summary" href=
"#pattern-PositiveIntegerElement" id=
"pattern-PositiveIntegerElement-summary">pattern-PositiveIntegerElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:positiveInteger')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-QNameAttribute-summary" href="#pattern-QNameAttribute" id=
"pattern-QNameAttribute-summary">pattern-QNameAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:QName')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-QNameElement-summary"
href="#pattern-QNameElement" id=
"pattern-QNameElement-summary">pattern-QNameElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:QName')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-QualifiedLocalElements-summary" href=
"#pattern-QualifiedLocalElements" id=
"pattern-QualifiedLocalElements-summary">pattern-QualifiedLocalElements</a></td>
<td rowspan="1" colspan="1">.[@elementFormDefault = 'qualified']/
(@elementFormDefault)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-SchemaVersion-summary"
href="#pattern-SchemaVersion" id=
"pattern-SchemaVersion-summary">pattern-SchemaVersion</a></td>
<td rowspan="1" colspan="1">./@version</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-SequenceElement-summary" href="#pattern-SequenceElement"
id=
"pattern-SequenceElement-summary">pattern-SequenceElement</a></td>
<td rowspan="1" colspan="1">.//xs:sequence/xs:element/(.)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-SequenceMaxOccurs1-summary" href=
"#pattern-SequenceMaxOccurs1" id=
"pattern-SequenceMaxOccurs1-summary">pattern-SequenceMaxOccurs1</a></td>
<td rowspan="1" colspan="1">.//xs:sequence[(not(@minOccurs) or
@minOccurs = '1') and @maxOccurs = '1']/ (@minOccurs,
@maxOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-SequenceMinOccurs1-summary" href=
"#pattern-SequenceMinOccurs1" id=
"pattern-SequenceMinOccurs1-summary">pattern-SequenceMinOccurs1</a></td>
<td rowspan="1" colspan="1">.//xs:sequence[@minOccurs = '1' and
(not(@maxOccurs) or @maxOccurs = '1')]/ (@minOccurs,
@maxOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-SequenceSingleRepeatedElement-summary" href=
"#pattern-SequenceSingleRepeatedElement" id=
"pattern-SequenceSingleRepeatedElement-summary">pattern-SequenceSingleRepeatedElement</a></td>
<td rowspan="1" colspan="1">.//xs:sequence[count(xs:element) =
1]/xs:element[@maxOccurs = 'unbounded']/ (., @maxOccurs)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-ShortAttribute-summary" href="#pattern-ShortAttribute" id=
"pattern-ShortAttribute-summary">pattern-ShortAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:short')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-ShortElement-summary"
href="#pattern-ShortElement" id=
"pattern-ShortElement-summary">pattern-ShortElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:short')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-StringAttribute-summary" href="#pattern-StringAttribute"
id=
"pattern-StringAttribute-summary">pattern-StringAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:string')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-StringElement-summary"
href="#pattern-StringElement" id=
"pattern-StringElement-summary">pattern-StringElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:string')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-StringEnumerationType-summary" href=
"#pattern-StringEnumerationType" id=
"pattern-StringEnumerationType-summary">pattern-StringEnumerationType</a></td>
<td rowspan="1" colspan="1">
.//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) =
xs:QName('xs:string') and xs:enumeration]/ (., @base,
xs:enumeration/(., @value))</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-TargetNamespace-summary" href="#pattern-TargetNamespace"
id=
"pattern-TargetNamespace-summary">pattern-TargetNamespace</a></td>
<td rowspan="1" colspan="1">.[@targetNamespace]/ (.,
@targetNamespace)</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-TokenAttribute-summary" href="#pattern-TokenAttribute" id=
"pattern-TokenAttribute-summary">pattern-TokenAttribute</a></td>
<td rowspan="1" colspan="1">
.//xs:attribute/@type[resolve-QName(.,..) =
xs:QName('xs:token')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="pattern-TokenElement-summary"
href="#pattern-TokenElement" id=
"pattern-TokenElement-summary">pattern-TokenElement</a></td>
<td rowspan="1" colspan="1">.//xs:element/@type[resolve-QName(.,..)
= xs:QName('xs:token')]</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"pattern-UnqualifiedLocalAttributes-summary" href=
"#pattern-UnqualifiedLocalAttributes" id=
"pattern-UnqualifiedLocalAttributes-summary">pattern-UnqualifiedLocalAttributes</a></td>
<td rowspan="1" colspan="1">.[not(@attributeFormDefault) or
@attributeFormDefault = 'unqualified']/ (.,
@attributeFormDefault)</td>
</tr>
</tbody>
</table>
<br /></div>
<h2><a name="assertionsummary" id="assertionsummary"></a>E.
Assertion Summary (Non-Normative)</h2>
<a name="document-assertion-summary" id=
"document-assertion-summary"></a>
<table width="100%" border="1">
<caption>Table E-1. Summary of Document Assertions</caption>
<col width="20%" span="1" />
<col width="80%" span="1" />
<tbody>
<tr>
<th rowspan="1" colspan="1">Id</th>
<th rowspan="1" colspan="1">Assertion</th>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"assert-AttributeElementNameClash-summary" href=
"#assert-AttributeElementNameClash" id=
"assert-AttributeElementNameClash-summary">assert-AttributeElementNameClash</a></td>
<td rowspan="1" colspan="1">The <a href=
"http://www.w3.org/TR/REC-xml-names/#NT-NCName">NCName</a> used to
declare an <a href="#XML">[XML 1.0]</a> attribute MUST NOT be used
as the declared <a href=
"http://www.w3.org/TR/REC-xml-names/#NT-NCName">NCName</a> of a
child element.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-BOM-summary" href=
"#assert-BOM" id="assert-BOM-summary">assert-BOM</a></td>
<td rowspan="1" colspan="1">MAY include the <a href=
"#Unicode">[Unicode]</a> Byte Order Mark (<a href=
"#BOM">[BOM]</a>).</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-BasicPatterns-summary"
href="#assert-BasicPatterns" id=
"assert-BasicPatterns-summary">assert-BasicPatterns</a></td>
<td rowspan="1" colspan="1">MUST only contain <a href="#XML">[XML
1.0]</a> element nodes and attribute nodes which form a part of one
or more complete patterns contained in this specification.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-CommentsAndPIs-summary"
href="#assert-CommentsAndPIs" id=
"assert-CommentsAndPIs-summary">assert-CommentsAndPIs</a></td>
<td rowspan="1" colspan="1">MAY contain additional <a href=
"#XML">[XML 1.0]</a> comment nodes and processing instruction
nodes.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"assert-QualifiedLocalElements-summary" href=
"#assert-QualifiedLocalElements" id=
"assert-QualifiedLocalElements-summary">assert-QualifiedLocalElements</a></td>
<td rowspan="1" colspan="1">An <a href="#XMLSchema">[XML Schema
1.0]</a> document conforming to this specification MUST namespace
qualify all locally declared elements using a schema element
<code>elementFormDefault</code> attribute value of
<code>qualified</code>.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-SchemaElement-summary"
href="#assert-SchemaElement" id=
"assert-SchemaElement-summary">assert-SchemaElement</a></td>
<td rowspan="1" colspan="1">The <code>xs:schema</code> element MAY
be the document element, but MAY also appear within other
descriptions such as a <a href="#WSDL20">[WSDL 2.0]</a> or <a href=
"#WSDL11">[WSDL 1.1]</a> document.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"assert-TargetNamespace-summary" href="#assert-TargetNamespace" id=
"assert-TargetNamespace-summary">assert-TargetNamespace</a></td>
<td rowspan="1" colspan="1">An <a href="#XMLSchema">[XML Schema
1.0]</a> document conforming to this specification MUST define a
<code>targetNamespace</code> whose value is an absolute URI.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-Unicode-summary" href=
"#assert-Unicode" id=
"assert-Unicode-summary">assert-Unicode</a></td>
<td rowspan="1" colspan="1">MUST use either the UTF-8 or UTF-16
<a href="#Unicode">[Unicode]</a> encoding.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-XML10-summary" href=
"#assert-XML10" id="assert-XML10-summary">assert-XML10</a></td>
<td rowspan="1" colspan="1">MUST be a well-formed <a href=
"#XML">[XML 1.0]</a> document</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-XMLSchema10-summary"
href="#assert-XMLSchema10" id=
"assert-XMLSchema10-summary">assert-XMLSchema10</a></td>
<td rowspan="1" colspan="1">MUST be a 'schema document', as defined
in <a href="#XMLSchema">[XML Schema 1.0]</a>, and MUST therefore
meet the "<a href=
"http://www.w3.org/TR/xmlschema-1/#gloss-src">Constraints on the
representation of schema components in XML</a>" provided
therein.</td>
</tr>
</tbody>
</table>
<br />
<a name="implementation-assertion-summary" id=
"implementation-assertion-summary"></a>
<table width="100%" border="1">
<caption>Table E-2. Summary of Implementation Assertions</caption>
<col width="20%" span="1" />
<col width="80%" span="1" />
<tbody>
<tr>
<th rowspan="1" colspan="1">Id</th>
<th rowspan="1" colspan="1">Assertion</th>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"assert-ConsumeInvalidAllowed-summary" href=
"#assert-ConsumeInvalidAllowed" id=
"assert-ConsumeInvalidAllowed-summary">assert-ConsumeInvalidAllowed</a></td>
<td rowspan="1" colspan="1">MAY consume well-formed <a href=
"#XML">[XML 1.0]</a> instance documents which do not satisfy
local-schema validity against the originating <a href=
"#XMLSchema">[XML Schema 1.0]</a> document.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-ConsumeXML-summary"
href="#assert-ConsumeXML" id=
"assert-ConsumeXML-summary">assert-ConsumeXML</a></td>
<td rowspan="1" colspan="1">MUST be able to consume any well-formed
<a href="#XML">[XML 1.0]</a> document which satisfies local-schema
validity against the originating <a href="#XMLSchema">[XML Schema
1.0]</a> document exposing all of the <a href="#XML">[XML 1.0]</a>
element node and attribute node content in the data model.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-DataModel-summary"
href="#assert-DataModel" id=
"assert-DataModel-summary">assert-DataModel</a></td>
<td rowspan="1" colspan="1">MUST produce a data model exposing all
of the <a href="#XML">[XML 1.0]</a> element node and attribute node
content constrained by the originating <a href="#XMLSchema">[XML
Schema 1.0]</a> document.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name=
"assert-ProduceInvalidAllowed-summary" href=
"#assert-ProduceInvalidAllowed" id=
"assert-ProduceInvalidAllowed-summary">assert-ProduceInvalidAllowed</a></td>
<td rowspan="1" colspan="1">MAY allow the production of well-formed
<a href="#XML">[XML 1.0]</a> instance documents containing values
exposed in the data model which do not satisfy local-schema
validity against the originating <a href="#XMLSchema">[XML Schema
1.0]</a> document.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-ProduceXML-summary"
href="#assert-ProduceXML" id=
"assert-ProduceXML-summary">assert-ProduceXML</a></td>
<td rowspan="1" colspan="1">MUST be able to produce well-formed
<a href="#XML">[XML 1.0]</a> instance documents which satisfy
local-schema validity against the originating <a href=
"#XMLSchema">[XML Schema 1.0]</a> document containing values
exposed in the data model.</td>
</tr>
<tr>
<td rowspan="1" colspan="1"><a name="assert-SchemaValid-summary"
href="#assert-SchemaValid" id=
"assert-SchemaValid-summary">assert-SchemaValid</a></td>
<td rowspan="1" colspan="1">MUST be able to process any <a href=
"#XMLSchema">[XML Schema 1.0]</a> document conforming to this
specification</td>
</tr>
</tbody>
</table>
<br />
<div class="div1">
<h2><a name="schemasummary" id="schemasummary"></a>F. Supported XML
Schema elements, attributes and simple types (Non-Normative)</h2>
<p>This section lists all the elements, attributes and simple types
defined by the XML Schema specifications and indicates if it is
referenced from one of the patterns.</p>
<table id="schema_elements" border="1" width="100%">
<caption>Table F. List of supported and non-supported schema
elements</caption>
<thead>
<tr>
<th>Element</th>
<th>Patterns</th>
</tr>
</thead>
<tbody>
<tr id="xsd_element_all">
<th>xs:all</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_annotation">
<th>xs:annotation</th>
<td><a href=
"#pattern-DocumentationElement">DocumentationElement</a></td>
</tr>
<tr id="xsd_element_any">
<th>xs:any</th>
<td><a href="#pattern-AnyURIElement">AnyURIElement</a>, <a href=
"#pattern-AnyURIAttribute">AnyURIAttribute</a></td>
</tr>
<tr id="xsd_element_anyAttribute">
<th>xs:anyAttribute</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_appinfo">
<th>xs:appinfo</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_attribute">
<th>xs:attribute</th>
<td><a href="#pattern-GlobalAttribute">GlobalAttribute</a>,
<a href="#pattern-AttributeFormUnqualified">AttributeFormUnqualified</a>,
<a href="#pattern-AttributeOptional">AttributeOptional</a>,
<a href="#pattern-AttributeReference">AttributeReference</a>,
<a href=
"#pattern-AttributeTypeReference">AttributeTypeReference</a>,
<a href="#pattern-ComplexTypeAttribute">ComplexTypeAttribute</a>,
<a href=
"#pattern-ComplexTypeAttributeExtension">ComplexTypeAttributeExtension</a>,
<a href="#pattern-StringAttribute">StringAttribute</a>, <a href=
"#pattern-BooleanAttribute">BooleanAttribute</a>, <a href=
"#pattern-DoubleAttribute">DoubleAttribute</a>, <a href=
"#pattern-DateTimeAttribute">DateTimeAttribute</a>, <a href=
"#pattern-AnyURIAttribute">AnyURIAttribute</a>, <a href=
"#pattern-QNameAttribute">QNameAttribute</a>, <a href=
"#pattern-NormalizedStringAttribute">NormalizedStringAttribute</a>,
<a href="#pattern-TokenAttribute">TokenAttribute</a>, <a href=
"#pattern-NameAttribute">NameAttribute</a>, <a href=
"#pattern-NCNameAttribute">NCNameAttribute</a>, <a href=
"#pattern-LongAttribute">LongAttribute</a>, <a href=
"#pattern-IntAttribute">IntAttribute</a>, <a href=
"#pattern-ShortAttribute">ShortAttribute</a>, <a href=
"#pattern-ByteAttribute">ByteAttribute</a>, <a href=
"#pattern-NonNegativeIntegerAttribute">NonNegativeIntegerAttribute</a>,
<a href=
"#pattern-PositiveIntegerAttribute">PositiveIntegerAttribute</a></td>
</tr>
<tr id="xsd_element_attributeGroup">
<th>xs:attributeGroup</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_choice">
<th>xs:choice</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_complexContent">
<th>xs:complexContent</th>
<td><a href=
"#pattern-ComplexTypeAttributeExtension">ComplexTypeAttributeExtension</a>,
<a href=
"#pattern-ComplexTypeSequenceExtension">ComplexTypeSequenceExtension</a></td>
</tr>
<tr id="xsd_element_complexType">
<th>xs:complexType</th>
<td><a href="#pattern-ComplexTypeConcrete">ComplexTypeConcrete</a>,
<a href="#pattern-GlobalElementSequence">GlobalElementSequence</a>,
<a href=
"#pattern-GlobalElementComplexType">GlobalElementComplexType</a>,
<a href="#pattern-ElementEmptySequence">ElementEmptySequence</a>,
<a href=
"#pattern-ElementEmptyComplexType">ElementEmptyComplexType</a>,
<a href=
"#pattern-LocalElementComplexType">LocalElementComplexType</a>,
<a href="#pattern-GlobalComplexType">GlobalComplexType</a>,
<a href="#pattern-ComplexTypeAttribute">ComplexTypeAttribute</a>,
<a href="#pattern-ComplexTypeSequence">ComplexTypeSequence</a>,
<a href=
"#pattern-ComplexTypeAttributeExtension">ComplexTypeAttributeExtension</a>,
<a href=
"#pattern-ComplexTypeSequenceExtension">ComplexTypeSequenceExtension</a></td>
</tr>
<tr id="xsd_element_documentation">
<th>xs:documentation</th>
<td><a href=
"#pattern-DocumentationElement">DocumentationElement</a></td>
</tr>
<tr id="xsd_element_element">
<th>xs:element</th>
<td><a href=
"#pattern-GlobalElementConcrete">GlobalElementConcrete</a>,
<a href="#pattern-GlobalElement">GlobalElement</a>, <a href=
"#pattern-GlobalElementSequence">GlobalElementSequence</a>,
<a href="#pattern-GlobalElementComplexType">GlobalElementComplexType</a>,
<a href="#pattern-ElementMinOccurs0">ElementMinOccurs0</a>,
<a href="#pattern-ElementMinOccurs1">ElementMinOccurs1</a>,
<a href="#pattern-ElementMaxOccurs1">ElementMaxOccurs1</a>,
<a href="#pattern-ElementMinOccurs0MaxOccursUnbounded">ElementMinOccurs0MaxOccursUnbounded</a>,
<a href=
"#pattern-ElementMinOccurs1MaxOccursUnbounded">ElementMinOccurs1MaxOccursUnbounded</a>,
<a href="#pattern-ElementFormQualified">ElementFormQualified</a>,
<a href="#pattern-SequenceElement">SequenceElement</a>, <a href=
"#pattern-SequenceSingleRepeatedElement">SequenceSingleRepeatedElement</a>,
<a href="#pattern-ElementEmptySequence">ElementEmptySequence</a>,
<a href=
"#pattern-ElementEmptyComplexType">ElementEmptyComplexType</a>,
<a href="#pattern-NillableElement">NillableElement</a>, <a href=
"#pattern-NotNillableElement">NotNillableElement</a>, <a href=
"#pattern-ElementTypeReference">ElementTypeReference</a>, <a href=
"#pattern-ElementReference">ElementReference</a>, <a href=
"#pattern-LocalElementComplexType">LocalElementComplexType</a>,
<a href="#pattern-ComplexTypeSequence">ComplexTypeSequence</a>,
<a href=
"#pattern-ComplexTypeSequenceExtension">ComplexTypeSequenceExtension</a>,
<a href="#pattern-StringElement">StringElement</a>, <a href=
"#pattern-BooleanElement">BooleanElement</a>, <a href=
"#pattern-DoubleElement">DoubleElement</a>, <a href=
"#pattern-DateTimeElement">DateTimeElement</a>, <a href=
"#pattern-Base64BinaryElement">Base64BinaryElement</a>, <a href=
"#pattern-AnyURIElement">AnyURIElement</a>, <a href=
"#pattern-QNameElement">QNameElement</a>, <a href=
"#pattern-NormalizedStringElement">NormalizedStringElement</a>,
<a href="#pattern-TokenElement">TokenElement</a>, <a href=
"#pattern-NameElement">NameElement</a>, <a href=
"#pattern-NCNameElement">NCNameElement</a>, <a href=
"#pattern-LongElement">LongElement</a>, <a href=
"#pattern-IntElement">IntElement</a>, <a href=
"#pattern-ShortElement">ShortElement</a>, <a href=
"#pattern-ByteElement">ByteElement</a>, <a href=
"#pattern-PositiveIntegerElement">PositiveIntegerElement</a></td>
</tr>
<tr id="xsd_element_enumeration">
<th>xs:enumeration</th>
<td><a href=
"#pattern-StringEnumerationType">StringEnumerationType</a>,
<a href="#pattern-NullEnumerationType">NullEnumerationType</a></td>
</tr>
<tr id="xsd_element_field">
<th>xs:field</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_fractionDigits">
<th>xs:fractionDigits</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_group">
<th>xs:group</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_import">
<th>xs:import</th>
<td><a href=
"#pattern-ImportTypesNamespace">ImportTypesNamespace</a>, <a href=
"#pattern-ImportNamespace">ImportNamespace</a>, <a href=
"#pattern-ImportSchema">ImportSchema</a></td>
</tr>
<tr id="xsd_element_include">
<th>xs:include</th>
<td><a href="#pattern-Include">Include</a></td>
</tr>
<tr id="xsd_element_key">
<th>xs:key</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_keyref">
<th>xs:keyref</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_length">
<th>xs:length</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_list">
<th>xs:list</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_maxExclusive">
<th>xs:maxExclusive</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_maxInclusive">
<th>xs:maxInclusive</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_maxLength">
<th>xs:maxLength</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_minExclusive">
<th>xs:minExclusive</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_minInclusive">
<th>xs:minInclusive</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_minLength">
<th>xs:minLength</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_notation">
<th>xs:notation</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_pattern">
<th>xs:pattern</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_redefine">
<th>xs:redefine</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_restriction">
<th>xs:restriction</th>
<td><a href=
"#pattern-StringEnumerationType">StringEnumerationType</a>,
<a href="#pattern-NullEnumerationType">NullEnumerationType</a></td>
</tr>
<tr id="xsd_element_schema">
<th>xs:schema</th>
<td><a href=
"#pattern-ImportTypesNamespace">ImportTypesNamespace</a>, <a href=
"#pattern-GlobalElementComplexType">GlobalElementComplexType</a>,
<a href=
"#pattern-LocalElementComplexType">LocalElementComplexType</a></td>
</tr>
<tr id="xsd_element_selector">
<th>xs:selector</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_sequence">
<th>xs:sequence</th>
<td><a href=
"#pattern-GlobalElementSequence">GlobalElementSequence</a>,
<a href="#pattern-SequenceElement">SequenceElement</a>, <a href=
"#pattern-SequenceSingleRepeatedElement">SequenceSingleRepeatedElement</a>,
<a href="#pattern-ElementEmptySequence">ElementEmptySequence</a>,
<a href="#pattern-ComplexTypeSequence">ComplexTypeSequence</a>,
<a href=
"#pattern-ComplexTypeSequenceExtension">ComplexTypeSequenceExtension</a>,
<a href="#pattern-SequenceMinOccurs1">SequenceMinOccurs1</a>,
<a href="#pattern-SequenceMaxOccurs1">SequenceMaxOccurs1</a></td>
</tr>
<tr id="xsd_element_simpleContent">
<th>xs:simpleContent</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_simpleType">
<th>xs:simpleType</th>
<td><a href="#pattern-GlobalSimpleType">GlobalSimpleType</a>,
<a href="#pattern-StringEnumerationType">StringEnumerationType</a>,
<a href="#pattern-NullEnumerationType">NullEnumerationType</a></td>
</tr>
<tr id="xsd_element_totalDigits">
<th>xs:totalDigits</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_union">
<th>xs:union</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_unique">
<th>xs:unique</th>
<td>N/A</td>
</tr>
<tr id="xsd_element_whiteSpace">
<th>xs:whiteSpace</th>
<td>N/A</td>
</tr>
</tbody>
</table>
<table id="schema_attributes" border="1" width="100%">
<caption>Table F. List of supported and non-supported schema
attributes</caption>
<thead>
<tr>
<th>Attribute</th>
<th>Patterns</th>
</tr>
</thead>
<tbody>
<tr id="xsd_simple_type_abstract">
<th>@abstract</th>
<td><a href="#pattern-ComplexTypeConcrete">ComplexTypeConcrete</a>,
<a href=
"#pattern-GlobalElementConcrete">GlobalElementConcrete</a></td>
</tr>
<tr id="xsd_simple_type_attributeFormDefault">
<th>@attributeFormDefault</th>
<td><a href=
"#pattern-UnqualifiedLocalAttributes">UnqualifiedLocalAttributes</a></td>
</tr>
<tr id="xsd_simple_type_base">
<th>@base</th>
<td><a href=
"#pattern-StringEnumerationType">StringEnumerationType</a>,
<a href="#pattern-NullEnumerationType">NullEnumerationType</a>,
<a href=
"#pattern-ComplexTypeAttributeExtension">ComplexTypeAttributeExtension</a>,
<a href=
"#pattern-ComplexTypeSequenceExtension">ComplexTypeSequenceExtension</a></td>
</tr>
<tr id="xsd_simple_type_block">
<th>@block</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_blockDefault">
<th>@blockDefault</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_default">
<th>@default</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_elementFormDefault">
<th>@elementFormDefault</th>
<td><a href=
"#pattern-QualifiedLocalElements">QualifiedLocalElements</a></td>
</tr>
<tr id="xsd_simple_type_final">
<th>@final</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_finalDefault">
<th>@finalDefault</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_fixed">
<th>@fixed</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_form">
<th>@form</th>
<td><a href=
"#pattern-ElementFormQualified">ElementFormQualified</a>, <a href=
"#pattern-AttributeFormUnqualified">AttributeFormUnqualified</a></td>
</tr>
<tr id="xsd_simple_type_id">
<th>@id</th>
<td><a href="#pattern-Id">Id</a></td>
</tr>
<tr id="xsd_simple_type_itemType">
<th>@itemType</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_maxOccurs">
<th>@maxOccurs</th>
<td><a href="#pattern-MaxOccurs1">MaxOccurs1</a>, <a href=
"#pattern-ElementMinOccurs0">ElementMinOccurs0</a>, <a href=
"#pattern-ElementMinOccurs1">ElementMinOccurs1</a>, <a href=
"#pattern-ElementMaxOccurs1">ElementMaxOccurs1</a>, <a href=
"#pattern-ElementMinOccurs0MaxOccursUnbounded">ElementMinOccurs0MaxOccursUnbounded</a>,
<a href=
"#pattern-ElementMinOccurs1MaxOccursUnbounded">ElementMinOccurs1MaxOccursUnbounded</a>,
<a href=
"#pattern-SequenceSingleRepeatedElement">SequenceSingleRepeatedElement</a>,
<a href="#pattern-SequenceMinOccurs1">SequenceMinOccurs1</a>,
<a href="#pattern-SequenceMaxOccurs1">SequenceMaxOccurs1</a></td>
</tr>
<tr id="xsd_simple_type_memberTypes">
<th>@memberTypes</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_minOccurs">
<th>@minOccurs</th>
<td><a href="#pattern-MinOccurs1">MinOccurs1</a>, <a href=
"#pattern-ElementMinOccurs0">ElementMinOccurs0</a>, <a href=
"#pattern-ElementMinOccurs1">ElementMinOccurs1</a>, <a href=
"#pattern-ElementMaxOccurs1">ElementMaxOccurs1</a>, <a href=
"#pattern-ElementMinOccurs0MaxOccursUnbounded">ElementMinOccurs0MaxOccursUnbounded</a>,
<a href=
"#pattern-ElementMinOccurs1MaxOccursUnbounded">ElementMinOccurs1MaxOccursUnbounded</a>,
<a href="#pattern-NillableElement">NillableElement</a>, <a href=
"#pattern-SequenceMinOccurs1">SequenceMinOccurs1</a>, <a href=
"#pattern-SequenceMaxOccurs1">SequenceMaxOccurs1</a></td>
</tr>
<tr id="xsd_simple_type_mixed">
<th>@mixed</th>
<td><a href="#pattern-NotMixed">NotMixed</a></td>
</tr>
<tr id="xsd_simple_type_name">
<th>@name</th>
<td><a href="#pattern-IdentifierName">IdentifierName</a>, <a href=
"#pattern-NonIdentifierName">NonIdentifierName</a>, <a href=
"#pattern-ImportTypesNamespace">ImportTypesNamespace</a>, <a href=
"#pattern-ImportNamespace">ImportNamespace</a>, <a href=
"#pattern-ImportSchema">ImportSchema</a>, <a href=
"#pattern-GlobalElement">GlobalElement</a>, <a href=
"#pattern-GlobalElementSequence">GlobalElementSequence</a>,
<a href="#pattern-GlobalAttribute">GlobalAttribute</a>, <a href=
"#pattern-ElementEmptySequence">ElementEmptySequence</a>, <a href=
"#pattern-ElementEmptyComplexType">ElementEmptyComplexType</a>,
<a href="#pattern-ElementTypeReference">ElementTypeReference</a>,
<a href=
"#pattern-AttributeTypeReference">AttributeTypeReference</a>,
<a href="#pattern-GlobalSimpleType">GlobalSimpleType</a>, <a href=
"#pattern-GlobalComplexType">GlobalComplexType</a>, <a href=
"#pattern-ComplexTypeAttribute">ComplexTypeAttribute</a>, <a href=
"#pattern-ComplexTypeSequence">ComplexTypeSequence</a>, <a href=
"#pattern-ComplexTypeAttributeExtension">ComplexTypeAttributeExtension</a>,
<a href=
"#pattern-ComplexTypeSequenceExtension">ComplexTypeSequenceExtension</a></td>
</tr>
<tr id="xsd_simple_type_namespace">
<th>@namespace</th>
<td><a href=
"#pattern-ImportTypesNamespace">ImportTypesNamespace</a>, <a href=
"#pattern-ImportNamespace">ImportNamespace</a>, <a href=
"#pattern-ImportSchema">ImportSchema</a></td>
</tr>
<tr id="xsd_simple_type_nillable">
<th>@nillable</th>
<td><a href="#pattern-NillableElement">NillableElement</a>,
<a href="#pattern-NotNillableElement">NotNillableElement</a></td>
</tr>
<tr id="xsd_simple_type_processContents">
<th>@processContents</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_public">
<th>@public</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_ref">
<th>@ref</th>
<td><a href="#pattern-ElementReference">ElementReference</a>,
<a href="#pattern-AttributeReference">AttributeReference</a></td>
</tr>
<tr id="xsd_simple_type_refer">
<th>@refer</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_schemaLocation">
<th>@schemaLocation</th>
<td><a href=
"#pattern-ImportTypesNamespace">ImportTypesNamespace</a>, <a href=
"#pattern-ImportNamespace">ImportNamespace</a>, <a href=
"#pattern-ImportSchema">ImportSchema</a>, <a href=
"#pattern-Include">Include</a></td>
</tr>
<tr id="xsd_simple_type_source">
<th>@source</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_substitutionGroup">
<th>@substitutionGroup</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_system">
<th>@system</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_targetNamespace">
<th>@targetNamespace</th>
<td><a href="#pattern-TargetNamespace">TargetNamespace</a>,
<a href="#pattern-ImportTypesNamespace">ImportTypesNamespace</a></td>
</tr>
<tr id="xsd_simple_type_type">
<th>@type</th>
<td><a href="#pattern-GlobalElement">GlobalElement</a>, <a href=
"#pattern-GlobalAttribute">GlobalAttribute</a>, <a href=
"#pattern-ElementTypeReference">ElementTypeReference</a>, <a href=
"#pattern-AttributeTypeReference">AttributeTypeReference</a>,
<a href="#pattern-StringElement">StringElement</a>, <a href=
"#pattern-BooleanElement">BooleanElement</a>, <a href=
"#pattern-DoubleElement">DoubleElement</a>, <a href=
"#pattern-DateTimeElement">DateTimeElement</a>, <a href=
"#pattern-Base64BinaryElement">Base64BinaryElement</a>, <a href=
"#pattern-AnyURIElement">AnyURIElement</a>, <a href=
"#pattern-QNameElement">QNameElement</a>, <a href=
"#pattern-NormalizedStringElement">NormalizedStringElement</a>,
<a href="#pattern-TokenElement">TokenElement</a>, <a href=
"#pattern-NameElement">NameElement</a>, <a href=
"#pattern-NCNameElement">NCNameElement</a>, <a href=
"#pattern-LongElement">LongElement</a>, <a href=
"#pattern-IntElement">IntElement</a>, <a href=
"#pattern-ShortElement">ShortElement</a>, <a href=
"#pattern-ByteElement">ByteElement</a>, <a href=
"#pattern-PositiveIntegerElement">PositiveIntegerElement</a>,
<a href="#pattern-StringAttribute">StringAttribute</a>, <a href=
"#pattern-BooleanAttribute">BooleanAttribute</a>, <a href=
"#pattern-DoubleAttribute">DoubleAttribute</a>, <a href=
"#pattern-DateTimeAttribute">DateTimeAttribute</a>, <a href=
"#pattern-AnyURIAttribute">AnyURIAttribute</a>, <a href=
"#pattern-QNameAttribute">QNameAttribute</a>, <a href=
"#pattern-NormalizedStringAttribute">NormalizedStringAttribute</a>,
<a href="#pattern-TokenAttribute">TokenAttribute</a>, <a href=
"#pattern-NameAttribute">NameAttribute</a>, <a href=
"#pattern-NCNameAttribute">NCNameAttribute</a>, <a href=
"#pattern-LongAttribute">LongAttribute</a>, <a href=
"#pattern-IntAttribute">IntAttribute</a>, <a href=
"#pattern-ShortAttribute">ShortAttribute</a>, <a href=
"#pattern-ByteAttribute">ByteAttribute</a>, <a href=
"#pattern-NonNegativeIntegerAttribute">NonNegativeIntegerAttribute</a>,
<a href=
"#pattern-PositiveIntegerAttribute">PositiveIntegerAttribute</a></td>
</tr>
<tr id="xsd_simple_type_use">
<th>@use</th>
<td><a href="#pattern-AttributeOptional">AttributeOptional</a></td>
</tr>
<tr id="xsd_simple_type_value">
<th>@value</th>
<td><a href=
"#pattern-StringEnumerationType">StringEnumerationType</a>,
<a href="#pattern-NullEnumerationType">NullEnumerationType</a></td>
</tr>
<tr id="xsd_simple_type_version">
<th>@version</th>
<td><a href="#pattern-SchemaVersion">SchemaVersion</a></td>
</tr>
<tr id="xsd_simple_type_xpath">
<th>@xpath</th>
<td>N/A</td>
</tr>
</tbody>
</table>
<table id="schema_types" border="1" width="100%">
<caption>Table F. List of supported and non-supported schema simple
types</caption>
<thead>
<tr>
<th>Simple Type</th>
<th>Patterns</th>
</tr>
</thead>
<tbody>
<tr id="xsd_simple_type_ENTITIES">
<th>xs:ENTITIES</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_ENTITY">
<th>xs:ENTITY</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_ID">
<th>xs:ID</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_IDREF">
<th>xs:IDREF</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_IDREFS">
<th>xs:IDREFS</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_NCName">
<th>xs:NCName</th>
<td><a href="#pattern-NCNameElement">NCNameElement</a>, <a href=
"#pattern-NCNameAttribute">NCNameAttribute</a></td>
</tr>
<tr id="xsd_simple_type_NMTOKEN">
<th>xs:NMTOKEN</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_NMTOKENS">
<th>xs:NMTOKENS</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_NOTATION">
<th>xs:NOTATION</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_Name">
<th>xs:Name</th>
<td><a href="#pattern-NameElement">NameElement</a>, <a href=
"#pattern-NameAttribute">NameAttribute</a></td>
</tr>
<tr id="xsd_simple_type_QName">
<th>xs:QName</th>
<td><a href="#pattern-QNameElement">QNameElement</a>, <a href=
"#pattern-QNameAttribute">QNameAttribute</a></td>
</tr>
<tr id="xsd_simple_type_anyURI">
<th>xs:anyURI</th>
<td><a href="#pattern-AnyURIElement">AnyURIElement</a>, <a href=
"#pattern-AnyURIAttribute">AnyURIAttribute</a></td>
</tr>
<tr id="xsd_simple_type_base64Binary">
<th>xs:base64Binary</th>
<td><a href=
"#pattern-Base64BinaryElement">Base64BinaryElement</a></td>
</tr>
<tr id="xsd_simple_type_boolean">
<th>xs:boolean</th>
<td><a href="#pattern-BooleanElement">BooleanElement</a>, <a href=
"#pattern-BooleanAttribute">BooleanAttribute</a></td>
</tr>
<tr id="xsd_simple_type_byte">
<th>xs:byte</th>
<td><a href="#pattern-ByteElement">ByteElement</a>, <a href=
"#pattern-ByteAttribute">ByteAttribute</a></td>
</tr>
<tr id="xsd_simple_type_date">
<th>xs:date</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_dateTime">
<th>xs:dateTime</th>
<td><a href="#pattern-DateTimeElement">DateTimeElement</a>,
<a href="#pattern-DateTimeAttribute">DateTimeAttribute</a></td>
</tr>
<tr id="xsd_simple_type_decimal">
<th>xs:decimal</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_double">
<th>xs:double</th>
<td><a href="#pattern-DoubleElement">DoubleElement</a>, <a href=
"#pattern-DoubleAttribute">DoubleAttribute</a></td>
</tr>
<tr id="xsd_simple_type_duration">
<th>xs:duration</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_float">
<th>xs:float</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_gDay">
<th>xs:gDay</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_gMonth">
<th>xs:gMonth</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_gMonthDay">
<th>xs:gMonthDay</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_gYear">
<th>xs:gYear</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_gYearMonth">
<th>xs:gYearMonth</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_hexBinary">
<th>xs:hexBinary</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_int">
<th>xs:int</th>
<td><a href="#pattern-IntElement">IntElement</a>, <a href=
"#pattern-IntAttribute">IntAttribute</a></td>
</tr>
<tr id="xsd_simple_type_integer">
<th>xs:integer</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_language">
<th>xs:language</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_long">
<th>xs:long</th>
<td><a href="#pattern-LongElement">LongElement</a>, <a href=
"#pattern-LongAttribute">LongAttribute</a></td>
</tr>
<tr id="xsd_simple_type_negativeInteger">
<th>xs:negativeInteger</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_nonNegativeInteger">
<th>xs:nonNegativeInteger</th>
<td><a href=
"#pattern-NonNegativeIntegerAttribute">NonNegativeIntegerAttribute</a></td>
</tr>
<tr id="xsd_simple_type_nonPositiveInteger">
<th>xs:nonPositiveInteger</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_normalizedString">
<th>xs:normalizedString</th>
<td><a href=
"#pattern-NormalizedStringElement">NormalizedStringElement</a>,
<a href=
"#pattern-NormalizedStringAttribute">NormalizedStringAttribute</a></td>
</tr>
<tr id="xsd_simple_type_positiveInteger">
<th>xs:positiveInteger</th>
<td><a href=
"#pattern-PositiveIntegerElement">PositiveIntegerElement</a>,
<a href=
"#pattern-PositiveIntegerAttribute">PositiveIntegerAttribute</a></td>
</tr>
<tr id="xsd_simple_type_short">
<th>xs:short</th>
<td><a href="#pattern-ShortElement">ShortElement</a>, <a href=
"#pattern-ShortAttribute">ShortAttribute</a></td>
</tr>
<tr id="xsd_simple_type_string">
<th>xs:string</th>
<td><a href=
"#pattern-StringEnumerationType">StringEnumerationType</a>,
<a href="#pattern-NullEnumerationType">NullEnumerationType</a>,
<a href="#pattern-StringElement">StringElement</a>, <a href=
"#pattern-StringAttribute">StringAttribute</a></td>
</tr>
<tr id="xsd_simple_type_time">
<th>xs:time</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_token">
<th>xs:token</th>
<td><a href="#pattern-TokenElement">TokenElement</a>, <a href=
"#pattern-TokenAttribute">TokenAttribute</a></td>
</tr>
<tr id="xsd_simple_type_unsignedByte">
<th>xs:unsignedByte</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_unsignedInt">
<th>xs:unsignedInt</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_unsignedLong">
<th>xs:unsignedLong</th>
<td>N/A</td>
</tr>
<tr id="xsd_simple_type_unsignedShort">
<th>xs:unsignedShort</th>
<td>N/A</td>
</tr>
</tbody>
</table>
</div>
<div class="div1">
<h2><a name="WS-I" id="WS-I"></a>G. Relationship with the WS-I
Basic Profile (Non-Normative)</h2>
<p id="ISSUE-71"><a href="#XMLSchema">[XML Schema 1.0]</a>
documents conforming to this specification are intended to be
compatible with the <a href="#WSI-BP">[WS-I Basic Profile 1.1]</a>
and may be imported, included or embedded inside a <a href=
"#WSI-BP">[WS-I Basic Profile 1.1]</a> conformant <a href=
"#WSDL11">[WSDL 1.1]</a> document.</p>
<p id="ISSUE-71-c"><a href="#WSI-BP">[WS-I Basic Profile 1.1]</a>
Conformance Requirements for an <a href="#XMLSchema">[XML Schema
1.0]</a> document known to be more restrictive than this
specification:</p>
<ul>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2112">
R2112</a> In a DESCRIPTION, elements SHOULD NOT be named using the
convention ArrayOfXXX.</li>
</ul>
<p id="ISSUE-71-a"><a href="#WSI-BP">[WS-I Basic Profile 1.1]</a>
Conformance Requirements known to be compatible with this
specification include:</p>
<ul>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2801">
R2801</a> A DESCRIPTION MUST use XML Schema 1.0 Recommendation as
the basis of user defined datatypes and structures.</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2102">
R2102</a> A QName reference to a Schema component in a DESCRIPTION
MUST use the namespace defined in the targetNamespace attribute on
the xsd:schema element, or to a namespace defined in the namespace
attribute on an xsd:import element within the xsd:schema
element.</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2105">
R2105</a> All xsd:schema elements contained in a wsdl:types element
of a DESCRIPTION MUST have a targetNamespace attribute with a valid
and non-null value, UNLESS the xsd:schema element has xsd:import
and/or xsd:annotation as its only child element(s).</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2002">
R2002</a> To import XML Schema Definitions, a DESCRIPTION MUST use
the XML Schema "import" statement.</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2003">
R2003</a> A DESCRIPTION MUST use the XML Schema "import" statement
only within the xsd:schema element of the types section.</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2004">
R2004</a> In a DESCRIPTION the schemaLocation attribute of an
xsd:import element MUST NOT resolve to any document whose root
element is not "schema" from the namespace
"http://www.w3.org/2001/XMLSchema".</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R4002">
R4002</a> A DESCRIPTION MAY include the Unicode Byte Order Mark
(BOM).</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2009">
R2009</a> An XML Schema directly or indirectly imported by a
DESCRIPTION MAY include the Unicode Byte Order Mark (BOM).</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R4003">
R4003</a> A DESCRIPTION MUST use either UTF-8 or UTF-16
encoding.</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2011">
R2011</a> An XML Schema directly or indirectly imported by a
DESCRIPTION MUST use either UTF-8 or UTF-16 encoding.</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R4004">
R4004</a> A DESCRIPTION MUST use version 1.0 of the eXtensible
Markup Language W3C Recommendation.</li>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2011">
R2011</a> An XML Schema directly or indirectly imported by a
DESCRIPTION MUST use version 1.0 of the eXtensible Markup Language
W3C Recommendation.</li>
</ul>
<p id="ISSUE-71-b"><a href="#WSI-BP">[WS-I Basic Profile 1.1]</a>
Conformance Requirements known to be less restrictive than this
this specification:</p>
<ul>
<li><a href=
"http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html#R2800">
R2800</a> A DESCRIPTION MAY use any construct from XML Schema
1.0.</li>
</ul>
</div>
<div class="div1">
<h2><a name="acknowledgments" id="acknowledgments"></a>H.
Acknowledgements (Non-Normative)</h2>
<p>This document is the work of the <a href=
"http://www.w3.org/2002/ws/databinding/">W3C XML Schema Patterns
for Databinding Working Group</a>.</p>
<p>Members of the Working Group are (at the time of writing, and by
alphabetical order): Vladislav Bezrukov (SAP AG), Jonathan
Calladine (BT), George Cowe (Origo Services Limited), Paul Downey
(BT), Paul Fremantle (WSO2), Anthony Julian (Health Level Seven,
Inc.), Yves Lafon (W3C/ERCIM), Ajith Ranabahu (WSO2), Adrian Smith
(BT), Amila Suriarachchi (WSO2), Priscilla Walmsley (W3C Invited
Experts), Scott Wood (National Association of Convenience Stores
(NACS)).</p>
<p>Previous members of the Working Group were: Paul Biron (Health
Level Seven, Inc.), Otu Ekanem (BT), Sekhar Vajjhala (Sun
Microsystems).</p>
<p>The people who have contributed to <a href=
"http://lists.w3.org/Archives/Public/public-xsd-databinding/">discussions
on public-xsd-databinding@w3.org</a> are also gratefully
acknowledged.</p>
</div>
</div>
</body>
</html>