Class Element

要素

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)ElementElement ノードの直接の子であるすべてのノードのうち、指定されたインデックスに指定されたノードを挿入します。
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()StringElement ノードのローカル名を取得します。
getNamespace()NamespaceElement ノードの名前空間を取得します。
getNamespace(prefix)NamespaceElement ノードの指定された接頭辞を持つ名前空間を取得します。
getParentElement()Elementノードの親 Element ノードを取得します。
getQualifiedName()StringElement ノードのローカル名と名前空間接頭辞を [namespacePrefix]:[localName] の形式で取得します。
getText()StringElement ノードのテキスト値を取得します。
getValue()Stringノードの直接または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示されている順序で取得します。
isAncestorOf(other)Booleanこの Element ノードが、指定した Element ノードの直接の親か間接の親かを決定します。
isRootElement()BooleanElement ノードがドキュメントのルートノードかどうかを判断します。
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)ElementElement ノードのローカル名を設定します。
setNamespace(namespace)ElementElement ノードの名前空間を設定します。
setText(text)ElementElement ノードのテキスト値を設定します。

詳細なドキュメント

addContent(content)

指定されたノードを Element ノードの最後の子として追加します。content 引数には、Element オブジェクトまたは ContentType にリストされているタイプに対応する任意のノード オブジェクトを指定できます。

パラメータ

名前説明
contentContent追加するノード

リターン

Element - チェーン用の Element ノード


addContent(index, content)

Element ノードの直接の子であるすべてのノードのうち、指定されたインデックスに指定されたノードを挿入します。content 引数には、Element オブジェクトまたは ContentType にリストされているタイプに対応する任意のノード オブジェクトを指定できます。

パラメータ

名前説明
indexIntegerElement ノードの直接の子であるすべてのノードにノードを挿入するインデックス
contentContent挿入するノードです。

リターン

Element - チェーン用の Element ノード


cloneContent()

{@code Element} ノードの直接の子であるすべてのノードの接続されていないコピーを作成します。

リターン

Content[] - {@code Element} ノードの直接の子である、すべてのノードがアタッチされていないコピーの配列


detach()

親の Element ノードから接続を解除します。ノードに親がない場合、このメソッドは効力がありません。

リターン

Content - 切断されたノード


getAllContent()

{@code Element} ノードの直接の子であるすべてのノードを取得します。

リターン

Content[] - {@code Element} ノードの直接の子であるすべてのノードの配列


getAttribute(name)

指定された名前と名前空間を持たないこの Element ノードの属性を取得します。そのような属性がない場合、このメソッドは null を返します。

パラメータ

名前説明
nameString属性の名前

リターン

Attribute - 属性。または、指定された名前の属性がなく、名前空間がない場合は null


getAttribute(name, namespace)

指定された名前と Namespace を使用して、この Element ノードの属性を取得します。そのようなノードが存在しない場合、このメソッドは null を返します。

パラメータ

名前説明
nameString属性の名前
namespaceNamespace属性の名前空間

リターン

Attribute - 属性。または null(指定された名前と名前空間を持つ属性が存在しない場合)


getAttributes()

この Element ノードのすべての属性を、ドキュメントに表示されている順序で取得します。

リターン

Attribute[] - この Element ノードのすべての属性の配列


getChild(name)

指定された名前で、この Element ノードの直接の子である名前空間を持たない最初の Element ノードを取得します。そのようなノードが存在しない場合、このメソッドは null を返します。

パラメータ

名前説明
nameStringElement ノードの名前

リターン

Element - Element ノード。指定した名前の直接の子 Element ノードがなく、Namespace もない場合は null


getChild(name, namespace)

指定された名前と Namespace が、この Element ノードの直接の子である最初の Element ノードを取得します。そのようなノードが存在しない場合、このメソッドは null を返します。

パラメータ

名前説明
nameStringElement ノードの名前
namespaceNamespaceElement ノードの Namespace

リターン

Element - Element ノード。指定された名前と Namespace の直接の子 Element ノードがない場合は null


getChildText(name)

ノードが Element ノードの直接の子である場合、指定された名前を持つ名前空間なしのノードのテキスト値を取得します。該当するノードがない場合、このメソッドは null を返します。

パラメータ

名前説明
nameString子ノードの名前

リターン

String - 子ノードのテキスト値。指定された名前の直接の子ノードがなく、Namespace がない場合は null


getChildText(name, namespace)

ノードが Element ノードの直接の子である場合、指定された名前と名前空間を持つノードのテキスト値を取得します。そのようなノードが存在しない場合、このメソッドは null を返します。

パラメータ

名前説明
nameString子ノードの名前
namespaceNamespace子ノードの Namespace

リターン

String - 子ノードのテキスト値。指定された名前と Namespace の直接の子ノードがない場合は null


getChildren()

この Element ノードの直接の子であるすべての Element ノードを、ドキュメントに表示されている順序で取得します。

リターン

Element[] - この Element ノードの直接の子であるすべての Element ノードの配列


getChildren(name)

指定された名前を持ち、この Element ノードの直接の子である名前空間がないすべての Element ノードを、ドキュメントに表示されている順序で取得します。

パラメータ

名前説明
nameStringElement ノードの名前

リターン

Element[] - 指定された名前を持ち、この Element ノードの直接の子である名前空間を持たないすべての Element ノードの配列


getChildren(name, namespace)

指定された名前と Namespace を持つ、この Element ノードの直接の子である Element ノードをすべて、ドキュメントに表示されている順序で取得します。

パラメータ

名前説明
nameStringElement ノードの名前
namespaceNamespaceElement ノードの Namespace

リターン

Element[] - この Element ノードの直接の子である特定の名前と Namespace を持つ、すべての Element ノードの配列


getContent(index)

{@code Element} ノードの直接の子であるすべてのノードのうち、指定されたインデックスにあるノードを取得します。指定されたインデックスにノードがない場合、このメソッドは null を返します。

パラメータ

名前説明
indexInteger{@code Element} ノードの直接の子であるすべてのノードの中で、そのノードのインデックス

リターン

Content - ノード、または指定されたインデックスにノードがない場合は null


getContentSize()

{@code Element} ノードの直接の子であるノードの数を取得します。

リターン

Integer - {@code Element} ノードの直接の子であるノードの数


getDescendants()

{@code Element} ノードの直接または間接の子であるすべてのノードを、ドキュメントに表示されている順序で取得します。

リターン

Content[] - {@code Element} ノードの直接または間接の子であるすべてのノードの配列


getDocument()

{@code Element} ノードを含む XML ドキュメントを取得します。

リターン

Document - {@code Element} ノードを含むドキュメント


getName()

Element ノードのローカル名を取得します。ノードに名前空間の接頭辞がある場合は、getQualifiedName() または getNamespace() を使用します。getPrefix(): 接頭辞を取得します。

リターン

String - Element ノードのローカル名


getNamespace()

Element ノードの名前空間を取得します。

リターン

Namespace - Element ノードの Namespace


getNamespace(prefix)

Element ノードの指定された接頭辞を持つ名前空間を取得します。

パラメータ

名前説明
prefixStringNamespace の接頭辞

リターン

Namespace - Element ノードに指定された接頭辞を持つ Namespace


getParentElement()

ノードの親 Element ノードを取得します。ノードに親がない場合、このメソッドは null を返します。

リターン

Element - 親 Element ノード


getQualifiedName()

Element ノードのローカル名と名前空間接頭辞を [namespacePrefix]:[localName] の形式で取得します。ノードに名前空間接頭辞がない場合は、getName() を使用します。

リターン

String - Element ノードのローカル名と名前空間接頭辞([namespacePrefix]:[localName] の形式)。


getText()

Element ノードのテキスト値を取得します。

リターン

String - Element ノードのテキスト値


getValue()

ノードの直接または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示されている順序で取得します。

リターン

String - ノードの直接または間接の子であるすべてのノードのテキスト値


isAncestorOf(other)

この Element ノードが、指定した Element ノードの直接の親か間接の親かを決定します。

パラメータ

名前説明
otherElement他の Element 個のノード

リターン

Boolean - この Element ノードが、指定された Element ノードの直接または間接の親である場合は true、そうでない場合は false


isRootElement()

Element ノードがドキュメントのルートノードかどうかを判断します。

リターン

Boolean - Element ノードがドキュメントのルートノードの場合は true、そうでない場合は false


removeAttribute(attribute)

この Element ノードの指定された属性が存在する場合、そのような属性を削除します。

パラメータ

名前説明
attributeAttribute属性

リターン

Boolean - 属性が存在し、削除された場合は true、それ以外の場合は false


removeAttribute(attributeName)

指定された名前と名前空間を持たないこの Element ノードの属性が存在する場合は、それを削除します。

パラメータ

名前説明
attributeNameString属性の名前

リターン

Boolean - 属性が存在し、削除された場合は true、それ以外の場合は false


removeAttribute(attributeName, namespace)

指定された名前と Namespace を持つこの Element ノードの属性が存在する場合は、それらを削除します。

パラメータ

名前説明
attributeNameString属性の名前
namespaceNamespace属性の名前空間

リターン

Boolean - 属性が存在し、削除された場合は true、それ以外の場合は false


removeContent()

{@code Element} ノードの直接の子であるノードをすべて削除します。

リターン

Content[] - 削除前は {@code Element} ノードの直接の子であったすべてのノードの配列


removeContent(content)

指定されたノードが {@code Element} ノードの直接の子である場合、そのノードを削除します。content 引数には、Element オブジェクトか、ContentType にリストされているタイプに対応する任意のノード オブジェクトを指定できます。

パラメータ

名前説明
contentContentノードを削除します。

リターン

Boolean - ノードが直接の子で削除された場合は true、そうでない場合は false


removeContent(index)

{@code Element} ノードの直接の子であるすべてのノードのうち、指定されたインデックスにあるノードを削除します。指定されたインデックスにノードがない場合、このメソッドは null を返します。

パラメータ

名前説明
indexInteger{@code Element} ノードの直接の子であるすべてのノードの中で、そのノードのインデックス

リターン

Content - 削除されたノード。指定されたインデックスにノードがない場合は null


setAttribute(attribute)

この Element ノードの指定された属性を設定します。

パラメータ

名前説明
attributeAttribute設定する属性

リターン

Element - チェーン用の Element ノード


setAttribute(name, value)

指定された名前、値で、Namespace は設定せずに、この Element ノードの属性を設定します。

パラメータ

名前説明
nameString設定する属性の名前。
valueString設定する属性の値

リターン

Element - チェーン用の Element ノード


setAttribute(name, value, namespace)

指定された名前、値、Namespace を使用して、この Element ノードの属性を設定します。

パラメータ

名前説明
nameString設定する属性の名前。
valueString設定する属性の値
namespaceNamespace設定する属性の名前空間

リターン

Element - チェーン用の Element ノード


setName(name)

Element ノードのローカル名を設定します。ノードの名前空間接頭辞を設定するには、setNamespace(namespace)XmlService.getNamespace(prefix, uri) を組み合わせて使用します。

パラメータ

名前説明
nameString設定するローカル名

リターン

Element - チェーン用の Element ノード


setNamespace(namespace)

Element ノードの名前空間を設定します。

パラメータ

名前説明
namespaceNamespace設定する Namespace です。

リターン

Element - チェーン用の Element ノード


setText(text)

Element ノードのテキスト値を設定します。ノードにすでにテキスト値または子ノードが含まれている場合、このメソッドにより古いコンテンツが上書きされます。代わりにコンテンツを追加または挿入するには、addContent(content) または addContent(index, content) を使用します。

パラメータ

名前説明
textString設定するテキストを指定します

リターン

Element - チェーン用の Element ノード