関数パラメータが XML DOM (Document Object Model) 属性ノードであるかどうかを調べます。
関数の引数が XML 属性ノードの場合は true、そうでない場合は false。
IsXmlAttribute(value)
IsXML、IsXmlDoc、IsXmlElem、IsXmlNode、IsXmlRoot、XmlGetNodeType、XmlValidate、『ColdFusion MX 開発ガイド』のXML および WDDX の使用
ColdFusion MX 7: この関数が追加されました。
| パラメータ | 説明 |
|---|---|
|
value |
XML 属性の名前です。 |
この関数は、パラメータが XML DOM 属性ノードであるかどうか、つまり ATTRIBUTE の値が XMLType のノードであるかどうかを調べます。XmlSearch 関数が返す値が XML 属性であるかどうかを確認する場合に役立ちます。
DOM および ColdFusion MX は、XML 属性を要素のプロパティとして処理します。DOM ノードとして直接示すことはありません。したがって、ColdFusion XML ドキュメントオブジェクト内の XmlAttributes エントリは、DOM 属性ノードを示さず、次のようなテストでは常に false が返されます。
IsXmlAttribute(myxmlelement.XMlAttributes); IsXmlAttribute(myxmlelement.XMlAttributes.myattribute);
XmlSearch 関数は、属性を XML DOM 属性ノードとして返します。たとえば次の行は、xmlobject ドキュメントオブジェクト内の quantity 属性を含む属性ノードの配列を返します。
quantities = XmlSearch(xmlobject, '//@quantity');
次の例では、XML ドキュメントを作成して、そのパーツを取得します。次に、それらのパーツが属性ノードであるかどうかをテストします。
<!--- XML ドキュメントオブジェクトを作成 --->
<cfxml variable="xmlobject">
<order id="4323251">
<customer firstname="Philip" lastname="Cramer" accountNum="21"/>
<items>
<item id="43">
<quantity>1</quantity>
<unitprice>15.95</unitprice>
</item>
</items>
</order>
</cfxml>
<!--- lastname、quantity の DOM 属性ノードをすべて含む配列を取得
(この例ではエントリは 1 つのみ) --->
<cfset lastnames = XmlSearch(xmlobject, '//@lastname')>
<!--- オブジェクトをテストして属性かどうかを確認 --->
<cfoutput>
<h3>これらは XML 属性ノードですか?</h3>
<!--- オーダー要素の ID 属性。
これは DOM 属性ノードではなく、単純な変数です。--->
node.xmlobject.order.XmlAttributes.id:
#IsXmlAttribute(xmlobject.order.XmlAttributes.id)#<br>
<!--- アイテム要素 --->
xmlobject.order.items:#IsXmlAttribute(xmlobject.order.items)#<br>
XmlSearch が返す lastnames[1]:
#isXmlAttribute(lastnames[1])#<br>
</cfoutput>
ColdFusion MX 7 | ColdFusion MX 6.1 | ColdFusion MX* | ColdFusion 5* | フォーラム* | デベロッパーセンター | サポート情報 | バグ報告
バージョン7