XML枚举-使用带空格的值并使用多选
第一个问题写在上面:我能不能使用空格XML枚举-使用带空格的值并使用多选,xml,xml-validation,Xml,Xml Validation,第一个问题写在上面:我能不能使用空格 <xs:simpleType name="Testing"> <xs:restriction base="xs:string"> <xs:enumeration value="my sample spaced value"/> <xs:enumeration value="my second spaced value"/> <xs:enumeration val
<xs:simpleType name="Testing">
<xs:restriction base="xs:string">
<xs:enumeration value="my sample spaced value"/>
<xs:enumeration value="my second spaced value"/>
<xs:enumeration value="myThirdValue"/>
<xs:enumeration value="myFourthValue"/>
</xs:restriction>
</xs:simpleType>
我发现的是:
但另一方面,它说它可以是任何简单的类型:
我可以通过w3c规范中的段落链接来解决这个问题吗
第二个问题是,当我选择多个答案时,它如何进行验证,因此输出如下:
<testing>myThirdValue myFourthValue</testing>
myThirdValue myFourthValue
我得到:
cvc枚举有效:值“myThirdValue myFourthValue”对于枚举“[my sample spaced Value,my second spaced Value,myThirdValue,myFourthValue]”无效。它必须是枚举中的值
当空格被用作分隔符并且我的值名中有空格时,它怎么能不疯狂呢
<testing>my sample spaced value my second spaced value</testing>
我的样本间隔值我的第二个间隔值
我必须指定一个模式才能解析多个值吗
谢谢 XMLDTD!=XML模式(XSD),因此链接到的so问题/答案不适用于您的问题
4.3.5.5枚举模式组件的约束
架构组件约束:枚举有效约束
如果{value}的任何成员不在{base的·value空间中,则为·error
类型定义}
因此,如果基类型是xs:string
(如示例中所示),则值可以包含空格
(如果我正确阅读规范。测试似乎支持我的理解。)
其他例子
如果您的基本类型是xs:NMTOKEN,则您的值不能包含空格
如果您的基本类型是
xs:NMTOKENS
(复数),那么您的值可以包含空格。谢谢您的回复,我在第一篇文章中提供了一些关于为什么它让我头疼的更多信息。@Wynarator-您可以使用xs:list
来拥有多个值,但我不知道如果你的价值观有空间,你怎么能做到这一点。