XML Service

Layanan XML

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

// 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 umum.
ContentTypeEnumerasi yang mewakili jenis node konten XML.
DocTypeRepresentasi node DocumentType XML.
DocumentRepresentasi dokumen XML.
ElementRepresentasi node Element XML.
EntityRefRepresentasi node EntityReference XML.
FormatPemformat untuk menghasilkan dokumen XML, dengan tiga format yang telah ditentukan dan bisa lebih disesuaikan.
NamespaceRepresentasi namespace XML.
ProcessingInstructionRepresentasi node ProcessingInstruction XML.
TextRepresentasi node Text XML.
XmlServiceLayanan ini memungkinkan skrip untuk 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()ContentMelepaskan node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getText()StringMendapatkan nilai teks dari node Text.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan yang muncul dalam dokumen.
setText(text)TextMenetapkan nilai teks node Text.

Comment

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
detach()ContentMelepaskan node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getText()StringMendapatkan nilai teks dari node Comment.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan yang muncul 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()ContentMelepaskan 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 yang muncul 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()ContentMelepaskan node dari node Element induknya.
getElementName()StringMendapatkan nama node root Element yang ditentukan dalam deklarasi DocType.
getInternalSubset()StringMendapatkan data subset internal untuk node DocumentType.
getParentElement()ElementMendapatkan node Element induk node.
getPublicId()StringMendapatkan ID publik dari 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 yang muncul dalam dokumen.
setElementName(name)DocTypeMenyetel nama node root Element untuk ditentukan dalam DocType deklarasi.
setInternalSubset(data)DocTypeMenetapkan data subset internal untuk node DocumentType.
setPublicId(id)DocTypeMenetapkan ID publik data subkumpulan 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 diberikan ke akhir dokumen.
addContent(index, content)DocumentMenyisipkan node yang diberikan pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dari node tersebut dokumen.
cloneContent()Content[]Membuat salinan tidak terlampir dari semua node yang merupakan turunan langsung dari dokumen.
detachRootElement()ElementMelepaskan 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 node 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 urutannya 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 ditentukan, jika node adalah turunan langsung dari dokumen.
removeContent(index)ContentMenghapus node pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dari node 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 ditentukan 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 tersebut Node Element.
cloneContent()Content[]Membuat salinan yang tidak dilampirkan dari semua node yang merupakan turunan langsung dari node {@code Element}.
detach()ContentMelepaskan 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 tertentu 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, sesuai urutan kemunculannya dalam dokumen.
getChild(name)ElementMendapatkan node Element pertama dengan nama yang diberikan dan tanpa namespace yang langsung turunan dari node Element ini.
getChild(name, namespace)ElementMendapatkan node Element pertama dengan nama dan namespace tertentu yang langsung turunan 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 tersebut adalah node turunan dari node Element.
getChildren()Element[]Mendapatkan semua node Element yang merupakan turunan langsung dari node Element ini, di sesuai urutan kemunculannya dalam dokumen.
getChildren(name)Element[]Mendapatkan semua node Element dengan nama tertentu dan tanpa namespace yang merupakan turunan langsung dari node Element ini, sesuai urutan kemunculannya dalam dokumen.
getChildren(name, namespace)Element[]Mendapatkan semua node Element dengan nama dan namespace tertentu yang merupakan turunan langsung dari node Element ini, sesuai urutan kemunculannya 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 urutannya 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 dari node Element, dalam bentuk [namespacePrefix]:[localName].
getText()StringMendapatkan nilai teks dari node Element.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan yang muncul 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 yang memiliki nama tertentu dan tanpa namespace, jika atribut semacam itu ada.
removeAttribute(attributeName, namespace)BooleanMenghapus atribut untuk node Element ini yang berisi nama dan namespace yang diberikan, jika demikian terdapat sebuah atribut.
removeContent()Content[]Menghapus semua node yang merupakan turunan langsung dari node {@code Element}.
removeContent(content)BooleanMenghapus node yang diberikan, jika node adalah 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()ContentMelepaskan 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 yang muncul 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 yang diformat.
format(element)StringMenghasilkan node Element yang diberikan sebagai string yang diformat.
setEncoding(encoding)FormatMenetapkan encoding karakter yang harus digunakan pemformat.
setIndent(indent)FormatMenetapkan string yang digunakan untuk mengindentasi node turunan secara relatif terhadap induknya.
setLineSeparator(separator)FormatMenetapkan string yang akan disisipkan setiap kali pemformat biasanya menyisipkan pemisah baris.
setOmitDeclaration(omitDeclaration)FormatMenetapkan apakah pemformat harus menghilangkan deklarasi XML, seperti <?xml version="1.0" encoding="UTF-8"?>.
setOmitEncoding(omitEncoding)FormatMenetapkan apakah pemformat harus menghilangkan 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()ContentMelepaskan 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 yang muncul 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()ContentMelepaskan node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getText()StringMendapatkan nilai teks dari node Text.
getValue()StringMendapatkan nilai teks dari semua node yang merupakan turunan langsung atau tidak langsung dari node, dalam urutan yang muncul 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 dilampirkan dengan nilai yang diberikan.
createComment(text)CommentMembuat node Comment yang tidak dilampirkan dengan nilai yang diberikan.
createDocType(elementName)DocTypeMembuat node DocumentType yang tidak dilampirkan untuk node root Element dengan nama yang diberikan.
createDocType(elementName, systemId)DocTypeMembuat node DocumentType yang tidak dilampirkan untuk node root Element dengan nama yang diberikan, dan ID sistem yang diberikan untuk data subset eksternal.
createDocType(elementName, publicId, systemId)DocTypeMembuat node DocumentType yang tidak dilampirkan untuk node root Element 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 tertentu.
createElement(name)ElementMembuat node Element yang tidak dilampirkan dengan nama lokal yang ditentukan dan tanpa namespace.
createElement(name, namespace)ElementMembuat node Element yang tidak dilampirkan dengan nama lokal dan namespace yang ditentukan.
createText(text)TextMembuat node Text yang tidak dilampirkan dengan nilai yang diberikan.
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 yang sebenarnya.
getPrettyFormat()FormatMembuat objek Format untuk menghasilkan 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 tertentu, tanpa memvalidasi XML.