以下に示すXML形式の正当性をチェックするためのXPath検証式を作成しようとしています。私はそれを検証したいと思います:OperationType = 1
の場合複数のXMLタグを使用したXPathの複数の検証条件
- 単一
User
ノード内のすべてのフィールドがOperationType = 2
の場合に - を満たされている、少なくとも
Login
フィールドを
それぞれUser
ノードが満たされる範囲内私は次の式を考え出しましたが、単一のUser
ノードが存在する場合にのみ動作します。
//wnio:Login!=''
and (//wnio:FirstName!='' or //wnio:OperationType!='1')
and (//wnio:LastName!='' or //wnio:OperationType!='1')
and (//wnio:Email!='' or //wnio:OperationType!='1')
ただし、別のUser
タグでこれらのフィールドが空でない場合は、文書の正当性が検証されます。
これらの条件を次のような構造で検証することが可能かどうかを知りたいと思います。私はこの問題をどのように処理するかについての提案に感謝します。
あなたが使用することができ<wnio:Document>
<wnio:Content>
<wnio:SubmittedUsers>
<wnio:User>
<wnio:OperationType>1</wnio:OperationType>
<wnio:FirstName>Adam</wnio:FirstName>
<wnio:Login>adamnowak</wnio:Login>
<wnio:Email>[email protected]</wnio:Email>
<wnio:LastName>Nowak</wnio:LastName>
</wnio:User>
<wnio:User>
<wnio:OperationType>2</wnio:OperationType>
<wnio:FirstName/>
<wnio:Login>testlogin</wnio:Login>
<wnio:Email/>
<wnio:LastName/>
</wnio:User>
<wnio:User>
<wnio:OperationType>1</wnio:OperationType>
<wnio:FirstName>John</wnio:FirstName>
<wnio:Login>johnsmith</wnio:Login>
<wnio:Email>[email protected]</wnio:Email>
<wnio:LastName>Smith</wnio:LastName>
</wnio:User>
</wnio:SubmittedUsers>
<wnio:AuthorityType>1</wnio:AuthorityType>
</wnio:Content>
</wnio:Document>
を埋めなければならない
OperationType = 2
の場合に@GGO - これは正しく動作します!ご助力ありがとうございます! –