XML Schema Documentation

Schema Document Properties

Target Namespace http://peax.ch/ns/presentation-model
Version 0.1
Element and Attribute Namespaces
  • Global element and attribute declarations belong to this schema's target namespace.
  • By default, local element declarations belong to this schema's target namespace.
  • By default, local attribute declarations have no namespace.
Schema Composition
  • This schema imports schema(s) from the following namespace(s):
    • http://www.w3.org/XML/1998/namespace (at xml.xsd)
No documentation provided.
Prefix Namespace
xml http://www.w3.org/XML/1998/namespace
xs http://www.w3.org/2001/XMLSchema
pm http://peax.ch/ns/presentation-model
<xs:schema elementFormDefault=
"qualified" targetNamespace=
"http://peax.ch/ns/presentation-model" version=
"0.1"
>
   <xs:import namespace=
"http://www.w3.org/XML/1998/namespace" schemaLocation=
"xml.xsd"
/>
...
</xs:schema>

Global Declarations

Element: annotation

Name annotation
Type Locally-defined complex type
Nillable no
Abstract no
<pm:annotation
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
 id=
"
xs:ID" [0..1]
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
   Start Choice [0..*]

      <pm:documentation> ... </pm:documentation> [1]
   End Choice
</pm:annotation>
<xs:element name=
"annotation" id=
"annotation"
>
   <xs:complexType
>
      <xs:complexContent
>
         <xs:extension base=
"
pm:openAttrs
"
>
            <xs:choice minOccurs=
"0" maxOccurs=
"unbounded"
>
               <xs:element ref=
"pm:documentation"
/>
            </xs:choice>
            <xs:attribute name=
"id" type=
"
xs:ID"
/>
         </xs:extension>
      </xs:complexContent>
   </xs:complexType>
</xs:element>

Element: data-model

Name data-model
Type Locally-defined complex type
Nillable no
Abstract no
No documentation provided.
<pm:data-model
>
   <!--
    Uniqueness Constraint - 
UniqueFields

    Selector - pm:field
    Field(s) - @xml:id
   -->
   Start Choice [1..*]

      <pm:field> ... </pm:field> [1]
      <pm:include> ... </pm:include> [1]
   End Choice
</pm:data-model>
<xs:element name=
"data-model"
>
   <xs:complexType
>
      <xs:choice minOccurs=
"1" maxOccurs=
"unbounded"
>
         <xs:element ref=
"pm:field"
/>
         <xs:element ref=
"pm:include"
/>
      </xs:choice>
   </xs:complexType>
   <xs:unique name=
"UniqueFields"
>
      <xs:selector xpath=
"pm:field"
/>
      <xs:field xpath=
"@xml:id"
/>
   </xs:unique>
</xs:element>

Element: documentation

Name documentation
Type Locally-defined complex type
Nillable no
Abstract no
<pm:documentation
 source=
"
xs:anyURI" [0..1]
 
xml:lang=
"" [0..1]

 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- Mixed content -->
   Start Sequence [0..*]

      Allow any elements from any namespace (lax validation). [1]

   End Sequence
</pm:documentation>
<xs:element name=
"documentation" id=
"documentation"
>
   <xs:complexType mixed=
"true"
>
      <xs:sequence minOccurs=
"0" maxOccurs=
"unbounded"
>
         <xs:any processContents=
"lax"
/>
      </xs:sequence>
      <xs:attribute name=
"source" type=
"
xs:anyURI"
/>
      <xs:attribute ref=
"xml:lang"
/>
      <xs:anyAttribute namespace=
"##other" processContents=
"lax"
/>
   </xs:complexType>
</xs:element>

Element: document-model

Name document-model
Type Locally-defined complex type
Nillable no
Abstract no
No documentation provided.
<pm:document-model
 document-type=
"
xs:NCName" [1]
 version=
"0.1" [1]
>
   <pm:data-model> ... </pm:data-model> [1]
   <pm:presentation-model> ... </pm:presentation-model> [0..1]
</pm:document-model>
<xs:element name=
"document-model"
>
   <xs:complexType
>
      <xs:sequence
>
         <xs:element ref=
"pm:data-model"
/>
         <xs:element ref=
"pm:presentation-model" minOccurs=
"0"
/>
      </xs:sequence>
      <xs:attribute name=
"document-type" type=
"
xs:NCName" use=
"required"
/>
      <xs:attribute name=
"version" type=
"
xs:decimal" use=
"required" fixed=
"0.1"
/>
   </xs:complexType>
<-- doesn't work anymore due to the "include" feature
    <xs:key name="FieldKey">
      <xs:selector xpath="pm:data-model/pm:field"/>
      <xs:field xpath="@xml:id"/>
    </xs:key>
    <xs:keyref name="FieldKeyRef" refer="pm:FieldKey">
      <xs:selector xpath="pm:presentation-model/pm:group/*"/>
      <xs:field xpath="@field-ref"/>
    </xs:keyref>
    -->
</xs:element>

Element: enum-select

Name enum-select
Type Locally-defined complex type
Nillable no
Abstract no
<pm:enum-select
 label=
"
xs:NCName" [1]
 visibility=
"
xs:string" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
 readonly=
"
xs:boolean" [0..1]
 field-ref=
"
xs:NCName" [1]
 first-in-row=
"
xs:boolean" [0..1]
 width=
"

xs:NCName (value comes from list: {'auto'|'wide'})" [0..1]
 value-label-prefix=
"
xs:NCName" [1]
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</pm:enum-select>
<xs:element name=
"enum-select"
>
   <xs:complexType
>
      <xs:complexContent
>
         <xs:extension base=
"
pm:basePresentationField
"
>
            <xs:attribute name=
"value-label-prefix" type=
"
xs:NCName" use=
"required"
/>
         </xs:extension>
      </xs:complexContent>
   </xs:complexType>
</xs:element>

Element: field

Name field
Type Locally-defined complex type
Nillable no
Abstract no
No documentation provided.
<pm:field
 required=
"
xs:boolean" [0..1]
 
xml:id=
"" [1]

>
   <pm:annotation> ... </pm:annotation> [0..1]
   Start Choice [1]

      <pm:string> 
pm:StringDataType
 
         <!--
          Uniqueness Constraint - 
UniqueSyntax

          Selector - pm:pattern
          Field(s) - @syntax
         -->
      </pm:string> [1]
      <pm:decimal> 
pm:DecimalDataType
 </pm:decimal> [1]
      <pm:timestamp> 
pm:TimestampDataType
 </pm:timestamp> [1]
      <pm:date> 
pm:DateDataType
 </pm:date> [1]
      <pm:enum> 
pm:EnumDataType
 </pm:enum> [1]
      <pm:language> 
pm:LanguageDataType
 </pm:language> [1]
      <pm:uuid> 
pm:UUIDDataType
 </pm:uuid> [1]
   End Choice
</pm:field>
<xs:element name=
"field"
>
   <xs:complexType
>
      <xs:sequence
>
         <xs:element ref=
"pm:annotation" minOccurs=
"0"
/>
         <xs:choice
>
            <xs:element name=
"string" type=
"
pm:StringDataType
"
>
               <xs:unique name=
"UniqueSyntax"
>
                  <xs:selector xpath=
"pm:pattern"
/>
                  <xs:field xpath=
"@syntax"
/>
               </xs:unique>
            </xs:element>
            <xs:element name=
"decimal" type=
"
pm:DecimalDataType
"
/>
            <xs:element name=
"timestamp" type=
"
pm:TimestampDataType
"
/>
            <xs:element name=
"date" type=
"
pm:DateDataType
"
/>
            <xs:element name=
"enum" type=
"
pm:EnumDataType
"
/>
            <xs:element name=
"language" type=
"
pm:LanguageDataType
"
/>
            <xs:element name=
"uuid" type=
"
pm:UUIDDataType
"
/>
         </xs:choice>
      </xs:sequence>
      <xs:attribute name=
"required" type=
"
xs:boolean" default=
"false"
/>
      <xs:attribute ref=
"xml:id" use=
"required"
/>
   </xs:complexType>
</xs:element>

Element: group

Name group
Type Locally-defined complex type
Nillable no
Abstract no
No documentation provided.
<pm:group
 label=
"
xs:NCName" [1]
 visibility=
"
xs:string" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
 
xml:id=
"" [1]

>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
   Start Choice [1..*]

      <pm:text> ... </pm:text> [1]
      <pm:timestamp> ... </pm:timestamp> [1]
      <pm:lookup> ... </pm:lookup> [1]
      <pm:enum-select> ... </pm:enum-select> [1]
   End Choice
</pm:group>
<xs:element name=
"group"
>
   <xs:complexType
>
      <xs:complexContent
>
         <xs:extension base=
"
pm:basePresentationElement
"
>
            <xs:choice minOccurs=
"1" maxOccurs=
"unbounded"
>
               <xs:element ref=
"pm:text"
/>
               <xs:element ref=
"pm:timestamp"
/>
               <xs:element ref=
"pm:lookup"
/>
               <xs:element ref=
"pm:enum-select"
/>
            </xs:choice>
            <xs:attribute ref=
"xml:id" use=
"required"
/>
         </xs:extension>
      </xs:complexContent>
   </xs:complexType>
</xs:element>

Element: include

Name include
Type Locally-defined complex type
Nillable no
Abstract no
No documentation provided.
<pm:include
 href=
"
xs:anyURI" [1]
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</pm:include>
<xs:element name=
"include"
>
   <xs:complexType
>
      <xs:complexContent
>
         <xs:restriction base=
"
xs:anyType"
>
            <xs:attribute name=
"href" type=
"
xs:anyURI" use=
"required"
/>
         </xs:restriction>
      </xs:complexContent>
   </xs:complexType>
</xs:element>

Element: lookup

Name lookup
Type Locally-defined complex type
Nillable no
Abstract no
No documentation provided.
<pm:lookup
 label=
"
xs:NCName" [1]
 visibility=
"
xs:string" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
 readonly=
"
xs:boolean" [0..1]
 field-ref=
"
xs:NCName" [1]
 first-in-row=
"
xs:boolean" [0..1]
 width=
"

xs:NCName (value comes from list: {'auto'|'wide'})" [0..1]
 function=
"
xs:NCName" [1]
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</pm:lookup>
<xs:element name=
"lookup"
>
   <xs:complexType
>
      <xs:complexContent
>
         <xs:extension base=
"
pm:basePresentationField
"
>
            <xs:attribute name=
"function" type=
"
xs:NCName" use=
"required"
/>
         </xs:extension>
      </xs:complexContent>
   </xs:complexType>
</xs:element>

Element: presentation-model

Name presentation-model
Type Locally-defined complex type
Nillable no
Abstract no
No documentation provided.
<pm:presentation-model
 
xml:id=
"" [1]

>
   <pm:group> ... </pm:group> [1..*]
</pm:presentation-model>
<xs:element name=
"presentation-model"
>
   <xs:complexType
>
      <xs:sequence
>
         <xs:element ref=
"pm:group" minOccurs=
"1" maxOccurs=
"unbounded"
/>
      </xs:sequence>
      <xs:attribute ref=
"xml:id" use=
"required"
/>
   </xs:complexType>
</xs:element>

Element: text

Name text
Type Locally-defined complex type
Nillable no
Abstract no
No documentation provided.
<pm:text
 label=
"
xs:NCName" [1]
 visibility=
"
xs:string" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
 readonly=
"
xs:boolean" [0..1]
 field-ref=
"
xs:NCName" [1]
 first-in-row=
"
xs:boolean" [0..1]
 width=
"

xs:NCName (value comes from list: {'auto'|'wide'})" [0..1]
 lines=
"
xs:positiveInteger" [0..1]
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</pm:text>
<xs:element name=
"text"
>
   <xs:complexType
>
      <xs:complexContent
>
         <xs:extension base=
"
pm:basePresentationField
"
>
            <xs:attribute name=
"lines" type=
"
xs:positiveInteger" default=
"1"
/>
         </xs:extension>
      </xs:complexContent>
   </xs:complexType>
</xs:element>

Element: timestamp

Name timestamp
Type Locally-defined complex type
Nillable no
Abstract no
No documentation provided.
<pm:timestamp
 label=
"
xs:NCName" [1]
 visibility=
"
xs:string" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
 readonly=
"
xs:boolean" [0..1]
 field-ref=
"
xs:NCName" [1]
 first-in-row=
"
xs:boolean" [0..1]
 width=
"

xs:NCName (value comes from list: {'auto'|'wide'})" [0..1]
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</pm:timestamp>
<xs:element name=
"timestamp"
>
   <xs:complexType
>
      <xs:complexContent
>
         <xs:extension base=
"
pm:basePresentationField
"
/>
      </xs:complexContent>
   </xs:complexType>
</xs:element>

Global Definitions

Complex Type: baseDataType

Super-types: xs:anyType < baseDataType (by restriction)
Sub-types:
Name baseDataType
Abstract no
<...
 required=
"
xs:boolean" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
<xs:complexType name=
"baseDataType"
>
   <xs:complexContent
>
      <xs:restriction base=
"
xs:anyType"
>
         <xs:attribute name=
"required" type=
"
xs:boolean" default=
"false"
/>
         <xs:anyAttribute namespace=
"##other" processContents=
"lax"
/>
      </xs:restriction>
   </xs:complexContent>
</xs:complexType>

Complex Type: basePresentationElement

Super-types: xs:anyType < basePresentationElement (by restriction)
Sub-types:
Name basePresentationElement
Abstract no
<...
 label=
"
xs:NCName" [1]
 visibility=
"
xs:string" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
<xs:complexType name=
"basePresentationElement"
>
   <xs:complexContent
>
      <xs:restriction base=
"
xs:anyType"
>
         <xs:attribute name=
"label" type=
"
xs:NCName" use=
"required"
/>
         <xs:attribute name=
"visibility" type=
"
xs:string" use=
"optional"
>
<-- TODO Maybe refactor for platform-specific visibility expressions. -->         </xs:attribute>
         <xs:anyAttribute namespace=
"##other" processContents=
"lax"
/>
      </xs:restriction>
   </xs:complexContent>
</xs:complexType>

Complex Type: basePresentationField

Super-types: xs:anyType < basePresentationElement (by restriction) < basePresentationField (by extension)
Sub-types: None
Name basePresentationField
Abstract no
<...
 label=
"
xs:NCName" [1]
 visibility=
"
xs:string" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
 readonly=
"
xs:boolean" [0..1]
 field-ref=
"
xs:NCName" [1]
 first-in-row=
"
xs:boolean" [0..1]
 width=
"

xs:NCName (value comes from list: {'auto'|'wide'})" [0..1]
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
<xs:complexType name=
"basePresentationField"
>
   <xs:complexContent
>
      <xs:extension base=
"
pm:basePresentationElement
"
>
         <xs:attribute name=
"readonly" type=
"
xs:boolean" default=
"false"
/>
         <xs:attribute name=
"field-ref" type=
"
xs:NCName" use=
"required"
/>
         <xs:attribute name=
"first-in-row" type=
"
xs:boolean" default=
"false"
/>
         <xs:attribute name=
"width" default=
"auto"
>
            <xs:simpleType
>
               <xs:restriction base=
"
xs:NCName"
>
                  <xs:enumeration value=
"auto"
/>
                  <xs:enumeration value=
"wide"
/>
               </xs:restriction>
            </xs:simpleType>
         </xs:attribute>
      </xs:extension>
   </xs:complexContent>
</xs:complexType>

Complex Type: DateDataType

Super-types: xs:anyType < baseDataType (by restriction) < DateDataType (by extension)
Sub-types: None
Name DateDataType
Abstract no
No documentation provided.
<...
 required=
"
xs:boolean" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
<xs:complexType name=
"DateDataType"
>
   <xs:complexContent
>
      <xs:extension base=
"
pm:baseDataType
"
/>
   </xs:complexContent>
</xs:complexType>

Complex Type: DecimalDataType

Super-types: xs:anyType < baseDataType (by restriction) < DecimalDataType (by extension)
Sub-types: None
Name DecimalDataType
Abstract no
No documentation provided.
<...
 required=
"
xs:boolean" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
<xs:complexType name=
"DecimalDataType"
>
   <xs:complexContent
>
      <xs:extension base=
"
pm:baseDataType
"
/>
   </xs:complexContent>
</xs:complexType>

Complex Type: EnumDataType

Super-types: xs:anyType < baseDataType (by restriction) < EnumDataType (by extension)
Sub-types: None
Name EnumDataType
Abstract no
No documentation provided.
<...
 required=
"
xs:boolean" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
   <pm:value> 
xs:NCName </pm:value> [1..*]
</...>
<xs:complexType name=
"EnumDataType"
>
   <xs:complexContent
>
      <xs:extension base=
"
pm:baseDataType
"
>
         <xs:sequence
>
            <xs:element name=
"value" type=
"
xs:NCName" minOccurs=
"1" maxOccurs=
"unbounded"
/>
         </xs:sequence>
      </xs:extension>
   </xs:complexContent>
</xs:complexType>

Complex Type: LanguageDataType

Super-types: xs:anyType < baseDataType (by restriction) < LanguageDataType (by extension)
Sub-types: None
Name LanguageDataType
Abstract no
No documentation provided.
<...
 required=
"
xs:boolean" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
<xs:complexType name=
"LanguageDataType"
>
   <xs:complexContent
>
      <xs:extension base=
"
pm:baseDataType
"
/>
   </xs:complexContent>
</xs:complexType>

Complex Type: openAttrs

Super-types: xs:anyType < openAttrs (by restriction)
Sub-types: None
Name openAttrs
Abstract no
<...
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
<xs:complexType name=
"openAttrs"
>
   <xs:complexContent
>
      <xs:restriction base=
"
xs:anyType"
>
         <xs:anyAttribute namespace=
"##other" processContents=
"lax"
/>
      </xs:restriction>
   </xs:complexContent>
</xs:complexType>

Complex Type: StringDataType

Super-types: xs:anyType < baseDataType (by restriction) < StringDataType (by extension)
Sub-types: None
Name StringDataType
Abstract no
No documentation provided.
<...
 required=
"
xs:boolean" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
 max-length=
"
xs:integer" [0..1]
 multiline=
"
xs:boolean" [0..1]
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
   <pm:pattern
    syntax=
"

xs:NMTOKEN (value comes from list: {'xsd'|'other'})" [0..1]
   > [0..*] 
       
xs:string
   </pm:pattern>
</...>
<xs:complexType name=
"StringDataType"
>
   <xs:complexContent
>
      <xs:extension base=
"
pm:baseDataType
"
>
         <xs:sequence
>
            <xs:element name=
"pattern" minOccurs=
"0" maxOccurs=
"unbounded"
>
               <xs:complexType
>
                  <xs:simpleContent
>
                     <xs:extension base=
"
xs:string"
>
                        <xs:attribute name=
"syntax" default=
"xsd"
>
                           <xs:simpleType
>
                              <xs:restriction base=
"
xs:NMTOKEN"
>
                                 <xs:enumeration value=
"xsd"
/>
                                 <xs:enumeration value=
"other"
/>
                              </xs:restriction>
                           </xs:simpleType>
                        </xs:attribute>
                     </xs:extension>
                  </xs:simpleContent>
               </xs:complexType>
            </xs:element>
         </xs:sequence>
         <xs:attribute name=
"max-length" type=
"
xs:integer" use=
"optional"
/>
         <xs:attribute name=
"multiline" type=
"
xs:boolean" use=
"optional" default=
"false"
/>
      </xs:extension>
   </xs:complexContent>
</xs:complexType>

Complex Type: TimestampDataType

Super-types: xs:anyType < baseDataType (by restriction) < TimestampDataType (by extension)
Sub-types: None
Name TimestampDataType
Abstract no
No documentation provided.
<...
 required=
"
xs:boolean" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
<xs:complexType name=
"TimestampDataType"
>
   <xs:complexContent
>
      <xs:extension base=
"
pm:baseDataType
"
/>
   </xs:complexContent>
</xs:complexType>

Complex Type: UUIDDataType

Super-types: xs:anyType < baseDataType (by restriction) < UUIDDataType (by extension)
Sub-types: None
Name UUIDDataType
Abstract no
No documentation provided.
<...
 required=
"
xs:boolean" [0..1]
 Allow any attributes from a namespace other than this schema's namespace (lax validation).
>
   <!-- '
xs:anyType' super type was not found in this schema. Some elements and attributes may be missing. -->
</...>
<xs:complexType name=
"UUIDDataType"
>
   <xs:complexContent
>
      <xs:extension base=
"
pm:baseDataType
"
/>
   </xs:complexContent>
</xs:complexType>

Glossary

Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.

All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all.

Choice Model Group Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice.

Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.

Disallowed Substitutions (Applies to element declarations). If substitution is specified, then substitution group members cannot be used in place of the given element declaration to validate element instances. If derivation methods, e.g. extension, restriction, are specified, then the given element declaration will not validate element instances that have types derived from the element declaration's type using the specified derivation methods. Normally, element instances can override their declaration's type by specifying an xsi:type attribute.

Key Constraint Like Uniqueness Constraint, but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups.

Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil attribute. The xsi:nil attribute is the boolean attribute, nil, from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil attribute set to true, it can be left empty, even though its element declaration may have required content.

Notation A notation is used to identify the format of a piece of data. Values of elements and attributes that are of type, NOTATION, must come from the names of declared notations. See: http://www.w3.org/TR/xmlschema-1/#cNotation_Declarations.

Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.

Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.

Prohibited Substitutions (Applies to complex type definitions). Prevents sub-types that have been derived using the specified derivation methods from validating element instances in place of the given type definition.

Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).

Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence.

Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.

Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.

Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.

Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.