【发布时间】:2017-10-16 09:24:15
【问题描述】:
Relax NG中是否可以控制属性值的顺序?在 schema 中使用 xs:assert 可以实现哪个?
XML:
<body>
<h1 class="title">title</h1>
<h2 class="subtitle">subtitle</h2>
<p class="paragraph1">para text 1</p>
<p class="paragraph2">Para text 2</p>
<p class="paragraph3">Para text 2</p>
</body>
class 值应该是有序的,paragraph1 应该总是在前面,paragraph2 应该在paragraph1 之后。我在架构中尝试过的断言:
<xs:assert test="p[1]/@class = 'paragraph1'
and ((every $i in p[2] satisfies $i/@class = 'paragraph2')
and (every $i in p[3] satisfies $i/@class = 'paragraph3')) "/>
【问题讨论】:
标签: xsd schema relaxng relaxng-compact