このサービスを使用すると、スクリプトで XML ドキュメントを解析、ナビゲート、プログラムで作成できます。
// Log the title and labels for the first page of blog posts on // Google's The Keyword blog. function parseXml() { let url = 'https://blog.google/rss/'; let xml = UrlFetchApp.fetch(url).getContentText(); let document = XmlService.parse(xml); let root = document.getRootElement(); let channel = root.getChild('channel'); let items = channel.getChildren('item'); items.forEach(item => { let title = item.getChild('title').getText(); let categories = item.getChildren('category'); let labels = categories.map(category => category.getText()); console.log('%s (%s)', title, labels.join(', ')); }); } // Create and log an XML representation of first 10 threads in your Gmail inbox. function createXml() { let root = XmlService.createElement('threads'); let threads = GmailApp.getInboxThreads() threads = threads.slice(0,10); // Just the first 10 threads.forEach(thread => { let child = XmlService.createElement('thread') .setAttribute('messageCount', thread.getMessageCount()) .setAttribute('isUnread', thread.isUnread()) .setText(thread.getFirstMessageSubject()); root.addContent(child); }); let document = XmlService.createDocument(root); let xml = XmlService.getPrettyFormat().format(document); console.log(xml); }
クラス
名前 | 概要 |
---|---|
Attribute | XML 属性の表現。 |
Cdata | XML CDATASection ノードの表現。 |
Comment | XML Comment ノードの表現。 |
Content | 一般的な XML ノードの表現。 |
Content | XML コンテンツ ノードのタイプを表す列挙型。 |
Doc | XML Document ノードの表現。 |
Document | XML ドキュメントの表現。 |
Element | XML Element ノードの表現。 |
Entity | XML Entity ノードの表現。 |
Format | XML ドキュメントを出力するためのフォーマッタ。3 つの事前定義された形式があり、さらにカスタマイズできます。 |
Namespace | XML 名前空間の表現。 |
Processing | XML Processing ノードの表現。 |
Text | XML Text ノードの表現。 |
Xml | このサービスを使用すると、スクリプトで XML ドキュメントを解析、ナビゲート、プログラムで作成できます。 |
Attribute
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
get | String | 属性のローカル名を取得します。 |
get | Namespace | 属性の名前空間を取得します。 |
get | String | 属性の値を取得します。 |
set | Attribute | 属性のローカル名を設定します。 |
set | Attribute | 属性の名前空間を設定します。 |
set | Attribute | 属性の値を設定します。 |
Cdata
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
append(text) | Text | 指定されたテキストを、ノード内にすでに存在するコンテンツに追加します。 |
detach() | Content | ノードを親の Element ノードから切断します。 |
get | Element | ノードの親 Element ノードを取得します。 |
get | String | Text ノードのテキスト値を取得します。 |
get | String | ノードの直接の子または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示される順序で取得します。 |
set | Text | Text ノードのテキスト値を設定します。 |
Comment
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
detach() | Content | ノードを親の Element ノードから切断します。 |
get | Element | ノードの親 Element ノードを取得します。 |
get | String | Comment ノードのテキスト値を取得します。 |
get | String | ノードの直接の子または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示される順序で取得します。 |
set | Comment | Comment ノードのテキスト値を設定します。 |
Content
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
as | Cdata | 予測入力のためにノードを CDATASection ノードとしてキャストします。 |
as | Comment | 予測入力のためにノードを Comment ノードとしてキャストします。 |
as | Doc | 予測入力のためにノードを Document ノードとしてキャストします。 |
as | Element | 自動補完のためにノードを Element ノードとしてキャストします。 |
as | Entity | 予測入力のためにノードを Entity ノードとしてキャストします。 |
as | Processing | 予測入力のためにノードを Processing ノードとしてキャストします。 |
as | Text | 予測入力のためにノードを Text ノードとしてキャストします。 |
detach() | Content | ノードを親の Element ノードから切断します。 |
get | Element | ノードの親 Element ノードを取得します。 |
get | Content | ノードのコンテンツ タイプを取得します。 |
get | String | ノードの直接の子または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示される順序で取得します。 |
Content Type
プロパティ
プロパティ | タイプ | 説明 |
---|---|---|
CDATA | Enum | XML CDATASection ノード。 |
COMMENT | Enum | XML Comment ノード。 |
DOCTYPE | Enum | XML Document ノード。 |
ELEMENT | Enum | XML Element ノード。 |
ENTITYREF | Enum | XML Entity ノード。 |
PROCESSINGINSTRUCTION | Enum | XML Processing ノード。 |
TEXT | Enum | XML Text ノード。 |
Doc Type
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
detach() | Content | ノードを親の Element ノードから切断します。 |
get | String | Doc 宣言で指定されたルート Element ノードの名前を取得します。 |
get | String | Document ノードの内部サブセット データを取得します。 |
get | Element | ノードの親 Element ノードを取得します。 |
get | String | Document ノードの外部サブセット データの公開 ID を取得します。 |
get | String | Document ノードの外部サブセット データのシステム ID を取得します。 |
get | String | ノードの直接の子または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示される順序で取得します。 |
set | Doc | Doc 宣言で指定するルート Element ノードの名前を設定します。 |
set | Doc | Document ノードの内部サブセット データを設定します。 |
set | Doc | Document ノードの外部サブセット データのパブリック ID を設定します。 |
set | Doc | Document ノードの外部サブセット データのシステム ID を設定します。 |
Document
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
add | Document | 指定されたノードをドキュメントの末尾に追加します。 |
add | Document | ドキュメントの直下の子であるすべてのノードのうち、指定されたインデックスに指定されたノードを挿入します。 |
clone | Content[] | ドキュメントの直接の子であるすべてのノードのアタッチされていないコピーを作成します。 |
detach | Element | ドキュメントのルート Element ノードを切断して返します。 |
get | Content[] | ドキュメントの直接の子であるすべてのノードを取得します。 |
get | Content | ドキュメントの直下の子であるすべてのノードのうち、指定されたインデックスのノードを取得します。 |
get | Integer | ドキュメントの直接の子であるノードの数を取得します。 |
get | Content[] | ドキュメントの直接または間接の子であるすべてのノードを、ドキュメントに表示される順序で取得します。 |
get | Doc | ドキュメントの Doc 宣言を取得します。 |
get | Element | ドキュメントのルート Element ノードを取得します。 |
has | Boolean | ドキュメントにルート Element ノードがあるかどうかを判断します。 |
remove | Content[] | ドキュメントの直接の子であるすべてのノードを削除します。 |
remove | Boolean | 指定されたノードがドキュメントの直接の子である場合、そのノードを削除します。 |
remove | Content | ドキュメントの直接の子であるすべてのノードのうち、指定されたインデックスのノードを削除します。 |
set | Document | ドキュメントの Doc 宣言を設定します。 |
set | Document | ドキュメントのルート Element ノードを設定します。 |
Element
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
add | Element | 指定されたノードを Element ノードの最後の子として追加します。 |
add | Element | 指定したノードを、Element ノードの直下の子であるすべてのノードの指定したインデックスに挿入します。 |
clone | Content[] | {@code Element} ノードの直下の子であるすべてのノードの、アタッチされていないコピーを作成します。 |
detach() | Content | ノードを親の Element ノードから切断します。 |
get | Content[] | {@code Element} ノードの直接の子であるすべてのノードを取得します。 |
get | Attribute | 指定された名前で、名前空間のないこの Element ノードの属性を取得します。 |
get | Attribute | 指定された名前と名前空間を持つこの Element ノードの属性を取得します。 |
get | Attribute[] | この Element ノードのすべての属性を、ドキュメントに記載されている順序で取得します。 |
get | Element | 指定された名前で、この Element ノードの直下の子ノードである Namespace のない最初の Element ノードを取得します。 |
get | Element | この Element ノードの直下の子で、指定された名前と名前空間を持つ最初の Element ノードを取得します。 |
get | String | ノードが Element ノードの直下の子である場合、指定された名前と名前空間のないノードのテキスト値を取得します。 |
get | String | ノードが Element ノードの直下にある場合、指定された名前と名前空間を持つノードのテキスト値を取得します。 |
get | Element[] | この Element ノードの直下の子であるすべての Element ノードを、ドキュメント内の表示順で取得します。 |
get | Element[] | 指定された名前で、この Element ノードの直下の子である名前空間のないすべての Element ノードを、ドキュメントに表示される順序で取得します。 |
get | Element[] | この Element ノードの直下の子で、指定された名前と名前空間を持つすべての Element ノードを、ドキュメントに表示される順序で取得します。 |
get | Content | {@code Element} ノードの直接の子であるすべてのノードのうち、指定されたインデックスのノードを取得します。 |
get | Integer | {@code Element} ノードの直下の子ノードの数を取得します。 |
get | Content[] | {@code Element} ノードの直接または間接の子であるすべてのノードを、ドキュメントに表示される順序で取得します。 |
get | Document | {@code Element} ノードを含む XML ドキュメントを取得します。 |
get | String | Element ノードのローカル名を取得します。 |
get | Namespace | Element ノードの Namespace を取得します。 |
get | Namespace | Element ノードに指定された接頭辞を持つ名前空間を取得します。 |
get | Element | ノードの親 Element ノードを取得します。 |
get | String | Element ノードのローカル名と名前空間の接頭辞を [namespacePrefix]:[localName] 形式で取得します。 |
get | String | Element ノードのテキスト値を取得します。 |
get | String | ノードの直接の子または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示される順序で取得します。 |
is | Boolean | この Element ノードが、特定の Element ノードの直接的または間接的な親であるかどうかを判断します。 |
is | Boolean | Element ノードがドキュメントのルートノードかどうかを判断します。 |
remove | Boolean | この Element ノードの指定された属性を削除します(存在する場合)。 |
remove | Boolean | 指定された名前で名前空間のないこの Element ノードの属性を削除します(そのような属性が存在する場合)。 |
remove | Boolean | 指定された名前と名前空間を持つこの Element ノードの属性を削除します(属性が存在する場合)。 |
remove | Content[] | {@code Element} ノードの直接の子であるすべてのノードを削除します。 |
remove | Boolean | 指定されたノードが {@code Element} ノードの直接の子である場合、そのノードを削除します。 |
remove | Content | {@code Element} ノードの直接の子であるすべてのノードのうち、指定したインデックスのノードを削除します。 |
set | Element | この Element ノードに指定された属性を設定します。 |
set | Element | 指定された名前と値で、この Element ノードの属性を設定し、名前空間は設定しません。 |
set | Element | 指定された名前、値、Namespace を使用して、この Element ノードの属性を設定します。 |
set | Element | Element ノードのローカル名を設定します。 |
set | Element | Element ノードの Namespace を設定します。 |
set | Element | Element ノードのテキスト値を設定します。 |
Entity Ref
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
detach() | Content | ノードを親の Element ノードから切断します。 |
get | String | Entity ノードの名前を取得します。 |
get | Element | ノードの親 Element ノードを取得します。 |
get | String | Entity ノードの公開 ID を取得します。 |
get | String | Entity ノードのシステム ID を取得します。 |
get | String | ノードの直接の子または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示される順序で取得します。 |
set | Entity | Entity ノードの名前を設定します。 |
set | Entity | Entity ノードの公開 ID を設定します。 |
set | Entity | Entity ノードのシステム ID を設定します。 |
Format
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
format(document) | String | 指定された Document をフォーマットされた文字列として出力します。 |
format(element) | String | 指定された Element ノードをフォーマットされた文字列として出力します。 |
set | Format | フォーマッタが使用する文字エンコードを設定します。 |
set | Format | 親ノードに対して子ノードをインデントするために使用される文字列を設定します。 |
set | Format | フォーマッタが通常改行を挿入するときに挿入する文字列を設定します。 |
set | Format | フォーマッタが XML 宣言(<?xml version="1.0"
encoding="UTF-8"?> など)を省略するかどうかを設定します。 |
set | Format | フォーマッタが XML 宣言のエンコード(<?xml version="1.0" encoding="UTF-8"?> のエンコード フィールドなど)を省略するかどうかを設定します。 |
Namespace
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
get | String | 名前空間の接頭辞を取得します。 |
get | String | Namespace の URI を取得します。 |
Processing Instruction
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
detach() | Content | ノードを親の Element ノードから切断します。 |
get | String | Processing ノード内のすべての命令の元データを取得します。 |
get | Element | ノードの親 Element ノードを取得します。 |
get | String | Processing ノードのターゲットを取得します。 |
get | String | ノードの直接の子または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示される順序で取得します。 |
Text
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
append(text) | Text | 指定されたテキストを、ノード内にすでに存在するコンテンツに追加します。 |
detach() | Content | ノードを親の Element ノードから切断します。 |
get | Element | ノードの親 Element ノードを取得します。 |
get | String | Text ノードのテキスト値を取得します。 |
get | String | ノードの直接の子または間接の子であるすべてのノードのテキスト値を、ドキュメントに表示される順序で取得します。 |
set | Text | Text ノードのテキスト値を設定します。 |
Xml Service
プロパティ
プロパティ | タイプ | 説明 |
---|---|---|
Content | Content | XML コンテンツ ノードのタイプを表す列挙型。 |
メソッド
メソッド | 戻り値の型 | 概要 |
---|---|---|
create | Cdata | 指定された値を使用して、接続されていない CDATASection ノードを作成します。 |
create | Comment | 指定された値を使用して、接続されていない Comment ノードを作成します。 |
create | Doc | 指定された名前のルート Element ノードに、アタッチされていない Document ノードを作成します。 |
create | Doc | 指定された名前のルート Element ノードと、外部サブセット データの指定されたシステム ID を持つ、接続されていない Document ノードを作成します。 |
create | Doc | 指定された名前のルート Element ノードと、外部サブセット データの指定された公開 ID とシステム ID を持つ、接続されていない Document ノードを作成します。 |
create | Document | 空の XML ドキュメントを作成します。 |
create | Document | 指定されたルート Element ノードを持つ XML ドキュメントを作成します。 |
create | Element | 指定されたローカル名で、Namespace のないアタッチされていない Element ノードを作成します。 |
create | Element | 指定されたローカル名と Namespace を使用して、アタッチされていない Element ノードを作成します。 |
create | Text | 指定された値を使用して、接続されていない Text ノードを作成します。 |
get | Format | コンパクトな XML ドキュメントを出力する Format オブジェクトを作成します。 |
get | Namespace | 指定された URI で Namespace を作成します。 |
get | Namespace | 指定された接頭辞と URI を使用して Namespace を作成します。 |
get | Namespace | 実際の名前空間がないことを示す Namespace を作成します。 |
get | Format | 人間が読み取れる XML ドキュメントを出力するための Format オブジェクトを作成します。 |
get | Format | 未加工の XML ドキュメントを出力する Format オブジェクトを作成します。 |
get | Namespace | 標準の xml 接頭辞を使用して Namespace を作成します。 |
parse(xml) | Document | XML を検証せずに、指定された XML から Document を作成します。 |