Mit diesem Dienst können Skripts XML-Dokumente parsen, aufrufen und programmatisch erstellen.
// Log the title and labels for the first page of blog posts on the // Google Workspace Developer blog. function parseXml() { var url = 'https://gsuite-developers.googleblog.com/atom.xml'; var xml = UrlFetchApp.fetch(url).getContentText(); var document = XmlService.parse(xml); var root = document.getRootElement(); var atom = XmlService.getNamespace('http://www.w3.org/2005/Atom'); var entries = root.getChildren('entry', atom); for (var i = 0; i < entries.length; i++) { var title = entries[i].getChild('title', atom).getText(); var categoryElements = entries[i].getChildren('category', atom); var labels = []; for (var 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() { var root = XmlService.createElement('threads'); var threads = GmailApp.getInboxThreads(); for (var i = 0; i < threads.length; i++) { var child = XmlService.createElement('thread') .setAttribute('messageCount', threads[i].getMessageCount()) .setAttribute('isUnread', threads[i].isUnread()) .setText(threads[i].getFirstMessageSubject()); root.addContent(child); } var document = XmlService.createDocument(root); var xml = XmlService.getPrettyFormat().format(document); Logger.log(xml); }
Attribute
Property | Typ | Beschreibung |
---|---|---|
ContentTypes | ContentType | Eine Aufzählung, die die Typen von XML-Inhaltsknoten darstellt. |
Methoden
Methode | Rückgabetyp | Kurzbeschreibung |
---|---|---|
createCdata(text) | Cdata | Erstellt einen nicht angehängten CDATASection -Knoten mit dem angegebenen Wert. |
createComment(text) | Comment | Erstellt einen nicht angehängten Comment -Knoten mit dem angegebenen Wert. |
createDocType(elementName) | DocType | Erstellt einen nicht angehängten DocumentType -Knoten für den Stammknoten Element mit dem angegebenen Namen. |
createDocType(elementName, systemId) | DocType | Erstellt einen nicht angehängten DocumentType -Knoten für den Stammknoten Element mit dem angegebenen Namen und der angegebenen System-ID für die externen Teilmengendaten. |
createDocType(elementName, publicId, systemId) | DocType | Erstellt einen nicht angehängten DocumentType -Knoten für den Stammknoten Element mit dem angegebenen Namen und der angegebenen öffentlichen ID und System-ID für die externen Teilmengendaten. |
createDocument() | Document | Erstellt ein leeres XML-Dokument. |
createDocument(rootElement) | Document | Erstellt ein XML-Dokument mit dem angegebenen Element -Stammknoten. |
createElement(name) | Element | Erstellt einen nicht angehängten Element -Knoten mit dem angegebenen lokalen Namen und ohne Namespace. |
createElement(name, namespace) | Element | Erstellt einen nicht angehängten Element -Knoten mit dem angegebenen lokalen Namen und Namespace. |
createText(text) | Text | Erstellt einen nicht angehängten Text -Knoten mit dem angegebenen Wert. |
getCompactFormat() | Format | Erstellt ein Format -Objekt für die Ausgabe eines kompakten XML-Dokuments. |
getNamespace(uri) | Namespace | Erstellt eine Namespace mit dem angegebenen URI. |
getNamespace(prefix, uri) | Namespace | Erstellt einen Namespace mit dem angegebenen Präfix und URI. |
getNoNamespace() | Namespace | Erstellt einen Namespace , der das Fehlen eines echten Namespace darstellt. |
getPrettyFormat() | Format | Erstellt ein Format -Objekt zur Ausgabe eines für Menschen lesbaren XML-Dokuments. |
getRawFormat() | Format | Erstellt ein Format -Objekt für die Ausgabe eines XML-Rohdokuments. |
getXmlNamespace() | Namespace | Erstellt ein Namespace mit dem Standardpräfix xml . |
parse(xml) | Document | Erstellt ein Document aus dem angegebenen XML-Code, ohne die XML zu validieren. |
Detaillierte Dokumentation
createCdata(text)
Erstellt einen nicht angehängten CDATASection
-Knoten mit dem angegebenen Wert.
Parameter
Name | Typ | Beschreibung |
---|---|---|
text | String | den festzulegenden Wert |
Return
Cdata
: der neu erstellte Knoten CDATASection
createComment(text)
createDocType(elementName)
Erstellt einen nicht angehängten DocumentType
-Knoten für den Stammknoten Element
mit dem angegebenen Namen.
Parameter
Name | Typ | Beschreibung |
---|---|---|
elementName | String | Der Name des Element -Stammknotens, der in der DocType -Deklaration angegeben wird |
Return
DocType
: der neu erstellte Knoten DocumentType
createDocType(elementName, systemId)
Erstellt einen nicht angehängten DocumentType
-Knoten für den Stammknoten Element
mit dem angegebenen Namen und der angegebenen System-ID für die externen Teilmengendaten.
Parameter
Name | Typ | Beschreibung |
---|---|---|
elementName | String | Der Name des Element -Stammknotens, der in der DocType -Deklaration angegeben wird |
systemId | String | System-ID der festzulegenden externen Teilmengendaten |
Return
DocType
: der neu erstellte Knoten DocumentType
createDocType(elementName, publicId, systemId)
Erstellt einen nicht angehängten DocumentType
-Knoten für den Stammknoten Element
mit dem angegebenen Namen und der angegebenen öffentlichen ID und System-ID für die externen Teilmengendaten.
Parameter
Name | Typ | Beschreibung |
---|---|---|
elementName | String | Der Name des Element -Stammknotens, der in der DocType -Deklaration angegeben wird |
publicId | String | Die öffentliche ID der festzulegenden externen Teilmengendaten |
systemId | String | System-ID der festzulegenden externen Teilmengendaten |
Return
DocType
: der neu erstellte Knoten DocumentType
createDocument()
createDocument(rootElement)
createElement(name)
createElement(name, namespace)
createText(text)
getCompactFormat()
Erstellt ein Format
-Objekt für die Ausgabe eines kompakten XML-Dokuments. Der Formatierer verwendet standardmäßig die UTF-8
-Codierung, keinen Einzug und keine zusätzlichen Zeilenumbrüche, enthält aber die XML-Deklaration und deren Codierung.
// Log an XML document in compact form. var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; var document = XmlService.parse(xml); var output = XmlService.getCompactFormat() .format(document); Logger.log(output);
Return
Format
– der neu erstellte Formatierer
getNamespace(uri)
getNamespace(prefix, uri)
getNoNamespace()
getPrettyFormat()
Erstellt ein Format
-Objekt zur Ausgabe eines für Menschen lesbaren XML-Dokuments. Der Formatierer verwendet standardmäßig die UTF-8
-Codierung, einen Einzug mit zwei Leerzeichen und \r\n
-Zeilentrennzeichen nach jedem Knoten und enthält die XML-Deklaration und deren Codierung.
// Log an XML document in human-readable form. var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; var document = XmlService.parse(xml); var output = XmlService.getPrettyFormat() .format(document); Logger.log(output);
Return
Format
– der neu erstellte Formatierer
getRawFormat()
Erstellt ein Format
-Objekt für die Ausgabe eines XML-Rohdokuments. Der Formatierer verwendet standardmäßig die UTF-8
-Codierung, keinen Einzug und keine Zeilenumbrüche außer den im XML-Dokument selbst angegebenen Zeilen und enthält die XML-Deklaration und deren Codierung.
// Log an XML document in raw form. var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; var document = XmlService.parse(xml); var output = XmlService.getRawFormat() .format(document); Logger.log(output);
Return
Format
– der neu erstellte Formatierer