0

siteIdドキュメント全体で一意のレコード ID が含まれていることを確認する必要があります。例: サイト 11111 は ID 1 と 2 および 3 と 4 のレコードを送信します。サイト 2222 はレコード 3 と 4 を送信します。

良い:

<submission>
<site>
<siteId>11111</siteId>
<record><id>1</id></record>
<record><id>2</id></record>
</site>
<site>
<siteId>2222</siteId>
<record><id>3</id></record>
<record><id>4</id></record>
</site>
<site>
<siteId>1111</siteId>
<record><id>3</id></record>
<record><id>4</id></record>
</site>
</submission>

悪い:

<submission>
<site>
<siteId>11111</siteId>
<record><id>1</id></record>
<record><id>2</id></record>
</site>
<site>
<siteId>2222</siteId>
<record><id>3</id></record>
<record><id>4</id></record>
</site>
<site>
<siteId>1111</siteId>
<record><id>3</id></record>
<record><id>4</id></record>
<record><id>4</id></record>
</site>
</submission>
4

2 に答える 2

0

あなたの問題は以下のコードで解決できます:-

 <iso:pattern id="site">
   <iso:rule context="id">
       <iso:assert test="count(id) != count(distinct-values(ancestor::site/record/id))">BAD</iso:assert>
   </iso:rule>
</iso:pattern>
于 2014-11-25T09:26:33.123 に答える
0

ここから取得した count() および disting-values() を使用したテスト パターン: http://xml-buddy.com/xmltribune/?p=274が探しているものです。

于 2013-04-20T09:52:41.100 に答える