Class XmlService

XmlService

تسمح هذه الخدمة للنصوص البرمجية بتحليل مستندات XML والتنقل فيها وإنشائها آليًا.

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

  var entries = root.getChildren('entry', atom);
  for (var i = 0; i < entries.length; i++) {
    var title = entries[i].getChild('title', atom).getText();
    var categoryElements = entries[i].getChildren('category', atom);
    var labels = [];
    for (var 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() {
  var root = XmlService.createElement('threads');
  var threads = GmailApp.getInboxThreads();
  for (var i = 0; i < threads.length; i++) {
    var child = XmlService.createElement('thread')
        .setAttribute('messageCount', threads[i].getMessageCount())
        .setAttribute('isUnread', threads[i].isUnread())
        .setText(threads[i].getFirstMessageSubject());
    root.addContent(child);
  }
  var document = XmlService.createDocument(root);
  var xml = XmlService.getPrettyFormat().format(document);
  Logger.log(xml);
}

أماكن إقامة

الموقعTypeالوصف
ContentTypesContentTypeتعداد يمثل أنواع عقد محتوى XML.

الطُرق

الطريقةنوع القيمة التي يتم إرجاعهاوصف قصير
createCdata(text)Cdataتنشئ عقدة CDATASection غير مرتبطة بالقيمة المحددة.
createComment(text)Commentتنشئ عقدة Comment غير مرتبطة بالقيمة المحددة.
createDocType(elementName)DocTypeتنشئ عقدة DocumentType غير مرتبطة لعقدة Element الجذر بالاسم المحدد.
createDocType(elementName, systemId)DocTypeتنشئ عقدة DocumentType غير مرتبطة لعقدة Element الجذر بالاسم المحدد، ورقم تعريف النظام المحدد لبيانات المجموعة الفرعية الخارجية.
createDocType(elementName, publicId, systemId)DocTypeتنشئ عقدة DocumentType غير مرتبطة لعقدة Element الجذر بالاسم المحدد، والمعرّف العام ورقم تعريف النظام المحددَين لبيانات المجموعة الفرعية الخارجية.
createDocument()Documentتنشئ مستند XML فارغًا.
createDocument(rootElement)Documentتنشئ مستند XML باستخدام عقدة Element الجذر المحددة.
createElement(name)Elementتنشئ عقدة Element غير مرتبطة بالاسم المحلي المحدّد بدون مساحة اسم.
createElement(name, namespace)Elementتنشئ عقدة Element غير مرتبطة بالاسم المحلي ومساحة الاسم المحدّدة.
createText(text)Textتنشئ عقدة Text غير مرتبطة بالقيمة المحددة.
getCompactFormat()Formatتنشئ كائن Format لإخراج مستند XML مصغّر.
getNamespace(uri)Namespaceتنشئ Namespace باستخدام معرّف الموارد المنتظم المحدد.
getNamespace(prefix, uri)Namespaceتنشئ Namespace باستخدام البادئة ومعرّف الموارد المنتظم (URI) المحددَين.
getNoNamespace()Namespaceتنشئ علامة Namespace تشير إلى عدم توفّر مساحة اسم حقيقية.
getPrettyFormat()Formatتنشئ كائن Format لإخراج مستند XML يمكن لشخص عادي قراءته.
getRawFormat()Formatتنشئ كائن Format لإخراج مستند XML غير معدَّل.
getXmlNamespace()Namespaceتنشئ Namespace ببادئة xml عادية.
parse(xml)Documentتنشئ Document من ملف XML المحدّد، بدون التحقّق من صحة XML.

الوثائق التفصيلية

createCdata(text)

تنشئ عقدة CDATASection غير مرتبطة بالقيمة المحددة.

المَعلمات

الاسمTypeالوصف
textStringالقيمة المطلوب ضبطها

استرجاع الكرة

Cdata — عقدة CDATASection التي تم إنشاؤها حديثًا


createComment(text)

تنشئ عقدة Comment غير مرتبطة بالقيمة المحددة.

المَعلمات

الاسمTypeالوصف
textStringالقيمة المطلوب ضبطها

استرجاع الكرة

Comment — عقدة Comment التي تم إنشاؤها حديثًا


createDocType(elementName)

تنشئ عقدة DocumentType غير مرتبطة لعقدة Element الجذر بالاسم المحدد.

المَعلمات

الاسمTypeالوصف
elementNameStringاسم عقدة Element الجذر المطلوب تحديدها في بيان DocType

استرجاع الكرة

DocType — عقدة DocumentType التي تم إنشاؤها حديثًا


createDocType(elementName, systemId)

تنشئ عقدة DocumentType غير مرتبطة لعقدة Element الجذر بالاسم المحدد، ورقم تعريف النظام المحدد لبيانات المجموعة الفرعية الخارجية.

المَعلمات

الاسمTypeالوصف
elementNameStringاسم عقدة Element الجذر المطلوب تحديدها في بيان DocType
systemIdStringرقم تعريف النظام لبيانات المجموعة الفرعية الخارجية المطلوب تعيينها

استرجاع الكرة

DocType — عقدة DocumentType التي تم إنشاؤها حديثًا


createDocType(elementName, publicId, systemId)

تنشئ عقدة DocumentType غير مرتبطة لعقدة Element الجذر بالاسم المحدد، والمعرّف العام ورقم تعريف النظام المحددَين لبيانات المجموعة الفرعية الخارجية.

المَعلمات

الاسمTypeالوصف
elementNameStringاسم عقدة Element الجذر المطلوب تحديدها في بيان DocType
publicIdStringالمعرّف العام لبيانات المجموعة الفرعية الخارجية التي يلزم تعيينها
systemIdStringرقم تعريف النظام لبيانات المجموعة الفرعية الخارجية المطلوب تعيينها

استرجاع الكرة

DocType — عقدة DocumentType التي تم إنشاؤها حديثًا


createDocument()

تنشئ مستند XML فارغًا.

استرجاع الكرة

Document — المستند الذي تم إنشاؤه حديثًا


createDocument(rootElement)

تنشئ مستند XML باستخدام عقدة Element الجذر المحددة.

المَعلمات

الاسمTypeالوصف
rootElementElementالعقدة Element الجذر لضبطها

استرجاع الكرة

Document — المستند الذي تم إنشاؤه حديثًا


createElement(name)

تنشئ عقدة Element غير مرتبطة بالاسم المحلي المحدّد بدون مساحة اسم.

المَعلمات

الاسمTypeالوصف
nameStringالاسم المحلي لتعيين

استرجاع الكرة

Element — عقدة Element التي تم إنشاؤها حديثًا


createElement(name, namespace)

تنشئ عقدة Element غير مرتبطة بالاسم المحلي ومساحة الاسم المحدّدة.

المَعلمات

الاسمTypeالوصف
nameStringالاسم المحلي لتعيين
namespaceNamespaceمساحة الاسم المطلوب تعيينها

استرجاع الكرة

Element — عقدة Element التي تم إنشاؤها حديثًا


createText(text)

تنشئ عقدة Text غير مرتبطة بالقيمة المحددة.

المَعلمات

الاسمTypeالوصف
textStringالقيمة المطلوب ضبطها

استرجاع الكرة

Text — عقدة Text التي تم إنشاؤها حديثًا


getCompactFormat()

تنشئ كائن Format لإخراج مستند XML مصغّر. الإعداد التلقائي للمنسّق هو ترميز UTF-8 بدون مسافة بادئة وبدون فواصل أسطر إضافية، ولكنه يتضمّن إعلان XML وترميزه.

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

استرجاع الكرة

Format — أداة التنسيق التي تم إنشاؤها حديثًا


getNamespace(uri)

تنشئ Namespace باستخدام معرّف الموارد المنتظم المحدد.

المَعلمات

الاسمTypeالوصف
uriStringمعرّف الموارد المنتظم (URI) لمساحة الاسم

استرجاع الكرة

Namespace - مساحة الاسم التي تم إنشاؤها حديثًا


getNamespace(prefix, uri)

تنشئ Namespace باستخدام البادئة ومعرّف الموارد المنتظم (URI) المحددَين.

المَعلمات

الاسمTypeالوصف
prefixStringبادئة مساحة الاسم
uriStringمعرّف الموارد المنتظم (URI) لمساحة الاسم

استرجاع الكرة

Namespace - مساحة الاسم التي تم إنشاؤها حديثًا


getNoNamespace()

تنشئ علامة Namespace تشير إلى عدم توفّر مساحة اسم حقيقية.

استرجاع الكرة

Namespace - مساحة الاسم التي تم إنشاؤها حديثًا


getPrettyFormat()

تنشئ كائن Format لإخراج مستند XML يمكن لشخص عادي قراءته. في أداة التنسيق، يتم ضبط الإعدادات التلقائية على ترميز UTF-8 والمسافة البادئة مسافتَين وفواصل الأسطر \r\n بعد كل عقدة، كما أنّها تتضمّن تعريف XML وترميزه.

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

استرجاع الكرة

Format — أداة التنسيق التي تم إنشاؤها حديثًا


getRawFormat()

تنشئ كائن Format لإخراج مستند XML غير معدَّل. الإعداد التلقائي للمنسق على ترميز UTF-8، بدون مسافة بادئة ولا فواصل أسطر غير تلك المتوفرة في مستند XML نفسه، ويتضمن إعلان XML وترميزه.

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

استرجاع الكرة

Format — أداة التنسيق التي تم إنشاؤها حديثًا


getXmlNamespace()

تنشئ Namespace ببادئة xml عادية.

استرجاع الكرة

Namespace - مساحة الاسم التي تم إنشاؤها حديثًا


parse(xml)

تنشئ Document من ملف XML المحدّد، بدون التحقّق من صحة XML.

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

المَعلمات

الاسمTypeالوصف
xmlStringملف XML المطلوب تحليله

استرجاع الكرة

Document — المستند الذي تم إنشاؤه حديثًا