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ייצוג של צומת 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, לנווט בהם וליצור מסמכי 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צומת XML CDATASection.
COMMENTEnumצומת XML Comment.
DOCTYPEEnumצומת XML DocumentType.
ELEMENTEnumצומת XML Element.
ENTITYREFEnumצומת XML EntityReference.
PROCESSINGINSTRUCTIONEnumצומת XML ProcessingInstruction.
TEXTEnumצומת 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הגדרת השם של צומת הרמה הבסיסית (root) 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 הוא צומת הרמה הבסיסית (root) של המסמך.
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 עם צומת הרמה הבסיסית (root) 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.