このサービスを使用すると、スクリプトで XML ドキュメントを解析、ナビゲート、プログラムで作成できます。
// Log the title and labels for the first page of blog posts on the // Google Workspace Developer blog. function parseXml() { const url = 'https://gsuite-developers.googleblog.com/atom.xml'; const xml = UrlFetchApp.fetch(url).getContentText(); const document = XmlService.parse(xml); const root = document.getRootElement(); const atom = XmlService.getNamespace('http://www.w3.org/2005/Atom'); const entries = root.getChildren('entry', atom); for (let i = 0; i < entries.length; i++) { const title = entries[i].getChild('title', atom).getText(); const categoryElements = entries[i].getChildren('category', atom); const labels = []; for (let j = 0; j < categoryElements.length; j++) { labels.push(categoryElements[j].getAttribute('term').getValue()); } Logger.log('%s (%s)', title, labels.join(', ')); } } // Create and log an XML representation of the threads in your Gmail inbox. function createXml() { const root = XmlService.createElement('threads'); const threads = GmailApp.getInboxThreads(); for (let i = 0; i < threads.length; i++) { const child = XmlService.createElement('thread') .setAttribute('messageCount', threads[i].getMessageCount()) .setAttribute('isUnread', threads[i].isUnread()) .setText(threads[i].getFirstMessageSubject()); root.addContent(child); } const document = XmlService.createDocument(root); const xml = XmlService.getPrettyFormat().format(document); Logger.log(xml); }
プロパティ
プロパティ | タイプ | 説明 |
---|---|---|
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 を作成します。 |
詳細なドキュメント
create Cdata(text)
指定された値を使用して、接続されていない CDATASection
ノードを作成します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
text | String | 設定する値 |
戻る
Cdata
- 新しく作成された CDATASection
ノード
create Comment(text)
create Doc Type(elementName)
指定された名前のルート Element
ノードに、アタッチされていない Document
ノードを作成します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
element | String | Doc 宣言で指定するルート Element ノードの名前 |
戻る
Doc
- 新しく作成された Document
ノード
create Doc Type(elementName, systemId)
指定された名前のルート Element
ノードと、外部サブセット データの指定されたシステム ID を持つ、接続されていない Document
ノードを作成します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
element | String | Doc 宣言で指定するルート Element ノードの名前 |
system | String | 設定する外部サブセット データのシステム ID |
戻る
Doc
- 新しく作成された Document
ノード
create Doc Type(elementName, publicId, systemId)
指定された名前のルート Element
ノードと、外部サブセット データの指定された公開 ID とシステム ID を持つ、接続されていない Document
ノードを作成します。
パラメータ
名前 | 型 | 説明 |
---|---|---|
element | String | Doc 宣言で指定するルート Element ノードの名前 |
public | String | 設定する外部サブセット データのパブリック ID |
system | String | 設定する外部サブセット データのシステム ID |
戻る
Doc
- 新しく作成された Document
ノード
create Document()
create Document(rootElement)
create Element(name)
create Element(name, namespace)
create Text(text)
get Compact Format()
コンパクトな XML ドキュメントを出力するための Format
オブジェクトを作成します。フォーマッタのデフォルトは UTF-8
エンコード、インデントなし、追加の改行なしですが、XML 宣言とそのエンコードが含まれます。
// Log an XML document in compact form. const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; const document = XmlService.parse(xml); const output = XmlService.getCompactFormat().format(document); Logger.log(output);
戻る
Format
- 新しく作成されたフォーマッタ
get Namespace(uri)
get Namespace(prefix, uri)
get Pretty Format()
人間が読み取れる XML ドキュメントを出力する Format
オブジェクトを作成します。フォーマッタのデフォルトは、UTF-8
エンコード、2 つのスペースのインデント、各ノードの後に \r\n
行区切り文字、XML 宣言とそのエンコードです。
// Log an XML document in human-readable form. const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; const document = XmlService.parse(xml); const output = XmlService.getPrettyFormat().format(document); Logger.log(output);
戻る
Format
- 新しく作成されたフォーマッタ
get Raw Format()
未加工の XML ドキュメントを出力する Format
オブジェクトを作成します。フォーマッタのデフォルトは UTF-8
エンコードで、XML ドキュメント自体で指定されているもの以外にインデントも改行もありません。XML 宣言とそのエンコードが含まれます。
// Log an XML document in raw form. const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; const document = XmlService.parse(xml); const output = XmlService.getRawFormat().format(document); Logger.log(output);
戻る
Format
- 新しく作成されたフォーマッタ