Este servicio permite que las secuencias de comandos analicen, naveguen y creen de manera programática en formato 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); }
Clases
Nombre | Descripción breve |
---|---|
Attribute | Es una representación de un atributo XML. |
Cdata | Es una representación de un nodo CDATASection XML. |
Comment | Es una representación de un nodo Comment XML. |
Content | Es una representación de un nodo XML genérico. |
ContentType | Una enumeración que representa los tipos de nodos de contenido XML. |
DocType | Es una representación de un nodo DocumentType XML. |
Document | Es una representación de un documento XML. |
Element | Es una representación de un nodo Element XML. |
EntityRef | Es una representación de un nodo EntityReference XML. |
Format | Un formateador para la salida de un documento XML, con tres formatos predefinidos que pueden ser aún más personalizada. |
Namespace | Una representación de un espacio de nombres en formato XML. |
ProcessingInstruction | Es una representación de un nodo ProcessingInstruction XML. |
Text | Es una representación de un nodo Text XML. |
XmlService | Este servicio permite que las secuencias de comandos analicen, naveguen y creen de manera programática documentos XML. |
Attribute
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
getName() | String | Obtiene el nombre local del atributo. |
getNamespace() | Namespace | Obtiene el espacio de nombres del atributo. |
getValue() | String | Obtiene el valor del atributo. |
setName(name) | Attribute | Establece el nombre local del atributo. |
setNamespace(namespace) | Attribute | Establece el espacio de nombres del atributo. |
setValue(value) | Attribute | Establece el valor del atributo. |
Cdata
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
append(text) | Text | Agrega el texto dado a cualquier contenido que ya exista en el nodo. |
detach() | Content | Desconecta el nodo de su nodo superior Element . |
getParentElement() | Element | Obtiene el nodo superior Element del nodo. |
getText() | String | Obtiene el valor de texto del nodo Text . |
getValue() | String | Obtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen. aparecen en el documento. |
setText(text) | Text | Establece el valor de texto del nodo Text . |
Comment
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
detach() | Content | Desconecta el nodo de su nodo superior Element . |
getParentElement() | Element | Obtiene el nodo superior Element del nodo. |
getText() | String | Obtiene el valor de texto del nodo Comment . |
getValue() | String | Obtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen. aparecen en el documento. |
setText(text) | Comment | Establece el valor de texto del nodo Comment . |
Content
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
asCdata() | Cdata | Convierte el nodo como un nodo CDATASection con fines de autocompletado. |
asComment() | Comment | Convierte el nodo como un nodo Comment con fines de autocompletado. |
asDocType() | DocType | Convierte el nodo como un nodo DocumentType con fines de autocompletado. |
asElement() | Element | Convierte el nodo como un nodo Element con fines de autocompletado. |
asEntityRef() | EntityRef | Convierte el nodo como un nodo EntityReference con fines de autocompletado. |
asProcessingInstruction() | ProcessingInstruction | Convierte el nodo como un nodo ProcessingInstruction con fines de autocompletado. |
asText() | Text | Convierte el nodo como un nodo Text con fines de autocompletado. |
detach() | Content | Desconecta el nodo de su nodo superior Element . |
getParentElement() | Element | Obtiene el nodo superior Element del nodo. |
getType() | ContentType | Obtiene el tipo de contenido del nodo. |
getValue() | String | Obtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen. aparecen en el documento. |
ContentType
Propiedades
Propiedad | Tipo | Descripción |
---|---|---|
CDATA | Enum | Un nodo CDATASection de XML. |
COMMENT | Enum | Un nodo Comment de XML. |
DOCTYPE | Enum | Un nodo DocumentType de XML. |
ELEMENT | Enum | Un nodo Element de XML. |
ENTITYREF | Enum | Un nodo EntityReference de XML. |
PROCESSINGINSTRUCTION | Enum | Un nodo ProcessingInstruction de XML. |
TEXT | Enum | Un nodo Text de XML. |
DocType
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
detach() | Content | Desconecta el nodo de su nodo superior Element . |
getElementName() | String | Obtiene el nombre del nodo raíz Element especificado en la declaración DocType . |
getInternalSubset() | String | Obtiene los datos del subconjunto interno del nodo DocumentType . |
getParentElement() | Element | Obtiene el nodo superior Element del nodo. |
getPublicId() | String | Obtiene el ID público de los datos del subconjunto externo del nodo DocumentType . |
getSystemId() | String | Obtiene el ID del sistema de los datos del subconjunto externo del nodo DocumentType . |
getValue() | String | Obtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen. aparecen en el documento. |
setElementName(name) | DocType | Establece el nombre del nodo raíz Element que se especificará en DocType
declaración. |
setInternalSubset(data) | DocType | Establece los datos del subconjunto interno para el nodo DocumentType . |
setPublicId(id) | DocType | Establece el ID público de los datos del subconjunto externo del nodo DocumentType . |
setSystemId(id) | DocType | Establece el ID del sistema de los datos del subconjunto externo para el nodo DocumentType . |
Document
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
addContent(content) | Document | Anexa el nodo determinado al final del documento. |
addContent(index, content) | Document | Inserta el nodo determinado en el índice determinado entre todos los nodos que son secundarios inmediatos de la . |
cloneContent() | Content[] | Crea copias no adjuntas de todos los nodos que son elementos secundarios inmediatos del documento. |
detachRootElement() | Element | Desconecta y muestra el nodo raíz Element del documento. |
getAllContent() | Content[] | Obtiene todos los nodos que son secundarios inmediatos del documento. |
getContent(index) | Content | Obtiene el nodo en el índice determinado entre todos los nodos que son secundarios inmediatos de la . |
getContentSize() | Integer | Obtiene la cantidad de nodos que son elementos secundarios inmediatos del documento. |
getDescendants() | Content[] | Obtiene todos los nodos que son secundarios directos o indirectos del documento, en el orden en que en el documento. |
getDocType() | DocType | Obtiene la declaración DocType del documento. |
getRootElement() | Element | Obtiene el nodo raíz Element del documento. |
hasRootElement() | Boolean | Determina si el documento tiene un nodo raíz Element . |
removeContent() | Content[] | Quita todos los nodos que son secundarios inmediatos del documento. |
removeContent(content) | Boolean | Quita el nodo determinado si es un elemento secundario inmediato del documento. |
removeContent(index) | Content | Elimina el nodo en el índice determinado entre todos los nodos que son secundarios inmediatos de la . |
setDocType(docType) | Document | Establece la declaración DocType del documento. |
setRootElement(element) | Document | Configura el nodo raíz Element del documento. |
Element
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
addContent(content) | Element | Agrega el nodo determinado como el último elemento secundario del nodo Element . |
addContent(index, content) | Element | Inserta el nodo determinado en el índice determinado entre todos los nodos que son secundarios inmediatos de la
Nodo Element . |
cloneContent() | Content[] | Crea copias no adjuntas de todos los nodos que son secundarios inmediatos del nodo {@code Element}. |
detach() | Content | Desconecta el nodo de su nodo superior Element . |
getAllContent() | Content[] | Obtiene todos los nodos que son secundarios inmediatos del nodo {@code Element}. |
getAttribute(name) | Attribute | Obtiene el atributo para este nodo Element con el nombre dado y sin espacio de nombres. |
getAttribute(name, namespace) | Attribute | Obtiene el atributo de este nodo Element con el nombre y el espacio de nombres especificados. |
getAttributes() | Attribute[] | Obtiene todos los atributos de este nodo Element , en el orden en que aparecen en el documento. |
getChild(name) | Element | Obtiene el primer nodo de Element con el nombre determinado y sin espacio de nombres que sea un elemento inmediato
elemento secundario de este nodo Element . |
getChild(name, namespace) | Element | Obtiene el primer nodo de Element con el nombre y el espacio de nombres especificados que es un elemento
elemento secundario de este nodo Element . |
getChildText(name) | String | Obtiene el valor de texto del nodo con el nombre determinado y sin espacio de nombres, si el nodo es un
elemento secundario inmediato del nodo Element . |
getChildText(name, namespace) | String | Obtiene el valor de texto del nodo con el nombre y el espacio de nombres especificados si el nodo es un elemento
elemento secundario del nodo Element |
getChildren() | Element[] | Obtiene todos los nodos Element que son secundarios inmediatos de este nodo Element , en
el orden en el que aparecen en el documento. |
getChildren(name) | Element[] | Obtiene todos los nodos de Element con el nombre determinado y ningún espacio de nombres que sean secundarios inmediatos.
de este nodo Element , en el orden en que aparecen en el documento. |
getChildren(name, namespace) | Element[] | Obtiene todos los nodos de Element con el nombre y el espacio de nombres especificados que son secundarios inmediatos de
este nodo de Element , en el orden en que aparecen en el documento. |
getContent(index) | Content | Obtiene el nodo en el índice determinado entre todos los nodos que son secundarios inmediatos de la {@code Element}. |
getContentSize() | Integer | Obtiene el número de nodos que son secundarios inmediatos del nodo {@code Element}. |
getDescendants() | Content[] | Obtiene todos los nodos que son secundarios directos o indirectos del nodo {@code Element}, en el orden en que en el documento. |
getDocument() | Document | Obtiene el documento XML que contiene el nodo {@code Element}. |
getName() | String | Obtiene el nombre local del nodo Element . |
getNamespace() | Namespace | Obtiene el espacio de nombres para el nodo Element . |
getNamespace(prefix) | Namespace | Obtiene el espacio de nombres con el prefijo especificado para el nodo Element . |
getParentElement() | Element | Obtiene el nodo superior Element del nodo. |
getQualifiedName() | String | Obtiene el nombre local y el prefijo del espacio de nombres del nodo Element , en el formato [namespacePrefix]:[localName] . |
getText() | String | Obtiene el valor de texto del nodo Element . |
getValue() | String | Obtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen. aparecen en el documento. |
isAncestorOf(other) | Boolean | Determina si este nodo de Element es un elemento superior directo o indirecto de un nodo Element determinado. |
isRootElement() | Boolean | Determina si el nodo Element es el nodo raíz del documento. |
removeAttribute(attribute) | Boolean | Quita el atributo especificado para este nodo Element , si existe uno. |
removeAttribute(attributeName) | Boolean | Quita el atributo de este nodo Element con el nombre dado y sin espacio de nombres, si
existe ese atributo. |
removeAttribute(attributeName, namespace) | Boolean | Quita el atributo de este nodo Element con el nombre y el espacio de nombres especificados, de ser así.
existe un atributo. |
removeContent() | Content[] | Elimina todos los nodos que son secundarios inmediatos del nodo {@code Element}. |
removeContent(content) | Boolean | Elimina un nodo determinado si el nodo es un elemento secundario inmediato del nodo {@code Element}. |
removeContent(index) | Content | Elimina el nodo en el índice determinado entre todos los nodos que son secundarios inmediatos de la {@code Element}. |
setAttribute(attribute) | Element | Establece el atributo proporcionado para este nodo Element . |
setAttribute(name, value) | Element | Establece el atributo de este nodo Element con el nombre y el valor especificados, y sin espacio de nombres. |
setAttribute(name, value, namespace) | Element | Establece el atributo de este nodo Element con el nombre, el valor y el espacio de nombres especificados. |
setName(name) | Element | Establece el nombre local del nodo Element . |
setNamespace(namespace) | Element | Configura el espacio de nombres para el nodo Element . |
setText(text) | Element | Establece el valor de texto del nodo Element . |
EntityRef
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
detach() | Content | Desconecta el nodo de su nodo superior Element . |
getName() | String | Obtiene el nombre del nodo EntityReference . |
getParentElement() | Element | Obtiene el nodo superior Element del nodo. |
getPublicId() | String | Obtiene el ID público del nodo EntityReference . |
getSystemId() | String | Obtiene el ID del sistema del nodo EntityReference . |
getValue() | String | Obtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen. aparecen en el documento. |
setName(name) | EntityRef | Establece el nombre del nodo EntityReference . |
setPublicId(id) | EntityRef | Establece el ID público del nodo EntityReference . |
setSystemId(id) | EntityRef | Establece el ID del sistema del nodo EntityReference . |
Format
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
format(document) | String | Muestra el Document proporcionado como una string con formato. |
format(element) | String | Muestra el nodo Element determinado como una string con formato. |
setEncoding(encoding) | Format | Establece la codificación de caracteres que debe usar el formateador. |
setIndent(indent) | Format | Establece la cadena que se usa para aplicar sangría a los nodos secundarios en relación con sus nodos superiores. |
setLineSeparator(separator) | Format | Establece la cadena que se insertará siempre que el formateador insertaría un salto de línea. |
setOmitDeclaration(omitDeclaration) | Format | Establece si el formateador debe omitir la declaración XML, como <?xml version="1.0"
encoding="UTF-8"?> . |
setOmitEncoding(omitEncoding) | Format | Establece si el formateador debe omitir la codificación en la declaración XML, como
de codificación en <?xml version="1.0" encoding="UTF-8"?> . |
Namespace
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
getPrefix() | String | Obtiene el prefijo del espacio de nombres. |
getURI() | String | Obtiene el URI para el espacio de nombres. |
ProcessingInstruction
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
detach() | Content | Desconecta el nodo de su nodo superior Element . |
getData() | String | Obtiene los datos sin procesar de cada instrucción en el nodo ProcessingInstruction . |
getParentElement() | Element | Obtiene el nodo superior Element del nodo. |
getTarget() | String | Obtiene el destino del nodo ProcessingInstruction . |
getValue() | String | Obtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen. aparecen en el documento. |
Text
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
---|---|---|
append(text) | Text | Agrega el texto dado a cualquier contenido que ya exista en el nodo. |
detach() | Content | Desconecta el nodo de su nodo superior Element . |
getParentElement() | Element | Obtiene el nodo superior Element del nodo. |
getText() | String | Obtiene el valor de texto del nodo Text . |
getValue() | String | Obtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen. aparecen en el documento. |
setText(text) | Text | Establece el valor de texto del nodo Text . |
XmlService
Propiedades
Propiedad | Tipo | Descripción |
---|---|---|
ContentTypes | ContentType | 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 vinculado con el valor determinado. |
createComment(text) | Comment | Crea un nodo Comment no vinculado con el valor determinado. |
createDocType(elementName) | DocType | Crea un nodo DocumentType no conectado para el nodo raíz Element .
con ese nombre específico. |
createDocType(elementName, systemId) | DocType | Crea un nodo DocumentType no conectado para el nodo raíz Element .
con un nombre y un ID de sistema determinados para los datos del subconjunto externo. |
createDocType(elementName, publicId, systemId) | DocType | Crea un nodo DocumentType no conectado para el nodo raíz Element .
con el nombre determinado, así como el ID público y el ID de sistema especificados 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 determinado. |
createElement(name) | Element | Crea un nodo Element no conectado con el nombre local dado y sin espacio de nombres. |
createElement(name, namespace) | Element | Crea un nodo Element no conectado con el nombre local y el espacio de nombres especificados. |
createText(text) | Text | Crea un nodo Text no vinculado con el valor determinado. |
getCompactFormat() | Format | Crea un objeto Format para generar un documento XML compacto. |
getNamespace(uri) | Namespace | Crea un Namespace con el URI determinado. |
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 en formato XML legible por humanos. |
getRawFormat() | Format | Crea un objeto Format para generar un documento XML sin procesar. |
getXmlNamespace() | Namespace | Crea un Namespace con el prefijo xml estándar. |
parse(xml) | Document | Crea un Document a partir del XML determinado, sin validar el XML. |