Xml XSD;如何混合复杂和简单的内容?
我有多个XML文件,它们可以在最低级别上具有HTMLXml XSD;如何混合复杂和简单的内容?,xml,validation,xsd,Xml,Validation,Xsd,我有多个XML文件,它们可以在最低级别上具有HTMLb或I标记和/或文本,如以下示例所示 <root> <text> Hallo Welt, wie geht es so? </text> <text> <i>Hallo Welt, wie geht es so?</i> </text> &
b
或I
标记和/或文本,如以下示例所示
<root>
<text> Hallo Welt, wie geht es so? </text>
<text> <i>Hallo Welt, wie geht es so?</i> </text>
<text> Hallo <i>Welt, wie geht es so?</i> </text>
<text> <b>Hallo Welt, wie geht es so?</b> </text>
<text> Hallo <b>Welt, wie geht es so?</b> </text>
<text> <b>Hallo Welt</b>, <i>wie geht es so?</i> </text>
<text> <b>Hallo Welt</b>, <i>wie geht es so</i>? </text>
<text> <i>Hallo Welt</i>, <b>wie geht es so?</b> </text>
<text> <i>Hallo Welt</i>, <b>wie geht es so</b>? </text>
<text> <i>Hallo Welt, <b>wie geht es so</b>?</i> </text>
<text> <b>Hallo Welt, <i>wie geht es so</i>?</b> </text>
<text> Hallo <i>Welt, <b>wie geht es so</b>?</i> </text>
<text> Hallo <b>Welt, <i>wie geht es so</i>?</b> </text>
<text> <b>Hallo <i>Welt</i></b>, <i>wie <b>geht </b></i>es so? </text>
</root>
不幸的是,这个验证站点http://www.utilities-online.info/xsdvalidation/
告诉我以下错误:
错误-第7行,50:org.xml.sax.SAXParseException;行号:7;栏目号:50;cvc复杂类型.2.3:元素“author”不能有字符[子项],因为该类型的内容类型仅为元素
问候
MarioXML模式通过使用声明
complexType
,为混合内容提供了有限的支持,但不能进一步约束混合内容中的文本节点。您只能将简单类型应用于简单内容
<xs:complexType name="articleType">
<xs:sequence>
<xs:element name="author" type="textType" />
<xs:element name="title" type="textType" />
</xs:sequence>
<xs:attribute name="id" type="xs:string" use="required" />
</xs:complexType>
<!-- TEXT -->
<xs:complexType name="textType">
<xs:sequence>
<xs:element name="i" type="iType" minOccurs="0" maxOccurs="unbounded" />
<xs:element name="b" type="bType" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<!-- I -->
<xs:complexType name="iType">
<xs:sequence>
<xs:element name="b" type="bType" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<!-- B -->
<xs:complexType name="bType">
<xs:sequence>
<xs:element name="i" type="iType" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>