1 つのテストで Schematron と XPath 1.0 を使用して、XML 内の同じデータ型 (例: xs:dateTime) のすべての要素と属性を検証する方法は?
このために複数のテストを作成できることは知っていますが、すべての日付 (xs:dateTime) をテストして、どの要素または属性に問題があるかをユーザーに報告するにはどうすればよいでしょうか? 以下は、具体的に名前が付けられた属性「signedWhen」を持つすべての要素をテストする例です。ただし、属性名は常に同じとは限らず、xs:dateTime が要素である場合もあります...
XSD ファイルでの Schematron テスト:
<xs:appinfo>
<sch:pattern name="TimeZone constraints">
<sch:rule context="*[@signedWhen]">
<sch:assert test<sch:assert test=""not ( (contains(substring(@signedWhen, 11, 2), '-')) or (contains(@signedWhen, '+')) or (contains(@signedWhen, 'Z')) )">>
<name/> must not include TimeZone information
</sch:assert>
</sch:rule>
</sch:pattern>
</xs:appinfo>