Datetime XSD 1.1断言比较日期
我在XSD1.1中编写了许多断言来比较日期对,但它们都不起作用 示例: 输入Datetime XSD 1.1断言比较日期,datetime,timezone,xpath-2.0,xsd-1.1,Datetime,Timezone,Xpath 2.0,Xsd 1.1,我在XSD1.1中编写了许多断言来比较日期对,但它们都不起作用 示例: 输入 XSD 1.1断言: <xs:assert id="plausibility-issuance-date-plausibility" test="@issuance-date < ./@content-date"/> 及 读了dateTime和timezone表示法之后,我有点不知所措 谁能告诉我: 错误在哪里(我希望我想要比较的东西是清楚的) 有没有一套简单的
XSD 1.1断言:
<xs:assert id="plausibility-issuance-date-plausibility"
test="@issuance-date < ./@content-date"/>
及
读了dateTime和timezone表示法之后,我有点不知所措
谁能告诉我:
- 错误在哪里(我希望我想要比较的东西是清楚的)
- 有没有一套简单的例子可以让你更容易理解
- 您的xs:assert XPATH不正确,因为它假定
发行日期
和内容日期
是同一元素的属性,但它们不是
您可以在这个示例XPATH中使用断言来表示“没有发布日期
大于或等于其父内容日期
”的记录:
示例XSD:
<xs:element name="Records">
<xs:complexType>
<xs:sequence>
<xs:element name="Record" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="issuance-date" type="xs:dateTime"/>
<xs:attribute name="last-update-date" type="xs:dateTime"/>
<xs:attribute name="last-renewal-date" type="xs:dateTime"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="content-date" type="xs:dateTime"/>
<xs:assert id="plausibility-issuance-date-plausibility" test="empty(Record[@issuance-date ge ../@content-date])"/>
</xs:complexType>
</xs:element>
谢谢,在选择答案之前,我会确认这一点-但是时区比较如何?你知道这里出了什么问题吗?时区比较测试似乎出了类似的问题,所以解决方案应该是类似的。我认为empty(Record[timezone from dateTime(@issuement date)!=timezone from dateTime(../@content date)]
应该可以工作,但我现在无法测试它
<xs:assert id="plausibility-file-and-record-timezones"
test="timezone-from-dateTime(Record/@issuance-date) = timezone-from-dateTime(REcords@content-date)"/>
empty(Record[@issuance-date ge ../@content-date])
<xs:element name="Records">
<xs:complexType>
<xs:sequence>
<xs:element name="Record" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="issuance-date" type="xs:dateTime"/>
<xs:attribute name="last-update-date" type="xs:dateTime"/>
<xs:attribute name="last-renewal-date" type="xs:dateTime"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="content-date" type="xs:dateTime"/>
<xs:assert id="plausibility-issuance-date-plausibility" test="empty(Record[@issuance-date ge ../@content-date])"/>
</xs:complexType>
</xs:element>