L'élément maxlength permet de définir une longueur maximum pour l'élément ou l'attribut XML.

<xsd:maxlength 
  fixed = booléen : false
  id = ID 
  value = nonNegativeInteger 
  {tout attribut ayant un espace de noms 
        différent de celui du schéma...}>
  Contenu : (annotation?)
</xsd:maxlength>

L'élément maxlength possède plusieurs attributs destinés à l'identifier, à préciser une valeur et le comportement de cette dernière.

Attributs Description
fixed permet de fixer la valeur de l'élément.
id précise un identificateur unique pour l'élément.
value spécifie une longueur maximum.

L'élément maxlength ne peut être inclus que dans l'élément suivant :

Exemple [voir]
<?xml version="1.0" encoding="ISO-8859-1"?>
<element_racine 
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:noNamespaceSchemaLocation="c:\schema.xsd">
  <adresse ref_site="1201203609">
  http://xmlfr.org/documentations/tutoriels/001219-0001#maxlength
  </adresse>
  <adresse ref_site="3269135683">
  http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#rf-maxlength
  </adresse>
  <adresse ref_site="2180877944">
  http://www.xml.com/pub/a/2000/11/29/schemas/part1.html?page=8
  </adresse>
</element_racine>

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema 
         xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
         elementFormDefault="qualified">
  <xsd:simpleType name="adresse_uri">
  <xsd:restriction base="xsd:anyURI">
      <xsd:minLength value="15"/>
      <xsd:maxlength value="255"/>"
  </xsd:restriction>
  </xsd:simpleType>

  <xsd:complexType name="adresseType">
  <xsd:simpleContent>
      <xsd:extension base="adresse_uri">
        <xsd:attribute name="ref_site" use="required">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:length value="10" fixed="true"/>
          </xsd:restriction>
        </xsd:simpleType>
        </xsd:attribute>
      </xsd:extension>
  </xsd:simpleContent>
  </xsd:complexType>
  
  <xsd:element name="element_racine">
  <xsd:complexType>
      <xsd:sequence>
        <xsd:element name="adresse" 
                      type="adresseType" 
                      maxOccurs="unbounded"/>
      </xsd:sequence>
  </xsd:complexType>
  </xsd:element>
</xsd:schema>