以下のXML文書(yearJE.xml)を使って属性の操作をしてみます。
属性値の取得にはgetAttributeメソッドを、設定にはsetAttributeメソッドを使い、
属性そのものの削除にはremoveAttributeメソッドを使います。(属性の生成はsetAttributeメソッドでOKです。)
<!-- yearJE.xml -->
<?xml version="1.0" encoding="utf-8"?>
<year>
<month id="01" season="冬">
<japanese>1月</japanese>
<english>January</english>
<lunar>睦月</lunar>
<lunar_kana>むつき</lunar_kana>
</month>
<month id="02" season="冬">
<japanese>2月</japanese>
<english>Feburary</english>
<lunar>如月</lunar>
<lunar_kana>きさらぎ</lunar_kana>
</month>
<month id="03" season="春">
<japanese>3月</japanese>
<english>March</english>
<lunar>弥生</lunar>
<lunar_kana>やよい</lunar_kana>
</month>
<month id="04" season="春">
<japanese>4月</japanese>
<english>April</english>
<lunar>卯月</lunar>
<lunar_kana>うづき</lunar_kana>
</month>
<month id="05" season="初夏">
<japanese>5月</japanese>
<english>May</english>
<lunar>皐月</lunar>
<lunar_kana>さつき</lunar_kana>
</month>
<month id="06" season="梅雨">
<japanese>6月</japanese>
<english>June</english>
<lunar>水無月</lunar>
<lunar_kana>みなづき</lunar_kana>
</month>
<month id="07" season="夏">
<japanese>7月</japanese>
<english>July</english>
<lunar>文月</lunar>
<lunar_kana>ふづき</lunar_kana>
</month>
<month id="08" season="夏">
<japanese>8月</japanese>
<english>August</english>
<lunar>葉月</lunar>
<lunar_kana>はづき</lunar_kana>
</month>
<month id="09" season="秋">
<japanese>9月</japanese>
<english>September</english>
<lunar>長月</lunar>
<lunar_kana>ながつき</lunar_kana>
</month>
<month id="10" season="秋">
<japanese>10月</japanese>
<english>October</english>
<lunar>神無月</lunar>
<lunar_kana>かんなづき</lunar_kana>
</month>
<month id="11" season="秋">
<japanese>11月</japanese>
<english>November</english>
<lunar>霜月</lunar>
<lunar_kana>しもつき</lunar_kana>
</month>
<month id="12" season="冬">
<japanese>12月</japanese>
<english>December</english>
<lunar>師走</lunar>
<lunar_kana>しわす</lunar_kana>
</month>
</year>
スクリプトを以下に示します。
Option Explicit
Dim DOM, docRoot, node
Set DOM = WScript.CreateObject("Microsoft.XMLDOM")
DOM.async = True
DOM.load("data\yearJE.xml")
Set docRoot = DOM.documentElement
Set node = docRoot.selectSingleNode("//month[@id='06']")
WScript.Echo node.getAttribute("season")
Call node.setAttribute("season", "夏なのかな。")
Call node.setAttribute("個人的感想", "鬱陶しい季節")
WScript.Echo "季節は" & node.getAttribute("season")
WScript.Echo "個人的には" & node.getAttribute("個人的感想")
DOM.save("data\yearJE2.xml")
Call node.removeAttribute("個人的感想")
Call node.removeAttribute("season")
DOM.save("data\yearJE3.xml")
Set node = Nothing
Set docRoot = Nothing
Set DOM = Nothing
スクリプトの途中で保存したyearJE2.xmlとyearJE3.xmlの6月部分を以下に示します。
<!-- yearJE2.xml -->
<month id="06" season="夏なのかな。" 個人的感想="鬱陶しい季節">
<japanese>6月</japanese>
<english>June</english>
<lunar>水無月</lunar>
<lunar_kana>みなづき</lunar_kana>
</month>
<!-- yearJE3.xml -->
<month id="06">
<japanese>6月</japanese>
<english>June</english>
<lunar>水無月</lunar>
<lunar_kana>みなづき</lunar_kana>
</month>