Class XmlService

سرویس XML

این سرویس به اسکریپت‌ها اجازه می‌دهد تا اسناد XML را تجزیه، پیمایش و از طریق برنامه‌نویسی ایجاد کنند.

// Log the title and labels for the first page of blog posts on the
// Google Workspace Developer blog.
function parseXml() {
  const url = 'https://gsuite-developers.googleblog.com/atom.xml';
  const xml = UrlFetchApp.fetch(url).getContentText();
  const document = XmlService.parse(xml);
  const root = document.getRootElement();
  const atom = XmlService.getNamespace('http://www.w3.org/2005/Atom');

  const entries = root.getChildren('entry', atom);
  for (let i = 0; i < entries.length; i++) {
    const title = entries[i].getChild('title', atom).getText();
    const categoryElements = entries[i].getChildren('category', atom);
    const labels = [];
    for (let j = 0; j < categoryElements.length; j++) {
      labels.push(categoryElements[j].getAttribute('term').getValue());
    }
    Logger.log('%s (%s)', title, labels.join(', '));
  }
}

// Create and log an XML representation of the threads in your Gmail inbox.
function createXml() {
  const root = XmlService.createElement('threads');
  const threads = GmailApp.getInboxThreads();
  for (let i = 0; i < threads.length; i++) {
    const child =
        XmlService.createElement('thread')
            .setAttribute('messageCount', threads[i].getMessageCount())
            .setAttribute('isUnread', threads[i].isUnread())
            .setText(threads[i].getFirstMessageSubject());
    root.addContent(child);
  }
  const document = XmlService.createDocument(root);
  const xml = XmlService.getPrettyFormat().format(document);
  Logger.log(xml);
}

خواص

ملک نوع توضیحات
Content Types Content Type یک شمارش که انواع گره‌های محتوای XML را نشان می‌دهد.

روش‌ها

روش نوع بازگشتی شرح مختصر
create Cdata(text) Cdata یک گره CDATASection غیرپیوسته با مقدار داده شده ایجاد می‌کند.
create Comment(text) Comment یک گره Comment غیرپیوسته با مقدار داده شده ایجاد می‌کند.
create Doc Type(elementName) Doc Type یک گره Document Type غیرپیوسته برای گره Element ریشه با نام داده شده ایجاد می‌کند.
create Doc Type(elementName, systemId) Doc Type یک گره Document Type غیرپیوسته برای گره Element ریشه با نام داده شده و شناسه سیستم داده شده برای داده‌های زیرمجموعه خارجی ایجاد می‌کند.
create Doc Type(elementName, publicId, systemId) Doc Type یک گره Document Type غیرپیوسته برای گره Element ریشه با نام داده شده، و شناسه عمومی (public ID) و شناسه سیستم (system ID) داده شده برای داده‌های زیرمجموعه خارجی ایجاد می‌کند.
create Document() Document یک سند XML خالی ایجاد می‌کند.
create Document(rootElement) Document یک سند XML با گره Element ریشه داده شده ایجاد می‌کند.
create Element(name) Element یک گره Element غیرمتصل با نام محلی داده شده و بدون فضای نام (namespace) ایجاد می‌کند.
create Element(name, namespace) Element یک گره Element غیرمتصل با نام محلی و فضای نام داده شده ایجاد می‌کند.
create Text(text) Text یک گره Text غیرمتصل با مقدار داده شده ایجاد می‌کند.
get Compact Format() Format یک شیء Format برای خروجی گرفتن از یک سند XML فشرده ایجاد می‌کند.
get Namespace(uri) Namespace یک Namespace با URI داده شده ایجاد می‌کند.
get Namespace(prefix, uri) Namespace یک Namespace با پیشوند و آدرس داده شده ایجاد می‌کند.
get No Namespace() Namespace یک Namespace ایجاد می‌کند که نشان‌دهنده‌ی عدم وجود یک فضای نام واقعی است.
get Pretty Format() Format یک شیء Format برای خروجی یک سند XML قابل خواندن توسط انسان ایجاد می‌کند.
get Raw Format() Format یک شیء Format برای خروجی گرفتن از یک سند XML خام ایجاد می‌کند.
get Xml Namespace() Namespace یک Namespace با پیشوند استاندارد xml ایجاد می‌کند.
parse(xml) Document بدون اعتبارسنجی XML، یک Document از XML داده شده ایجاد می‌کند.

مستندات دقیق

createCdata(text)

یک گره CDATASection غیرپیوسته با مقدار داده شده ایجاد می‌کند.

پارامترها

نام نوع توضیحات
text String مقداری که باید تنظیم شود.

بازگشت

Cdata — گره CDATASection که به تازگی ایجاد شده است.


createComment(text)

یک گره Comment غیرپیوسته با مقدار داده شده ایجاد می‌کند.

پارامترها

نام نوع توضیحات
text String مقداری که باید تنظیم شود.

بازگشت

Comment - گره Comment به تازگی ایجاد شده است.


createDocType(elementName)

یک گره DocumentType غیرپیوسته برای گره ریشه Element با نام داده شده ایجاد می‌کند.

پارامترها

نام نوع توضیحات
element Name String نام گره Element ریشه که باید در اعلان Doc Type مشخص شود.

بازگشت

DocType — گره DocumentType که به تازگی ایجاد شده است.


createDocType(elementName, systemId)

یک گره DocumentType غیرپیوسته برای گره ریشه Element با نام داده شده و شناسه سیستم داده شده برای داده‌های زیرمجموعه خارجی ایجاد می‌کند.

پارامترها

نام نوع توضیحات
element Name String نام گره Element ریشه که باید در اعلان Doc Type مشخص شود.
system Id String شناسه سیستم داده‌های زیرمجموعه خارجی که باید تنظیم شوند.

بازگشت

DocType — گره DocumentType که به تازگی ایجاد شده است.


createDocType(elementName, publicId, systemId)

یک گره DocumentType غیرپیوسته برای گره ریشه Element با نام داده شده و شناسه عمومی و شناسه سیستم داده شده برای داده‌های زیرمجموعه خارجی ایجاد می‌کند.

پارامترها

نام نوع توضیحات
element Name String نام گره Element ریشه که باید در اعلان Doc Type مشخص شود.
public Id String شناسه عمومی داده‌های زیرمجموعه خارجی که باید تنظیم شوند.
system Id String شناسه سیستم داده‌های زیرمجموعه خارجی که باید تنظیم شوند.

بازگشت

DocType — گره DocumentType که به تازگی ایجاد شده است.


createDocument()

یک سند XML خالی ایجاد می‌کند.

بازگشت

Document — سند تازه ایجاد شده.


createDocument(rootElement)

یک سند XML با گره Element ریشه داده شده ایجاد می‌کند.

پارامترها

نام نوع توضیحات
root Element Element گره Element ریشه که باید تنظیم شود.

بازگشت

Document — سند تازه ایجاد شده.


createElement(name)

یک گره Element غیرمتصل با نام محلی داده شده و بدون فضای نام (namespace) ایجاد می‌کند.

پارامترها

نام نوع توضیحات
name String نام محلی که باید تنظیم شود.

بازگشت

Element — گره Element تازه ایجاد شده.


createElement(name, namespace)

یک گره Element غیرمتصل با نام محلی و فضای نام داده شده ایجاد می‌کند.

پارامترها

نام نوع توضیحات
name String نام محلی که باید تنظیم شود.
namespace Namespace فضای نامی که باید تنظیم شود.

بازگشت

Element — گره Element تازه ایجاد شده.


createText(text)

یک گره Text غیرمتصل با مقدار داده شده ایجاد می‌کند.

پارامترها

نام نوع توضیحات
text String مقداری که باید تنظیم شود.

بازگشت

Text - گره Text تازه ایجاد شده.


getCompactFormat()

یک شیء Format برای خروجی یک سند XML فشرده ایجاد می‌کند. قالب‌بندی به طور پیش‌فرض روی کدگذاری UTF-8 ، بدون تورفتگی و بدون شکست خط اضافی تنظیم شده است، اما شامل اعلان XML و کدگذاری آن می‌شود.

// Log an XML document in compact form.
const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const document = XmlService.parse(xml);
const output = XmlService.getCompactFormat().format(document);
Logger.log(output);

بازگشت

Format — قالب‌بندی تازه ایجاد شده.


getNamespace(uri)

یک Namespace با URI داده شده ایجاد می‌کند.

پارامترها

نام نوع توضیحات
uri String آدرس اینترنتی (URI) برای فضای نام.

بازگشت

Namespace - فضای نام تازه ایجاد شده.


getNamespace(prefix, uri)

یک Namespace با پیشوند و آدرس داده شده ایجاد می‌کند.

پارامترها

نام نوع توضیحات
prefix String پیشوند برای فضای نام.
uri String آدرس اینترنتی (URI) برای فضای نام.

بازگشت

Namespace - فضای نام تازه ایجاد شده.


getNoNamespace()

یک Namespace ایجاد می‌کند که نشان‌دهنده‌ی عدم وجود یک فضای نام واقعی است.

بازگشت

Namespace - فضای نام تازه ایجاد شده.


getPrettyFormat()

یک شیء Format برای خروجی یک سند XML قابل خواندن توسط انسان ایجاد می‌کند. قالب‌بندی به طور پیش‌فرض روی کدگذاری UTF-8 ، تورفتگی دو فاصله، جداکننده‌های خط \r\n بعد از هر گره تنظیم شده است و شامل اعلان XML و کدگذاری آن نیز می‌شود.

// Log an XML document in human-readable form.
const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const document = XmlService.parse(xml);
const output = XmlService.getPrettyFormat().format(document);
Logger.log(output);

بازگشت

Format — قالب‌بندی تازه ایجاد شده.


getRawFormat()

یک شیء Format برای خروجی یک سند XML خام ایجاد می‌کند. قالب‌بندی به طور پیش‌فرض روی کدگذاری UTF-8 ، بدون تورفتگی و بدون شکست خط به جز مواردی که در خود سند XML ارائه شده است، عمل می‌کند و شامل اعلان XML و کدگذاری آن نیز می‌شود.

// Log an XML document in raw form.
const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const document = XmlService.parse(xml);
const output = XmlService.getRawFormat().format(document);
Logger.log(output);

بازگشت

Format — قالب‌بندی تازه ایجاد شده.


getXmlNamespace()

یک Namespace با پیشوند استاندارد xml ایجاد می‌کند.

بازگشت

Namespace - فضای نام تازه ایجاد شده.


parse(xml)

بدون اعتبارسنجی XML، یک Document از XML داده شده ایجاد می‌کند.

const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
const doc = XmlService.parse(xml);

پارامترها

نام نوع توضیحات
xml String XML برای تجزیه.

بازگشت

Document — سند تازه ایجاد شده.