0

XML形式を使用して、さまざまな参照を持つデータモデルを定義することは可能ですか?うーん、今書いたことが意味をなさないことに気づきました。説明させてください。3D空間内の点のコレクションを表すモデルがあるとします。これらの点のいくつかがグローバル座標を持っていると仮定しましょう。つまり、それらのx、y、zは単なる実数です。

<model>
   <point id="1" x="120" y="200" x="300" />
   <point id="2" x="40" y="-200" x="900" />
</model>

これまでのところすべて良いです...別のポイント、ポイント3がポイント1と2の位置に依存していると仮定しましょう。たとえば、ポイント1からポイント2に向かう線に沿ったどこかにあります。

<model>
   <point id="1" x="120" y="200" x="300" />
   <point id="2" x="40" y="-200" x="900" />
   <point id="3" x="??" y=""??" x="??" />
</model>

私はそれらの「??」を知っています 代表する。それらは中点を表します。それを計算することはできますが、XMLでどのように表現できますか?関数、たとえばmid(point1、point2)を定義し、それをXMLファイルで参照する方法はありますか?XMLドキュメント内の他のノードの関数としてポイントid="3"を定義するにはどうすればよいですか?(他のノードはポイントid="1"とポイントid="2"です)。

誰かが提案を持っている場合...XML形式に関する情報が非常に多く、事実上どこでも使用されているため、利用可能な情報の量をナビゲートするのは困難です。ありがとう!

4

1 に答える 1

0

ありえない。XML 構文には、パーサーがファイルから直接データを返すのではなく、計算結果を返すようにする手段が含まれていません。理論的には、次のように純粋に XML で計算を表現する方法を考え出すことができます。

<point id="3">
    <component id="x">
        <computation type="divide">
            <operand>
                <computation type="sum">
                    <operand>
                        <point_ref id="1" component="x">
                    </operand>
                    <operand>
                        <point_ref id="2" component="x">
                    </operand>
                </computation>
            </operand>
            <operand>
                2
            </operand>
        </computation>
    </component>
    ...
</point>

うわー、これは大変な作業のようです。とはいえ使いやすそうです。

于 2012-10-18T22:28:01.180 に答える