Pas de correspondance mondial de la déclaration à la disposition de la validation de la racine

Fond

Valider un document XML à l'aide d'un schéma.

Problème

La forme la plus simple du problème est illustrée dans deux fichiers.

Document XML

<?xml version="1.0"?>

<recipe
  xmlns:r="http://www.namespace.org/recipe">

<r:description>
  <r:title>sugar cookies</r:title>
</r:description>

</recipe>

Document XSD

<?xml version="1.0" encoding="utf-8"?>
<xsd:schema
   version="1.0"
   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   xmlns:r="http://www.namespace.org/recipe">

  <xsd:complexType name="recipe">
    <xsd:choice>
      <xsd:element name="description" type="descriptionType"
        minOccurs="1" maxOccurs="1" />
    </xsd:choice>
  </xsd:complexType>

  <xsd:complexType name="descriptionType">
    <xsd:all>
      <xsd:element name="title">
        <xsd:simpleType>
          <xsd:restriction base="xsd:string">
            <xsd:minLength value="5" />
            <xsd:maxLength value="55" />
          </xsd:restriction>
        </xsd:simpleType>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
</xsd:schema>

Erreur

Le message d'erreur complet de xmllint:

fichier.xml:4: élément de la recette: Schémas de validité d'erreur : Élément de la "recette": Pas de correspondance mondial de la déclaration à la disposition de la validation de la racine.

Question

Quelle est la bonne syntaxe (ou de ce schéma attributs manquants) pour s'assurer que le schéma donné peut être utilisé pour valider le document XML donné?

InformationsquelleAutor Dave Jarvis | 2011-12-08