XML Service

خدمة XML

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

// 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);
}

صفوف

الاسموصف قصير
Attributeتمثّل هذه السمة تمثيل سمة XML.
Cdataتمثّل هذه السمة عقدة CDATASection بتنسيق XML.
Commentتمثّل هذه السمة عقدة Comment بتنسيق XML.
Contentتمثّل هذه السمة عقدة XML عامة.
ContentTypeتعداد يمثل أنواع عُقد محتوى XML.
DocTypeتمثّل هذه السمة عقدة DocumentType بتنسيق XML.
Documentتمثيل لمستند XML
Elementتمثّل هذه السمة عقدة Element بتنسيق XML.
EntityRefتمثّل هذه السمة عقدة EntityReference بتنسيق XML.
Formatهي أداة تنسيق لإخراج مستند XML بثلاثة تنسيقات محددة مسبقًا يمكن المخصصة.
Namespaceتمثّل هذه السمة مساحة اسم XML.
ProcessingInstructionتمثّل هذه السمة عقدة ProcessingInstruction بتنسيق XML.
Textتمثّل هذه السمة عقدة Text بتنسيق XML.
XmlServiceتسمح هذه الخدمة للنصوص البرمجية بتحليل مستندات XML والتنقل بينها وإنشائها آليًا.

Attribute

الطُرق

الطريقةنوع الإرجاعوصف قصير
getName()Stringتحصل على الاسم المحلي للسمة.
getNamespace()Namespaceتحصل على مساحة الاسم للسمة.
getValue()Stringتحصل على قيمة السمة.
setName(name)Attributeلضبط الاسم المحلي للسمة.
setNamespace(namespace)Attributeيعيّن مساحة الاسم للسمة.
setValue(value)Attributeلتعيين قيمة السمة.

Cdata

الطُرق

الطريقةنوع الإرجاعوصف قصير
append(text)Textلإلحاق النص المحدَّد بأي محتوى موجود في العقدة.
detach()Contentلفصل العقدة عن عقدة Element الرئيسية.
getParentElement()Elementتحصل على عقدة Element الرئيسية للعقدة.
getText()Stringللحصول على القيمة النصية للعقدة Text.
getValue()Stringتحصل على القيمة النصية لجميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للعقدة، بالترتيب ستظهر في الوثيقة.
setText(text)Textتحدد القيمة النصية للعقدة Text.

Comment

الطُرق

الطريقةنوع الإرجاعوصف قصير
detach()Contentلفصل العقدة عن عقدة Element الرئيسية.
getParentElement()Elementتحصل على عقدة Element الرئيسية للعقدة.
getText()Stringللحصول على القيمة النصية للعقدة Comment.
getValue()Stringتحصل على القيمة النصية لجميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للعقدة، بالترتيب ستظهر في الوثيقة.
setText(text)Commentتحدد القيمة النصية للعقدة Comment.

Content

الطُرق

الطريقةنوع الإرجاعوصف قصير
asCdata()Cdataيعرض العقدة كعقدة CDATASection لأغراض الإكمال التلقائي.
asComment()Commentيعرض العقدة كعقدة Comment لأغراض الإكمال التلقائي.
asDocType()DocTypeيعرض العقدة كعقدة DocumentType لأغراض الإكمال التلقائي.
asElement()Elementيعرض العقدة كعقدة Element لأغراض الإكمال التلقائي.
asEntityRef()EntityRefيعرض العقدة كعقدة EntityReference لأغراض الإكمال التلقائي.
asProcessingInstruction()ProcessingInstructionيعرض العقدة كعقدة ProcessingInstruction لأغراض الإكمال التلقائي.
asText()Textيعرض العقدة كعقدة Text لأغراض الإكمال التلقائي.
detach()Contentلفصل العقدة عن عقدة Element الرئيسية.
getParentElement()Elementتحصل على عقدة Element الرئيسية للعقدة.
getType()ContentTypeللحصول على نوع محتوى العقدة.
getValue()Stringتحصل على القيمة النصية لجميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للعقدة، بالترتيب ستظهر في الوثيقة.

ContentType

أماكن إقامة

الموقعالنوعالوصف
CDATAEnumعقدة CDATASection XML.
COMMENTEnumعقدة Comment XML.
DOCTYPEEnumعقدة DocumentType XML.
ELEMENTEnumعقدة Element XML.
ENTITYREFEnumعقدة EntityReference XML.
PROCESSINGINSTRUCTIONEnumعقدة ProcessingInstruction XML.
TEXTEnumعقدة Text XML.

DocType

الطُرق

الطريقةنوع الإرجاعوصف قصير
detach()Contentلفصل العقدة عن عقدة Element الرئيسية.
getElementName()Stringيحصل على اسم العقدة الجذر Element المحددة في تعريف DocType.
getInternalSubset()Stringالحصول على بيانات المجموعة الفرعية الداخلية للعقدة DocumentType.
getParentElement()Elementتحصل على عقدة Element الرئيسية للعقدة.
getPublicId()Stringالحصول على المعرّف العلني لبيانات المجموعة الفرعية الخارجية للعقدة DocumentType.
getSystemId()Stringالحصول على رقم تعريف النظام لبيانات المجموعة الفرعية الخارجية للعقدة DocumentType.
getValue()Stringتحصل على القيمة النصية لجميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للعقدة، بالترتيب ستظهر في الوثيقة.
setElementName(name)DocTypeلضبط اسم العقدة الجذر Element لتحديدها في DocType .
setInternalSubset(data)DocTypeتحدِّد هذه السياسة بيانات المجموعة الفرعية الداخلية للعقدة DocumentType.
setPublicId(id)DocTypeتضبط هذه السياسة المعرّف العلني لبيانات المجموعة الفرعية الخارجية للعقدة DocumentType.
setSystemId(id)DocTypeتضبط هذه السياسة رقم تعريف النظام لبيانات المجموعة الفرعية الخارجية في عقدة DocumentType.

Document

الطُرق

الطريقةنوع الإرجاعوصف قصير
addContent(content)Documentلإلحاق العقدة المحددة بنهاية المستند.
addContent(index, content)Documentإدراج العقدة المحددة في الفهرس المحدد بين جميع العُقد التي تعتبر عناصر ثانوية مباشرة جلسة المراجعة.
cloneContent()Content[]ينشئ نسخًا غير مرفقة من جميع العُقد التي تمثل عناصر ثانوية مباشرة للمستند.
detachRootElement()Elementلفصل عقدة Element الجذر في المستند وعرضها.
getAllContent()Content[]الحصول على جميع العُقد التي تمثل عناصر ثانوية مباشرة للمستند.
getContent(index)Contentيحصل على العقدة في الفهرس المحدد بين جميع العقد التي تعتبر عناصر ثانوية مباشرة جلسة المراجعة.
getContentSize()Integerالحصول على عدد العُقد التي تعتبر عناصر ثانوية مباشرة للمستند.
getDescendants()Content[]تجلب جميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للمستند، بالترتيب في المستند.
getDocType()DocTypeالحصول على بيان DocType الخاص بالمستند
getRootElement()Elementللحصول على عقدة Element الجذرية للمستند.
hasRootElement()Booleanتحدِّد هذه السياسة ما إذا كان المستند يتضمّن عقدة Element جذرية.
removeContent()Content[]إزالة جميع العُقد التي تمثل عناصر ثانوية مباشرة للمستند.
removeContent(content)Booleanإزالة العقدة المحددة، إذا كانت تابعة مباشرة للمستند.
removeContent(index)Contentإزالة العقدة في الفهرس المحدد من بين جميع العُقد التي تعتبر عناصر ثانوية مباشرة جلسة المراجعة.
setDocType(docType)Documentتضبط هذه السياسة بيان DocType للمستند.
setRootElement(element)Documentتضبط هذه السياسة عُقدة Element الجذر للمستند.

Element

الطُرق

الطريقةنوع الإرجاعوصف قصير
addContent(content)Elementتُرفِق هذه الدالة العقدة المحدّدة بأنّها آخر عنصر ثانوي في Element.
addContent(index, content)Elementإدراج العقدة المحددة في الفهرس المحدد بين جميع العُقد التي تعتبر عناصر ثانوية مباشرة عقدة Element.
cloneContent()Content[]تنشئ نُسخًا غير مرفقة من جميع العُقد التي تعتبر ثانوية مباشرة للعقدة {@code Element}.
detach()Contentلفصل العقدة عن عقدة Element الرئيسية.
getAllContent()Content[]يحصل على جميع العُقد التي تعتبر ثانوية مباشرة لعقدة {@code Element}.
getAttribute(name)Attributeتحصل على السمة للعقدة Element هذه بالاسم المحدّد بدون مساحة اسم.
getAttribute(name, namespace)Attributeتحصل على السمة للعقدة Element هذه بالاسم المحدّد ومساحة الاسم.
getAttributes()Attribute[]تجمع هذه السمة جميع السمات لعقدة Element هذه، بالترتيب الذي تظهر به في المستند.
getChild(name)Elementتحصل على أول عقدة Element بالاسم المحدّد بدون مساحة اسم فورية. تابعة للعقدة Element هذه.
getChild(name, namespace)Elementتحصل على أول عقدة Element بالاسم المحدّد ومساحة الاسم المحددة تابعة للعقدة Element هذه.
getChildText(name)Stringتحصل على القيمة النصية للعقدة بالاسم المحدد بدون مساحة اسم، إذا كانت العقدة تابعة مباشرة للعقدة Element.
getChildText(name, namespace)Stringتحصل على القيمة النصية للعقدة بالاسم المحدد ومساحة الاسم، إذا كانت العقدة مباشرة تابعة للعقدة Element.
getChildren()Element[]جلب جميع العُقد Element التي تعتبر ثانوية مباشرة لهذه العقدة Element، في الترتيب الذي تظهر به في الوثيقة.
getChildren(name)Element[]الحصول على جميع عُقد Element بالاسم المحدّد بدون مساحة اسم ثانوية مباشرة من عقدة Element هذه، بالترتيب الذي تظهر به في المستند.
getChildren(name, namespace)Element[]الحصول على جميع عُقد Element بالاسم المحدّد ومساحة الاسم التي تكون ثانوية مباشرة عقدة Element هذه، بالترتيب الذي تظهر به في المستند.
getContent(index)Contentيحصل على العقدة في الفهرس المحدد بين جميع العقد التي تعتبر عناصر ثانوية مباشرة العقدة {@code Element}
getContentSize()Integerتحصل على عدد العُقد التي تعتبر ثانوية مباشرة لعقدة {@code Element}.
getDescendants()Content[]تجلب جميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للعقدة {@code Element}، بالترتيب الذي في المستند.
getDocument()Documentاحصل على مستند XML الذي يحتوي على العقدة {@code Element}.
getName()Stringللحصول على الاسم المحلي للعقدة Element.
getNamespace()Namespaceللحصول على مساحة الاسم للعقدة Element.
getNamespace(prefix)Namespaceتحصل على مساحة الاسم بالبادئة المحددة للعقدة Element.
getParentElement()Elementتحصل على عقدة Element الرئيسية للعقدة.
getQualifiedName()Stringتحصل على الاسم المحلي وبادئة مساحة الاسم للعقدة Element، بالتنسيق [namespacePrefix]:[localName].
getText()Stringللحصول على القيمة النصية للعقدة Element.
getValue()Stringتحصل على القيمة النصية لجميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للعقدة، بالترتيب ستظهر في الوثيقة.
isAncestorOf(other)Booleanتحدِّد هذه السياسة ما إذا كانت عقدة Element هذه مصدرًا رئيسيًا مباشرًا أو غير مباشر لعقدة Element معيّنة.
isRootElement()Booleanتحدد ما إذا كانت العقدة Element هي العقدة الجذرية للمستند.
removeAttribute(attribute)Booleanتزيل السمة المحدّدة لعقدة Element هذه، في حال توفّر هذه السمة.
removeAttribute(attributeName)Booleanتزيل السمة الخاصة بالعقدة Element هذه التي تتضمّن الاسم المحدّد بدون مساحة اسم، إذا توجد مثل هذه السمة.
removeAttribute(attributeName, namespace)Booleanتزيل السمة الخاصة بالعقدة Element هذه التي تتضمّن الاسم المحدَّد ومساحة الاسم، إذا كانت وجود سمة.
removeContent()Content[]إزالة جميع العُقد التي تعتبر ثانوية مباشرة للعقدة {@code Element}
removeContent(content)Booleanإزالة العقدة المحددة، إذا كانت العقدة الثانوية المباشرة لعقدة {@code Element}.
removeContent(index)Contentإزالة العقدة في الفهرس المحدد من بين جميع العُقد التي تعتبر عناصر ثانوية مباشرة العقدة {@code Element}
setAttribute(attribute)Elementتضبط السمة المحدّدة لعقدة Element هذه.
setAttribute(name, value)Elementتضبط السمة لعقدة Element هذه بالاسم المحدّد والقيمة بدون مساحة اسم.
setAttribute(name, value, namespace)Elementتضبط السمة لعقدة Element هذه بالاسم والقيمة ومساحة الاسم المحدّدة.
setName(name)Elementتحدّد هذه السياسة الاسم المحلي للعقدة Element.
setNamespace(namespace)Elementلضبط مساحة الاسم للعقدة Element
setText(text)Elementتحدد القيمة النصية للعقدة Element.

EntityRef

الطُرق

الطريقةنوع الإرجاعوصف قصير
detach()Contentلفصل العقدة عن عقدة Element الرئيسية.
getName()Stringيحصل على اسم العقدة EntityReference.
getParentElement()Elementتحصل على عقدة Element الرئيسية للعقدة.
getPublicId()Stringالحصول على المعرّف العلني للعقدة EntityReference
getSystemId()Stringالحصول على رقم تعريف النظام للعقدة EntityReference.
getValue()Stringتحصل على القيمة النصية لجميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للعقدة، بالترتيب ستظهر في الوثيقة.
setName(name)EntityRefتحدد اسم العقدة EntityReference.
setPublicId(id)EntityRefتضبط هذه السياسة المعرّف العلني للعقدة EntityReference.
setSystemId(id)EntityRefتضبط هذه السياسة رقم تعريف النظام للعقدة EntityReference.

Format

الطُرق

الطريقةنوع الإرجاعوصف قصير
format(document)Stringإخراج Document المحدد كسلسلة منسَّقة.
format(element)Stringإخراج العقدة Element المحددة كسلسلة منسَّقة.
setEncoding(encoding)Formatلضبط ترميز الأحرف الذي يجب أن تستخدمه أداة التنسيق.
setIndent(indent)Formatلضبط السلسلة المستخدمة لإضافة مسافة بادئة للعُقد الفرعية بالنسبة إلى عناصرها الرئيسية.
setLineSeparator(separator)Formatلضبط السلسلة لإدراجها عندما تُدرج أداة التنسيق عادةً فاصل أسطر.
setOmitDeclaration(omitDeclaration)Formatوتحدّد هذه السياسة ما إذا كان يجب أن تحذِف أداة التنسيق تعريف XML، مثل <?xml version="1.0" encoding="UTF-8"?>.
setOmitEncoding(omitEncoding)Formatلتحديد ما إذا كان يجب على مسؤول التنسيق أن يحذف الترميز في إعلان XML، مثل حقل الترميز باللغة <?xml version="1.0" encoding="UTF-8"?>.

Namespace

الطُرق

الطريقةنوع الإرجاعوصف قصير
getPrefix()Stringالحصول على بادئة مساحة الاسم.
getURI()Stringللحصول على معرّف الموارد المنتظم (URI) لمساحة الاسم.

ProcessingInstruction

الطُرق

الطريقةنوع الإرجاعوصف قصير
detach()Contentلفصل العقدة عن عقدة Element الرئيسية.
getData()Stringالحصول على البيانات الأولية لكل تعليمات في عقدة ProcessingInstruction
getParentElement()Elementتحصل على عقدة Element الرئيسية للعقدة.
getTarget()Stringالحصول على الهدف للعقدة ProcessingInstruction.
getValue()Stringتحصل على القيمة النصية لجميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للعقدة، بالترتيب ستظهر في الوثيقة.

Text

الطُرق

الطريقةنوع الإرجاعوصف قصير
append(text)Textلإلحاق النص المحدَّد بأي محتوى موجود في العقدة.
detach()Contentلفصل العقدة عن عقدة Element الرئيسية.
getParentElement()Elementتحصل على عقدة Element الرئيسية للعقدة.
getText()Stringللحصول على القيمة النصية للعقدة Text.
getValue()Stringتحصل على القيمة النصية لجميع العُقد التي تمثل عناصر ثانوية مباشرة أو غير مباشرة للعقدة، بالترتيب ستظهر في الوثيقة.
setText(text)Textتحدد القيمة النصية للعقدة Text.

XmlService

أماكن إقامة

الموقعالنوعالوصف
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 باستخدام معرّف الموارد المنتظم (URI) المحدّد.
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.