如何在XSD中定义CDATA类型,以便用户不必转义字符或使用&#34; <! - [CDATA“标签?

时间:2016-05-02 18:38:12

标签: java xml xsd schema cdata

我有一个XSD定义了一个元素&#34;密码&#34;。我想在那里允许任何角色。目前,我将元素定义为<form>,用户必须转义字符串(例如xs:string)或将其括在CDATA标记中(例如myP&amp;ssword)。

有没有办法定义XSD,因此它不会要求其中任何一个但在验证时失败?

XSD元素:

<![CDATA[myP&ssword]]>

XML抛出错误:

<xs:element name="password" type="xs:string" />

这可能吗?

1 个答案:

答案 0 :(得分:1)

不,这是不可能的。模式可以指定规则,这些规则定义XML文档是否对这些规则有效,但它仍然要求文档格式良好。

来自XML架构recommendation

  

任何使用格式良好的XML 的应用程序都可以使用形式   这里定义表达句法,结构和值约束   适用于其文档实例。