Этот сервис позволяет скриптам анализировать, перемещаться по документам и программно создавать 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-узла. |
Content Type | Перечисление, представляющее типы узлов содержимого XML. |
Doc Type | Представление узла Document Type . |
Document | Представление XML-документа. |
Element | Изображение узла XML- Element . |
Entity Ref | Представление узла Entity Reference . |
Format | Инструмент форматирования для вывода XML-документа, имеющий три предопределенных формата, которые можно дополнительно настроить. |
Namespace | Представление пространства имен XML. |
Processing Instruction | Изображение узла Processing Instruction XML. |
Text | Представление Text XML-узла. |
Xml Service | Этот сервис позволяет скриптам анализировать, перемещаться по документам и программно создавать XML-документы. |
Attribute
Методы
| Метод | Тип возвращаемого значения | Краткое описание |
|---|---|---|
get Name() | String | Получает локальное имя атрибута. |
get Namespace() | Namespace |null | Получает пространство имен для атрибута. |
get Value() | String | Получает значение атрибута. |
set Name(name) | Attribute | Задает локальное имя атрибута. |
set Namespace(namespace) | Attribute | Задает пространство имен для атрибута. |
set Value(value) | Attribute | Устанавливает значение атрибута. |
Cdata
Методы
| Метод | Тип возвращаемого значения | Краткое описание |
|---|---|---|
append(text) | Text | Добавляет заданный текст к любому содержимому, уже существующему в узле. |
detach() | Content |null | Отсоединяет узел от родительского узла Element . |
get Parent Element() | Element |null | Получает родительский Element . |
get Text() | String | Получает текстовое значение узла Text . |
get Value() | String | Получает текстовые значения всех узлов, являющихся прямыми или косвенными дочерними узлами данного узла, в том порядке, в котором они появляются в документе. |
set Text(text) | Text | Задает текстовое значение узла Text . |
Comment
Методы
| Метод | Тип возвращаемого значения | Краткое описание |
|---|---|---|
detach() | Content |null | Отсоединяет узел от родительского узла Element . |
get Parent Element() | Element |null | Получает родительский Element . |
get Text() | String | Получает текстовое значение узла Comment . |
get Value() | String | Получает текстовые значения всех узлов, являющихся прямыми или косвенными дочерними узлами данного узла, в том порядке, в котором они появляются в документе. |
set Text(text) | Comment | Задает текстовое значение узла Comment . |
Content
Методы
| Метод | Тип возвращаемого значения | Краткое описание |
|---|---|---|
as Cdata() | Cdata |null | Преобразует узел в узел CDATASection для целей автозаполнения. |
as Comment() | Comment |null | Преобразует узел в узел Comment для целей автозаполнения. |
as Doc Type() | Doc Type |null | Преобразует узел в узел Document Type для целей автозаполнения. |
as Element() | Element |null | Преобразует узел в узел типа Element для целей автозаполнения. |
as Entity Ref() | Entity Ref |null | Преобразует узел в узел " Entity Reference для целей автозаполнения. |
as Processing Instruction() | Processing Instruction |null | Преобразует узел в узел Processing Instruction для целей автозаполнения. |
as Text() | Text |null | Преобразует узел в Text узел для целей автозаполнения. |
detach() | Content |null | Отсоединяет узел от родительского узла Element . |
get Parent Element() | Element |null | Получает родительский Element . |
get Type() | Content Type | Получает тип содержимого узла. |
get Value() | String | Получает текстовые значения всех узлов, являющихся прямыми или косвенными дочерними узлами данного узла, в том порядке, в котором они появляются в документе. |
Content Type
Характеристики
| Свойство | Тип | Описание |
|---|---|---|
CDATA | Enum | Узел XML CDATASection . |
COMMENT | Enum | Узел XML Comment . |
DOCTYPE | Enum | Узел Document Type . |
ELEMENT | Enum | Узел XML- Element . |
ENTITYREF | Enum | Узел Entity Reference . |
PROCESSINGINSTRUCTION | Enum | Узел Processing Instruction XML. |
TEXT | Enum | Text XML-узел. |
Doc Type
Методы
| Метод | Тип возвращаемого значения | Краткое описание |
|---|---|---|
detach() | Content |null | Отсоединяет узел от родительского узла Element . |
get Element Name() | String | Получает имя корневого узла Element , указанного в объявлении Doc Type . |
get Internal Subset() | String | Получает внутренний набор данных для узла Document Type . |
get Parent Element() | Element |null | Получает родительский 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 |null | Отсоединяет и возвращает корневой узел Element документа. |
get All Content() | Content[] | Получает все узлы, являющиеся непосредственными дочерними элементами документа. |
get Content(index) | Content |null | Получает узел с заданным индексом среди всех узлов, являющихся непосредственными дочерними элементами документа. |
get Content Size() | Integer | Получает количество узлов, являющихся непосредственными дочерними элементами документа. |
get Descendants() | Content[] | Получает все узлы, являющиеся прямыми или косвенными дочерними элементами документа, в том порядке, в котором они появляются в документе. |
get Doc Type() | Doc Type |null | Получает объявление Doc Type ). |
get Root Element() | Element |null | Получает корневой узел Element документа. |
has Root Element() | Boolean | Определяет, имеет ли документ корневой узел Element . |
remove Content() | Content[] | Удаляет все узлы, являющиеся непосредственными дочерними элементами документа. |
remove Content(content) | Boolean | Удаляет указанный узел, если он является непосредственным дочерним элементом документа. |
remove Content(index) | Content |null | Удаляет узел с заданным индексом среди всех узлов, являющихся непосредственными дочерними элементами документа. |
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 |null | Отсоединяет узел от родительского узла Element . |
get All Content() | Content[] | Получает все узлы, являющиеся непосредственными дочерними элементами узла {@code Element}. |
get Attribute(name) | Attribute |null | Получает атрибут для этого узла Element с заданным именем и без пространства имен. |
get Attribute(name, namespace) | Attribute |null | Получает атрибут для данного узла Element с заданным именем и пространством имен. |
get Attributes() | Attribute[] | Получает все атрибуты для данного узла Element в том порядке, в котором они указаны в документе. |
get Child(name) | Element |null | Получает первый узел Element с заданным именем и без пространства имен, который является непосредственным дочерним узлом этого узла Element . |
get Child(name, namespace) | Element |null | Получает первый узел Element с заданным именем и пространством имен, который является непосредственным дочерним элементом этого узла Element . |
get Child Text(name) | String|null | Получает текстовое значение узла с заданным именем и без пространства имен, если узел является непосредственным дочерним элементом узла Element . |
get Child Text(name, namespace) | String|null | Получает текстовое значение узла с заданным именем и пространством имен, если узел является непосредственным дочерним элементом узла Element . |
get Children() | Element[] | Получает все узлы Element , являющиеся непосредственными дочерними элементами данного узла Element , в том порядке, в котором они расположены в документе. |
get Children(name) | Element[] | Получает все узлы Element с заданным именем и без пространства имен, являющиеся непосредственными дочерними элементами этого узла Element , в том порядке, в котором они отображаются в документе. |
get Children(name, namespace) | Element[] | Получает все узлы Element с заданным именем и пространством имен, являющиеся непосредственными дочерними элементами этого узла Element , в том порядке, в котором они расположены в документе. |
get Content(index) | Content |null | Получает узел с заданным индексом среди всех узлов, являющихся непосредственными дочерними элементами узла {@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 |null | Получает родительский 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 |null | Удаляет узел с заданным индексом среди всех узлов, являющихся непосредственными дочерними элементами узла {@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 |null | Отсоединяет узел от родительского узла Element . |
get Name() | String | Получает имя узла Entity Reference . |
get Parent Element() | Element |null | Получает родительский Element . |
get Public Id() | String|null | Получает публичный идентификатор узла Entity Reference . |
get System Id() | String|null | Получает системный идентификатор узла 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 |null | Отсоединяет узел от родительского узла Element . |
get Data() | String | Получает исходные данные для каждой инструкции в узле Processing Instruction . |
get Parent Element() | Element |null | Получает родительский Element . |
get Target() | String | Получает целевое значение для узла Processing Instruction . |
get Value() | String | Получает текстовые значения всех узлов, являющихся прямыми или косвенными дочерними узлами данного узла, в том порядке, в котором они появляются в документе. |
Text
Методы
| Метод | Тип возвращаемого значения | Краткое описание |
|---|---|---|
append(text) | Text | Добавляет заданный текст к любому содержимому, уже существующему в узле. |
detach() | Content |null | Отсоединяет узел от родительского узла Element . |
get Parent Element() | Element |null | Получает родительский 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-кода без проверки его корректности. |