No hay una declaración global coincidente disponible para la raíz de validación

Antecedente

Validar un documento XML utilizando un esquema.

Problem

a forma más simple del problema se muestra en dos archivos.

XML Document
<?xml version="1.0"?>

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

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

</recipe>
XSD Document
<?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>
Erro

El mensaje de error completo de xmllint:

file.xml: 4: receta de elemento: error de validez de esquemas: 'receta' de elemento: no hay una declaración global coincidente disponible para la raíz de validación.

Pregunt

Cuál es la sintaxis correcta (o qué atributos de esquema faltan) para garantizar que el esquema dado se pueda usar para validar con éxito el documento XML dado?

Respuestas a la pregunta(6)

Su respuesta a la pregunta