XML Service

Dịch vụ XML

Dịch vụ này cho phép các tập lệnh phân tích cú pháp, điều hướng và tạo tài liệu XML theo phương thức lập trình.

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

Lớp

TênMô tả ngắn
AttributeBiểu thị một thuộc tính XML.
CdataBiểu thị nút CDATASection XML.
CommentBiểu thị nút Comment XML.
ContentBiểu thị một nút XML chung.
ContentTypeMột enum đại diện cho các loại nút nội dung XML.
DocTypeBiểu thị nút DocumentType XML.
DocumentBiểu thị tài liệu XML.
ElementBiểu thị nút Element XML.
EntityRefBiểu thị nút EntityReference XML.
FormatTrình định dạng để xuất tài liệu XML, với 3 định dạng được xác định trước có thể được tuỳ chỉnh thêm.
NamespaceBiểu thị một không gian tên XML.
ProcessingInstructionBiểu thị nút ProcessingInstruction XML.
TextBiểu thị nút Text XML.
XmlServiceDịch vụ này cho phép các tập lệnh phân tích cú pháp, điều hướng và tạo tài liệu XML theo phương thức lập trình.

Attribute

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
getName()StringLấy tên cục bộ của thuộc tính.
getNamespace()NamespaceLấy không gian tên cho thuộc tính.
getValue()StringLấy giá trị của thuộc tính.
setName(name)AttributeĐặt tên cục bộ của thuộc tính.
setNamespace(namespace)AttributeĐặt không gian tên cho thuộc tính.
setValue(value)AttributeĐặt giá trị của thuộc tính.

Cdata

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
append(text)TextThêm văn bản đã cho vào bất kỳ nội dung nào đã tồn tại trong nút.
detach()ContentTách nút này khỏi nút Element mẹ.
getParentElement()ElementLấy nút Element mẹ của nút.
getText()StringLấy giá trị văn bản của nút Text.
getValue()StringLấy giá trị văn bản của tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của nút, theo thứ tự xuất hiện trong tài liệu.
setText(text)TextĐặt giá trị văn bản của nút Text.

Comment

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
detach()ContentTách nút này khỏi nút Element mẹ.
getParentElement()ElementLấy nút Element mẹ của nút.
getText()StringLấy giá trị văn bản của nút Comment.
getValue()StringLấy giá trị văn bản của tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của nút, theo thứ tự xuất hiện trong tài liệu.
setText(text)CommentĐặt giá trị văn bản của nút Comment.

Content

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
asCdata()CdataTruyền nút dưới dạng nút CDATASection cho mục đích tự động hoàn thành.
asComment()CommentTruyền nút dưới dạng nút Comment cho mục đích tự động hoàn thành.
asDocType()DocTypeTruyền nút dưới dạng nút DocumentType cho mục đích tự động hoàn thành.
asElement()ElementTruyền nút dưới dạng nút Element cho mục đích tự động hoàn thành.
asEntityRef()EntityRefTruyền nút dưới dạng nút EntityReference cho mục đích tự động hoàn thành.
asProcessingInstruction()ProcessingInstructionTruyền nút dưới dạng nút ProcessingInstruction cho mục đích tự động hoàn thành.
asText()TextTruyền nút dưới dạng nút Text cho mục đích tự động hoàn thành.
detach()ContentTách nút này khỏi nút Element mẹ.
getParentElement()ElementLấy nút Element mẹ của nút.
getType()ContentTypeLấy loại nội dung của nút.
getValue()StringLấy giá trị văn bản của tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của nút, theo thứ tự xuất hiện trong tài liệu.

ContentType

Thuộc tính

Thuộc tínhLoạiMô tả
CDATAEnumNút CDATASection XML.
COMMENTEnumNút Comment XML.
DOCTYPEEnumNút DocumentType XML.
ELEMENTEnumNút Element XML.
ENTITYREFEnumNút EntityReference XML.
PROCESSINGINSTRUCTIONEnumNút ProcessingInstruction XML.
TEXTEnumNút Text XML.

DocType

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
detach()ContentTách nút này khỏi nút Element mẹ.
getElementName()StringLấy tên của nút Element gốc được chỉ định trong phần khai báo DocType.
getInternalSubset()StringLấy dữ liệu tập hợp con nội bộ cho nút DocumentType.
getParentElement()ElementLấy nút Element mẹ của nút.
getPublicId()StringLấy mã nhận dạng công khai của dữ liệu tập hợp con bên ngoài cho nút DocumentType.
getSystemId()StringLấy mã nhận dạng hệ thống của dữ liệu tập hợp con bên ngoài cho nút DocumentType.
getValue()StringLấy giá trị văn bản của tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của nút, theo thứ tự xuất hiện trong tài liệu.
setElementName(name)DocTypeĐặt tên cho nút Element gốc để chỉ định trong phần khai báo DocType.
setInternalSubset(data)DocTypeĐặt dữ liệu tập hợp con nội bộ cho nút DocumentType.
setPublicId(id)DocTypeĐặt mã nhận dạng công khai của dữ liệu tập hợp con bên ngoài cho nút DocumentType.
setSystemId(id)DocTypeĐặt mã nhận dạng hệ thống của dữ liệu tập hợp con bên ngoài cho nút DocumentType.

Document

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
addContent(content)DocumentThêm nút đã cho vào cuối tài liệu.
addContent(index, content)DocumentChèn nút đã cho tại chỉ mục đã cho trong số tất cả các nút là phần tử con trực tiếp của tài liệu.
cloneContent()Content[]Tạo bản sao chưa đính kèm của tất cả các nút là phần tử con trực tiếp của tài liệu.
detachRootElement()ElementTách và trả về nút Element gốc của tài liệu.
getAllContent()Content[]Lấy tất cả các nút là phần tử con trực tiếp của tài liệu.
getContent(index)ContentLấy nút tại chỉ mục đã cho trong số tất cả các nút là phần tử con trực tiếp của tài liệu.
getContentSize()IntegerLấy số lượng nút là phần tử con trực tiếp của tài liệu.
getDescendants()Content[]Lấy tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của tài liệu, theo thứ tự xuất hiện trong tài liệu.
getDocType()DocTypeLấy nội dung khai báo DocType của tài liệu.
getRootElement()ElementLấy nút Element gốc của tài liệu.
hasRootElement()BooleanXác định xem tài liệu có nút Element gốc hay không.
removeContent()Content[]Xoá tất cả các nút là phần tử con trực tiếp của tài liệu.
removeContent(content)BooleanXoá nút đã cho, nếu nút đó là nút con trực tiếp của tài liệu.
removeContent(index)ContentXoá nút tại chỉ mục đã cho trong số tất cả các nút là phần tử con trực tiếp của tài liệu.
setDocType(docType)DocumentĐặt nội dung khai báo DocType của tài liệu.
setRootElement(element)DocumentĐặt nút Element gốc của tài liệu.

Element

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
addContent(content)ElementThêm nút đã cho làm nút con cuối cùng của nút Element.
addContent(index, content)ElementChèn nút đã cho tại chỉ mục đã cho trong số tất cả các nút là nút con trực tiếp của nút Element.
cloneContent()Content[]Tạo bản sao chưa đính kèm của tất cả các nút là phần tử con trực tiếp của nút {@code Element}.
detach()ContentTách nút này khỏi nút Element mẹ.
getAllContent()Content[]Lấy tất cả các nút là phần tử con trực tiếp của nút {@code Element}.
getAttribute(name)AttributeLấy thuộc tính cho nút Element này có tên đã cho và không có không gian tên.
getAttribute(name, namespace)AttributeLấy thuộc tính cho nút Element này bằng tên và không gian tên đã cho.
getAttributes()Attribute[]Lấy tất cả thuộc tính cho nút Element này, theo thứ tự xuất hiện trong tài liệu.
getChild(name)ElementLấy nút Element đầu tiên có tên đã cho và không có không gian tên nào là nút con ngay lập tức của nút Element này.
getChild(name, namespace)ElementLấy nút Element đầu tiên có tên và không gian tên đã cho là nút con ngay lập tức của nút Element này.
getChildText(name)StringLấy giá trị văn bản của nút có tên đã cho và không có không gian tên, nếu nút là nút con trực tiếp của nút Element.
getChildText(name, namespace)StringLấy giá trị văn bản của nút có tên và không gian tên đã cho, nếu nút là nút con trực tiếp của nút Element.
getChildren()Element[]Lấy tất cả các nút Element là phần tử con trực tiếp của nút Element này, theo thứ tự xuất hiện trong tài liệu.
getChildren(name)Element[]Lấy tất cả các nút Element có tên đã cho và không có không gian tên nào là phần tử con trực tiếp của nút Element này, theo thứ tự xuất hiện trong tài liệu.
getChildren(name, namespace)Element[]Lấy tất cả các nút Element có tên và không gian tên đã cho là các nút con trực tiếp của nút Element này, theo thứ tự xuất hiện trong tài liệu.
getContent(index)ContentLấy nút tại chỉ mục đã cho trong số tất cả các nút là phần tử con trực tiếp của nút{@code Element}.
getContentSize()IntegerLấy số lượng nút là phần tử con trực tiếp của nút {@code Element}.
getDescendants()Content[]Lấy tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của nút {@code Element}, theo thứ tự xuất hiện trong tài liệu.
getDocument()DocumentLấy tài liệu XML chứa nút {@code Element}.
getName()StringLấy tên cục bộ của nút Element.
getNamespace()NamespaceLấy không gian tên cho nút Element.
getNamespace(prefix)NamespaceLấy không gian tên có tiền tố đã cho cho nút Element.
getParentElement()ElementLấy nút Element mẹ của nút.
getQualifiedName()StringLấy tên cục bộ và tiền tố không gian tên của nút Element, ở dạng [namespacePrefix]:[localName].
getText()StringLấy giá trị văn bản của nút Element.
getValue()StringLấy giá trị văn bản của tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của nút, theo thứ tự xuất hiện trong tài liệu.
isAncestorOf(other)BooleanXác định xem nút Element này là nút mẹ trực tiếp hay gián tiếp của một nút Element nhất định.
isRootElement()BooleanXác định xem nút Element có phải là nút gốc của tài liệu hay không.
removeAttribute(attribute)BooleanXoá thuộc tính đã cho cho nút Element này, nếu có thuộc tính như vậy.
removeAttribute(attributeName)BooleanXoá thuộc tính cho nút Element này có tên đã cho và không có không gian tên, nếu thuộc tính đó tồn tại.
removeAttribute(attributeName, namespace)BooleanXoá thuộc tính cho nút Element này bằng tên và không gian tên đã cho, nếu có thuộc tính như vậy.
removeContent()Content[]Xoá tất cả nút là phần tử con trực tiếp của nút {@code Element}.
removeContent(content)BooleanXoá nút đã cho nếu nút đó là nút con trực tiếp của nút {@code Element}.
removeContent(index)ContentXoá nút tại chỉ mục đã cho trong số tất cả các nút là phần tử con trực tiếp của nút{@code Element}.
setAttribute(attribute)ElementĐặt thuộc tính đã cho cho nút Element này.
setAttribute(name, value)ElementĐặt thuộc tính cho nút Element này bằng tên, giá trị đã cho và không có không gian tên.
setAttribute(name, value, namespace)ElementĐặt thuộc tính cho nút Element này bằng tên, giá trị và không gian tên đã cho.
setName(name)ElementĐặt tên cục bộ của nút Element.
setNamespace(namespace)ElementĐặt không gian tên cho nút Element.
setText(text)ElementĐặt giá trị văn bản của nút Element.

EntityRef

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
detach()ContentTách nút này khỏi nút Element mẹ.
getName()StringLấy tên của nút EntityReference.
getParentElement()ElementLấy nút Element mẹ của nút.
getPublicId()StringLấy mã nhận dạng công khai của nút EntityReference.
getSystemId()StringLấy mã nhận dạng hệ thống của nút EntityReference.
getValue()StringLấy giá trị văn bản của tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của nút, theo thứ tự xuất hiện trong tài liệu.
setName(name)EntityRefĐặt tên cho nút EntityReference.
setPublicId(id)EntityRefĐặt mã nhận dạng công khai của nút EntityReference.
setSystemId(id)EntityRefĐặt mã nhận dạng hệ thống của nút EntityReference.

Format

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
format(document)StringXuất Document đã cho dưới dạng một chuỗi được định dạng.
format(element)StringXuất nút Element đã cho dưới dạng một chuỗi được định dạng.
setEncoding(encoding)FormatĐặt kiểu mã hoá ký tự mà trình định dạng sẽ sử dụng.
setIndent(indent)FormatĐặt chuỗi dùng để thụt lề các nút con so với nút mẹ.
setLineSeparator(separator)FormatĐặt chuỗi để chèn bất cứ khi nào trình định dạng thường chèn dấu ngắt dòng.
setOmitDeclaration(omitDeclaration)FormatĐặt xem trình định dạng có bỏ qua phần khai báo XML hay không, chẳng hạn như <?xml version="1.0" encoding="UTF-8"?>.
setOmitEncoding(omitEncoding)FormatĐặt xem trình định dạng có bỏ qua việc mã hoá trong phần khai báo XML hay không, chẳng hạn như trường mã hoá trong <?xml version="1.0" encoding="UTF-8"?>.

Namespace

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
getPrefix()StringLấy tiền tố cho không gian tên.
getURI()StringLấy URI cho không gian tên.

ProcessingInstruction

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
detach()ContentTách nút này khỏi nút Element mẹ.
getData()StringLấy dữ liệu thô cho mọi lệnh trong nút ProcessingInstruction.
getParentElement()ElementLấy nút Element mẹ của nút.
getTarget()StringLấy mục tiêu cho nút ProcessingInstruction.
getValue()StringLấy giá trị văn bản của tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của nút, theo thứ tự xuất hiện trong tài liệu.

Text

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
append(text)TextThêm văn bản đã cho vào bất kỳ nội dung nào đã tồn tại trong nút.
detach()ContentTách nút này khỏi nút Element mẹ.
getParentElement()ElementLấy nút Element mẹ của nút.
getText()StringLấy giá trị văn bản của nút Text.
getValue()StringLấy giá trị văn bản của tất cả các nút là phần tử con trực tiếp hoặc gián tiếp của nút, theo thứ tự xuất hiện trong tài liệu.
setText(text)TextĐặt giá trị văn bản của nút Text.

XmlService

Thuộc tính

Thuộc tínhLoạiMô tả
ContentTypesContentTypeMột enum đại diện cho các loại nút nội dung XML.

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
createCdata(text)CdataTạo một nút CDATASection chưa đính kèm có giá trị đã cho.
createComment(text)CommentTạo một nút Comment chưa đính kèm có giá trị đã cho.
createDocType(elementName)DocTypeTạo một nút DocumentType chưa đính kèm cho nút Element gốc với tên đã cho.
createDocType(elementName, systemId)DocTypeTạo một nút DocumentType chưa đính kèm cho nút Element gốc với tên đã cho và mã nhận dạng hệ thống đã cho cho dữ liệu tập hợp con bên ngoài.
createDocType(elementName, publicId, systemId)DocTypeTạo một nút DocumentType chưa đính kèm cho nút Element gốc với tên đã cho, mã nhận dạng công khai và mã nhận dạng hệ thống đã cho cho dữ liệu tập hợp con bên ngoài.
createDocument()DocumentTạo một tài liệu XML trống.
createDocument(rootElement)DocumentTạo một tài liệu XML có nút gốc Element đã cho.
createElement(name)ElementTạo một nút Element chưa đính kèm có tên cục bộ đã cho và không có không gian tên.
createElement(name, namespace)ElementTạo một nút Element chưa đính kèm có tên và không gian tên cục bộ đã cho.
createText(text)TextTạo một nút Text chưa đính kèm có giá trị đã cho.
getCompactFormat()FormatTạo đối tượng Format để xuất một tài liệu XML nhỏ gọn.
getNamespace(uri)NamespaceTạo một Namespace bằng URI đã cho.
getNamespace(prefix, uri)NamespaceTạo một Namespace có tiền tố và URI đã cho.
getNoNamespace()NamespaceTạo một Namespace đại diện cho việc không có không gian tên thực.
getPrettyFormat()FormatTạo đối tượng Format để xuất tài liệu XML mà con người có thể đọc được.
getRawFormat()FormatTạo đối tượng Format để xuất tài liệu XML thô.
getXmlNamespace()NamespaceTạo Namespace có tiền tố xml tiêu chuẩn.
parse(xml)DocumentTạo Document từ XML đã cho mà không xác thực XML.