تتيح هذه الخدمة للبرامج النصية تحليل مستندات 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 | Content | تعداد يمثّل أنواع عقد محتوى XML. |
الطُرق
| الطريقة | نوع القيمة التي تم إرجاعها | وصف قصير |
|---|---|---|
create | Cdata | تُنشئ هذه الدالة عقدة CDATASection غير مرتبطة بالقيمة المحدّدة. |
create | Comment | تُنشئ هذه الدالة عقدة Comment غير مرتبطة بالقيمة المحدّدة. |
create | Doc | تنشئ هذه الطريقة عقدة Document غير مرتبطة بعقدة الجذر Element
بالاسم المحدّد. |
create | Doc | تُنشئ هذه الطريقة عقدة Document غير مرتبطة لعقدة الجذر Element
بالاسم المحدّد، ومعرّف النظام المحدّد لبيانات المجموعة الفرعية الخارجية. |
create | Doc | تنشئ هذه الطريقة عقدة Document غير مرفقة لعقدة الجذر Element بالاسم المحدّد، ورقم التعريف العلني ورقم تعريف النظام المحدّدَين لبيانات المجموعة الفرعية الخارجية. |
create | Document | تنشئ هذه الدالة مستند XML فارغًا. |
create | Document | تُنشئ هذه الدالة مستند XML يحتوي على عقدة الجذر Element المحدّدة. |
create | Element | تنشئ هذه الطريقة عقدة Element غير مرفقة بالاسم المحلي المحدّد وبدون مساحة اسم. |
create | Element | تُنشئ هذه الطريقة عقدة Element غير مرفقة بالاسم المحلي ومساحة الاسم المحدّدين. |
create | Text | تُنشئ هذه الدالة عقدة Text غير مرتبطة بالقيمة المحدّدة. |
get | Format | تنشئ هذه الدالة عنصر Format لإخراج مستند XML مضغوط. |
get | Namespace | تُنشئ هذه الدالة Namespace باستخدام معرّف الموارد الموحّد (URI) المحدّد. |
get | Namespace | تنشئ هذه الدالة Namespace بالبادئة ومعرّف الموارد الموحّد (URI) المحدّدين. |
get | Namespace | تُنشئ هذه السمة Namespace تمثّل عدم توفّر مساحة اسم حقيقية. |
get | Format | تُنشئ هذه الدالة عنصر Format لإخراج مستند XML يمكن قراءته. |
get | Format | تنشئ هذه الدالة عنصر Format لإخراج مستند XML أولي. |
get | Namespace | تنشئ هذه الدالة Namespace مع البادئة العادية xml. |
parse(xml) | Document | تنشئ هذه الدالة Document من ملف XML المحدّد بدون التحقّق من صحة ملف XML. |
مستندات تفصيلية
createCdata(text)
تُنشئ هذه الدالة عقدة CDATASection غير مرتبطة بالقيمة المحدّدة.
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
text | String | القيمة المطلوب ضبطها. |
الإرجاع
Cdata: عقدة CDATASection التي تم إنشاؤها حديثًا
createComment(text)
createDocType(elementName)
تنشئ هذه الطريقة عقدة DocumentType غير مرتبطة بعقدة الجذر Element
بالاسم المحدّد.
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
element | String | اسم عقدة الجذر Element التي يجب تحديدها في تعريف Doc. |
الإرجاع
DocType: عقدة DocumentType التي تم إنشاؤها حديثًا
createDocType(elementName, systemId)
تُنشئ هذه الطريقة عقدة DocumentType غير مرتبطة لعقدة الجذر Element
بالاسم المحدّد، ومعرّف النظام المحدّد لبيانات المجموعة الفرعية الخارجية.
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
element | String | اسم عقدة الجذر Element التي يجب تحديدها في تعريف Doc. |
system | String | تمثّل هذه السمة معرّف النظام لبيانات المجموعة الفرعية الخارجية التي سيتم ضبطها. |
الإرجاع
DocType: عقدة DocumentType التي تم إنشاؤها حديثًا
createDocType(elementName, publicId, systemId)
تنشئ هذه الطريقة عقدة DocumentType غير مرفقة لعقدة الجذر Element بالاسم المحدّد، ورقم التعريف العلني ورقم تعريف النظام المحدّدَين لبيانات المجموعة الفرعية الخارجية.
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
element | String | اسم عقدة الجذر Element التي يجب تحديدها في تعريف Doc. |
public | String | المعرّف العام لبيانات المجموعة الفرعية الخارجية المطلوب ضبطها |
system | 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: أداة التنسيق التي تم إنشاؤها حديثًا.