存在XML模式模式?

时间:2016-11-24 21:06:17

标签: xml xsd

我是XML新手并尝试创建架构。 我想限制元素的名称 比如像计算机科学这样的东西 大写字母并继续小写。我试过了 下面的代码,但验证器给出错误。我想 仅存储具有相同格式的名称。有什么建议 请?

  <xs:restriction base="xs:string">
                <xs:pattern value = "[A-Z][a-z]+"/>
                <xs:whiteSpace value = "collapse"/>
            </xs:restriction>

1 个答案:

答案 0 :(得分:0)

一般来说,XML Schema中的设计假设是您知道允许在源文档中出现的元素名称,并且您希望在其内容上定义约束。您可以使用通配符来允许任何元素名称,但是没有任何内置机制允许任何元素名称满足指定的约束。您可以尝试使用XSD 1.1断言或使用Schematron执行此操作,但是您实际上正在尝试执行此操作。

使用

的设计可能会更好
<Subject name="ComputerScience"/>

而不是

<ComputerScience/>

然后可以很容易地使用模式构面限制name属性的内容。