シンプルXMLは、要素のみを含むXMLの一種です。すべての属性は要素に変換されます。属性やXML宣言/DTDなどの他のXML要素を持たないため、シンプルで高速なパーサーを使用できます。この形式は、主流のXMLパーサーとも互換性があります。
構造
例えば:
<Agenda> <type>ガーデニング</type> <Activity> <type>水やり</type> <golf-course> <time> 6:00 </time> </golf-course> <yard> <time> 7:00 </time> </yard> </Activity> <Activity> <type>料理</type> <lunch> <time> 12:00 </time> </lunch> </Activity> </Agenda>次を表します:
<?xml version="1.0" encoding="UTF-8"?> <Agenda type= "gardening" > <Activity type= "Watering" > <golf-course time= "6:00" /> <yard time= "7:00" /> </Activity> <Activity type= "cooking" > <lunch time= "12:00" /> </Activity> </Agenda>検証
シンプルなXMLは、検証にシンプルなXPathリストを使用します。例えば、上記のXMLスニペットは次のように表現されます。
/アジェンダ/タイプ|(アクティビティ/タイプ|(*/時間))
または、もう少し人間が読みやすいように次のようにします。
/アジェンダ/タイプ /アジェンダ/アクティビティ/タイプ /アジェンダ/アクティビティ/*/時間
これにより、XML をストリームとして処理し (メモリ内にオブジェクト モデルを作成することなく)、高速な検証が可能になります。