XML Service

Layanan XML

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
// 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 menyatakan jenis node konten XML.
DocTypeRepresentasi node DocumentType XML.
DocumentRepresentasi dokumen XML.
ElementRepresentasi node Element XML.
EntityRefRepresentasi node EntityReference XML.
FormatPemformat untuk menghasilkan output dokumen XML, dengan tiga format yang telah ditentukan sebelumnya yang dapat disesuaikan lebih lanjut.
NamespaceRepresentasi namespace XML.
ProcessingInstructionRepresentasi node ProcessingInstruction XML.
TextRepresentasi node Text XML.
XmlServiceLayanan ini memungkinkan skrip untuk mengurai, membuka, 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()ContentLepaskan node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getText()StringMendapatkan nilai teks node Text.
getValue()StringMendapatkan nilai teks semua node yang merupakan turunan langsung atau tidak langsung dari node, sesuai urutan kemunculannya dalam dokumen.
setText(text)TextMenetapkan nilai teks node Text.

Comment

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
detach()ContentLepaskan node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getText()StringMendapatkan nilai teks node Comment.
getValue()StringMendapatkan nilai teks semua node yang merupakan turunan langsung atau tidak langsung dari node, sesuai urutan kemunculannya 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()ContentLepaskan node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getType()ContentTypeMendapatkan jenis konten node.
getValue()StringMendapatkan nilai teks semua node yang merupakan turunan langsung atau tidak langsung dari node, sesuai urutan kemunculannya 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()ContentLepaskan 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 dari data subset eksternal untuk node DocumentType.
getSystemId()StringMendapatkan ID sistem data subset eksternal untuk node DocumentType.
getValue()StringMendapatkan nilai teks semua node yang merupakan turunan langsung atau tidak langsung dari node, sesuai urutan kemunculannya dalam dokumen.
setElementName(name)DocTypeMenetapkan nama node Element root untuk ditentukan dalam deklarasi DocType.
setInternalSubset(data)DocTypeMenetapkan data subset internal untuk node DocumentType.
setPublicId(id)DocTypeMenetapkan ID publik dari 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 ditentukan pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dokumen.
cloneContent()Content[]Membuat salinan yang tidak dilampirkan dari semua node yang merupakan turunan langsung dokumen.
detachRootElement()ElementMelepaskan dan menampilkan node root Element dokumen.
getAllContent()Content[]Mendapatkan semua node yang merupakan turunan langsung dokumen.
getContent(index)ContentMendapatkan node pada indeks yang diberikan di antara semua node yang merupakan turunan langsung dokumen.
getContentSize()IntegerMendapatkan jumlah node yang merupakan turunan langsung dokumen.
getDescendants()Content[]Mendapatkan semua node yang merupakan turunan langsung atau tidak langsung dari dokumen, sesuai urutan kemunculannya dalam dokumen.
getDocType()DocTypeMendapatkan deklarasi DocType dokumen.
getRootElement()ElementMendapatkan node root Element dokumen.
hasRootElement()BooleanMenentukan apakah dokumen memiliki node Element root.
removeContent()Content[]Menghapus semua node yang merupakan turunan langsung dokumen.
removeContent(content)BooleanMenghapus node yang ditentukan, jika node merupakan turunan langsung dari dokumen.
removeContent(index)ContentMenghapus node pada indeks yang diberikan di antara semua node yang merupakan turunan langsung 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()ContentLepaskan 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, sesuai urutan kemunculannya 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 tersebut adalah turunan langsung dari node Element.
getChildText(name, namespace)StringMendapatkan nilai teks node dengan nama dan namespace yang diberikan, jika node tersebut adalah turunan langsung dari node Element.
getChildren()Element[]Mendapatkan semua node Element yang merupakan turunan langsung node Element ini, sesuai urutan kemunculannya dalam dokumen.
getChildren(name)Element[]Mendapatkan semua node Element dengan nama yang diberikan dan tanpa namespace yang merupakan turunan langsung 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 node Element ini, sesuai urutan kemunculannya dalam dokumen.
getContent(index)ContentMendapatkan node pada indeks yang diberikan di antara semua node yang merupakan turunan langsung 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}, sesuai urutan kemunculannya dalam dokumen.
getDocument()DocumentMengambil dokumen XML yang berisi simpul {@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 node Element.
getValue()StringMendapatkan nilai teks semua node yang merupakan turunan langsung atau tidak langsung dari node, sesuai urutan kemunculannya dalam dokumen.
isAncestorOf(other)BooleanMenentukan apakah node Element ini merupakan 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 seperti itu 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 simpul yang diberikan, jika simpul adalah turunan langsung dari simpul {@code Element}.
removeContent(index)ContentMenghapus node pada indeks yang diberikan di antara semua node yang merupakan turunan langsung 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 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()ContentLepaskan 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 semua node yang merupakan turunan langsung atau tidak langsung dari node, sesuai urutan kemunculannya 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 ditentukan sebagai string berformat.
format(element)StringMenghasilkan node Element yang ditentukan 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)FormatMenyetel string yang akan disisipkan setiap kali pemformat biasanya menyisipkan jeda 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()ContentLepaskan node dari node Element induknya.
getData()StringMendapatkan data mentah untuk setiap petunjuk dalam node ProcessingInstruction.
getParentElement()ElementMendapatkan node Element induk node.
getTarget()StringMendapatkan target untuk node ProcessingInstruction.
getValue()StringMendapatkan nilai teks semua node yang merupakan turunan langsung atau tidak langsung dari node, sesuai urutan kemunculannya 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()ContentLepaskan node dari node Element induknya.
getParentElement()ElementMendapatkan node Element induk node.
getText()StringMendapatkan nilai teks node Text.
getValue()StringMendapatkan nilai teks semua node yang merupakan turunan langsung atau tidak langsung dari node, sesuai urutan kemunculannya dalam dokumen.
setText(text)TextMenetapkan nilai teks node Text.

XmlService

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.