我写了一些断言来比较XSD 1.1中的日期对,但它们都不起作用。
示例:
INPUT
self
XSD 1.1断言:
<Records content-date="2006-05-04T18:13:51.0Z">
<Record issuance-date="2006-05-04T18:13:51.0Z"
last-update-date="2006-05-04T18:13:51.0Z"
last-renewal-date="2006-05-04T18:13:51.0Z" >
</Record>
<Record issuance-date="2006-05-04T18:13:51.0Z"
last-update-date="2006-05-04T18:13:51.0Z" last-renewal-date="2006-05-04T18:13:51.0Z">
<Event event-date="2006-05-04T18:13:51.0Z" event-type="INITIAL_REGISTRATION">
</Event>
</Record>
</Records>
和
<xs:assert id="plausibility-issuance-date-plausibility"
test="@issuance-date < ./@content-date"/>
阅读了dateTime和timezone表示,我有点不知所措。
任何人都可以告诉我:
答案 0 :(得分:1)
您的 xs:assert XPATH 不正确,因为它假设 issuance-date
和 { {1}} 是同一元素的属性,但它们不是。
您可以使用此示例 XPATH 的断言来表示“没有记录 content-date
大于或等于比其父 issuance-date
“:
content-date
示例XSD:
empty(Record[@issuance-date ge ../@content-date])