Xml XSD断言空值测试

Xml XSD断言空值测试,xml,xsd,xsd-validation,xml-validation,xsd-1.1,Xml,Xsd,Xsd Validation,Xml Validation,Xsd 1.1,我使用XSD1.1来验证传入的XML。我有一个可以正常工作的断言,除非值为null 以下是测试: <xs:assert test="ELEM1 = ' ' and ELEM2 = ' ' or ELEM1 != ' ' and matches(ELEM2, '.*')"/> 下面是所讨论的XML显示的内容: <ELEM1 /> <ELEM2 /> 我试过“is null”,“is nil”,“=null”,“=nil”,

我使用XSD1.1来验证传入的XML。我有一个可以正常工作的断言,除非值为null

以下是测试:

<xs:assert test="ELEM1 = ' ' and ELEM2 = ' '
    or ELEM1 != ' ' and matches(ELEM2, '.*')"/>

下面是所讨论的XML显示的内容:

<ELEM1 />
<ELEM2 />

我试过
“is null”
“is nil”
“=null”
“=nil”
,但似乎没有任何效果


如何测试空元素?

术语说明:元素
ELEM1
ELEM2
通常被称为空元素,而不是空值

xs:assert

<xs:assert test="ELEM1[not(node())] and ELEM2[not(node())] "/>


表示必须有两个空的子元素,
ELEM1
ELEM2

术语说明:元素,
ELEM1
ELEM2
通常被称为空的,而不是空值

xs:assert

<xs:assert test="ELEM1[not(node())] and ELEM2[not(node())] "/>

表示必须有两个空的子元素,
ELEM1
ELEM2

在XML中没有“null”这样的东西。在XML中没有“null”这样的东西。