XML Service

This service allows scripts to parse, navigate, and programmatically create
XML documents.

```
// 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);
}
```

## Classes

| Name | Brief description |
|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/attribute` | A representation of an XML attribute. |
| `https://developers.google.com/apps-script/reference/xml-service/cdata` | A representation of an XML `CDATASection` node. |
| `https://developers.google.com/apps-script/reference/xml-service/comment` | A representation of an XML `Comment` node. |
| `https://developers.google.com/apps-script/reference/xml-service/content` | A representation of a generic XML node. |
| `https://developers.google.com/apps-script/reference/xml-service/content-types` | An enumeration representing the types of XML content nodes. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type` | A representation of an XML `DocumentType` node. |
| `https://developers.google.com/apps-script/reference/xml-service/document` | A representation of an XML document. |
| `https://developers.google.com/apps-script/reference/xml-service/element` | A representation of an XML `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref` | A representation of an XML `EntityReference` node. |
| `https://developers.google.com/apps-script/reference/xml-service/format` | A formatter for outputting an XML document, with three pre-defined formats that can be further customized. |
| `https://developers.google.com/apps-script/reference/xml-service/namespace` | A representation of an XML namespace. |
| `https://developers.google.com/apps-script/reference/xml-service/processing-instruction` | A representation of an XML `ProcessingInstruction` node. |
| `https://developers.google.com/apps-script/reference/xml-service/text` | A representation of an XML `Text` node. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service` | This service allows scripts to parse, navigate, and programmatically create XML documents. |

## `https://developers.google.com/apps-script/reference/xml-service/attribute`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/attribute#getName()` | `String` | Gets the local name of the attribute. |
| `https://developers.google.com/apps-script/reference/xml-service/attribute#getNamespace()` | `https://developers.google.com/apps-script/reference/xml-service/namespace|null` | Gets the namespace for the attribute. |
| `https://developers.google.com/apps-script/reference/xml-service/attribute#getValue()` | `String` | Gets the value of the attribute. |
| `https://developers.google.com/apps-script/reference/xml-service/attribute#setName(String)` | `https://developers.google.com/apps-script/reference/xml-service/attribute` | Sets the local name of the attribute. |
| `https://developers.google.com/apps-script/reference/xml-service/attribute#setNamespace(Namespace)` | `https://developers.google.com/apps-script/reference/xml-service/attribute` | Sets the namespace for the attribute. |
| `https://developers.google.com/apps-script/reference/xml-service/attribute#setValue(String)` | `https://developers.google.com/apps-script/reference/xml-service/attribute` | Sets the value of the attribute. |

## `https://developers.google.com/apps-script/reference/xml-service/cdata`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/cdata#append(String)` | `https://developers.google.com/apps-script/reference/xml-service/text` | Appends the given text to any content that already exists in the node. |
| `https://developers.google.com/apps-script/reference/xml-service/cdata#detach()` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Detaches the node from its parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/cdata#getParentElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the node's parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/cdata#getText()` | `String` | Gets the text value of the `Text` node. |
| `https://developers.google.com/apps-script/reference/xml-service/cdata#getValue()` | `String` | Gets the text value of all nodes that are direct or indirect children of the node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/cdata#setText(String)` | `https://developers.google.com/apps-script/reference/xml-service/text` | Sets the text value of the `Text` node. |

## `https://developers.google.com/apps-script/reference/xml-service/comment`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/comment#detach()` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Detaches the node from its parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/comment#getParentElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the node's parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/comment#getText()` | `String` | Gets the text value of the `Comment` node. |
| `https://developers.google.com/apps-script/reference/xml-service/comment#getValue()` | `String` | Gets the text value of all nodes that are direct or indirect children of the node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/comment#setText(String)` | `https://developers.google.com/apps-script/reference/xml-service/comment` | Sets the text value of the `Comment` node. |

## `https://developers.google.com/apps-script/reference/xml-service/content`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/content#asCdata()` | `https://developers.google.com/apps-script/reference/xml-service/cdata|null` | Casts the node as a `https://developers.google.com/apps-script/reference/xml-service/cdata` node for the purposes of autocomplete. |
| `https://developers.google.com/apps-script/reference/xml-service/content#asComment()` | `https://developers.google.com/apps-script/reference/xml-service/comment|null` | Casts the node as a `https://developers.google.com/apps-script/reference/xml-service/comment` node for the purposes of autocomplete. |
| `https://developers.google.com/apps-script/reference/xml-service/content#asDocType()` | `https://developers.google.com/apps-script/reference/xml-service/doc-type|null` | Casts the node as a `https://developers.google.com/apps-script/reference/xml-service/doc-type` node for the purposes of autocomplete. |
| `https://developers.google.com/apps-script/reference/xml-service/content#asElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Casts the node as an `https://developers.google.com/apps-script/reference/xml-service/element` node for the purposes of autocomplete. |
| `https://developers.google.com/apps-script/reference/xml-service/content#asEntityRef()` | `https://developers.google.com/apps-script/reference/xml-service/entity-ref|null` | Casts the node as a `https://developers.google.com/apps-script/reference/xml-service/entity-ref` node for the purposes of autocomplete. |
| `https://developers.google.com/apps-script/reference/xml-service/content#asProcessingInstruction()` | `https://developers.google.com/apps-script/reference/xml-service/processing-instruction|null` | Casts the node as a `https://developers.google.com/apps-script/reference/xml-service/processing-instruction` node for the purposes of autocomplete. |
| `https://developers.google.com/apps-script/reference/xml-service/content#asText()` | `https://developers.google.com/apps-script/reference/xml-service/text|null` | Casts the node as a `https://developers.google.com/apps-script/reference/xml-service/text` node for the purposes of autocomplete. |
| `https://developers.google.com/apps-script/reference/xml-service/content#detach()` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Detaches the node from its parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/content#getParentElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the node's parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/content#getType()` | `https://developers.google.com/apps-script/reference/xml-service/content-types` | Gets the node's content type. |
| `https://developers.google.com/apps-script/reference/xml-service/content#getValue()` | `String` | Gets the text value of all nodes that are direct or indirect children of the node, in the order they appear in the document. |

## `https://developers.google.com/apps-script/reference/xml-service/content-types`

### Properties

| Property | Type | Description |
|---|---|---|
| `CDATA` | `Enum` | An XML `https://developers.google.com/apps-script/reference/xml-service/cdata` node. |
| `COMMENT` | `Enum` | An XML `https://developers.google.com/apps-script/reference/xml-service/comment` node. |
| `DOCTYPE` | `Enum` | An XML `https://developers.google.com/apps-script/reference/xml-service/doc-type` node. |
| `ELEMENT` | `Enum` | An XML `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `ENTITYREF` | `Enum` | An XML `https://developers.google.com/apps-script/reference/xml-service/entity-ref` node. |
| `PROCESSINGINSTRUCTION` | `Enum` | An XML `https://developers.google.com/apps-script/reference/xml-service/processing-instruction` node. |
| `TEXT` | `Enum` | An XML `https://developers.google.com/apps-script/reference/xml-service/text` node. |

## `https://developers.google.com/apps-script/reference/xml-service/doc-type`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#detach()` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Detaches the node from its parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#getElementName()` | `String` | Gets the name of the root `https://developers.google.com/apps-script/reference/xml-service/element` node specified in the `DocType` declaration. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#getInternalSubset()` | `String` | Gets the internal subset data for the `DocumentType` node. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#getParentElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the node's parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#getPublicId()` | `String` | Gets the public ID of the external subset data for the `DocumentType` node. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#getSystemId()` | `String` | Gets the system ID of the external subset data for the `DocumentType` node. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#getValue()` | `String` | Gets the text value of all nodes that are direct or indirect children of the node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#setElementName(String)` | `https://developers.google.com/apps-script/reference/xml-service/doc-type` | Sets the name of the root `https://developers.google.com/apps-script/reference/xml-service/element` node to specify in the `DocType` declaration. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#setInternalSubset(String)` | `https://developers.google.com/apps-script/reference/xml-service/doc-type` | Sets the internal subset data for the `DocumentType` node. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#setPublicId(String)` | `https://developers.google.com/apps-script/reference/xml-service/doc-type` | Sets the public ID of the external subset data for the `DocumentType` node. |
| `https://developers.google.com/apps-script/reference/xml-service/doc-type#setSystemId(String)` | `https://developers.google.com/apps-script/reference/xml-service/doc-type` | Sets the system ID of the external subset data for the `DocumentType` node. |

## `https://developers.google.com/apps-script/reference/xml-service/document`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/document#addContent(Content)` | `https://developers.google.com/apps-script/reference/xml-service/document` | Appends the given node to the end of the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#addContent(Integer,Content)` | `https://developers.google.com/apps-script/reference/xml-service/document` | Inserts the given node at the given index among all nodes that are immediate children of the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#cloneContent()` | `https://developers.google.com/apps-script/reference/xml-service/content` | Creates unattached copies of all nodes that are immediate children of the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#detachRootElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Detaches and returns the document's root `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/document#getAllContent()` | `https://developers.google.com/apps-script/reference/xml-service/content` | Gets all nodes that are immediate children of the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#getContent(Integer)` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Gets the node at the given index among all nodes that are immediate children of the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#getContentSize()` | `Integer` | Gets the number of nodes that are immediate children of the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#getDescendants()` | `https://developers.google.com/apps-script/reference/xml-service/content` | Gets all nodes that are direct or indirect children of the document, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#getDocType()` | `https://developers.google.com/apps-script/reference/xml-service/doc-type|null` | Gets the document's `https://developers.google.com/apps-script/reference/xml-service/doc-type` declaration. |
| `https://developers.google.com/apps-script/reference/xml-service/document#getRootElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the document's root `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/document#hasRootElement()` | `Boolean` | Determines whether the document has a root `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/document#removeContent()` | `https://developers.google.com/apps-script/reference/xml-service/content` | Removes all nodes that are immediate children of the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#removeContent(Content)` | `Boolean` | Removes the given node, if the node is an immediate child of the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#removeContent(Integer)` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Removes the node at the given index among all nodes that are immediate children of the document. |
| `https://developers.google.com/apps-script/reference/xml-service/document#setDocType(DocType)` | `https://developers.google.com/apps-script/reference/xml-service/document` | Sets the document's `https://developers.google.com/apps-script/reference/xml-service/doc-type` declaration. |
| `https://developers.google.com/apps-script/reference/xml-service/document#setRootElement(Element)` | `https://developers.google.com/apps-script/reference/xml-service/document` | Sets the document's root `https://developers.google.com/apps-script/reference/xml-service/element` node. |

## `https://developers.google.com/apps-script/reference/xml-service/element`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/element#addContent(Content)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Appends the given node as the last child of the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#addContent(Integer,Content)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Inserts the given node at the given index among all nodes that are immediate children of the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#cloneContent()` | `https://developers.google.com/apps-script/reference/xml-service/content` | Creates unattached copies of all nodes that are immediate children of the {@code Element} node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#detach()` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Detaches the node from its parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getAllContent()` | `https://developers.google.com/apps-script/reference/xml-service/content` | Gets all nodes that are immediate children of the {@code Element} node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getAttribute(String)` | `https://developers.google.com/apps-script/reference/xml-service/attribute|null` | Gets the attribute for this `Element` node with the given name and no namespace. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getAttribute(String,Namespace)` | `https://developers.google.com/apps-script/reference/xml-service/attribute|null` | Gets the attribute for this `Element` node with the given name and namespace. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getAttributes()` | `https://developers.google.com/apps-script/reference/xml-service/attribute` | Gets all attributes for this `Element` node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getChild(String)` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the first `Element` node with the given name and no namespace that is an immediate child of this `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getChild(String,Namespace)` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the first `Element` node with the given name and namespace that is an immediate child of this `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getChildText(String)` | `String|null` | Gets the text value of the node with the given name and no namespace, if the node is an immediate child of the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getChildText(String,Namespace)` | `String|null` | Gets the text value of the node with the given name and namespace, if the node is an immediate child of the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getChildren()` | `https://developers.google.com/apps-script/reference/xml-service/element` | Gets all `Element` nodes that are immediate children of this `Element` node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getChildren(String)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Gets all `Element` nodes with the given name and no namespace that are immediate children of this `Element` node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getChildren(String,Namespace)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Gets all `Element` nodes with the given name and namespace that are immediate children of this `Element` node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getContent(Integer)` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Gets the node at the given index among all nodes that are immediate children of the {@code Element} node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getContentSize()` | `Integer` | Gets the number of nodes that are immediate children of the {@code Element} node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getDescendants()` | `https://developers.google.com/apps-script/reference/xml-service/content` | Gets all nodes that are direct or indirect children of the {@code Element} node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getDocument()` | `https://developers.google.com/apps-script/reference/xml-service/document` | Gets the XML document that contains the {@code Element} node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getName()` | `String` | Gets the local name of the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getNamespace()` | `https://developers.google.com/apps-script/reference/xml-service/namespace` | Gets the namespace for the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getNamespace(String)` | `https://developers.google.com/apps-script/reference/xml-service/namespace` | Gets the namespace with the given prefix for the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getParentElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the node's parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getQualifiedName()` | `String` | Gets the local name and namespace prefix of the `Element` node, in the form `[namespacePrefix]:[localName]`. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getText()` | `String` | Gets the text value of the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#getValue()` | `String` | Gets the text value of all nodes that are direct or indirect children of the node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/element#isAncestorOf(Element)` | `Boolean` | Determines whether this `Element` node is a direct or indirect parent of a given `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#isRootElement()` | `Boolean` | Determines whether the `Element` node is the document's root node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#removeAttribute(Attribute)` | `Boolean` | Removes the given attribute for this `Element` node, if such an attribute exists. |
| `https://developers.google.com/apps-script/reference/xml-service/element#removeAttribute(String)` | `Boolean` | Removes the attribute for this `Element` node with the given name and no namespace, if such an attribute exists. |
| `https://developers.google.com/apps-script/reference/xml-service/element#removeAttribute(String,Namespace)` | `Boolean` | Removes the attribute for this `Element` node with the given name and namespace, if such an attribute exists. |
| `https://developers.google.com/apps-script/reference/xml-service/element#removeContent()` | `https://developers.google.com/apps-script/reference/xml-service/content` | Removes all nodes that are immediate children of the {@code Element} node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#removeContent(Content)` | `Boolean` | Removes the given node, if the node is an immediate child of the {@code Element} node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#removeContent(Integer)` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Removes the node at the given index among all nodes that are immediate children of the {@code Element} node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#setAttribute(Attribute)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Sets the given attribute for this `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#setAttribute(String,String)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Sets the attribute for this `Element` node with the given name, value, and no namespace. |
| `https://developers.google.com/apps-script/reference/xml-service/element#setAttribute(String,String,Namespace)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Sets the attribute for this `Element` node with the given name, value, and namespace. |
| `https://developers.google.com/apps-script/reference/xml-service/element#setName(String)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Sets the local name of the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#setNamespace(Namespace)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Sets the namespace for the `Element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/element#setText(String)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Sets the text value of the `Element` node. |

## `https://developers.google.com/apps-script/reference/xml-service/entity-ref`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref#detach()` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Detaches the node from its parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref#getName()` | `String` | Gets the name of the `EntityReference` node. |
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref#getParentElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the node's parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref#getPublicId()` | `String|null` | Gets the public ID of the `EntityReference` node. |
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref#getSystemId()` | `String|null` | Gets the system ID of the `EntityReference` node. |
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref#getValue()` | `String` | Gets the text value of all nodes that are direct or indirect children of the node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref#setName(String)` | `https://developers.google.com/apps-script/reference/xml-service/entity-ref` | Sets the name of the `EntityReference` node. |
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref#setPublicId(String)` | `https://developers.google.com/apps-script/reference/xml-service/entity-ref` | Sets the public ID of the `EntityReference` node. |
| `https://developers.google.com/apps-script/reference/xml-service/entity-ref#setSystemId(String)` | `https://developers.google.com/apps-script/reference/xml-service/entity-ref` | Sets the system ID of the `EntityReference` node. |

## `https://developers.google.com/apps-script/reference/xml-service/format`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/format#format(Document)` | `String` | Outputs the given `https://developers.google.com/apps-script/reference/xml-service/document` as a formatted string. |
| `https://developers.google.com/apps-script/reference/xml-service/format#format(Element)` | `String` | Outputs the given `https://developers.google.com/apps-script/reference/xml-service/element` node as a formatted string. |
| `https://developers.google.com/apps-script/reference/xml-service/format#setEncoding(String)` | `https://developers.google.com/apps-script/reference/xml-service/format` | Sets the character encoding that the formatter should use. |
| `https://developers.google.com/apps-script/reference/xml-service/format#setIndent(String)` | `https://developers.google.com/apps-script/reference/xml-service/format` | Sets the string used to indent child nodes relative to their parents. |
| `https://developers.google.com/apps-script/reference/xml-service/format#setLineSeparator(String)` | `https://developers.google.com/apps-script/reference/xml-service/format` | Sets the string to insert whenever the formatter would normally insert a line break. |
| `https://developers.google.com/apps-script/reference/xml-service/format#setOmitDeclaration(Boolean)` | `https://developers.google.com/apps-script/reference/xml-service/format` | Sets whether the formatter should omit the XML declaration, such as `<?xml version="1.0" encoding="UTF-8"?>`. |
| `https://developers.google.com/apps-script/reference/xml-service/format#setOmitEncoding(Boolean)` | `https://developers.google.com/apps-script/reference/xml-service/format` | Sets whether the formatter should omit the encoding in the XML declaration, such as the encoding field in `<?xml version="1.0" encoding="UTF-8"?>`. |

## `https://developers.google.com/apps-script/reference/xml-service/namespace`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/namespace#getPrefix()` | `String` | Gets the prefix for the namespace. |
| `https://developers.google.com/apps-script/reference/xml-service/namespace#getURI()` | `String` | Gets the URI for the namespace. |

## `https://developers.google.com/apps-script/reference/xml-service/processing-instruction`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/processing-instruction#detach()` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Detaches the node from its parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/processing-instruction#getData()` | `String` | Gets the raw data for every instruction in the `ProcessingInstruction` node. |
| `https://developers.google.com/apps-script/reference/xml-service/processing-instruction#getParentElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the node's parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/processing-instruction#getTarget()` | `String` | Gets the target for the `ProcessingInstruction` node. |
| `https://developers.google.com/apps-script/reference/xml-service/processing-instruction#getValue()` | `String` | Gets the text value of all nodes that are direct or indirect children of the node, in the order they appear in the document. |

## `https://developers.google.com/apps-script/reference/xml-service/text`

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/text#append(String)` | `https://developers.google.com/apps-script/reference/xml-service/text` | Appends the given text to any content that already exists in the node. |
| `https://developers.google.com/apps-script/reference/xml-service/text#detach()` | `https://developers.google.com/apps-script/reference/xml-service/content|null` | Detaches the node from its parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/text#getParentElement()` | `https://developers.google.com/apps-script/reference/xml-service/element|null` | Gets the node's parent `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/text#getText()` | `String` | Gets the text value of the `Text` node. |
| `https://developers.google.com/apps-script/reference/xml-service/text#getValue()` | `String` | Gets the text value of all nodes that are direct or indirect children of the node, in the order they appear in the document. |
| `https://developers.google.com/apps-script/reference/xml-service/text#setText(String)` | `https://developers.google.com/apps-script/reference/xml-service/text` | Sets the text value of the `Text` node. |

## `https://developers.google.com/apps-script/reference/xml-service/xml-service`

### Properties

| Property | Type | Description |
|---|---|---|
| `ContentTypes` | `https://developers.google.com/apps-script/reference/xml-service/content-types` | An enumeration representing the types of XML content nodes. |

### Methods

| Method | Return type | Brief description |
|---|---|---|
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createCdata(String)` | `https://developers.google.com/apps-script/reference/xml-service/cdata` | Creates an unattached `https://developers.google.com/apps-script/reference/xml-service/cdata` node with the given value. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createComment(String)` | `https://developers.google.com/apps-script/reference/xml-service/comment` | Creates an unattached `https://developers.google.com/apps-script/reference/xml-service/comment` node with the given value. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createDocType(String)` | `https://developers.google.com/apps-script/reference/xml-service/doc-type` | Creates an unattached `https://developers.google.com/apps-script/reference/xml-service/doc-type` node for the root `https://developers.google.com/apps-script/reference/xml-service/element` node with the given name. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createDocType(String,String)` | `https://developers.google.com/apps-script/reference/xml-service/doc-type` | Creates an unattached `https://developers.google.com/apps-script/reference/xml-service/doc-type` node for the root `https://developers.google.com/apps-script/reference/xml-service/element` node with the given name, and the given system ID for the external subset data. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createDocType(String,String,String)` | `https://developers.google.com/apps-script/reference/xml-service/doc-type` | Creates an unattached `https://developers.google.com/apps-script/reference/xml-service/doc-type` node for the root `https://developers.google.com/apps-script/reference/xml-service/element` node with the given name, and the given public ID and system ID for the external subset data. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createDocument()` | `https://developers.google.com/apps-script/reference/xml-service/document` | Creates an empty XML document. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createDocument(Element)` | `https://developers.google.com/apps-script/reference/xml-service/document` | Creates an XML document with the given root `https://developers.google.com/apps-script/reference/xml-service/element` node. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createElement(String)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Creates an unattached `https://developers.google.com/apps-script/reference/xml-service/element` node with the given local name and no namespace. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createElement(String,Namespace)` | `https://developers.google.com/apps-script/reference/xml-service/element` | Creates an unattached `https://developers.google.com/apps-script/reference/xml-service/element` node with the given local name and namespace. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#createText(String)` | `https://developers.google.com/apps-script/reference/xml-service/text` | Creates an unattached `https://developers.google.com/apps-script/reference/xml-service/text` node with the given value. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#getCompactFormat()` | `https://developers.google.com/apps-script/reference/xml-service/format` | Creates a `https://developers.google.com/apps-script/reference/xml-service/format` object for outputting a compact XML document. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#getNamespace(String)` | `https://developers.google.com/apps-script/reference/xml-service/namespace` | Creates a `https://developers.google.com/apps-script/reference/xml-service/namespace` with the given URI. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#getNamespace(String,String)` | `https://developers.google.com/apps-script/reference/xml-service/namespace` | Creates a `https://developers.google.com/apps-script/reference/xml-service/namespace` with the given prefix and URI. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#getNoNamespace()` | `https://developers.google.com/apps-script/reference/xml-service/namespace` | Creates a `https://developers.google.com/apps-script/reference/xml-service/namespace` that represents the absence of a real namespace. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#getPrettyFormat()` | `https://developers.google.com/apps-script/reference/xml-service/format` | Creates a `https://developers.google.com/apps-script/reference/xml-service/format` object for outputting a human-readable XML document. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#getRawFormat()` | `https://developers.google.com/apps-script/reference/xml-service/format` | Creates a `https://developers.google.com/apps-script/reference/xml-service/format` object for outputting a raw XML document. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#getXmlNamespace()` | `https://developers.google.com/apps-script/reference/xml-service/namespace` | Creates a `https://developers.google.com/apps-script/reference/xml-service/namespace` with the standard `xml` prefix. |
| `https://developers.google.com/apps-script/reference/xml-service/xml-service#parse(String)` | `https://developers.google.com/apps-script/reference/xml-service/document` | Creates an `https://developers.google.com/apps-script/reference/xml-service/document` from the given XML, without validating the XML. |