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 bằng 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
AttributeHình minh hoạ một thuộc tính XML.
CdataHình minh hoạ nút CDATASection XML.
CommentHình minh hoạ nút Comment XML.
ContentHình minh hoạ nút XML chung.
ContentTypeMột bảng liệt kê đại diện cho các loại nút nội dung XML.
DocTypeHình minh hoạ nút DocumentType XML.
DocumentHình minh hoạ tài liệu XML.
ElementHình minh hoạ nút Element XML.
EntityRefHình minh hoạ nút EntityReference XML.
FormatMột trì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ể tuỳ chỉnh thêm.
NamespaceHình ảnh thể hiện một không gian tên XML.
ProcessingInstructionHình minh hoạ nút ProcessingInstruction XML.
TextHình minh hoạ 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ứcKiểu 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ộ cho 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ứcKiểu 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 mẹ Element.
getParentElement()ElementLấy nút mẹ Element 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à 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)TextThiết lập giá trị văn bản của nút Text.

Comment

Phương thức

Phương thứcKiểu dữ liệu trả vềMô tả ngắn
detach()ContentTách nút này khỏi nút mẹ Element.
getParentElement()ElementLấy nút mẹ Element 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à 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)CommentThiết lập giá trị văn bản của nút Comment.

Content

Phương thức

Phương thứcKiểu dữ liệu trả vềMô tả ngắn
asCdata()CdataTruyền nút dưới dạng nút CDATASection nhằm mục đích tự động hoàn thành.
asComment()CommentTruyền nút dưới dạng nút Comment nhằm mục đích tự động hoàn thành.
asDocType()DocTypeTruyền nút dưới dạng nút DocumentType nhằm mục đích tự động hoàn thành.
asElement()ElementTruyền nút dưới dạng nút Element nhằm mục đích tự động hoàn thành.
asEntityRef()EntityRefTruyền nút dưới dạng nút EntityReference nhằm mục đích tự động hoàn thành.
asProcessingInstruction()ProcessingInstructionTruyền nút dưới dạng nút ProcessingInstruction nhằm mục đích tự động hoàn thành.
asText()TextTruyền nút dưới dạng nút Text nhằm mục đích tự động hoàn thành.
detach()ContentTách nút này khỏi nút mẹ Element.
getParentElement()ElementLấy nút mẹ Element 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à 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

Tài sảnLoạiNội dung mô 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ứcKiểu dữ liệu trả vềMô tả ngắn
detach()ContentTách nút này khỏi nút mẹ Element.
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 mẹ Element 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à 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 của nút Element gốc để chỉ định trong phần khai báo DocType.
setInternalSubset(data)DocTypeThiết lập 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ã 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ứcKiểu 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 được đí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ố 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)DocumentThiết lập phần 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ứcKiểu 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à phần tử con trực tiếp của nút Element.
cloneContent()Content[]Tạo bản sao chưa được đí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 mẹ Element.
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 của 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 đã đặt và không có không gian tên nào là nút con trực tiếp 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. Đây là nút con trực tiếp 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à phần tử con ngay lập tức của nút Element.
getChildText(name, namespace)StringLấy giá trị văn bản của nút với tên và không gian tên đã cho, nếu nút đó là phầ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à 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ả nút Element có tên đã đặt và không có không gian tên nào là phần tử con ngay 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à 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.
getContent(index)ContentLấy nút 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 {@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 mẹ Element 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, có 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à 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 của nút Element này, nếu thuộc tính như vậy tồn tại.
removeAttribute(attributeName)BooleanXoá thuộc tính của nút Element có tên đã cho và không có không gian tên, nếu có một thuộc tính như vậy.
removeAttribute(attributeName, namespace)BooleanXoá thuộc tính của nút Element này (đã có tên và không gian tên) nếu có một thuộc tính như vậy.
removeContent()Content[]Xoá tất cả cá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à phầ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à 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ị 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 sẵn.
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)ElementThiết lập giá trị văn bản của nút Element.

EntityRef

Phương thức

Phương thứcKiểu dữ liệu trả vềMô tả ngắn
detach()ContentTách nút này khỏi nút mẹ Element.
getName()StringLấy tên của nút EntityReference.
getParentElement()ElementLấy nút mẹ Element 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à 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)EntityRefThiết lập mã nhận dạng hệ thống của nút EntityReference.

Format

Phương thức

Phương thứcKiểu dữ liệu trả vềMô tả ngắn
format(document)StringXuất ra Document cho trước dưới dạng chuỗi đã định dạng.
format(element)StringXuất ra nút Element đã cho dưới dạng một chuỗi đã định dạng.
setEncoding(encoding)FormatĐặt phương thức mã hoá ký tự mà trình định dạng nên 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 cần 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)FormatThiết lập xem trình định dạng có nên 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ứcKiểu dữ liệu trả vềMô tả ngắn
getPrefix()StringLấy tiền tố của không gian tên.
getURI()StringLấy URI cho không gian tên.

ProcessingInstruction

Phương thức

Phương thứcKiểu dữ liệu trả vềMô tả ngắn
detach()ContentTách nút này khỏi nút mẹ Element.
getData()StringLấy dữ liệu thô cho mỗi lệnh trong nút ProcessingInstruction.
getParentElement()ElementLấy nút mẹ Element 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à 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ứcKiểu 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 mẹ Element.
getParentElement()ElementLấy nút mẹ Element 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à 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)TextThiết lập giá trị văn bản của nút Text.

XmlService

Thuộc tính

Tài sảnLoạiNội dung mô tả
ContentTypesContentTypeMột bảng liệt kê đại diện cho các loại nút nội dung XML.

Phương thức

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