Class XmlService

XmlService

שירות זה מאפשר לסקריפטים לנתח, לנווט וליצור מסמכי XML באופן פרוגרמטי.

// Log the title and labels for the first page of blog posts on the
// Google Workspace Developer blog.
function parseXml() {
  var url = 'https://gsuite-developers.googleblog.com/atom.xml';
  var xml = UrlFetchApp.fetch(url).getContentText();
  var document = XmlService.parse(xml);
  var root = document.getRootElement();
  var atom = XmlService.getNamespace('http://www.w3.org/2005/Atom');

  var entries = root.getChildren('entry', atom);
  for (var i = 0; i < entries.length; i++) {
    var title = entries[i].getChild('title', atom).getText();
    var categoryElements = entries[i].getChildren('category', atom);
    var labels = [];
    for (var j = 0; j < categoryElements.length; j++) {
      labels.push(categoryElements[j].getAttribute('term').getValue());
    }
    Logger.log('%s (%s)', title, labels.join(', '));
  }
}

// Create and log an XML representation of the threads in your Gmail inbox.
function createXml() {
  var root = XmlService.createElement('threads');
  var threads = GmailApp.getInboxThreads();
  for (var i = 0; i < threads.length; i++) {
    var child = XmlService.createElement('thread')
        .setAttribute('messageCount', threads[i].getMessageCount())
        .setAttribute('isUnread', threads[i].isUnread())
        .setText(threads[i].getFirstMessageSubject());
    root.addContent(child);
  }
  var document = XmlService.createDocument(root);
  var xml = XmlService.getPrettyFormat().format(document);
  Logger.log(xml);
}

תכונות

נכסתיאורהתיאור
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.

תיעוד מפורט

createCdata(text)

יוצרת צומת CDATASection לא מצורף עם הערך הנתון.

פרמטרים

שםתיאורהתיאור
textStringהערך שצריך להגדיר

החזרות

Cdata - צומת CDATASection החדש שנוצר


createComment(text)

יוצרת צומת Comment לא מצורף עם הערך הנתון.

פרמטרים

שםתיאורהתיאור
textStringהערך שצריך להגדיר

החזרות

Comment - צומת Comment החדש שנוצר


createDocType(elementName)

יוצרת צומת DocumentType לא מצורף לצומת השורש Element עם השם הנתון.

פרמטרים

שםתיאורהתיאור
elementNameStringהשם של צומת הבסיס Element שיש לציין בהצהרה DocType

החזרות

DocType - צומת DocumentType החדש שנוצר


createDocType(elementName, systemId)

יוצרת צומת DocumentType לא מצורף עבור צומת הבסיס Element עם השם הנתון ומזהה מערכת נתון לנתוני קבוצת המשנה החיצונית.

פרמטרים

שםתיאורהתיאור
elementNameStringהשם של צומת הבסיס Element שיש לציין בהצהרה DocType
systemIdStringאת מזהה המערכת של נתוני קבוצת המשנה החיצוניים שיש להגדיר.

החזרות

DocType - צומת DocumentType החדש שנוצר


createDocType(elementName, publicId, systemId)

יוצרת צומת DocumentType לא מצורף עבור צומת הבסיס Element עם השם הנתון, ואת המזהה הציבורי ומזהה המערכת שצוינו עבור נתוני קבוצת המשנה החיצונית.

פרמטרים

שםתיאורהתיאור
elementNameStringהשם של צומת הבסיס Element שיש לציין בהצהרה DocType
publicIdStringהמזהה הציבורי של נתוני קבוצת המשנה החיצונית שיש להגדיר.
systemIdStringאת מזהה המערכת של נתוני קבוצת המשנה החיצוניים שיש להגדיר.

החזרות

DocType - צומת DocumentType החדש שנוצר


createDocument()

יוצר מסמך XML ריק.

החזרות

Document - המסמך החדש שנוצר


createDocument(rootElement)

יוצרת מסמך XML עם צומת הבסיס Element הנתון.

פרמטרים

שםתיאורהתיאור
rootElementElementאת הצומת הבסיסי (root) Element שצריך להגדיר

החזרות

Document - המסמך החדש שנוצר


createElement(name)

יוצר צומת Element לא מצורף, עם השם המקומי הנתון וללא מרחב שמות.

פרמטרים

שםתיאורהתיאור
nameStringהשם המקומי להגדרה

החזרות

Element - צומת Element החדש שנוצר


createElement(name, namespace)

יוצר צומת Element לא מצורף עם השם המקומי ומרחב השמות שצוינו.

פרמטרים

שםתיאורהתיאור
nameStringהשם המקומי להגדרה
namespaceNamespaceמרחב השמות שצריך להגדיר

החזרות

Element - צומת Element החדש שנוצר


createText(text)

יוצרת צומת Text לא מצורף עם הערך הנתון.

פרמטרים

שםתיאורהתיאור
textStringהערך שצריך להגדיר

החזרות

Text - צומת Text החדש שנוצר


getCompactFormat()

יוצר אובייקט Format ליצירת פלט של מסמך XML קומפקטי. כלי העיצוב משתמש כברירת מחדל בקידוד UTF-8, ללא כניסות פסקה וללא מעברי שורה נוספים, אבל הוא כולל את הצהרת ה-XML ואת הקידוד שלה.

// Log an XML document in compact form.
var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
var document = XmlService.parse(xml);
var output = XmlService.getCompactFormat()
    .format(document);
Logger.log(output);

החזרות

Format – המעצב החדש שנוצר


getNamespace(uri)

הפונקציה יוצרת Namespace עם ה-URI הנתון.

פרמטרים

שםתיאורהתיאור
uriStringה-URI של מרחב השמות

החזרות

Namespace - מרחב השמות החדש שנוצר


getNamespace(prefix, uri)

הפונקציה יוצרת Namespace עם הקידומת וה-URI הנתונים.

פרמטרים

שםתיאורהתיאור
prefixStringהקידומת של מרחב השמות
uriStringה-URI של מרחב השמות

החזרות

Namespace - מרחב השמות החדש שנוצר


getNoNamespace()

הפונקציה יוצרת Namespace שמייצג את היעדר מרחב שמות אמיתי.

החזרות

Namespace - מרחב השמות החדש שנוצר


getPrettyFormat()

יוצר אובייקט Format לפלט של מסמך XML קריא (לבני אדם). כלי העיצוב משתמש כברירת מחדל בקידוד UTF-8, בכניסת פסקה עם שני רווחים ובמפרידי השורות \r\n אחרי כל צומת, והוא כולל את הצהרת ה-XML ואת הקידוד שלה.

// Log an XML document in human-readable form.
var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
var document = XmlService.parse(xml);
var output = XmlService.getPrettyFormat()
    .format(document);
Logger.log(output);

החזרות

Format – המעצב החדש שנוצר


getRawFormat()

יוצר אובייקט Format לפלט של מסמך XML גולמי. ברירת המחדל של התבנית היא קידוד UTF-8, ללא כניסות פסקה וללא מעברי שורה, מלבד אלה שסופקו במסמך ה-XML עצמו. הפורמט כולל את הצהרת ה-XML ואת הקידוד שלה.

// Log an XML document in raw form.
var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
var document = XmlService.parse(xml);
var output = XmlService.getRawFormat()
    .format(document);
Logger.log(output);

החזרות

Format – המעצב החדש שנוצר


getXmlNamespace()

הפונקציה יוצרת Namespace עם הקידומת xml הרגילה.

החזרות

Namespace - מרחב השמות החדש שנוצר


parse(xml)

יוצר Document מה-XML הנתון, ללא אימות ה-XML.

var xml = '<root><a><b>Text!</b><b>More text!</b></a></root>';
var doc = XmlService.parse(xml);

פרמטרים

שםתיאורהתיאור
xmlStringקובץ ה-XML לניתוח

החזרות

Document - המסמך החדש שנוצר