Esse serviço permite que scripts analisem, naveguem e criem documentos XML de maneira programática.
// Log the title and labels for the first page of blog posts on the // Google Workspace Developer blog. function parseXml() { const url = 'https://gsuite-developers.googleblog.com/atom.xml'; const xml = UrlFetchApp.fetch(url).getContentText(); const document = XmlService.parse(xml); const root = document.getRootElement(); const atom = XmlService.getNamespace('http://www.w3.org/2005/Atom'); const entries = root.getChildren('entry', atom); for (let i = 0; i < entries.length; i++) { const title = entries[i].getChild('title', atom).getText(); const categoryElements = entries[i].getChildren('category', atom); const labels = []; for (let 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() { const root = XmlService.createElement('threads'); const threads = GmailApp.getInboxThreads(); for (let i = 0; i < threads.length; i++) { const child = XmlService.createElement('thread') .setAttribute('messageCount', threads[i].getMessageCount()) .setAttribute('isUnread', threads[i].isUnread()) .setText(threads[i].getFirstMessageSubject()); root.addContent(child); } const document = XmlService.createDocument(root); const xml = XmlService.getPrettyFormat().format(document); Logger.log(xml); }
Propriedades
| Propriedade | Tipo | Descrição |
|---|---|---|
Content | Content | Uma enumeração que representa os tipos de nós de conteúdo XML. |
Métodos
| Método | Tipo de retorno | Breve descrição |
|---|---|---|
create | Cdata | Cria um nó CDATASection independente com o valor especificado. |
create | Comment | Cria um nó Comment independente com o valor especificado. |
create | Doc | Cria um nó Document não anexado para o nó raiz Element com o nome especificado. |
create | Doc | Cria um nó Document independente para o nó raiz Element com o nome e o ID do sistema especificados para os dados do subconjunto externo. |
create | Doc | Cria um nó Document independente para o nó Element raiz com o nome, o ID público e o ID do sistema especificados para os dados do subconjunto externo. |
create | Document | Cria um documento XML vazio. |
create | Document | Cria um documento XML com o nó raiz Element especificado. |
create | Element | Cria um nó Element independente com o nome local especificado e sem namespace. |
create | Element | Cria um nó Element independente com o nome local e o namespace especificados. |
create | Text | Cria um nó Text independente com o valor especificado. |
get | Format | Cria um objeto Format para gerar um documento XML compacto. |
get | Namespace | Cria um Namespace com o URI especificado. |
get | Namespace | Cria um Namespace com o prefixo e o URI especificados. |
get | Namespace | Cria um Namespace que representa a ausência de um namespace real. |
get | Format | Cria um objeto Format para gerar um documento XML legível. |
get | Format | Cria um objeto Format para gerar um documento XML bruto. |
get | Namespace | Cria um Namespace com o prefixo xml padrão. |
parse(xml) | Document | Cria um Document do XML fornecido, sem validar o XML. |
Documentação detalhada
createCdata(text)
Cria um nó CDATASection independente com o valor especificado.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
text | String | O valor que será definido. |
Retornar
Cdata: o nó CDATASection recém-criado.
createComment(text)
createDocType(elementName)
Cria um nó DocumentType não anexado para o nó raiz Element com o nome especificado.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
element | String | O nome do nó raiz Element a ser especificado na declaração Doc. |
Retornar
DocType: o nó DocumentType recém-criado.
createDocType(elementName, systemId)
Cria um nó DocumentType independente para o nó raiz Element com o nome e o ID do sistema especificados para os dados do subconjunto externo.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
element | String | O nome do nó raiz Element a ser especificado na declaração Doc. |
system | String | O ID do sistema dos dados do subconjunto externo a serem definidos. |
Retornar
DocType: o nó DocumentType recém-criado.
createDocType(elementName, publicId, systemId)
Cria um nó DocumentType independente para o nó Element raiz com o nome, o ID público e o ID do sistema especificados para os dados do subconjunto externo.
Parâmetros
| Nome | Tipo | Descrição |
|---|---|---|
element | String | O nome do nó raiz Element a ser especificado na declaração Doc. |
public | String | O ID público dos dados do subconjunto externo a serem definidos. |
system | String | O ID do sistema dos dados do subconjunto externo a serem definidos. |
Retornar
DocType: o nó DocumentType recém-criado.
createDocument()
createDocument(rootElement)
createElement(name)
createElement(name, namespace)
createText(text)
getCompactFormat()
Cria um objeto Format para gerar um documento XML compacto. O formatador usa a codificação UTF-8 por padrão, sem recuo e sem quebras de linha adicionais, mas inclui a declaração XML e a codificação dela.
// Log an XML document in compact form. const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; const document = XmlService.parse(xml); const output = XmlService.getCompactFormat().format(document); Logger.log(output);
Retornar
Format: o formatador recém-criado.
getNamespace(uri)
getNamespace(prefix, uri)
getNoNamespace()
getPrettyFormat()
Cria um objeto Format para gerar um documento XML legível. O formatador usa por padrão a codificação UTF-8, o recuo de dois espaços, os separadores de linha \r\n após cada nó e inclui a declaração XML e a codificação dela.
// Log an XML document in human-readable form. const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; const document = XmlService.parse(xml); const output = XmlService.getPrettyFormat().format(document); Logger.log(output);
Retornar
Format: o formatador recém-criado.
getRawFormat()
Cria um objeto Format para gerar um documento XML bruto. O formatador usa a codificação
UTF-8 por padrão, sem recuo e sem quebras de linha além das fornecidas no próprio documento
XML, e inclui a declaração XML e a codificação dela.
// Log an XML document in raw form. const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; const document = XmlService.parse(xml); const output = XmlService.getRawFormat().format(document); Logger.log(output);
Retornar
Format: o formatador recém-criado.