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

Methods

שיטהסוג הערך המוחזרתיאור קצר
getName()Stringהפונקציה מקבלת את השם המקומי של המאפיין.
getNamespace()Namespaceהפונקציה מקבלת את מרחב השמות של המאפיין.
getValue()Stringהפונקציה מקבלת את הערך של המאפיין.
setName(name)Attributeהגדרת השם המקומי של המאפיין.
setNamespace(namespace)Attributeהגדרת מרחב השמות של המאפיין.
setValue(value)Attributeהגדרת הערך של המאפיין.

Cdata

Methods

שיטהסוג הערך המוחזרתיאור קצר
append(text)Textהוספת הטקסט הנתון לכל תוכן שכבר קיים בצומת.
detach()Contentניתוק הצומת מצומת ההורה Element.
getParentElement()Elementהפונקציה מקבלת את צומת ההורה Element של הצומת.
getText()Stringהפונקציה מקבלת את ערך הטקסט של הצומת Text.
getValue()Stringהפונקציה מקבלת את ערך הטקסט של כל הצמתים שהם צאצאים ישירים או עקיפים של הצומת, לפי הסדר שבו הם מופיעים במסמך.
setText(text)Textהגדרת ערך הטקסט של הצומת Text.

Comment

Methods

שיטהסוג הערך המוחזרתיאור קצר
detach()Contentניתוק הצומת מצומת ההורה Element.
getParentElement()Elementהפונקציה מקבלת את צומת ההורה Element של הצומת.
getText()Stringהפונקציה מקבלת את ערך הטקסט של הצומת Comment.
getValue()Stringהפונקציה מקבלת את ערך הטקסט של כל הצמתים שהם צאצאים ישירים או עקיפים של הצומת, לפי הסדר שבו הם מופיעים במסמך.
setText(text)Commentהגדרת ערך הטקסט של הצומת Comment.

Content

Methods

שיטהסוג הערך המוחזרתיאור קצר
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

Methods

שיטהסוג הערך המוחזרתיאור קצר
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

Methods

שיטהסוג הערך המוחזרתיאור קצר
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 ברמה הבסיסית (root).
removeContent()Content[]הסרה של כל הצמתים שהם צאצאים מיידיים של המסמך.
removeContent(content)Booleanהסרת הצומת הנתון, אם הצומת הוא צאצא מיידי של המסמך.
removeContent(index)Contentהסרת הצומת שבאינדקס הנתון מבין כל הצמתים שהם צאצאים מיידיים של המסמך.
setDocType(docType)Documentהגדרת ההצהרה DocType של המסמך.
setRootElement(element)Documentהגדרת הצומת Element ברמה הבסיסית של המסמך.

Element

Methods

שיטהסוג הערך המוחזרתיאור קצר
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

Methods

שיטהסוג הערך המוחזרתיאור קצר
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

Methods

שיטהסוג הערך המוחזרתיאור קצר
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

Methods

שיטהסוג הערך המוחזרתיאור קצר
getPrefix()Stringהפונקציה מקבלת את הקידומת של מרחב השמות.
getURI()Stringהפונקציה מקבלת את ה-URI של מרחב השמות.

ProcessingInstruction

Methods

שיטהסוג הערך המוחזרתיאור קצר
detach()Contentניתוק הצומת מצומת ההורה Element.
getData()Stringהפונקציה מקבלת את הנתונים הגולמיים של כל הוראה בצומת ProcessingInstruction.
getParentElement()Elementהפונקציה מקבלת את צומת ההורה Element של הצומת.
getTarget()Stringהפונקציה מקבלת את היעד של הצומת ProcessingInstruction.
getValue()Stringהפונקציה מקבלת את ערך הטקסט של כל הצמתים שהם צאצאים ישירים או עקיפים של הצומת, לפי הסדר שבו הם מופיעים במסמך.

Text

Methods

שיטהסוג הערך המוחזרתיאור קצר
append(text)Textהוספת הטקסט הנתון לכל תוכן שכבר קיים בצומת.
detach()Contentניתוק הצומת מצומת ההורה Element.
getParentElement()Elementהפונקציה מקבלת את צומת ההורה Element של הצומת.
getText()Stringהפונקציה מקבלת את ערך הטקסט של הצומת Text.
getValue()Stringהפונקציה מקבלת את ערך הטקסט של כל הצמתים שהם צאצאים ישירים או עקיפים של הצומת, לפי הסדר שבו הם מופיעים במסמך.
setText(text)Textהגדרת ערך הטקסט של הצומת Text.

XmlService

מאפיינים

נכססוגתיאור
ContentTypesContentTypeספירה מייצגת את סוגי צמתים של תוכן XML.

Methods

שיטהסוג הערך המוחזרתיאור קצר
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.