Mit diesem Dienst können Scripts XML-Dokumente parsen, durchsuchen und programmatisch erstellen.
// 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); }
Attribute
Attribut | Typ | Beschreibung |
---|---|---|
Content | Content | Eine Aufzählung, die die Typen von XML-Inhaltsknoten darstellt. |
Methoden
Methode | Rückgabetyp | Kurzbeschreibung |
---|---|---|
create | Cdata | Erstellt einen losgelösten CDATASection -Knoten mit dem angegebenen Wert. |
create | Comment | Erstellt einen losgelösten Comment -Knoten mit dem angegebenen Wert. |
create | Doc | Erstellt einen losgelösten Document -Knoten für den Stammknoten Element mit dem angegebenen Namen. |
create | Doc | Erstellt einen losgelösten Document -Knoten für den Stammknoten Element mit dem angegebenen Namen und der angegebenen System-ID für die externen Teilmengendaten. |
create | Doc | Erstellt einen losgelösten Document -Knoten für den Stammknoten Element mit dem angegebenen Namen sowie der angegebenen öffentlichen ID und System-ID für die externen Teilmengendaten. |
create | Document | Erstellt ein leeres XML-Dokument. |
create | Document | Erstellt ein XML-Dokument mit dem angegebenen Stammknoten Element . |
create | Element | Erstellt einen losgelösten Element -Knoten mit dem angegebenen lokalen Namen und ohne Namespace. |
create | Element | Erstellt einen losgelösten Element -Knoten mit dem angegebenen lokalen Namen und Namespace. |
create | Text | Erstellt einen losgelösten Text -Knoten mit dem angegebenen Wert. |
get | Format | Erstellt ein Format -Objekt für die Ausgabe eines kompakten XML-Dokuments. |
get | Namespace | Erstellt eine Namespace mit dem angegebenen URI. |
get | Namespace | Erstellt eine Namespace mit dem angegebenen Präfix und URI. |
get | Namespace | Erstellt einen Namespace , der das Fehlen eines echten Namespace darstellt. |
get | Format | Erstellt ein Format -Objekt für die Ausgabe eines visuell lesbaren XML-Dokuments. |
get | Format | Erstellt ein Format -Objekt für die Ausgabe eines Roh-XML-Dokuments. |
get | Namespace | Erstellt eine Namespace mit dem Standardpräfix xml . |
parse(xml) | Document | Erstellt eine Document aus der angegebenen XML-Datei, ohne die XML-Datei zu validieren. |
Detaillierte Dokumentation
create Cdata(text)
Erstellt einen losgelösten CDATASection
-Knoten mit dem angegebenen Wert.
Parameter
Name | Typ | Beschreibung |
---|---|---|
text | String | Der festzulegende Wert |
Rückflug
Cdata
– der neu erstellte CDATASection
-Knoten
create Comment(text)
create Doc Type(elementName)
Erstellt einen losgelösten Document
-Knoten für den Stammknoten Element
mit dem angegebenen Namen.
Parameter
Name | Typ | Beschreibung |
---|---|---|
element | String | Der Name des Stammknotens Element , der in der Doc -Deklaration angegeben werden soll |
Rückflug
Doc
– der neu erstellte Document
-Knoten
create Doc Type(elementName, systemId)
Erstellt einen losgelösten Document
-Knoten für den Stammknoten Element
mit dem angegebenen Namen und der angegebenen System-ID für die externen Teilmengendaten.
Parameter
Name | Typ | Beschreibung |
---|---|---|
element | String | Der Name des Stammknotens Element , der in der Doc -Deklaration angegeben werden soll |
system | String | die System-ID der externen Teilmenge, die festgelegt werden soll |
Rückflug
Doc
– der neu erstellte Document
-Knoten
create Doc Type(elementName, publicId, systemId)
Erstellt einen losgelösten Document
-Knoten für den Stammknoten Element
mit dem angegebenen Namen sowie der angegebenen öffentlichen ID und System-ID für die externen Teilmengendaten.
Parameter
Name | Typ | Beschreibung |
---|---|---|
element | String | Der Name des Stammknotens Element , der in der Doc -Deklaration angegeben werden soll |
public | String | die öffentliche ID der externen Teilmenge, die festgelegt werden soll |
system | String | die System-ID der externen Teilmenge, die festgelegt werden soll |
Rückflug
Doc
– der neu erstellte Document
-Knoten
create Document()
create Document(rootElement)
create Element(name)
create Element(name, namespace)
create Text(text)
get Compact Format()
Erstellt ein Format
-Objekt für die Ausgabe eines kompakten XML-Dokuments. Der Formatierer verwendet standardmäßig die UTF-8
-Codierung, keine Einzüge und keine zusätzlichen Zeilenschaltungen, enthält aber die XML-Deklaration und ihre Codierung.
// 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);
Rückflug
Format
– der neu erstellte Formatierer
get Namespace(uri)
get Namespace(prefix, uri)
get No Namespace()
get Pretty Format()
Erstellt ein Format
-Objekt für die Ausgabe eines visuell lesbaren XML-Dokuments. Der Formatierer verwendet standardmäßig die UTF-8
-Codierung, eine Einzug von zwei Leerzeichen, \r\n
-Zeilentrennzeichen nach jedem Knoten und enthält die XML-Deklaration und ihre Codierung.
// 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);
Rückflug
Format
– der neu erstellte Formatierer
get Raw Format()
Erstellt ein Format
-Objekt für die Ausgabe eines Roh-XML-Dokuments. Der Formatierer verwendet standardmäßig die UTF-8
-Codierung, keine Einzüge und keine anderen Zeilenenden als die im XML-Dokument selbst angegebenen. Außerdem enthält er die XML-Deklaration und ihre Codierung.
// 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);
Rückflug
Format
– der neu erstellte Formatierer