Com esse serviço, os scripts podem analisar, navegar e criar conteúdo documentos 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); }
Classes
Nome | Breve descrição |
---|---|
Attribute | Uma representação de um atributo XML. |
Cdata | Uma representação de um nó CDATASection XML. |
Comment | Uma representação de um nó Comment XML. |
Content | Uma representação de um nó XML genérico. |
ContentType | Uma enumeração que representa os tipos de nós de conteúdo XML. |
DocType | Uma representação de um nó DocumentType XML. |
Document | Uma representação de um documento XML. |
Element | Uma representação de um nó Element XML. |
EntityRef | Uma representação de um nó EntityReference XML. |
Format | Um formatador para gerar um documento XML, com três formatos predefinidos que podem ser mais personalizado. |
Namespace | Uma representação de um namespace XML. |
ProcessingInstruction | Uma representação de um nó ProcessingInstruction XML. |
Text | Uma representação de um nó Text XML. |
XmlService | Esse serviço permite que os scripts analisem, naveguem e criem documentos XML de forma programática. |
Attribute
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
getName() | String | Recebe o nome local do atributo. |
getNamespace() | Namespace | Recebe o namespace do atributo. |
getValue() | String | Recebe o valor do atributo. |
setName(name) | Attribute | Define o nome local do atributo. |
setNamespace(namespace) | Attribute | Define o namespace do atributo. |
setValue(value) | Attribute | Define o valor do atributo. |
Cdata
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
append(text) | Text | Anexa o texto fornecido a qualquer conteúdo que já exista no nó. |
detach() | Content | Separa o nó do nó pai Element . |
getParentElement() | Element | Recebe o nó Element pai do nó. |
getText() | String | Recebe o valor de texto do nó Text . |
getValue() | String | Extrai o valor de texto de todos os nós que são filhos diretos ou indiretos do nó, na ordem como eles aparecem no documento. |
setText(text) | Text | Define o valor de texto do nó Text . |
Comment
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
detach() | Content | Separa o nó do nó pai Element . |
getParentElement() | Element | Recebe o nó Element pai do nó. |
getText() | String | Recebe o valor de texto do nó Comment . |
getValue() | String | Extrai o valor de texto de todos os nós que são filhos diretos ou indiretos do nó, na ordem como eles aparecem no documento. |
setText(text) | Comment | Define o valor de texto do nó Comment . |
Content
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
asCdata() | Cdata | Transmite o nó como um nó CDATASection para fins de preenchimento automático. |
asComment() | Comment | Transmite o nó como um nó Comment para fins de preenchimento automático. |
asDocType() | DocType | Transmite o nó como um nó DocumentType para fins de preenchimento automático. |
asElement() | Element | Transmite o nó como um nó Element para fins de preenchimento automático. |
asEntityRef() | EntityRef | Transmite o nó como um nó EntityReference para fins de preenchimento automático. |
asProcessingInstruction() | ProcessingInstruction | Transmite o nó como um nó ProcessingInstruction para fins de preenchimento automático. |
asText() | Text | Transmite o nó como um nó Text para fins de preenchimento automático. |
detach() | Content | Separa o nó do nó pai Element . |
getParentElement() | Element | Recebe o nó Element pai do nó. |
getType() | ContentType | Recebe o tipo de conteúdo do nó. |
getValue() | String | Extrai o valor de texto de todos os nós que são filhos diretos ou indiretos do nó, na ordem como eles aparecem no documento. |
ContentType
Propriedades
Propriedade | Tipo | Descrição |
---|---|---|
CDATA | Enum | Um nó CDATASection de XML. |
COMMENT | Enum | Um nó Comment de XML. |
DOCTYPE | Enum | Um nó DocumentType de XML. |
ELEMENT | Enum | Um nó Element de XML. |
ENTITYREF | Enum | Um nó EntityReference de XML. |
PROCESSINGINSTRUCTION | Enum | Um nó ProcessingInstruction de XML. |
TEXT | Enum | Um nó Text de XML. |
DocType
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
detach() | Content | Separa o nó do nó pai Element . |
getElementName() | String | Recebe o nome do nó raiz Element especificado na declaração DocType . |
getInternalSubset() | String | Recebe os dados do subconjunto interno para o nó DocumentType . |
getParentElement() | Element | Recebe o nó Element pai do nó. |
getPublicId() | String | Recebe o ID público dos dados do subconjunto externo para o nó DocumentType . |
getSystemId() | String | Recebe o ID do sistema dos dados do subconjunto externo para o nó DocumentType . |
getValue() | String | Extrai o valor de texto de todos os nós que são filhos diretos ou indiretos do nó, na ordem como eles aparecem no documento. |
setElementName(name) | DocType | Define o nome do nó raiz Element a ser especificado no DocType .
declaração de serviço. |
setInternalSubset(data) | DocType | Define os dados de subconjuntos internos para o nó DocumentType . |
setPublicId(id) | DocType | Define o ID público dos dados do subconjunto externo para o nó DocumentType . |
setSystemId(id) | DocType | Define o ID do sistema dos dados do subconjunto externo para o nó DocumentType . |
Document
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
addContent(content) | Document | Anexa o nó especificado ao final do documento. |
addContent(index, content) | Document | Insere o nó especificado no índice especificado entre todos os nós que são filhos imediatos do documento. |
cloneContent() | Content[] | Cria cópias não anexadas de todos os nós que são filhos imediatos do documento. |
detachRootElement() | Element | Separa e retorna o nó raiz Element do documento. |
getAllContent() | Content[] | Recebe todos os nós que são filhos imediatos do documento. |
getContent(index) | Content | Extrai o nó no índice especificado entre todos os nós que são filhos imediatos do documento. |
getContentSize() | Integer | Recebe o número de nós que são filhos imediatos do documento. |
getDescendants() | Content[] | Recebe todos os nós que são filhos diretos ou indiretos do documento, na ordem em que aparecem no documento. |
getDocType() | DocType | Recebe a declaração DocType do documento. |
getRootElement() | Element | Recebe o nó Element raiz do documento. |
hasRootElement() | Boolean | Determina se o documento tem um nó Element raiz. |
removeContent() | Content[] | Remove todos os nós que são filhos imediatos do documento. |
removeContent(content) | Boolean | Remove o nó determinado, se o nó for filho imediato do documento. |
removeContent(index) | Content | Remove o nó no índice especificado entre todos os nós que são filhos imediatos do documento. |
setDocType(docType) | Document | Define a declaração DocType do documento. |
setRootElement(element) | Document | Define o nó Element raiz do documento. |
Element
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
addContent(content) | Element | Anexa o nó especificado como o último filho do nó Element . |
addContent(index, content) | Element | Insere o nó especificado no índice especificado entre todos os nós que são filhos imediatos do
Nó Element . |
cloneContent() | Content[] | Cria cópias não anexadas de todos os nós que são filhos imediatos do nó {@code Element}. |
detach() | Content | Separa o nó do nó pai Element . |
getAllContent() | Content[] | Recebe todos os nós que são filhos imediatos do nó {@code Element}. |
getAttribute(name) | Attribute | Recebe o atributo desse nó Element com o nome determinado e sem namespace. |
getAttribute(name, namespace) | Attribute | Recebe o atributo desse nó Element com o nome e o namespace fornecidos. |
getAttributes() | Attribute[] | Recebe todos os atributos desse nó Element , na ordem em que aparecem no documento. |
getChild(name) | Element | Recebe o primeiro nó Element com o nome fornecido e nenhum namespace que seja imediato
filho desse nó Element . |
getChild(name, namespace) | Element | Recebe o primeiro nó Element com o nome e o namespace fornecidos que é imediato
filho desse nó Element . |
getChildText(name) | String | Extrai o valor de texto do nó com o nome indicado e sem namespace, se o nó for um
filho imediato do nó Element . |
getChildText(name, namespace) | String | Extrai o valor de texto do nó com o nome e o namespace fornecidos, se o nó for um nó imediato
filho do nó Element . |
getChildren() | Element[] | Recebe todos os nós Element que são filhos imediatos deste nó Element , no
ordem em que elas aparecem no documento. |
getChildren(name) | Element[] | Recebe todos os nós Element com o nome fornecido e nenhum namespace que sejam filhos imediatos
deste nó Element , na ordem em que aparecem no documento. |
getChildren(name, namespace) | Element[] | Recebe todos os nós Element com o nome e o namespace fornecidos que são filhos imediatos de
este nó Element , na ordem em que eles aparecem no documento. |
getContent(index) | Content | Extrai o nó no índice especificado entre todos os nós que são filhos imediatos do {@code Element} . |
getContentSize() | Integer | Recebe o número de nós que são filhos imediatos do nó {@code Element}. |
getDescendants() | Content[] | Recebe todos os nós que são filhos diretos ou indiretos do nó {@code Element}, na ordem em que aparecem no documento. |
getDocument() | Document | Extrai o documento XML que contém o nó {@code Element}. |
getName() | String | Recebe o nome local do nó Element . |
getNamespace() | Namespace | Recebe o namespace do nó Element . |
getNamespace(prefix) | Namespace | Recebe o namespace com o prefixo fornecido para o nó Element . |
getParentElement() | Element | Recebe o nó Element pai do nó. |
getQualifiedName() | String | Recebe o nome local e o prefixo do namespace do nó Element , no formato [namespacePrefix]:[localName] . |
getText() | String | Recebe o valor de texto do nó Element . |
getValue() | String | Extrai o valor de texto de todos os nós que são filhos diretos ou indiretos do nó, na ordem como eles aparecem no documento. |
isAncestorOf(other) | Boolean | Determina se esse nó Element é um pai direto ou indireto de um determinado nó Element . |
isRootElement() | Boolean | Determina se o nó Element é o nó raiz do documento. |
removeAttribute(attribute) | Boolean | Remove o atributo fornecido para esse nó Element , se esse atributo existir. |
removeAttribute(attributeName) | Boolean | Remove o atributo desse nó Element com o nome fornecido e sem namespace, se
esse atributo existe. |
removeAttribute(attributeName, namespace) | Boolean | Remove o atributo desse nó Element com o nome e namespace fornecidos, se tais
um atributo existe. |
removeContent() | Content[] | Remove todos os nós que são filhos imediatos do nó {@code Element}. |
removeContent(content) | Boolean | Remove o nó determinado, se o nó for um filho imediato do nó {@code Element}. |
removeContent(index) | Content | Remove o nó no índice especificado entre todos os nós que são filhos imediatos do {@code Element} . |
setAttribute(attribute) | Element | Define o atributo fornecido para este nó Element . |
setAttribute(name, value) | Element | Define o atributo do nó Element com o nome, o valor e sem o namespace fornecidos. |
setAttribute(name, value, namespace) | Element | Define o atributo do nó Element com o nome, o valor e o namespace fornecidos. |
setName(name) | Element | Define o nome local do nó Element . |
setNamespace(namespace) | Element | Define o namespace do nó Element . |
setText(text) | Element | Define o valor de texto do nó Element . |
EntityRef
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
detach() | Content | Separa o nó do nó pai Element . |
getName() | String | Recebe o nome do nó EntityReference . |
getParentElement() | Element | Recebe o nó Element pai do nó. |
getPublicId() | String | Recebe o ID público do nó EntityReference . |
getSystemId() | String | Recebe o ID do sistema do nó EntityReference . |
getValue() | String | Extrai o valor de texto de todos os nós que são filhos diretos ou indiretos do nó, na ordem como eles aparecem no documento. |
setName(name) | EntityRef | Define o nome do nó EntityReference . |
setPublicId(id) | EntityRef | Define o ID público do nó EntityReference . |
setSystemId(id) | EntityRef | Define o ID do sistema do nó EntityReference . |
Format
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
format(document) | String | Gera o Document fornecido como uma string formatada. |
format(element) | String | Gera o nó Element fornecido como uma string formatada. |
setEncoding(encoding) | Format | Define a codificação de caracteres que o formatador deve usar. |
setIndent(indent) | Format | Define a string usada para recuar nós filhos em relação aos pais. |
setLineSeparator(separator) | Format | Define a string a ser inserida sempre que o formatador normalmente inserir uma quebra de linha. |
setOmitDeclaration(omitDeclaration) | Format | Define se o formatador precisa omitir a declaração XML, como <?xml version="1.0"
encoding="UTF-8"?> . |
setOmitEncoding(omitEncoding) | Format | Define se o formatador deve omitir a codificação na declaração XML, como o
campo de codificação em <?xml version="1.0" encoding="UTF-8"?> . |
Namespace
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
getPrefix() | String | Recebe o prefixo do namespace. |
getURI() | String | Recebe o URI do namespace. |
ProcessingInstruction
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
detach() | Content | Separa o nó do nó pai Element . |
getData() | String | Recebe os dados brutos para cada instrução no nó ProcessingInstruction . |
getParentElement() | Element | Recebe o nó Element pai do nó. |
getTarget() | String | Recebe o destino do nó ProcessingInstruction . |
getValue() | String | Extrai o valor de texto de todos os nós que são filhos diretos ou indiretos do nó, na ordem como eles aparecem no documento. |
Text
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
append(text) | Text | Anexa o texto fornecido a qualquer conteúdo que já exista no nó. |
detach() | Content | Separa o nó do nó pai Element . |
getParentElement() | Element | Recebe o nó Element pai do nó. |
getText() | String | Recebe o valor de texto do nó Text . |
getValue() | String | Extrai o valor de texto de todos os nós que são filhos diretos ou indiretos do nó, na ordem como eles aparecem no documento. |
setText(text) | Text | Define o valor de texto do nó Text . |
XmlService
Propriedades
Propriedade | Tipo | Descrição |
---|---|---|
ContentTypes | ContentType | Uma enumeração que representa os tipos de nós de conteúdo XML. |
Métodos
Método | Tipo de retorno | Breve descrição |
---|---|---|
createCdata(text) | Cdata | Cria um nó CDATASection não anexado com o valor fornecido. |
createComment(text) | Comment | Cria um nó Comment não anexado com o valor fornecido. |
createDocType(elementName) | DocType | Cria um nó DocumentType não anexado para o nó raiz Element
com o nome fornecido. |
createDocType(elementName, systemId) | DocType | Cria um nó DocumentType não anexado para o nó raiz Element
com o nome e o ID do sistema fornecidos para os dados do subconjunto externo. |
createDocType(elementName, publicId, systemId) | DocType | Cria um nó DocumentType não anexado para o nó raiz Element
com o nome e o ID públicos e de sistema fornecidos para os dados do subconjunto externo. |
createDocument() | Document | Cria um documento XML vazio. |
createDocument(rootElement) | Document | Cria um documento XML com o nó raiz Element especificado. |
createElement(name) | Element | Cria um nó Element não anexado com o nome local fornecido e sem namespace. |
createElement(name, namespace) | Element | Cria um nó Element não anexado com o nome local e o namespace fornecidos. |
createText(text) | Text | Cria um nó Text não anexado com o valor fornecido. |
getCompactFormat() | Format | Cria um objeto Format para gerar um documento XML compacto. |
getNamespace(uri) | Namespace | Cria um Namespace com o URI fornecido. |
getNamespace(prefix, uri) | Namespace | Cria um Namespace com o prefixo e o URI fornecidos. |
getNoNamespace() | Namespace | Cria um Namespace que representa a ausência de um namespace real. |
getPrettyFormat() | Format | Cria um objeto Format para saída de um documento XML legível. |
getRawFormat() | Format | Cria um objeto Format para saída de um documento XML bruto. |
getXmlNamespace() | Namespace | Cria um Namespace com o prefixo xml padrão. |
parse(xml) | Document | Cria um Document do XML fornecido, sem validar o XML. |