این سرویس به اسکریپتها اجازه میدهد تا اسناد 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)
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()
createDocument(rootElement)
createElement(name)
createElement(name, namespace)
createText(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)
getNamespace(prefix, uri)
getNoNamespace()
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 — قالببندی تازه ایجاد شده.