XML Service

Layanan XML

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

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

Class

NamaDeskripsi singkat
AttributeRepresentasi atribut XML.
CdataRepresentasi node CDATASection XML.
CommentRepresentasi node Comment XML.
ContentRepresentasi node XML generik.
ContentTypeEnumerasi yang mewakili jenis node konten XML.
DocTypeRepresentasi node DocumentType XML.
DocumentRepresentasi dokumen XML.
ElementRepresentasi node Element XML.
EntityRefRepresentasi node EntityReference XML.
FormatFormator untuk menghasilkan dokumen XML, dengan tiga format standar yang dapat disesuaikan lebih lanjut.
NamespaceRepresentasi namespace XML.
ProcessingInstructionRepresentasi node ProcessingInstruction XML.
TextRepresentasi node Text XML.
XmlServiceLayanan ini memungkinkan skrip mengurai, menavigasi, dan membuat dokumen XML secara terprogram.

Attribute

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
getName()StringMendapatkan nama lokal atribut.
getNamespace()NamespaceMendapatkan namespace untuk atribut.
getValue()StringMendapatkan nilai atribut.
setName(name)AttributeMenetapkan nama lokal atribut.
setNamespace(namespace)AttributeMenetapkan namespace untuk atribut.
setValue(value)AttributeMenetapkan nilai atribut.

Cdata

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
append(text)TextMenambahkan teks yang diberikan ke konten apa pun yang sudah ada di node.
detach()ContentMelepas node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getText()StringMendapatkan nilai teks node Text.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan munculnya dalam dokumen.
setText(text)TextMenetapkan nilai teks node Text.

Comment

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
detach()ContentMelepas node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getText()StringMendapatkan nilai teks node Comment.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan munculnya dalam dokumen.
setText(text)CommentMenetapkan nilai teks node Comment.

Content

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
asCdata()CdataMentransmisikan node sebagai node CDATASection untuk tujuan pelengkapan otomatis.
asComment()CommentMentransmisikan node sebagai node Comment untuk tujuan pelengkapan otomatis.
asDocType()DocTypeMentransmisikan node sebagai node DocumentType untuk tujuan pelengkapan otomatis.
asElement()ElementMentransmisikan node sebagai node Element untuk tujuan pelengkapan otomatis.
asEntityRef()EntityRefMentransmisikan node sebagai node EntityReference untuk tujuan pelengkapan otomatis.
asProcessingInstruction()ProcessingInstructionMentransmisikan node sebagai node ProcessingInstruction untuk tujuan pelengkapan otomatis.
asText()TextMentransmisikan node sebagai node Text untuk tujuan pelengkapan otomatis.
detach()ContentMelepas node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getType()ContentTypeMendapatkan jenis konten node.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan munculnya dalam dokumen.

ContentType

Properti

PropertiJenisDeskripsi
CDATAEnumNode CDATASection XML.
COMMENTEnumNode Comment XML.
DOCTYPEEnumNode DocumentType XML.
ELEMENTEnumNode Element XML.
ENTITYREFEnumNode EntityReference XML.
PROCESSINGINSTRUCTIONEnumNode ProcessingInstruction XML.
TEXTEnumNode Text XML.

DocType

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
detach()ContentMelepas node dari node Element induknya.
getElementName()StringMendapatkan nama node Element root yang ditentukan dalam deklarasi DocType.
getInternalSubset()StringMendapatkan data subset internal untuk node DocumentType.
getParentElement()ElementMendapatkan node Element induk node.
getPublicId()StringMendapatkan ID publik data subset eksternal untuk node DocumentType.
getSystemId()StringMendapatkan ID sistem data subset eksternal untuk node DocumentType.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan munculnya dalam dokumen.
setElementName(name)DocTypeMenetapkan nama node Element root yang akan ditentukan dalam deklarasi DocType.
setInternalSubset(data)DocTypeMenetapkan data subset internal untuk node DocumentType.
setPublicId(id)DocTypeMenetapkan ID publik data subset eksternal untuk node DocumentType.
setSystemId(id)DocTypeMenetapkan ID sistem data subset eksternal untuk node DocumentType.

Document

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
addContent(content)DocumentMenambahkan node yang ditentukan ke akhir dokumen.
addContent(index, content)DocumentMenyisipkan node yang diberikan pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dari dokumen.
cloneContent()Content[]Membuat salinan yang tidak terlampir dari semua node yang merupakan turunan langsung dari dokumen.
detachRootElement()ElementMelepas dan menampilkan node Element root dokumen.
getAllContent()Content[]Mendapatkan semua node yang merupakan turunan langsung dari dokumen.
getContent(index)ContentMendapatkan node pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dari dokumen.
getContentSize()IntegerMendapatkan jumlah node yang merupakan turunan langsung dari dokumen.
getDescendants()Content[]Mendapatkan semua node yang merupakan turunan langsung atau tidak langsung dari dokumen, dalam urutan yang muncul dalam dokumen.
getDocType()DocTypeMendapatkan deklarasi DocType dokumen.
getRootElement()ElementMendapatkan node Element root dokumen.
hasRootElement()BooleanMenentukan apakah dokumen memiliki node Element root.
removeContent()Content[]Menghapus semua node yang merupakan turunan langsung dari dokumen.
removeContent(content)BooleanMenghapus node yang diberikan, jika node tersebut merupakan turunan langsung dari dokumen.
removeContent(index)ContentMenghapus node pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dari dokumen.
setDocType(docType)DocumentMenetapkan deklarasi DocType dokumen.
setRootElement(element)DocumentMenetapkan node Element root dokumen.

Element

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
addContent(content)ElementMenambahkan node yang diberikan sebagai turunan terakhir dari node Element.
addContent(index, content)ElementMenyisipkan node yang diberikan pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dari node Element.
cloneContent()Content[]Membuat salinan yang tidak terpasang dari semua node yang merupakan turunan langsung dari node {@code Element}.
detach()ContentMelepas node dari node Element induknya.
getAllContent()Content[]Mendapatkan semua node yang merupakan turunan langsung dari node {@code Element}.
getAttribute(name)AttributeMendapatkan atribut untuk node Element ini dengan nama yang diberikan dan tanpa namespace.
getAttribute(name, namespace)AttributeMendapatkan atribut untuk node Element ini dengan nama dan namespace yang diberikan.
getAttributes()Attribute[]Mendapatkan semua atribut untuk node Element ini, dalam urutan yang muncul dalam dokumen.
getChild(name)ElementMendapatkan node Element pertama dengan nama yang diberikan dan tanpa namespace yang merupakan turunan langsung dari node Element ini.
getChild(name, namespace)ElementMendapatkan node Element pertama dengan nama dan namespace yang diberikan yang merupakan turunan langsung dari node Element ini.
getChildText(name)StringMendapatkan nilai teks node dengan nama yang diberikan dan tanpa namespace, jika node adalah turunan langsung dari node Element.
getChildText(name, namespace)StringMendapatkan nilai teks node dengan nama dan namespace yang diberikan, jika node adalah turunan langsung node Element.
getChildren()Element[]Mendapatkan semua node Element yang merupakan turunan langsung dari node Element ini, dalam urutan yang muncul dalam dokumen.
getChildren(name)Element[]Mendapatkan semua node Element dengan nama yang diberikan dan tidak ada namespace yang merupakan turunan langsung node Element ini, dalam urutan yang muncul dalam dokumen.
getChildren(name, namespace)Element[]Mendapatkan semua node Element dengan nama dan namespace yang diberikan yang merupakan turunan langsung dari node Element ini, dalam urutan yang muncul dalam dokumen.
getContent(index)ContentMendapatkan node pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dari node {@code Element}.
getContentSize()IntegerMendapatkan jumlah node yang merupakan turunan langsung dari node {@code Element}.
getDescendants()Content[]Mendapatkan semua node yang merupakan turunan langsung atau tidak langsung dari node {@code Element}, dalam urutan yang muncul dalam dokumen.
getDocument()DocumentMendapatkan dokumen XML yang berisi node {@code Element}.
getName()StringMendapatkan nama lokal node Element.
getNamespace()NamespaceMendapatkan namespace untuk node Element.
getNamespace(prefix)NamespaceMendapatkan namespace dengan awalan yang diberikan untuk node Element.
getParentElement()ElementMendapatkan node Element induk node.
getQualifiedName()StringMendapatkan nama lokal dan awalan namespace node Element, dalam bentuk [namespacePrefix]:[localName].
getText()StringMendapatkan nilai teks node Element.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan munculnya dalam dokumen.
isAncestorOf(other)BooleanMenentukan apakah node Element ini adalah induk langsung atau tidak langsung dari node Element tertentu.
isRootElement()BooleanMenentukan apakah node Element adalah node root dokumen.
removeAttribute(attribute)BooleanMenghapus atribut yang diberikan untuk node Element ini, jika atribut tersebut ada.
removeAttribute(attributeName)BooleanMenghapus atribut untuk node Element ini dengan nama yang diberikan dan tanpa namespace, jika atribut tersebut ada.
removeAttribute(attributeName, namespace)BooleanMenghapus atribut untuk node Element ini dengan nama dan namespace yang diberikan, jika atribut tersebut ada.
removeContent()Content[]Menghapus semua node yang merupakan turunan langsung dari node {@code Element}.
removeContent(content)BooleanMenghapus node yang diberikan, jika node tersebut merupakan turunan langsung dari node {@code Element}.
removeContent(index)ContentMenghapus node pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dari node {@code Element}.
setAttribute(attribute)ElementMenetapkan atribut yang diberikan untuk node Element ini.
setAttribute(name, value)ElementMenetapkan atribut untuk node Element ini dengan nama, nilai, dan tanpa namespace yang diberikan.
setAttribute(name, value, namespace)ElementMenetapkan atribut untuk node Element ini dengan nama, nilai, dan namespace yang diberikan.
setName(name)ElementMenetapkan nama lokal node Element.
setNamespace(namespace)ElementMenetapkan namespace untuk node Element.
setText(text)ElementMenetapkan nilai teks node Element.

EntityRef

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
detach()ContentMelepas node dari node Element induknya.
getName()StringMendapatkan nama node EntityReference.
getParentElement()ElementMendapatkan node Element induk node.
getPublicId()StringMendapatkan ID publik node EntityReference.
getSystemId()StringMendapatkan ID sistem node EntityReference.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan munculnya dalam dokumen.
setName(name)EntityRefMenetapkan nama node EntityReference.
setPublicId(id)EntityRefMenetapkan ID publik node EntityReference.
setSystemId(id)EntityRefMenetapkan ID sistem node EntityReference.

Format

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
format(document)StringMenghasilkan Document yang diberikan sebagai string berformat.
format(element)StringMenghasilkan node Element yang diberikan sebagai string berformat.
setEncoding(encoding)FormatMenetapkan encoding karakter yang harus digunakan oleh pemformat.
setIndent(indent)FormatMenetapkan string yang digunakan untuk membuat indentasi node turunan relatif terhadap induknya.
setLineSeparator(separator)FormatMenetapkan string yang akan disisipkan setiap kali pemformat biasanya menyisipkan baris baru.
setOmitDeclaration(omitDeclaration)FormatMenetapkan apakah pemformat harus menghapus deklarasi XML, seperti <?xml version="1.0" encoding="UTF-8"?>.
setOmitEncoding(omitEncoding)FormatMenetapkan apakah pemformat harus menghapus encoding dalam deklarasi XML, seperti kolom encoding di <?xml version="1.0" encoding="UTF-8"?>.

Namespace

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
getPrefix()StringMendapatkan awalan untuk namespace.
getURI()StringMendapatkan URI untuk namespace.

ProcessingInstruction

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
detach()ContentMelepas node dari node Element induknya.
getData()StringMendapatkan data mentah untuk setiap petunjuk di node ProcessingInstruction.
getParentElement()ElementMendapatkan node Element induk node.
getTarget()StringMendapatkan target untuk node ProcessingInstruction.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan munculnya dalam dokumen.

Text

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
append(text)TextMenambahkan teks yang diberikan ke konten apa pun yang sudah ada di node.
detach()ContentMelepas node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getText()StringMendapatkan nilai teks node Text.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan munculnya dalam dokumen.
setText(text)TextMenetapkan nilai teks node Text.

XmlService

Properti

PropertiJenisDeskripsi
ContentTypesContentTypeEnumerasi yang mewakili jenis node konten XML.

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
createCdata(text)CdataMembuat node CDATASection yang tidak terpasang dengan nilai yang diberikan.
createComment(text)CommentMembuat node Comment yang tidak terpasang dengan nilai yang diberikan.
createDocType(elementName)DocTypeMembuat node DocumentType yang tidak terpasang 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 Element root yang diberikan.
createElement(name)ElementMembuat node Element yang tidak terpasang dengan nama lokal yang diberikan dan tanpa namespace.
createElement(name, namespace)ElementMembuat node Element yang tidak terpasang dengan nama dan namespace lokal yang diberikan.
createText(text)TextMembuat node Text yang tidak terpasang dengan nilai yang diberikan.
getCompactFormat()FormatMembuat objek Format untuk menghasilkan dokumen XML yang ringkas.
getNamespace(uri)NamespaceMembuat Namespace dengan URI yang ditentukan.
getNamespace(prefix, uri)NamespaceMembuat Namespace dengan awalan dan URI yang ditentukan.
getNoNamespace()NamespaceMembuat Namespace yang mewakili tidak adanya namespace yang sebenarnya.
getPrettyFormat()FormatMembuat objek Format untuk menghasilkan dokumen XML yang dapat dibaca manusia.
getRawFormat()FormatMembuat objek Format untuk menghasilkan dokumen XML mentah.
getXmlNamespace()NamespaceMembuat Namespace dengan awalan xml standar.
parse(xml)DocumentMembuat Document dari XML yang diberikan, tanpa memvalidasi XML.