に順序が重要でないようにする方法を私は時にxmlファイルの構造を確認するためにDTDを使用したい私のデータを格納するのに便利な方法として、XMLファイルおよびパーサを使用してXML、DTD:
スタートを切りました彼らが到着します。こうしたすべてが正常に動作としてここ
は私のDTDファイル
< ?xml version="1.0" encoding="UTF-8"?>
< !ELEMENT document (level*)>
< !ELEMENT level (file,filelName?,fileNumber?)>
< !ELEMENT file (#PCDATA)>
< !ELEMENT filelName (#PCDATA)>
< !ELEMENT fileNumber (#PCDATA)>
(fileNameにとファイル番号が実際に純粋にオプションであることに注意してください)
と
<document>
<level>
<file>group1file01</file>
</level>
<level>
<file>group1file02</file>
<fileName>file 2</fileName>
<fileNumber>0</fileNumber>
</level>
...
です。私は、行の順序を変更する
<level>
<levelName>Level 2</levelName>
<levelNumber>0</levelNumber>
<file>group1level02</file>
</level>
をすれば、私は私が考えるものだ試験する奇妙なエラー
ありながら、しかし
(私は今のためにそれをテストするための日食「検証」オプションを使用します) Eclipseはそれを検証することを拒否します...
これはEclipseに問題があるのか、またはその注文が実際に重要かどうか疑問でした。
要素の順序に関係なく、DTDをどのように変更することができますか?
すべてのXMLファイルとパーサーが書かれているので、XMLを実際に変更することはできません(私はそれを間違った方法で行っていました)。
ハム...私はそれがより柔軟になると思っていただろう...私は一緒に行かなければならないだろうなぜなら、xmlが読み込まれる順番でこのように仮定しなければならなかったからです。 –
これは確定的ではないため、有効なDTDではありません。たとえそれが有効であったとしても、可能な順序で子要素を許可しません。 – jasso