1

ファイルのソース/オリジンに関する情報を追跡するXMLスキーマを作成しています。

以下の例のように子親構造を設定したいので、メタ要素の線形リストで関係を追跡する必要はありません。

これで大丈夫ですか?これが推奨されない理由はありますか?、そうでない場合、正しい方法は何ですか?

XML構造

<meta> <!-- root -->
<info/>
    <sources>
        <source>
            <meta> <!-- circular reference -->
            <info/>
                <sources>
                    <source>
                           <meta>...</meta> <!-- circular reference -->
                    </source>
                </sources>
            </meta>     
        </source>
        <source>
            <meta> <!-- circular reference -->
            <info/>
                <sources>
                    <source>
                        <meta>...</meta> <!-- circular reference -->
                    </source>
                </sources>
            </meta>     
        </source>
    </sources>
</meta>
4

1 に答える 1

1

つまり、要素が同じ要素タイプ名の子孫を持っていても大丈夫ですか?

もちろん; 多くのXML語彙は再帰的要素を使用します。(X)HTML div要素は、おそらくおなじみの例です。

再帰の利点は、通常、語彙を単純化することです。主な欠点は、再帰を追跡するためにプロセッサ(およびそれらを作成する人)が必要になることです。これは多くの状況で非常に簡単であり、他の状況では厄介になる可能性があります。

再帰要素がそれ自体の子または子孫として必要とされていないことを確認する必要があります。そうしないと、有効な有限のドキュメントを作成することができません。

于 2012-09-05T18:43:19.713 に答える