Quel est le message d'erreur “L'élément ne peut pas contenir d'espaces. Le modèle de contenu est vide.” signifie?
Je suis en train de constituer un schéma xml pour un simple xml (voir ci-dessous pour les données xml et le schéma). Mais je reçois l'erreur suivante en ce qui concerne la section d'un nœud: "L'élément ne peut pas contenir d'espaces. Le modèle de contenu est vide." . La navigation sur le net, je ne pouvais trouver aucune explication concise de ce que cela signifie si je peux le réparer. Quelqu'un peut-il aider?
Edit: merci pour tous pour offrir de l'aide avec le schéma. Je pense que ce serait bien d'avoir une brève description de ce modèle de contenu est et pourquoi il est vide ici.
XML:
<config>
<section name="facets">
<facet type="format" label="Format" max="4"/>
<facet type="language" max="4"/>
<facet type="pubdate" max="6" submax="8"/>
<facet type="ice_topic" label="Fiction: Topic"/>
</section>
</config>
Schéma:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="config">
<xs:complexType>
<xs:sequence>
<xs:element name="section" type="sectionBase"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="sectionBase">
<xs:attribute name="name" type="xs:ID"/>
</xs:complexType>
<xs:complexType name="sectionFacets" >
<xs:complexContent>
<xs:extension base="sectionBase">
<xs:sequence>
<xs:element name="facet" type="sectionFacetsBaseFacet"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="sectionFacetsBaseFacet">
<xs:attribute name="label" type="xs:ID"/>
<xs:attribute name="max" type="xs:positiveInteger"/>
</xs:complexType>
<xs:complexType name="sectionFacetsFormat">
<xs:complexContent>
<xs:extension base="sectionFacetsBaseFacet"/>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="sectionFacetsPubdate">
<xs:complexContent>
<xs:extension base="sectionFacetsBaseFacet">
<xs:attribute name="submax" type="xs:positiveInteger"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
Vous devez vous connecter pour publier un commentaire.
L'attribut label de facette est définie xs:ID et ceci ne permet pas d'espaces. Vous pouvez utiliser xs:string à la place.
Il y a plusieurs problème dans notre schéma, comme d'autres l'ont déjà mentionné. Essayez quelque chose comme ceci:
Extensible schéma:
Comment utiliser le schéma:
Votre
section
élément est défini comme étant de type sectionBase, et lasectionBase
type de définition ne définit un attribut unique. Il n'y a pas de référence de n'importe où dans le schéma de lasectionFacets
type, ce qui est probablement ce que vous avez besoin.Essayez de changer le type de la
section
élément desectionFacets