XML の Element
ノードの表現。
// Adds up the values listed in a sample XML document and adds a new element with the total. var xml = '<things>' + '<plates>12</plates>' + '<bowls>18</bowls>' + '<cups>25</cups>' + '</things>'; var document = XmlService.parse(xml); var root = document.getRootElement(); var items = root.getChildren(); var total = 0; for (var i = 0; i < items.length; i++) { total += Number(items[i].getText()); } var totalElement = XmlService.createElement('total').setText(total); root.addContent(totalElement); xml = XmlService.getPrettyFormat().format(document); Logger.log(xml);
Methods
メソッド | 戻り値の型 | 概要 |
---|---|---|
addContent(content) | Element | 指定されたノードを Element ノードの最後の子として追加します。 |
addContent(index, content) | Element | Element ノードの直接の子であるすべてのノードのうち、指定されたインデックスに指定されたノードを挿入します。 |
cloneContent() | Content[] | {@code Element} ノードの直接の子であるすべてのノードの接続されていないコピーを作成します。 |
detach() | Content | 親の Element ノードから接続を解除します。 |
getAllContent() | Content[] | {@code Element} ノードの直接の子であるすべてのノードを取得します。 |
getAttribute(name) | Attribute | 指定された名前と名前空間を持たないこの Element ノードの属性を取得します。 |
getAttribute(name, namespace) | Attribute | 指定された名前と Namespace を使用して、この Element ノードの属性を取得します。 |
getAttributes() | Attribute[] | この Element ノードのすべての属性を、ドキュメントに表示されている順序で取得します。 |
getChild(name) | Element | 指定された名前で、この Element ノードの直接の子である名前空間を持たない最初の Element ノードを取得します。 |
getChild(name, namespace) | Element | 指定された名前と Namespace が、この Element ノードの直接の子である最初の Element ノードを取得します。 |
getChildText(name) | String | ノードが Element ノードの直接の子である場合、指定された名前を持つ名前空間なしのノードのテキスト値を取得します。 |
getChildText(name, namespace) | String | ノードが Element ノードの直接の子である場合、指定された名前と名前空間を持つノードのテキスト値を取得します。 |
getChildren() | Element[] | この Element ノードの直接の子であるすべての Element ノードを、ドキュメントに表示されている順序で取得します。 |
getChildren(name) | Element[] | 指定された名前を持ち、この Element ノードの直接の子である名前空間がないすべての Element ノードを、ドキュメントに表示されている順序で取得します。 |
getChildren(name, namespace) | Element[] | 指定された名前と Namespace を持つ、この Element ノードの直接の子である Element ノードをすべて、ドキュメントに表示されている順序で取得します。 |
getContent(index) | Content | {@code Element} ノードの直接の子であるすべてのノードのうち、指定されたインデックスにあるノードを取得します。 |
getContentSize() | Integer | {@code Element} ノードの直接の子であるノードの数を取得します。 |
getDescendants() | Content[] | {@code Element} ノードの直接または間接の子であるすべてのノードを、ドキュメントに表示されている順序で取得します。 |
getDocument() | Document | {@code Element} ノードを含む XML ドキュメントを取得します。 |
getName() | String | Element ノードのローカル名を取得します。 |
getNamespace() | Namespace | Element ノードの名前空間を取得します。 |
getNamespace(prefix) | Namespace | Element ノードの指定された接頭辞を持つ名前空間を取得します。 |
getParentElement() | Element | ノードの親 Element ノードを取得します。 |
getQualifiedName() | String | Element ノードのローカル名と名前空間接頭辞を [namespacePrefix]:[localName] の形式で取得します。 |
getText() | String | Element ノードのテキスト値を取得します。 |
getValue() | String | ノードの直接または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示されている順序で取得します。 |
isAncestorOf(other) | Boolean | この Element ノードが、指定した Element ノードの直接の親か間接の親かを決定します。 |
isRootElement() | Boolean | Element ノードがドキュメントのルートノードかどうかを判断します。 |
removeAttribute(attribute) | Boolean | この Element ノードの指定された属性が存在する場合、そのような属性を削除します。 |
removeAttribute(attributeName) | Boolean | 指定された名前と名前空間を持たないこの Element ノードの属性が存在する場合は、それを削除します。 |
removeAttribute(attributeName, namespace) | Boolean | 指定された名前と Namespace を持つこの Element ノードの属性が存在する場合は、それらを削除します。 |
removeContent() | Content[] | {@code Element} ノードの直接の子であるノードをすべて削除します。 |
removeContent(content) | Boolean | 指定されたノードが {@code Element} ノードの直接の子である場合、そのノードを削除します。 |
removeContent(index) | Content | {@code Element} ノードの直接の子であるすべてのノードのうち、指定されたインデックスにあるノードを削除します。 |
setAttribute(attribute) | Element | この Element ノードの指定された属性を設定します。 |
setAttribute(name, value) | Element | 指定された名前、値で、Namespace は設定せずに、この Element ノードの属性を設定します。 |
setAttribute(name, value, namespace) | Element | 指定された名前、値、Namespace を使用して、この Element ノードの属性を設定します。 |
setName(name) | Element | Element ノードのローカル名を設定します。 |
setNamespace(namespace) | Element | Element ノードの名前空間を設定します。 |
setText(text) | Element | Element ノードのテキスト値を設定します。 |
詳細なドキュメント
addContent(content)
指定されたノードを Element
ノードの最後の子として追加します。content
引数には、Element
オブジェクトまたは ContentType
にリストされているタイプに対応する任意のノード オブジェクトを指定できます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
content | Content | 追加するノード |
リターン
Element
- チェーン用の Element
ノード
addContent(index, content)
Element
ノードの直接の子であるすべてのノードのうち、指定されたインデックスに指定されたノードを挿入します。content
引数には、Element
オブジェクトまたは ContentType
にリストされているタイプに対応する任意のノード オブジェクトを指定できます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
index | Integer | Element ノードの直接の子であるすべてのノードにノードを挿入するインデックス |
content | Content | 挿入するノードです。 |
リターン
Element
- チェーン用の Element
ノード
cloneContent()
{@code Element} ノードの直接の子であるすべてのノードの接続されていないコピーを作成します。
リターン
Content[]
- {@code Element} ノードの直接の子である、すべてのノードがアタッチされていないコピーの配列
getAllContent()
getAttribute(name)
指定された名前と名前空間を持たないこの Element
ノードの属性を取得します。そのような属性がない場合、このメソッドは null
を返します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
name | String | 属性の名前 |
リターン
Attribute
- 属性。または、指定された名前の属性がなく、名前空間がない場合は null
getAttribute(name, namespace)
getAttributes()
getChild(name)
指定された名前で、この Element
ノードの直接の子である名前空間を持たない最初の Element
ノードを取得します。そのようなノードが存在しない場合、このメソッドは null
を返します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
name | String | 子 Element ノードの名前 |
リターン
Element
- Element
ノード。指定した名前の直接の子 Element
ノードがなく、Namespace もない場合は null
。
getChild(name, namespace)
getChildText(name)
ノードが Element
ノードの直接の子である場合、指定された名前を持つ名前空間なしのノードのテキスト値を取得します。該当するノードがない場合、このメソッドは null
を返します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
name | String | 子ノードの名前 |
リターン
String
- 子ノードのテキスト値。指定された名前の直接の子ノードがなく、Namespace がない場合は null
getChildText(name, namespace)
ノードが Element
ノードの直接の子である場合、指定された名前と名前空間を持つノードのテキスト値を取得します。そのようなノードが存在しない場合、このメソッドは null
を返します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
name | String | 子ノードの名前 |
namespace | Namespace | 子ノードの Namespace |
リターン
String
- 子ノードのテキスト値。指定された名前と Namespace の直接の子ノードがない場合は null
getChildren()
この Element
ノードの直接の子であるすべての Element
ノードを、ドキュメントに表示されている順序で取得します。
リターン
Element[]
- この Element
ノードの直接の子であるすべての Element
ノードの配列
getChildren(name)
指定された名前を持ち、この Element
ノードの直接の子である名前空間がないすべての Element
ノードを、ドキュメントに表示されている順序で取得します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
name | String | 子 Element ノードの名前 |
リターン
Element[]
- 指定された名前を持ち、この Element
ノードの直接の子である名前空間を持たないすべての Element
ノードの配列
getChildren(name, namespace)
getContent(index)
{@code Element} ノードの直接の子であるすべてのノードのうち、指定されたインデックスにあるノードを取得します。指定されたインデックスにノードがない場合、このメソッドは null
を返します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
index | Integer | {@code Element} ノードの直接の子であるすべてのノードの中で、そのノードのインデックス |
リターン
Content
- ノード、または指定されたインデックスにノードがない場合は null
getContentSize()
{@code Element} ノードの直接の子であるノードの数を取得します。
リターン
Integer
- {@code Element} ノードの直接の子であるノードの数
getDescendants()
{@code Element} ノードの直接または間接の子であるすべてのノードを、ドキュメントに表示されている順序で取得します。
リターン
Content[]
- {@code Element} ノードの直接または間接の子であるすべてのノードの配列
getDocument()
getName()
Element
ノードのローカル名を取得します。ノードに名前空間の接頭辞がある場合は、getQualifiedName()
または getNamespace()
を使用します。getPrefix()
: 接頭辞を取得します。
リターン
String
- Element
ノードのローカル名
getNamespace()
getNamespace(prefix)
Element
ノードの指定された接頭辞を持つ名前空間を取得します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
prefix | String | Namespace の接頭辞 |
リターン
Namespace
- Element
ノードに指定された接頭辞を持つ Namespace
getParentElement()
getQualifiedName()
Element
ノードのローカル名と名前空間接頭辞を [namespacePrefix]:[localName]
の形式で取得します。ノードに名前空間接頭辞がない場合は、getName()
を使用します。
リターン
String
- Element
ノードのローカル名と名前空間接頭辞([namespacePrefix]:[localName]
の形式)。
getText()
Element
ノードのテキスト値を取得します。
リターン
String
- Element
ノードのテキスト値
getValue()
ノードの直接または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示されている順序で取得します。
リターン
String
- ノードの直接または間接の子であるすべてのノードのテキスト値
isAncestorOf(other)
この Element
ノードが、指定した Element
ノードの直接の親か間接の親かを決定します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
other | Element | 他の Element 個のノード |
リターン
Boolean
- この Element
ノードが、指定された Element
ノードの直接または間接の親である場合は true
、そうでない場合は false
isRootElement()
Element
ノードがドキュメントのルートノードかどうかを判断します。
リターン
Boolean
- Element
ノードがドキュメントのルートノードの場合は true
、そうでない場合は false
。
removeAttribute(attribute)
この Element
ノードの指定された属性が存在する場合、そのような属性を削除します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
attribute | Attribute | 属性 |
リターン
Boolean
- 属性が存在し、削除された場合は true
、それ以外の場合は false
removeAttribute(attributeName)
指定された名前と名前空間を持たないこの Element
ノードの属性が存在する場合は、それを削除します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
attributeName | String | 属性の名前 |
リターン
Boolean
- 属性が存在し、削除された場合は true
、それ以外の場合は false
removeAttribute(attributeName, namespace)
指定された名前と Namespace を持つこの Element
ノードの属性が存在する場合は、それらを削除します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
attributeName | String | 属性の名前 |
namespace | Namespace | 属性の名前空間 |
リターン
Boolean
- 属性が存在し、削除された場合は true
、それ以外の場合は false
removeContent()
{@code Element} ノードの直接の子であるノードをすべて削除します。
リターン
Content[]
- 削除前は {@code Element} ノードの直接の子であったすべてのノードの配列
removeContent(content)
指定されたノードが {@code Element} ノードの直接の子である場合、そのノードを削除します。content
引数には、Element
オブジェクトか、ContentType
にリストされているタイプに対応する任意のノード オブジェクトを指定できます。
パラメータ
名前 | 型 | 説明 |
---|---|---|
content | Content | ノードを削除します。 |
リターン
Boolean
- ノードが直接の子で削除された場合は true
、そうでない場合は false
。
removeContent(index)
{@code Element} ノードの直接の子であるすべてのノードのうち、指定されたインデックスにあるノードを削除します。指定されたインデックスにノードがない場合、このメソッドは null
を返します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
index | Integer | {@code Element} ノードの直接の子であるすべてのノードの中で、そのノードのインデックス |
リターン
Content
- 削除されたノード。指定されたインデックスにノードがない場合は null
。
setAttribute(attribute)
setAttribute(name, value)
指定された名前、値で、Namespace は設定せずに、この Element
ノードの属性を設定します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
name | String | 設定する属性の名前。 |
value | String | 設定する属性の値 |
リターン
Element
- チェーン用の Element
ノード
setAttribute(name, value, namespace)
setName(name)
Element
ノードのローカル名を設定します。ノードの名前空間接頭辞を設定するには、setNamespace(namespace)
と XmlService.getNamespace(prefix, uri)
を組み合わせて使用します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
name | String | 設定するローカル名 |
リターン
Element
- チェーン用の Element
ノード
setNamespace(namespace)
setText(text)
Element
ノードのテキスト値を設定します。ノードにすでにテキスト値または子ノードが含まれている場合、このメソッドにより古いコンテンツが上書きされます。代わりにコンテンツを追加または挿入するには、addContent(content)
または addContent(index, content)
を使用します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
text | String | 設定するテキストを指定します |
リターン
Element
- チェーン用の Element
ノード