Este servicio permite que las secuencias de comandos analicen, naveguen y creen documentos XML de manera programática.
// 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); }
Propiedades
Propiedad | Tipo | Descripción |
---|---|---|
ContentTypes | ContentType | Es una enumeración que representa los tipos de nodos de contenido XML. |
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
createCdata(text) | Cdata | Crea un nodo CDATASection no conectado con el valor dado. |
createComment(text) | Comment | Crea un nodo Comment no conectado con el valor dado. |
createDocType(elementName) | DocType | Crea un nodo DocumentType sin vincular para el nodo raíz Element con el nombre determinado. |
createDocType(elementName, systemId) | DocType | Crea un nodo DocumentType sin vincular para el nodo raíz Element con el nombre dado y el ID del sistema determinado para los datos del subconjunto externo. |
createDocType(elementName, publicId, systemId) | DocType | Crea un nodo DocumentType sin vincular para el nodo raíz Element con el nombre dado, y el ID público y el ID del sistema determinados para los datos del subconjunto externo. |
createDocument() | Document | Crea un documento XML vacío. |
createDocument(rootElement) | Document | Crea un documento XML con el nodo raíz Element especificado. |
createElement(name) | Element | Crea un nodo Element sin conectar con el nombre local determinado y sin espacio de nombres. |
createElement(name, namespace) | Element | Crea un nodo Element no conectado con el nombre local y el espacio de nombres dados. |
createText(text) | Text | Crea un nodo Text no conectado con el valor dado. |
getCompactFormat() | Format | Crea un objeto Format para generar un documento XML compacto. |
getNamespace(uri) | Namespace | Crea un Namespace con el URI dado. |
getNamespace(prefix, uri) | Namespace | Crea un Namespace con el prefijo y el URI especificados. |
getNoNamespace() | Namespace | Crea un Namespace que representa la ausencia de un espacio de nombres real. |
getPrettyFormat() | Format | Crea un objeto Format para generar un documento XML legible. |
getRawFormat() | Format | Crea un objeto Format para generar un documento XML sin procesar. |
getXmlNamespace() | Namespace | Crea un Namespace con el prefijo estándar xml . |
parse(xml) | Document | Crea un Document a partir del XML determinado, sin validar el XML. |
Documentación detallada
createCdata(text)
Crea un nodo CDATASection
no conectado con el valor dado.
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
text | String | el valor a establecer |
Devolvedor
Cdata
: Es el nodo CDATASection
recién creado.
createComment(text)
createDocType(elementName)
Crea un nodo DocumentType
sin vincular para el nodo raíz Element
con el nombre determinado.
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
elementName | String | el nombre del nodo raíz Element que se especificará en la declaración DocType |
Devolvedor
DocType
: Es el nodo DocumentType
recién creado.
createDocType(elementName, systemId)
Crea un nodo DocumentType
sin vincular para el nodo raíz Element
con el nombre dado y el ID del sistema determinado para los datos del subconjunto externo.
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
elementName | String | el nombre del nodo raíz Element que se especificará en la declaración DocType |
systemId | String | el ID del sistema de los datos del subconjunto externo que se establecerán |
Devolvedor
DocType
: Es el nodo DocumentType
recién creado.
createDocType(elementName, publicId, systemId)
Crea un nodo DocumentType
sin vincular para el nodo raíz Element
con el nombre dado, y el ID público y el ID del sistema determinados para los datos del subconjunto externo.
Parámetros
Nombre | Tipo | Descripción |
---|---|---|
elementName | String | el nombre del nodo raíz Element que se especificará en la declaración DocType |
publicId | String | el ID público de los datos del subconjunto externo que se establecerán |
systemId | String | el ID del sistema de los datos del subconjunto externo que se establecerán |
Devolvedor
DocType
: Es el nodo DocumentType
recién creado.
createDocument()
createDocument(rootElement)
createElement(name)
createElement(name, namespace)
createText(text)
getCompactFormat()
Crea un objeto Format
para generar un documento XML compacto. El formateador usa la codificación UTF-8
de forma predeterminada, sin sangrías ni saltos de línea adicionales, pero incluye la declaración XML y su codificación.
// 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);
Devolvedor
Format
: El formateador recién creado
getNamespace(uri)
getNamespace(prefix, uri)
getNoNamespace()
getPrettyFormat()
Crea un objeto Format
para generar un documento XML legible. El formateador usa la codificación UTF-8
, la sangría de dos espacios y los separadores de línea \r\n
de forma predeterminada después de cada nodo, además de incluir la declaración XML y su codificación.
// 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);
Devolvedor
Format
: El formateador recién creado
getRawFormat()
Crea un objeto Format
para generar un documento XML sin procesar. El formateador se establece de forma predeterminada en la codificación UTF-8
, sin sangrías ni saltos de línea distintas de las que se proporcionan en el documento XML, además de incluir la declaración XML y su codificación.
// 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);
Devolvedor
Format
: El formateador recién creado