تسمح هذه الخدمة للنصوص البرمجية بتحليل مستندات 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 | تمثيل لعقدة XML CDATASection . |
Comment | تمثيل لعقدة XML Comment . |
Content | تمثيل لعقدة XML عامة. |
ContentType | تعداد يمثل أنواع عقد محتوى XML. |
DocType | تمثيل لعقدة XML DocumentType . |
Document | تمثيل لمستند XML. |
Element | تمثيل لعقدة XML Element . |
EntityRef | تمثيل لعقدة XML EntityReference . |
Format | هو أداة لإخراج مستند XML، بثلاثة تنسيقات محددة مسبقًا يمكن تخصيصها بشكل أكبر. |
Namespace | تمثيل لمساحة اسم XML. |
ProcessingInstruction | تمثيل لعقدة XML ProcessingInstruction . |
Text | تمثيل لعقدة XML Text . |
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
أماكن إقامة
الموقع | Type | الوصف |
---|---|---|
CDATA | Enum | عقدة XML CDATASection . |
COMMENT | Enum | عقدة XML Comment . |
DOCTYPE | Enum | عقدة XML DocumentType . |
ELEMENT | Enum | عقدة XML Element . |
ENTITYREF | Enum | عقدة XML EntityReference . |
PROCESSINGINSTRUCTION | Enum | عقدة XML ProcessingInstruction . |
TEXT | Enum | عقدة XML Text . |
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
أماكن إقامة
الموقع | Type | الوصف |
---|---|---|
ContentTypes | ContentType | تعداد يمثل أنواع عقد محتوى 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. |