XML_REMOVEATTRIBUTE系¶
| 関数名 | 引数 | 戻り値 |
|---|---|---|
XML_REMOVEATTRIBUTE | int, string(, int) | int |
ref string, string(, int) | int | |
XML_REMOVEATTRIBUTE_BYNAME | string, string(, int) | int |
API
1. int XML_REMOVEATTRIBUTE xmlId, xpath(, doSetAll)
2. int XML_REMOVEATTRIBUTE ref xml, xpath(, doSetAll)
3. int XML_REMOVEATTRIBUTE_BYNAME xmlName, xpath(, doSetAll)
XMLに対して、xpathで選択した属性を削除します(XPathについて)。doSetAllが0または省略、かつ合致結果数が1以上である場合、追加は行われません。成功した場合、合致結果の数を返す。失敗した場合、0を返す。 xmlIdを文字列に変換した結果(TOSTR)をキーとして、保存したXmlDocumentからノードを選択します。XmlDocumentが存在していない場合、-1を返します。xmlからノードを選択し、結果をxmlに代入します。xmlは変数でなければなりません。xmlNameをキーとして、保存したXmlDocumentからノードを選択します。XmlDocumentが存在していない場合、-1を返します。
注意
実際のXmlNodeインスタンスを得ることではないため、xpathの先頭に「//」の表現を使っても意味がありません。
ヒント
命令、式中関数両方対応しています。
例
MAIN.ERB
@SYSTEM_TITLE
#DIMS xml = "<xml id='1' name='foo'/>"
PRINTFORML {XML_REMOVEATTRIBUTE(xml, "/xml/@id")} -> %xml%
XML_DOCUMENT 0, xml
PRINTFORML {XML_REMOVEATTRIBUTE(0, "/xml/@name")} -> %XML_TOSTR(0)%
ONEINPUT
結果
1 -> <xml name="foo" />
1 -> <xml />