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 não anexado com o valor especificado. |
create | Comment | Cria um nó Comment não anexado com o valor especificado. |
create | Doc | Cria um nó Document não anexado para o nó Element raiz
com o nome fornecido. |
create | Doc | Cria um nó Document não anexado para o nó Element raiz
com o nome e o ID do sistema fornecido para os dados do subconjunto externo. |
create | Doc | Cria um nó Document não anexado para o nó Element raiz
com o nome fornecido, o ID público e o ID do sistema 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 não anexado com o nome local especificado e sem namespace. |
create | Element | Cria um nó Element não anexado com o nome local e o namespace fornecidos. |
create | Text | Cria um nó Text não anexado com o valor especificado. |
get | Format | Cria um objeto Format para gerar um documento XML compacto. |
get | Namespace | Cria um Namespace com o URI fornecido. |
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 por humanos. |
get | Format | Cria um objeto Format para gerar um documento XML bruto. |
get | Namespace | Cria um Namespace com o prefixo padrão xml . |
parse(xml) | Document | Cria um Document a partir do XML fornecido, sem validar o XML. |
Documentação detalhada
create Cdata(text)
Cria um nó CDATASection
não anexado com o valor especificado.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
text | String | o valor a ser definido |
Retornar
Cdata
: o nó CDATASection
recém-criado
create Comment(text)
create Doc Type(elementName)
Cria um nó Document
não anexado para o nó Element
raiz
com o nome fornecido.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
element | String | o nome do nó Element raiz a ser especificado na declaração
Doc |
Retornar
Doc
: o nó Document
recém-criado
create Doc Type(elementName, systemId)
Cria um nó Document
não anexado para o nó Element
raiz
com o nome e o ID do sistema fornecido para os dados do subconjunto externo.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
element | String | o nome do nó Element raiz a ser especificado na declaração
Doc |
system | String | o ID do sistema dos dados do subconjunto externo a serem definidos |
Retornar
Doc
: o nó Document
recém-criado
create Doc Type(elementName, publicId, systemId)
Cria um nó Document
não anexado para o nó Element
raiz
com o nome fornecido, o ID público e o ID do sistema para os dados do subconjunto externo.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
element | String | o nome do nó Element raiz 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
Doc
: o nó Document
recém-criado
create Document()
create Document(rootElement)
create Element(name)
create Element(name, namespace)
create Text(text)
get Compact Format()
Cria um objeto Format
para gerar um documento XML compacto. O formatador
usa a codificação UTF-8
como padrão, sem recuo e sem quebras de linha adicionais, mas inclui
a declaração XML e a codificação.
// 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
get Namespace(uri)
get Namespace(prefix, uri)
get No Namespace()
get Pretty Format()
Cria um objeto Format
para gerar um documento XML legível por humanos. O formatador
usa a codificação UTF-8
, recuo de dois espaços, separadores de linha \r\n
após
cada nó e inclui a declaração XML e a codificação.
// 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
get Raw Format()
Cria um objeto Format
para gerar um documento XML bruto. O formatador usa a codificação
UTF-8
como padrão, sem recuo e sem quebras de linha, exceto as fornecidas no próprio
documento XML, e inclui a declaração XML e a codificação.
// 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