Class XmlService

XmlService

Layanan ini memungkinkan skrip untuk mengurai, membuka, dan membuat dokumen XML secara terprogram.

// 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);
}

Properti

PropertiJenisDeskripsi
ContentTypesContentTypeEnumerasi yang menyatakan jenis node konten XML.

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
createCdata(text)CdataMembuat node CDATASection yang tidak terkait dengan nilai tertentu.
createComment(text)CommentMembuat node Comment yang tidak terkait dengan nilai tertentu.
createDocType(elementName)DocTypeMembuat node DocumentType yang tidak terkait untuk node Element root dengan nama yang diberikan.
createDocType(elementName, systemId)DocTypeMembuat node DocumentType yang tidak terpasang untuk node Element root dengan nama yang diberikan, dan ID sistem yang diberikan untuk data subset eksternal.
createDocType(elementName, publicId, systemId)DocTypeMembuat node DocumentType yang tidak terpasang untuk node Element root dengan nama yang diberikan, serta ID publik dan ID sistem yang diberikan untuk data subset eksternal.
createDocument()DocumentMembuat dokumen XML kosong.
createDocument(rootElement)DocumentMembuat dokumen XML dengan node root Element yang ditentukan.
createElement(name)ElementMembuat node Element yang tidak terkait dengan nama lokal tertentu dan tanpa namespace.
createElement(name, namespace)ElementMembuat node Element yang tidak terkait dengan namespace dan nama lokal yang ditentukan.
createText(text)TextMembuat node Text yang tidak terkait dengan nilai tertentu.
getCompactFormat()FormatMembuat objek Format untuk menghasilkan output dokumen XML yang ringkas.
getNamespace(uri)NamespaceMembuat Namespace dengan URI yang diberikan.
getNamespace(prefix, uri)NamespaceMembuat Namespace dengan awalan dan URI yang diberikan.
getNoNamespace()NamespaceMembuat Namespace yang menunjukkan tidak adanya namespace sebenarnya.
getPrettyFormat()FormatMembuat objek Format untuk menghasilkan output dokumen XML yang dapat dibaca manusia.
getRawFormat()FormatMembuat objek Format untuk menghasilkan output dokumen XML mentah.
getXmlNamespace()NamespaceMembuat Namespace dengan awalan xml standar.
parse(xml)DocumentMembuat Document dari XML yang diberikan, tanpa memvalidasi XML.

Dokumentasi mendetail

createCdata(text)

Membuat node CDATASection yang tidak terkait dengan nilai tertentu.

Parameter

NamaJenisDeskripsi
textStringnilai yang akan ditetapkan

Return

Cdata — node CDATASection yang baru dibuat


createComment(text)

Membuat node Comment yang tidak terkait dengan nilai tertentu.

Parameter

NamaJenisDeskripsi
textStringnilai yang akan ditetapkan

Return

Comment — node Comment yang baru dibuat


createDocType(elementName)

Membuat node DocumentType yang tidak terkait untuk node Element root dengan nama yang diberikan.

Parameter

NamaJenisDeskripsi
elementNameStringnama node Element root untuk ditentukan dalam deklarasi DocType

Return

DocType — node DocumentType yang baru dibuat


createDocType(elementName, systemId)

Membuat node DocumentType yang tidak terpasang untuk node Element root dengan nama yang diberikan, dan ID sistem yang diberikan untuk data subset eksternal.

Parameter

NamaJenisDeskripsi
elementNameStringnama node Element root untuk ditentukan dalam deklarasi DocType
systemIdStringID sistem dari data {i>subset<i} eksternal untuk diatur

Return

DocType — node DocumentType yang baru dibuat


createDocType(elementName, publicId, systemId)

Membuat node DocumentType yang tidak terpasang untuk node Element root dengan nama yang diberikan, serta ID publik dan ID sistem yang diberikan untuk data subset eksternal.

Parameter

NamaJenisDeskripsi
elementNameStringnama node Element root untuk ditentukan dalam deklarasi DocType
publicIdStringID publik dari {i>subset data <i} eksternal yang akan diatur
systemIdStringID sistem dari data {i>subset<i} eksternal untuk diatur

Return

DocType — node DocumentType yang baru dibuat


createDocument()

Membuat dokumen XML kosong.

Return

Document — dokumen yang baru dibuat


createDocument(rootElement)

Membuat dokumen XML dengan node root Element yang ditentukan.

Parameter

NamaJenisDeskripsi
rootElementElementnode Element root yang akan disetel

Return

Document — dokumen yang baru dibuat


createElement(name)

Membuat node Element yang tidak terkait dengan nama lokal tertentu dan tanpa namespace.

Parameter

NamaJenisDeskripsi
nameStringnama lokal untuk mengatur

Return

Element — node Element yang baru dibuat


createElement(name, namespace)

Membuat node Element yang tidak terkait dengan namespace dan nama lokal yang ditentukan.

Parameter

NamaJenisDeskripsi
nameStringnama lokal untuk mengatur
namespaceNamespacenamespace untuk diatur

Return

Element — node Element yang baru dibuat


createText(text)

Membuat node Text yang tidak terkait dengan nilai tertentu.

Parameter

NamaJenisDeskripsi
textStringnilai yang akan ditetapkan

Return

Text — node Text yang baru dibuat


getCompactFormat()

Membuat objek Format untuk menghasilkan output dokumen XML yang ringkas. Pemformat ditetapkan secara default ke encoding UTF-8, tanpa indentasi, dan tanpa jeda baris tambahan, tetapi menyertakan deklarasi XML dan encoding-nya.

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

Return

Format — pemformat yang baru dibuat


getNamespace(uri)

Membuat Namespace dengan URI yang diberikan.

Parameter

NamaJenisDeskripsi
uriStringURI untuk namespace

Return

Namespace — namespace yang baru dibuat


getNamespace(prefix, uri)

Membuat Namespace dengan awalan dan URI yang diberikan.

Parameter

NamaJenisDeskripsi
prefixStringawalan untuk namespace
uriStringURI untuk namespace

Return

Namespace — namespace yang baru dibuat


getNoNamespace()

Membuat Namespace yang menunjukkan tidak adanya namespace sebenarnya.

Return

Namespace — namespace yang baru dibuat


getPrettyFormat()

Membuat objek Format untuk menghasilkan output dokumen XML yang dapat dibaca manusia. Pemformat ditetapkan secara default ke encoding UTF-8, indentasi dua spasi, pemisah baris \r\n setelah setiap node, dan menyertakan deklarasi XML dan encoding-nya.

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

Return

Format — pemformat yang baru dibuat


getRawFormat()

Membuat objek Format untuk menghasilkan output dokumen XML mentah. Pemformat ditetapkan secara default ke encoding UTF-8, tanpa indentasi dan tidak ada jeda baris selain yang disediakan dalam dokumen XML itu sendiri, dan menyertakan deklarasi XML dan encoding-nya.

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

Return

Format — pemformat yang baru dibuat


getXmlNamespace()

Membuat Namespace dengan awalan xml standar.

Return

Namespace — namespace yang baru dibuat


parse(xml)

Membuat Document dari XML yang diberikan, tanpa memvalidasi XML.

var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
var doc = XmlService.parse(xml);

Parameter

NamaJenisDeskripsi
xmlStringXML untuk diurai

Return

Document — dokumen yang baru dibuat