XML Service

Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.
Servicio XML

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
// 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

NombreDescripción breve
AttributeRepresentación de un atributo XML.
CdataRepresentación de un nodo XML CDATASection.
CommentRepresentación de un nodo XML Comment.
ContentRepresentación de un nodo XML genérico.
ContentTypeUna enumeración que representa los tipos de nodos de contenido XML.
DocTypeRepresentación de un nodo XML DocumentType.
DocumentRepresentación de un documento XML.
ElementRepresentación de un nodo XML Element.
EntityRefRepresentación de un nodo XML EntityReference.
FormatUn formateador para exportar documentos XML, con tres formatos predefinidos que se pueden personalizar aún más.
NamespaceRepresentación de un espacio de nombres XML.
ProcessingInstructionRepresentación de un nodo XML ProcessingInstruction.
TextRepresentación de un nodo XML Text.
XmlServiceEste servicio permite que las secuencias de comandos analicen, naveguen y creen documentos XML de manera programática.

Attribute

Métodos

MétodoTipo de datos que se muestraDescripción breve
getName()StringObtiene el nombre local del atributo.
getNamespace()NamespaceObtiene el espacio de nombres para el atributo.
getValue()StringObtiene el valor del atributo.
setName(name)AttributeEstablece el nombre local del atributo.
setNamespace(namespace)AttributeEstablece el espacio de nombres del atributo.
setValue(value)AttributeEstablece el valor del atributo.

Cdata

Métodos

MétodoTipo de datos que se muestraDescripción breve
append(text)TextAgrega el texto dado a cualquier contenido que ya exista en el nodo.
detach()ContentDesconecta el nodo de su nodo superior Element.
getParentElement()ElementObtiene el nodo superior Element del nodo.
getText()StringObtiene el valor de texto del nodo Text.
getValue()StringObtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen en el documento.
setText(text)TextEstablece el valor de texto del nodo Text.

Comment

Métodos

MétodoTipo de datos que se muestraDescripción breve
detach()ContentDesconecta el nodo de su nodo superior Element.
getParentElement()ElementObtiene el nodo superior Element del nodo.
getText()StringObtiene el valor de texto del nodo Comment.
getValue()StringObtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen en el documento.
setText(text)CommentEstablece el valor de texto del nodo Comment.

Content

Métodos

MétodoTipo de datos que se muestraDescripción breve
asCdata()CdataConvierte el nodo como un nodo CDATASection para el autocompletado.
asComment()CommentConvierte el nodo como un nodo Comment para el autocompletado.
asDocType()DocTypeConvierte el nodo como un nodo DocumentType para el autocompletado.
asElement()ElementConvierte el nodo como un nodo Element para el autocompletado.
asEntityRef()EntityRefConvierte el nodo como un nodo EntityReference para el autocompletado.
asProcessingInstruction()ProcessingInstructionConvierte el nodo como un nodo ProcessingInstruction para el autocompletado.
asText()TextConvierte el nodo como un nodo Text para el autocompletado.
detach()ContentDesconecta el nodo de su nodo superior Element.
getParentElement()ElementObtiene el nodo superior Element del nodo.
getType()ContentTypeObtiene el tipo de contenido del nodo.
getValue()StringObtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen en el documento.

ContentType

Propiedades

PropiedadTipoDescripción
CDATAEnumUn nodo XML CDATASection.
COMMENTEnumUn nodo XML Comment.
DOCTYPEEnumUn nodo XML DocumentType.
ELEMENTEnumUn nodo XML Element.
ENTITYREFEnumUn nodo XML EntityReference.
PROCESSINGINSTRUCTIONEnumUn nodo XML ProcessingInstruction.
TEXTEnumUn nodo XML Text.

DocType

Métodos

MétodoTipo de datos que se muestraDescripción breve
detach()ContentDesconecta el nodo de su nodo superior Element.
getElementName()StringObtiene el nombre del nodo raíz Element especificado en la declaración DocType.
getInternalSubset()StringObtiene los datos del subconjunto interno del nodo DocumentType.
getParentElement()ElementObtiene el nodo superior Element del nodo.
getPublicId()StringObtiene el ID público de los datos del subconjunto externo para el nodo DocumentType.
getSystemId()StringObtiene el ID del sistema de los datos del subconjunto externo para el nodo DocumentType.
getValue()StringObtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen en el documento.
setElementName(name)DocTypeConfigura el nombre del nodo Element raíz que se especificará en la declaración DocType.
setInternalSubset(data)DocTypeEstablece los datos del subconjunto interno para el nodo DocumentType.
setPublicId(id)DocTypeConfigura el ID público de los datos del subconjunto externo para el nodo DocumentType.
setSystemId(id)DocTypeConfigura el ID del sistema de los datos del subconjunto externo para el nodo DocumentType.

Document

Métodos

MétodoTipo de datos que se muestraDescripción breve
addContent(content)DocumentAgrega el nodo determinado al final del documento.
addContent(index, content)DocumentInserta el nodo dado en el índice determinado entre todos los nodos que son elementos secundarios inmediatos del documento.
cloneContent()Content[]Crea copias no adjuntas de todos los nodos que son elementos secundarios inmediatos del documento.
detachRootElement()ElementDesvincula y muestra el nodo Element raíz del documento.
getAllContent()Content[]Obtiene todos los nodos que son elementos secundarios inmediatos del documento.
getContent(index)ContentObtiene el nodo en el índice dado entre todos los nodos que son secundarios secundarios del documento.
getContentSize()IntegerObtiene 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 aparecen.
getDocType()DocTypeObtiene la declaración DocType del documento.
getRootElement()ElementObtiene el nodo Element raíz del documento.
hasRootElement()BooleanDetermina si el documento tiene un nodo Element raíz.
removeContent()Content[]Quita todos los nodos que son elementos secundarios inmediatos del documento.
removeContent(content)BooleanQuita el nodo determinado si es un elemento secundario inmediato del documento.
removeContent(index)ContentQuita el nodo del índice determinado entre todos los nodos que son secundarios secundarios del documento.
setDocType(docType)DocumentEstablece la declaración DocType del documento.
setRootElement(element)DocumentEstablece el nodo Element raíz del documento.

Element

Métodos

MétodoTipo de datos que se muestraDescripción breve
addContent(content)ElementAgrega el nodo dado como el último elemento secundario del nodo Element.
addContent(index, content)ElementInserta el nodo dado en el índice determinado entre todos los nodos que son nodos secundarios inmediatos del nodo Element.
cloneContent()Content[]Crea copias no adjuntas de todos los nodos que son elementos secundarios inmediatos del nodo {@code Element}.
detach()ContentDesconecta el nodo de su nodo superior Element.
getAllContent()Content[]Obtiene todos los nodos que son elementos secundarios inmediatos del nodo {@code Element}.
getAttribute(name)AttributeObtiene el atributo para este nodo Element con el nombre dado y sin espacio de nombres.
getAttribute(name, namespace)AttributeObtiene 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)ElementObtiene el primer nodo Element con el nombre determinado y ningún espacio de nombres que sea un elemento secundario inmediato de este nodo Element.
getChild(name, namespace)ElementObtiene el primer nodo Element con el nombre y el espacio de nombres determinados que son un elemento secundario inmediato de este nodo Element.
getChildText(name)StringObtiene 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)StringObtiene el valor de texto del nodo con el nombre y el espacio de nombres determinados, si el nodo es un elemento secundario inmediato del nodo Element.
getChildren()Element[]Obtiene todos los nodos Element que son elementos secundarios inmediatos de este nodo Element, en el orden en que aparecen en el documento.
getChildren(name)Element[]Obtiene todos los nodos Element con el nombre determinado y ningún espacio de nombres que sean elementos secundarios inmediatos de este nodo Element, en el orden en que aparecen en el documento.
getChildren(name, namespace)Element[]Obtiene todos los nodos Element con el nombre y el espacio de nombres determinados que son elementos secundarios inmediatos de este nodo Element, en el orden en que aparecen en el documento.
getContent(index)ContentObtiene el nodo en el índice dado entre todos los nodos que son secundarios secundarios del nodo {@code Element}.
getContentSize()IntegerObtiene la cantidad de nodos que son nodos secundarios inmediatos del nodo {@code Element}.
getDescendants()Content[]Obtiene todos los nodos secundarios directos o indirectos del nodo {@code Element}, en el orden en que aparecen en el documento.
getDocument()DocumentObtiene el documento XML que contiene el nodo {@code Element}.
getName()StringObtiene el nombre local del nodo Element.
getNamespace()NamespaceObtiene el espacio de nombres para el nodo Element.
getNamespace(prefix)NamespaceObtiene el espacio de nombres con el prefijo dado para el nodo Element.
getParentElement()ElementObtiene el nodo superior Element del nodo.
getQualifiedName()StringObtiene el nombre local y el prefijo del espacio de nombres del nodo Element, en el formato [namespacePrefix]:[localName].
getText()StringObtiene el valor de texto del nodo Element.
getValue()StringObtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen en el documento.
isAncestorOf(other)BooleanDetermina si este nodo Element es un superior directo o indirecto de un nodo Element determinado.
isRootElement()BooleanDetermina si el nodo Element es el nodo raíz del documento.
removeAttribute(attribute)BooleanQuita el atributo dado para este nodo Element, si existe.
removeAttribute(attributeName)BooleanQuita el atributo para este nodo Element con el nombre dado y sin espacio de nombres, si ese atributo existe.
removeAttribute(attributeName, namespace)BooleanQuita el atributo para este nodo Element con el nombre y el espacio de nombres especificados, si existe.
removeContent()Content[]Elimina todos los nodos que son elementos secundarios inmediatos del nodo {@code Element}.
removeContent(content)BooleanElimina el nodo dado si este es un campo secundario inmediato del nodo {@code Element}.
removeContent(index)ContentElimina el nodo del índice dado entre todos los nodos que son nodos secundarios inmediatos del nodo {@code Element}.
setAttribute(attribute)ElementConfigura el atributo dado para este nodo Element.
setAttribute(name, value)ElementEstablece el atributo para este nodo Element con el nombre, el valor y el espacio de nombres especificados.
setAttribute(name, value, namespace)ElementEstablece el atributo para este nodo Element con el nombre, el valor y el espacio de nombres especificados.
setName(name)ElementConfigura el nombre local del nodo Element.
setNamespace(namespace)ElementConfigura el espacio de nombres para el nodo Element.
setText(text)ElementEstablece el valor de texto del nodo Element.

EntityRef

Métodos

MétodoTipo de datos que se muestraDescripción breve
detach()ContentDesconecta el nodo de su nodo superior Element.
getName()StringObtiene el nombre del nodo EntityReference.
getParentElement()ElementObtiene el nodo superior Element del nodo.
getPublicId()StringObtiene el ID público del nodo EntityReference.
getSystemId()StringObtiene el ID del sistema del nodo EntityReference.
getValue()StringObtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen en el documento.
setName(name)EntityRefConfigura el nombre del nodo EntityReference.
setPublicId(id)EntityRefConfigura el ID público del nodo EntityReference.
setSystemId(id)EntityRefConfigura el ID del sistema del nodo EntityReference.

Format

Métodos

MétodoTipo de datos que se muestraDescripción breve
format(document)StringMuestra el Document especificado como una string con formato.
format(element)StringMuestra el nodo Element dado como una string con formato.
setEncoding(encoding)FormatEstablece la codificación de caracteres que el formateador debe usar.
setIndent(indent)FormatEstablece la string que se usa para aplicar sangría a los nodos secundarios en relación con sus elementos superiores.
setLineSeparator(separator)FormatEstablece la string para insertar cada vez que el formateador normalmente insertaría un salto de línea.
setOmitDeclaration(omitDeclaration)FormatEstablece si el formateador debe omitir la declaración XML, como <?xml version="1.0" encoding="UTF-8"?>.
setOmitEncoding(omitEncoding)FormatConfigura si el formateador debe omitir la codificación en la declaración XML, como el campo de codificación en <?xml version="1.0" encoding="UTF-8"?>.

Namespace

Métodos

MétodoTipo de datos que se muestraDescripción breve
getPrefix()StringObtiene el prefijo del espacio de nombres.
getURI()StringObtiene el URI para el espacio de nombres.

ProcessingInstruction

Métodos

MétodoTipo de datos que se muestraDescripción breve
detach()ContentDesconecta el nodo de su nodo superior Element.
getData()StringObtiene los datos sin procesar para cada instrucción en el nodo ProcessingInstruction.
getParentElement()ElementObtiene el nodo superior Element del nodo.
getTarget()StringObtiene el objetivo para el nodo ProcessingInstruction.
getValue()StringObtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen en el documento.

Text

Métodos

MétodoTipo de datos que se muestraDescripción breve
append(text)TextAgrega el texto dado a cualquier contenido que ya exista en el nodo.
detach()ContentDesconecta el nodo de su nodo superior Element.
getParentElement()ElementObtiene el nodo superior Element del nodo.
getText()StringObtiene el valor de texto del nodo Text.
getValue()StringObtiene el valor de texto de todos los nodos que son secundarios directos o indirectos del nodo, en el orden en que aparecen en el documento.
setText(text)TextEstablece el valor de texto del nodo Text.

XmlService

Propiedades

PropiedadTipoDescripción
ContentTypesContentTypeUna enumeración que representa los tipos de nodos de contenido XML.

Métodos

MétodoTipo de datos que se muestraDescripción breve
createCdata(text)CdataCrea un nodo CDATASection no conectado con el valor determinado.
createComment(text)CommentCrea un nodo Comment no conectado con el valor determinado.
createDocType(elementName)DocTypeCrea un nodo DocumentType sin adjuntar para el nodo raíz Element con el nombre determinado.
createDocType(elementName, systemId)DocTypeCrea un nodo DocumentType no conectado 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)DocTypeCrea un nodo DocumentType sin adjuntar para el nodo raíz Element con el nombre determinado y el ID público y el ID del sistema especificados para los datos del subconjunto externo.
createDocument()DocumentCrea un documento XML vacío.
createDocument(rootElement)DocumentCrea un documento XML con el nodo Element determinado.
createElement(name)ElementCrea un nodo Element no adjunto con el nombre local especificado y sin espacio de nombres.
createElement(name, namespace)ElementCrea un nodo Element sin adjuntar con el nombre local y el espacio de nombres determinados.
createText(text)TextCrea un nodo Text no conectado con el valor determinado.
getCompactFormat()FormatCrea un objeto Format para generar un documento XML compacto.
getNamespace(uri)NamespaceCrea un Namespace con el URI dado.
getNamespace(prefix, uri)NamespaceCrea un Namespace con el prefijo y el URI dados.
getNoNamespace()NamespaceCrea un Namespace que representa la ausencia de un espacio de nombres real.
getPrettyFormat()FormatCrea un objeto Format para generar un documento XML legible.
getRawFormat()FormatCrea un objeto Format para generar un documento XML sin procesar.
getXmlNamespace()NamespaceCrea un Namespace con el prefijo estándar xml.
parse(xml)DocumentCrea un Document a partir del XML determinado, sin validarlo.