XML
Word XML
<?xml version="1.0" encoding="UTF-8"?>
<?mso-application progid="Word.Document"?>
<w:wordDocument xmlns:w="http://schemas.microsoft.com/office/word/2003/wordml">
<w:body>
<w:p>
<w:r>
<w:t>Hello, Word!</w:t>
</w:r>
</w:p>
</w:body>
</w:wordDocument>
Excel XML
<?xml version="1.0" encoding="UTF-8"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
<Worksheet ss:Name="Sheet1">
<Table>
<Row>
<Cell><Data ss:Type="String">Hello, Excel!</Data></Cell>
</Row>
</Table>
</Worksheet>
</Workbook>
E4X
XMLオブジェクトの作成
var languages=new XML('
<languages type="dynamic">
<lang>JavaScript</lang>
<lang>Python</lang>
<languages> ')
var languages=
<languages type="dynamic">
<lang>JavaScript</lang>
<lang>Python</lang>
<languages> ;
操作方法(上記の例を対象に)
alert(languages.@type); //dynamic
languages.@type="agile"
alert(languages.@type); //agile
alert(languages.toString()); //<languages type...
var person=<person>
<name>Bob Smith</name>
<likes>
<os>Linux</os>
<browser>Firefox</browser>
<language>JavaScript</language>
<language>Python</language>
</likes>
</person>;
alert(person.name);
alert(person['name'])
alert(person.likes.browser)
alert(person['likes'].browser)
alert(person.likes.language.length()); // 2 : XMLList
alert(person.likes.*.length()); // 4
alert(person..*.length()); //11 : XMLList(要素とテキストノードが含まれる)
alert(person.name.text()) //Bob Smith
var xml=person.toXMLString();
var personCopy=person.copy; //ディープコピー
var child=person.child(0); // <name>~</name>
var child=person.child(1); // <likes>~</likes>
注意事項
- catch,if,for,tryなどのパスが含まれるXMLにdot syntaxでアクセスできない。
- XMLからJavaScriptオブジェクトなどへの直接のマッピングは用意されていない。(つまり、DOMオブジェクトは操作できない)