Эта служба позволяет сценариям анализировать, перемещаться и программно создавать 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 | Представление узла CommentXML. | 
| Content | Представление общего узла XML. | 
| Content Type | Перечисление, представляющее типы узлов содержимого XML. | 
| Doc Type | Представление узла Document Type. | 
| Document | Представление XML-документа. | 
| Element | Представление узла ElementXML. | 
| Entity Ref | Представление узла Entity ReferenceXML. | 
| Format | Средство форматирования для вывода XML-документа с тремя предопределенными форматами, которые можно дополнительно настроить. | 
| Namespace | Представление пространства имен XML. | 
| Processing Instruction | Представление узла Processing InstructionXML. | 
| Text | Представление узла XML Text. | 
| Xml Service | Эта служба позволяет сценариям анализировать, перемещаться и программно создавать XML-документы. | 
 Attribute
 Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| get Name() | String | Получает локальное имя атрибута. | 
| get Namespace() | Namespace | Получает пространство имен для атрибута. | 
| get Value() | String | Получает значение атрибута. | 
| set Name(name) | Attribute | Устанавливает локальное имя атрибута. | 
| set Namespace(namespace) | Attribute | Устанавливает пространство имен для атрибута. | 
| set Value(value) | Attribute | Устанавливает значение атрибута. | 
 Cdata
 Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| append(text) | Text | Добавляет заданный текст к любому содержимому, которое уже существует в узле. | 
| detach() | Content | Отсоединяет узел от его родительского узла Element. | 
| get Parent Element() | Element | Получает родительский узел Elementузла. | 
| get Text() | String | Получает текстовое значение узла Text. | 
| get Value() | String | Получает текстовое значение всех узлов, которые являются прямыми или косвенными дочерними элементами узла, в том порядке, в котором они появляются в документе. | 
| set Text(text) | Text | Устанавливает текстовое значение узла Text. | 
 Comment
 Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| detach() | Content | Отсоединяет узел от его родительского узла Element. | 
| get Parent Element() | Element | Получает родительский узел Elementузла. | 
| get Text() | String | Получает текстовое значение узла Comment. | 
| get Value() | String | Получает текстовое значение всех узлов, которые являются прямыми или косвенными дочерними элементами узла, в том порядке, в котором они появляются в документе. | 
| set Text(text) | Comment | Устанавливает текстовое значение узла Comment. | 
 Content
 Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| as Cdata() | Cdata | Преобразует узел как узел CDATASectionдля целей автозаполнения. | 
| as Comment() | Comment | Преобразует узел в качестве узла Commentдля целей автозаполнения. | 
| as Doc Type() | Doc Type | Преобразует узел как узел Document Typeдля целей автозаполнения. | 
| as Element() | Element | Преобразует узел как узел Elementдля целей автозаполнения. | 
| as Entity Ref() | Entity Ref | Преобразует узел как узел Entity Referenceдля целей автозаполнения. | 
| as Processing Instruction() | Processing Instruction | Преобразует узел как узел Processing Instructionдля целей автозаполнения. | 
| as Text() | Text | Преобразует узел как Textузел для целей автозаполнения. | 
| detach() | Content | Отсоединяет узел от его родительского узла Element. | 
| get Parent Element() | Element | Получает родительский узел Elementузла. | 
| get Type() | Content Type | Получает тип контента узла. | 
| get Value() | String | Получает текстовое значение всех узлов, которые являются прямыми или косвенными дочерними элементами узла, в том порядке, в котором они появляются в документе. | 
 Content Type 
Характеристики
| Свойство | Тип | Описание | 
|---|---|---|
| CDATA | Enum | Узел XML CDATASection. | 
| COMMENT | Enum | Узел CommentXML. | 
| DOCTYPE | Enum | Узел Document Type. | 
| ELEMENT | Enum | Узел ElementXML. | 
| ENTITYREF | Enum | Узел Entity ReferenceXML. | 
| PROCESSINGINSTRUCTION | Enum | Узел Processing InstructionXML. | 
| TEXT | Enum | Узел XML Text. | 
 Doc Type 
Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| detach() | Content | Отсоединяет узел от его родительского узла Element. | 
| get Element Name() | String | Получает имя корневого узла Elementуказанное в объявленииDoc Type. | 
| get Internal Subset() | String | Получает внутренние данные подмножества для узла Document Type. | 
| get Parent Element() | Element | Получает родительский узел Elementузла. | 
| get Public Id() | String | Получает общедоступный идентификатор данных внешнего подмножества для узла Document Type. | 
| get System Id() | String | Получает системный идентификатор внешнего подмножества данных для узла Document Type. | 
| get Value() | String | Получает текстовое значение всех узлов, которые являются прямыми или косвенными дочерними элементами узла, в том порядке, в котором они появляются в документе. | 
| set Element Name(name) | Doc Type | Задает имя корневого узла Element, которое необходимо указать в объявленииDoc Type. | 
| set Internal Subset(data) | Doc Type | Устанавливает внутренние данные подмножества для узла Document Type. | 
| set Public Id(id) | Doc Type | Устанавливает общедоступный идентификатор данных внешнего подмножества для узла Document Type. | 
| set System Id(id) | Doc Type | Задает системный идентификатор внешнего подмножества данных для узла Document Type. | 
 Document
 Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| add Content(content) | Document | Добавляет данный узел в конец документа. | 
| add Content(index, content) | Document | Вставляет данный узел по заданному индексу среди всех узлов, которые являются непосредственными дочерними элементами документа. | 
| clone Content() | Content[] | Создает неприсоединенные копии всех узлов, которые являются непосредственными дочерними элементами документа. | 
| detach Root Element() | Element | Отключает и возвращает корневой узел Elementдокумента. | 
| get All Content() | Content[] | Получает все узлы, являющиеся непосредственными дочерними элементами документа. | 
| get Content(index) | Content | Получает узел по заданному индексу среди всех узлов, которые являются непосредственными дочерними элементами документа. | 
| get Content Size() | Integer | Получает количество узлов, которые являются непосредственными дочерними элементами документа. | 
| get Descendants() | Content[] | Получает все узлы, являющиеся прямыми или косвенными дочерними элементами документа, в том порядке, в котором они появляются в документе. | 
| get Doc Type() | Doc Type | Получает объявление Doc Typeдокумента. | 
| get Root Element() | Element | Получает корневой узел Elementдокумента. | 
| has Root Element() | Boolean | Определяет, имеет ли документ корневой узел Element. | 
| remove Content() | Content[] | Удаляет все узлы, которые являются непосредственными дочерними элементами документа. | 
| remove Content(content) | Boolean | Удаляет данный узел, если узел является непосредственным дочерним элементом документа. | 
| remove Content(index) | Content | Удаляет узел по заданному индексу среди всех узлов, которые являются непосредственными дочерними элементами документа. | 
| set Doc Type(docType) | Document | Устанавливает объявление Doc Type. | 
| set Root Element(element) | Document | Устанавливает корневой узел Elementдокумента. | 
 Element
 Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| add Content(content) | Element | Добавляет данный узел как последний дочерний элемент узла Element. | 
| add Content(index, content) | Element | Вставляет данный узел по заданному индексу среди всех узлов, которые являются непосредственными дочерними элементами узла Element. | 
| clone Content() | Content[] | Создает неприсоединенные копии всех узлов, которые являются непосредственными дочерними элементами узла {@code Element}. | 
| detach() | Content | Отсоединяет узел от его родительского узла Element. | 
| get All Content() | Content[] | Получает все узлы, которые являются непосредственными дочерними элементами узла {@code Element}. | 
| get Attribute(name) | Attribute | Получает атрибут для этого узла Elementс заданным именем и без пространства имен. | 
| get Attribute(name, namespace) | Attribute | Получает атрибут для этого узла Elementс заданным именем и пространством имен. | 
| get Attributes() | Attribute[] | Получает все атрибуты для этого узла Elementв том порядке, в котором они появляются в документе. | 
| get Child(name) | Element | Получает первый узел Elementс заданным именем и без пространства имен, который является непосредственным дочерним элементом этого узлаElement. | 
| get Child(name, namespace) | Element | Получает первый узел Elementс заданным именем и пространством имен, который является непосредственным дочерним элементом этого узлаElement. | 
| get Child Text(name) | String | Получает текстовое значение узла с заданным именем и без пространства имен, если узел является непосредственным дочерним элементом узла Element. | 
| get Child Text(name, namespace) | String | Получает текстовое значение узла с заданным именем и пространством имен, если узел является непосредственным дочерним элементом узла Element. | 
| get Children() | Element[] | Получает все узлы Element, которые являются непосредственными дочерними элементами этого узлаElement, в том порядке, в котором они появляются в документе. | 
| get Children(name) | Element[] | Получает все узлы Elementс заданным именем и без пространства имен, которые являются непосредственными дочерними элементами этого узлаElement, в том порядке, в котором они появляются в документе. | 
| get Children(name, namespace) | Element[] | Получает все узлы Elementс заданным именем и пространством имен, которые являются непосредственными дочерними элементами этого узлаElement, в том порядке, в котором они появляются в документе. | 
| get Content(index) | Content | Получает узел по заданному индексу среди всех узлов, которые являются непосредственными дочерними элементами узла {@code Element}. | 
| get Content Size() | Integer | Получает количество узлов, которые являются непосредственными дочерними элементами узла {@code Element}. | 
| get Descendants() | Content[] | Получает все узлы, являющиеся прямыми или косвенными дочерними элементами узла {@code Element}, в том порядке, в котором они появляются в документе. | 
| get Document() | Document | Получает XML-документ, содержащий узел {@code Element}. | 
| get Name() | String | Получает локальное имя узла Element. | 
| get Namespace() | Namespace | Получает пространство имен для узла Element. | 
| get Namespace(prefix) | Namespace | Получает пространство имен с заданным префиксом для узла Element. | 
| get Parent Element() | Element | Получает родительский узел Elementузла. | 
| get Qualified Name() | String | Получает локальное имя и префикс пространства имен узла Elementв форме[namespacePrefix]:[localName]. | 
| get Text() | String | Получает текстовое значение узла Element. | 
| get Value() | String | Получает текстовое значение всех узлов, которые являются прямыми или косвенными дочерними элементами узла, в том порядке, в котором они появляются в документе. | 
| is Ancestor Of(other) | Boolean | Определяет, является ли этот узел Elementпрямым или косвенным родителем данного узлаElement. | 
| is Root Element() | Boolean | Определяет, является ли узел Elementкорневым узлом документа. | 
| remove Attribute(attribute) | Boolean | Удаляет данный атрибут для этого узла Element, если такой атрибут существует. | 
| remove Attribute(attributeName) | Boolean | Удаляет атрибут для этого узла Elementс заданным именем и без пространства имен, если такой атрибут существует. | 
| remove Attribute(attributeName, namespace) | Boolean | Удаляет атрибут для этого узла Elementс заданным именем и пространством имен, если такой атрибут существует. | 
| remove Content() | Content[] | Удаляет все узлы, которые являются непосредственными дочерними элементами узла {@code Element}. | 
| remove Content(content) | Boolean | Удаляет данный узел, если узел является непосредственным дочерним элементом узла {@code Element}. | 
| remove Content(index) | Content | Удаляет узел по заданному индексу среди всех узлов, которые являются непосредственными дочерними элементами узла {@code Element}. | 
| set Attribute(attribute) | Element | Устанавливает данный атрибут для этого узла Element. | 
| set Attribute(name, value) | Element | Устанавливает атрибут для этого узла Elementс заданным именем, значением и без пространства имен. | 
| set Attribute(name, value, namespace) | Element | Устанавливает атрибут для этого узла Elementс заданным именем, значением и пространством имен. | 
| set Name(name) | Element | Устанавливает локальное имя узла Element. | 
| set Namespace(namespace) | Element | Устанавливает пространство имен для узла Element. | 
| set Text(text) | Element | Устанавливает текстовое значение узла Element. | 
Entity Ref 
Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| detach() | Content | Отсоединяет узел от его родительского узла Element. | 
| get Name() | String | Получает имя узла Entity Reference. | 
| get Parent Element() | Element | Получает родительский узел Elementузла. | 
| get Public Id() | String | Получает общедоступный идентификатор узла Entity Reference. | 
| get System Id() | String | Получает системный идентификатор узла Entity Reference. | 
| get Value() | String | Получает текстовое значение всех узлов, которые являются прямыми или косвенными дочерними элементами узла, в том порядке, в котором они появляются в документе. | 
| set Name(name) | Entity Ref | Устанавливает имя узла Entity Reference. | 
| set Public Id(id) | Entity Ref | Устанавливает общедоступный идентификатор узла Entity Reference. | 
| set System Id(id) | Entity Ref | Устанавливает системный идентификатор узла Entity Reference. | 
 Format
 Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| format(document) | String | Выводит данный Documentв виде форматированной строки. | 
| format(element) | String | Выводит данный узел Elementв виде форматированной строки. | 
| set Encoding(encoding) | Format | Устанавливает кодировку символов, которую должен использовать форматтер. | 
| set Indent(indent) | Format | Устанавливает строку, используемую для отступа дочерних узлов относительно их родителей. | 
| set Line Separator(separator) | Format | Устанавливает строку для вставки каждый раз, когда форматировщик обычно вставляет разрыв строки. | 
| set Omit Declaration(omitDeclaration) | Format | Устанавливает, должен ли форматировщик пропускать объявление XML, например <?xml version="1.0" encoding="UTF-8"?>. | 
| set Omit Encoding(omitEncoding) | Format | Устанавливает, должен ли форматировщик пропускать кодировку в объявлении XML, например поле кодировки в <?xml version="1.0" encoding="UTF-8"?>. | 
 Namespace
 Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| get Prefix() | String | Получает префикс пространства имен. | 
| get URI() | String | Получает URI для пространства имен. | 
 Processing Instruction 
Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| detach() | Content | Отсоединяет узел от его родительского узла Element. | 
| get Data() | String | Получает необработанные данные для каждой инструкции в узле Processing Instruction. | 
| get Parent Element() | Element | Получает родительский узел Elementузла. | 
| get Target() | String | Получает цель для узла Processing Instruction. | 
| get Value() | String | Получает текстовое значение всех узлов, которые являются прямыми или косвенными дочерними элементами узла, в том порядке, в котором они появляются в документе. | 
 Text
 Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| append(text) | Text | Добавляет заданный текст к любому содержимому, которое уже существует в узле. | 
| detach() | Content | Отсоединяет узел от его родительского узла Element. | 
| get Parent Element() | Element | Получает родительский узел Elementузла. | 
| get Text() | String | Получает текстовое значение узла Text. | 
| get Value() | String | Получает текстовое значение всех узлов, которые являются прямыми или косвенными дочерними элементами узла, в том порядке, в котором они появляются в документе. | 
| set Text(text) | Text | Устанавливает текстовое значение узла Text. | 
 Xml Service 
Характеристики
| Свойство | Тип | Описание | 
|---|---|---|
| Content Types | Content Type | Перечисление, представляющее типы узлов содержимого XML. | 
Методы
| Метод | Тип возврата | Краткое описание | 
|---|---|---|
| create Cdata(text) | Cdata | Создает неприсоединенный узел CDATASectionс заданным значением. | 
| create Comment(text) | Comment | Создает неприсоединенный узел Commentс заданным значением. | 
| create Doc Type(elementName) | Doc Type | Создает неприсоединенный узел Document Typeдля корневого узлаElementс заданным именем. | 
| create Doc Type(elementName, systemId) | Doc Type | Создает неприсоединенный узел Document Typeдля корневого узлаElementс заданным именем и заданным системным идентификатором для внешних данных подмножества. | 
| create Doc Type(elementName, publicId, systemId) | Doc Type | Создает неприсоединенный узел Document Typeдля корневого узлаElementс заданным именем, а также заданным общедоступным идентификатором и системным идентификатором для внешних данных подмножества. | 
| create Document() | Document | Создает пустой XML-документ. | 
| create Document(rootElement) | Document | Создает XML-документ с заданным корневым узлом Element. | 
| create Element(name) | Element | Создает неприсоединенный узел Elementс заданным локальным именем и без пространства имен. | 
| create Element(name, namespace) | Element | Создает неприсоединенный узел Elementс заданным локальным именем и пространством имен. | 
| create Text(text) | Text | Создает неприсоединенный Textузел с заданным значением. | 
| get Compact Format() | Format | Создает объект Formatдля вывода компактного XML-документа. | 
| get Namespace(uri) | Namespace | Создает Namespaceс заданным URI. | 
| get Namespace(prefix, uri) | Namespace | Создает Namespaceс заданным префиксом и URI. | 
| get No Namespace() | Namespace | Создает Namespace, которое представляет отсутствие реального пространства имен. | 
| get Pretty Format() | Format | Создает объект Formatдля вывода удобочитаемого XML-документа. | 
| get Raw Format() | Format | Создает объект Formatдля вывода необработанного XML-документа. | 
| get Xml Namespace() | Namespace | Создает Namespaceсо стандартным префиксомxml. | 
| parse(xml) | Document | Создает Documentиз заданного XML без проверки XML. |