Esse serviço permite que os scripts analisem, naveguem e criem documentos XML de forma programática.
// Log the title and labels for the first page of blog posts on the // Google Workspace Developer blog. function parseXml() { var url = 'https://gsuite-developers.googleblog.com/atom.xml'; var xml = UrlFetchApp.fetch(url).getContentText(); var document = XmlService.parse(xml); var root = document.getRootElement(); var atom = XmlService.getNamespace('http://www.w3.org/2005/Atom'); var entries = root.getChildren('entry', atom); for (var i = 0; i < entries.length; i++) { var title = entries[i].getChild('title', atom).getText(); var categoryElements = entries[i].getChildren('category', atom); var labels = []; for (var 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() { var root = XmlService.createElement('threads'); var threads = GmailApp.getInboxThreads(); for (var i = 0; i < threads.length; i++) { var child = XmlService.createElement('thread') .setAttribute('messageCount', threads[i].getMessageCount()) .setAttribute('isUnread', threads[i].isUnread()) .setText(threads[i].getFirstMessageSubject()); root.addContent(child); } var document = XmlService.createDocument(root); var xml = XmlService.getPrettyFormat().format(document); Logger.log(xml); }
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. |
Documentação detalhada
createCdata(text)
Cria um nó CDATASection
não anexado com o valor fornecido.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
text | String | o valor a 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 fornecido.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
elementName | String | o nome do nó raiz Element a ser especificado no DocType
declaração |
Retornar
DocType
: o nó DocumentType
recém-criado
createDocType(elementName, systemId)
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.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
elementName | String | o nome do nó raiz Element a ser especificado no DocType
declaração |
systemId | String | o ID do sistema dos dados do subconjunto externo a ser definido |
Retornar
DocType
: o nó DocumentType
recém-criado
createDocType(elementName, publicId, systemId)
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.
Parâmetros
Nome | Tipo | Descrição |
---|---|---|
elementName | String | o nome do nó raiz Element a ser especificado no DocType
declaração |
publicId | String | o ID público dos dados do subconjunto externo a serem definidos |
systemId | String | o ID do sistema dos dados do subconjunto externo a ser definido |
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
o padrão é a codificação UTF-8
, sem recuo e quebras de linha adicionais, mas inclui
a declaração XML e sua codificação.
// Log an XML document in compact form. var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; var document = XmlService.parse(xml); var 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 saída de um documento XML legível. O formatador
o padrão é 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 sua codificação.
// Log an XML document in human-readable form. var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; var document = XmlService.parse(xml); var output = XmlService.getPrettyFormat() .format(document); Logger.log(output);
Retornar
Format
: o formatador recém-criado
getRawFormat()
Cria um objeto Format
para saída de um documento XML bruto. O padrão do formatador é
Codificação UTF-8
, sem recuo e quebras de linha além das fornecidas no XML
próprio documento e inclui a declaração XML e sua codificação.
// Log an XML document in raw form. var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; var document = XmlService.parse(xml); var output = XmlService.getRawFormat() .format(document); Logger.log(output);
Retornar
Format
: o formatador recém-criado