【问题标题】:XSD how to select more than one enumeration valueXSD如何选择多个枚举值
【发布时间】:2017-03-03 22:34:18
【问题描述】:

我对 xml 架构非常陌生。 我想选择多个枚举值,但它不起作用。我尝试添加 xs: list 但这也没有用。

这是我的 xsd 的摘录:

 <xs:element name="charakter">
                            <xs:complexType>
                                <xs:simpleContent>
                                    <xs:extension base="xs:string">
                                        <xs:attribute name="haltung" use="required">
                                            <xs:simpleType>
                                                   <xs:restriction base="xs:string">
                                                             <xs:enumeration value="hoher Pflegeaufwand"/>
                                                             <xs:enumeration value="ideal für Garten"/>
                                                             <xs:enumeration value="ideal für Wohnungshaltung"/>
                                                             <xs:enumeration value="hoher Bewegungsbedarf"/>
                                                        </xs:restriction>
                                            </xs:simpleType>
                                        </xs:attribute>
                                    </xs:extension>
                                </xs:simpleContent>
                            </xs:complexType>

                        </xs:element>

那么怎么可能选择多个值呢? 感谢您的回复。

【问题讨论】:

  • 如果您显示您希望允许和禁止的示例 XML 将会有所帮助。
  • 好吧,那就是: 但这显然行不通:(

标签: xml xsd


【解决方案1】:

您希望在属性中验证逗号分隔的字符串与 xs:list 要求其值以空格分隔的要求相冲突。

您可以尝试使用正则表达式来实现您的目标,但更好的是重新设计您的 XML,以便 haltung 不是属性,而是具有子元素的元素。

【讨论】:

  • 我要试试这个,谢谢你的回复!
  • 正则表达式还是重新设计 XML?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-30
  • 2019-03-20
  • 2015-08-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多