Microsoft XML Core Services (MSXML) 5.0 for Microsoft Office - XML Schemas

simpleContent

Contains extensions or restrictions on a complexType element with character data or a simpleType element as content and contains no elements.

<simpleContent
  id = ID 
  {any attributes with non-schema Namespace}…>
Content: (annotation?, (restriction | extension))
</simpleContent>

Attributes

id
The ID of this element. The id value must be of type ID and be unique within the document containing this element.

Optional.

Element Information

Number of occurrences One time
Parent elements complexType
Contents Optional — annotation

Required — One and only one of the following elements: restriction (simpleContent), or extension (simpleContent).

Remarks

The simpleContent element enables you to specify an element as containing a simpleType with no elements but enables you to restrict the value of the element's content or extend the element with attributes. For example, the following element declaration does not allow for adding attributes (such as sizing).

<xs:element name="shoeSize" type="xs:decimal"/>

Example

Using the simpleContent element, the following element declaration contains a complexType element that defines the content of the element as a decimal type with a single attribute (sizing).

<xs:element name="shoeSize">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="xs:decimal">
        <xs:attribute name="sizing">
         <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="US"/>
            <xs:enumeration value="European"/>
            <xs:enumeration value="UK"/>
            <xs:enumeration value="Japan"/>
          </xs:restriction>
         </xs:simpleType>
        </xs:attribute>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

Simple content must be defined in one of the following ways.

restriction element Restricts the range of values for the element to a subset of those for inherited simpleType.
extension element Extends the simpleType content of the element by adding attributes.

Examples

The following example shows an element (generalPrice) declared using an anonymous complexType (one without a name) with its content defined as a decimal data type and with a currency attribute.

<xs:element name="generalPrice">
  <xs:complexType>
    <xs:simpleContent>
      <xs:extension base="xs:decimal">
        <xs:attribute name="currency" type="xs:string" />
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>
</xs:element>

See Also

XML Schema Reference (XSD) | XML Schema Elements

For more information, see the W3C XML Schema Part 1: Structures Recommendation at http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/#element-simpleContent.