Different parts of this specification have different editors. The Working Group maintains a public list of patent disclosures relevant to this document; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim s with respect to this specification should disclose the information in accordance with section 6 of the W3C Patent Policy.
The English version of this specification is the only normative version. This second edition is not a new version, it merely incorporates the changes dictated by the corrections to errors found in the first edition as agreed by the XML Schema Working Group, as a convenience to readers. Please report errors in this document to www-xml-schema-comments w3. This document is primarily intended as a language definition reference. As such, although it contains a few examples, it is not primarily designed to serve as a motivating introduction to the design and its features, or as a tutorial for new users.
Rather it presents a careful and fully explicit definition of that design, suitable for guiding implementations. For those in search of a step-by-step introduction to the design, the non-normative [XML Schema: Primer] is a much better starting point than this document.
The purpose of an XML Schema: Structures schema is to define and describe a class of XML documents by using schema components to constrain and document the meaning, usage and relationships of their constituent parts: datatypes, elements and their content and attributes and their values.
Schemas may also provide for the specification of additional document information, such as normalization and defaulting of attribute and element values. Schemas have facilities for self-documentation. Any application that consumes well-formed XML can use the XML Schema: Structures formalism to express syntactic, structural and value constraints applicable to its document instances. The XML Schema: Structures formalism allows a useful level of constraint checking to be described and implemented for a wide spectrum of XML applications.
However, the language defined by this specification does not attempt to provide all the facilities that might be needed by any application. Some applications may require constraint capabilities not expressible in this language, and so may need to perform their own additional validations. The section introduces the highlighting and typography as used in this document to present technical material.
- XML Schema Part 1: Structures Second Edition!
- Haydn of Mars - Book 1 of the Masters of Mars Trilogy.
- A Trek in the Desert:Finding a Path Through Grief.
- Navigation menu.
- How to Trade the Highest-Probability Opportunities: Price Gaps?
Special terms are defined at their point of introduction in the text. The definition is labeled as such and the term it defines is displayed in boldface. The end of the definition is not specially marked in the displayed or printed text. The definition of each kind of schema component consists of a list of its properties and their contents, followed by descriptions of the semantics of the properties:.
The correspondence between an element information item which is part of the XML representation of a schema and one or more schema components is presented in a tableau which illustrates the element information item s involved. This is followed by a tabulation of the correspondence between properties of the component and properties of the information item.
Where context may determine which of several different components may arise, several tabulations, one per context, are given. The property correspondences are normative, as are the illustrations of the XML representation element information items. In the XML representation, bold-face attribute names e.
Where an attribute information item has an enumerated type definition, the values are shown separated by vertical bars, as for size below; if there is a default value, it is shown following a colon.
I, Target (Part 1)
Where an attribute information item has a built-in simple type definition defined in [XML Schemas: Datatypes] , a hyperlink to its definition therein is given. The allowed content of the information item is shown as a grammar fragment, using the Kleene operators? Each element name therein is a hyperlink to its own illustration.
References to properties of information items as defined in [XML-Infoset] are notated as links to the relevant section thereof, set off with square brackets, for example [children].
"Hunter" Dead on Target: Part 1 (TV Episode ) - IMDb
References to properties of information items defined in this specification are notated as links to their introduction as exemplified above, set off with square brackets, for example [new property]. Following [XML 1. An XML Schema consists of components such as type definitions and element declarations. These can be used to assess the validity of well-formed element and attribute information items as defined in [XML-Infoset] , and furthermore may specify augmentations to those items and their descendants. This specification builds on [XML 1. The concepts and definitions used herein regarding XML are framed at the abstract level of information items as defined in [XML-Infoset].
By definition, this use of the infoset provides a priori guarantees of well-formedness as defined in [XML 1. Just as [XML 1. In defining XML Schemas in terms of an abstract data model, this specification rigorously specifies the information which must be available to a conforming XML Schema processor. The abstract model for schemas is conceptual only, and does not mandate any particular implementation or representation of this information. To facilitate interoperation and sharing of schema information, a normative XML interchange format for schemas is provided. There are 13 kinds of component in all, falling into three groups.
The primary components, which may type definitions or must element and attribute declarations have names are as follows:. Finally, the "helper" components provide small parts of other components; they are not independent of their context:. Type definitions form a hierarchy with a single root. The subsections below first describe characteristics of that hierarchy, then provide an introduction to simple and complex type definitions themselves.
The graph of these relationships forms a tree known as the Type Definition Hierarchy. The specific restrictions might include narrowed ranges or reduced alternatives. Informally, it applies to the values of attributes and the text-only content of elements. Simple types may also be defined whose members are lists of items themselves constrained by some other simple type definition, or whose membership is the union of the memberships of some other simple type definitions. The latter also defines an extensive inventory of pre-defined simple types. A complex type definition is a set of attribute declarations and a content type, applicable to the [attributes] and [children] of an element information item respectively.
The content type may require the [children] to contain neither element nor character information items that is, to be empty , to be a string which belongs to a particular simple type or to contain a sequence of element information items which conforms to a particular model group, with or without character information items as well. A complex type which extends another does so by having additional content model particles at the end of the other definition's content model, or by having additional attribute declarations, or both.
There are three kinds of declaration component: element, attribute, and notation. Each is described in a section below. Also included is a discussion of element substitution groups, which is a feature provided in conjunction with element declarations. An element declaration is an association of a name with a type definition, either simple or complex, an optional default value and a possibly empty set of identity-constraint definitions. The association is either global or scoped to a containing complex type definition. A top-level element declaration with name 'A' is broadly comparable to a pair of DTD declarations as follows, where the associated type definition fills in the ellipses:.
In XML 1. Any top-level element declaration can serve as the defining member, or head, for an element substitution group. Other top-level element declarations, regardless of target namespace, can be designated as members of the substitution group headed by this element. All such members must have type definitions which are either the same as the head's type definition or restrictions or extensions of it.
Therefore, although the names of elements can vary widely as new namespaces and members of the substitution group are defined, the content of member elements is strictly limited according to the type definition of the substitution group head. Note that element substitution groups are not represented as separate components. An attribute declaration is an association between a name and a simple type definition, together with occurrence information and optionally a default value.
The association is either global, or local to its containing complex type definition. A notation declaration is an association between a name and an identifier for a notation. The model group, particle, and wildcard components contribute to the portion of a complex type definition that controls an element information item's content. A model group is a constraint in the form of a grammar fragment that applies to lists of element information items. It consists of a list of particles, i.
There are three varieties of model group:. A particle is a term in the grammar for element content, consisting of either an element declaration, a wildcard or a model group, together with occurrence constraints. An attribute use plays a role similar to that of a particle, but for attribute declarations: an attribute declaration within a complex type definition is embedded within an attribute use, which specifies whether the declaration requires or merely allows its attribute, and whether it has a default or fixed value.
A wildcard is a special kind of particle which matches element and attribute information items dependent on their namespace name, independently of their local names. An identity-constraint definition is an association between a name and one of several varieties of identity-constraint related to uniqueness and reference.
Read Our 12222 B2B Lead Gen Case Study for Tech Firm Pica8
There are two kinds of convenience definitions provided to enable the re-use of pieces of complex type definitions: model group definitions and attribute group definitions. A model group definition is an association between a name and a model group, enabling re-use of the same model group in several complex type definitions.
An attribute group definition is an association between a name and a set of attribute declarations, enabling re-use of the same set in several complex type definitions. The interpretation of such information is not defined in this specification.
The [XML 1. The last of these, schema information set contributions, are not as new as they might at first seem. XML 1.