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 באופן פרוגרמטי.

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מגדירה את השם של צומת הבסיס 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.