Эта служба позволяет сценариям анализировать, перемещаться и программно создавать 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 | Представление узла Comment XML. |
Content | Представление общего узла XML. |
ContentType | Перечисление, представляющее типы узлов содержимого XML. |
DocType | Представление узла XML DocumentType . |
Document | Представление XML-документа. |
Element | Представление узла Element XML. |
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
Характеристики
Свойство | Тип | Описание |
---|---|---|
CDATA | Enum | Узел XML CDATASection . |
COMMENT | Enum | Узел Comment XML. |
DOCTYPE | Enum | Узел XML DocumentType . |
ELEMENT | Enum | Узел Element XML. |
ENTITYREF | Enum | Узел XML EntityReference . |
PROCESSINGINSTRUCTION | Enum | Узел XML ProcessingInstruction . |
TEXT | Enum | Узел 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
Характеристики
Свойство | Тип | Описание |
---|---|---|
ContentTypes | ContentType | Перечисление, представляющее типы узлов содержимого 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. |