Ce service permet aux scripts d'analyser, de naviguer et de créer des documents XML par programmation.
// Log the title and labels for the first page of blog posts on the // Google Workspace Developer blog. function parseXml() { const url = 'https://gsuite-developers.googleblog.com/atom.xml'; const xml = UrlFetchApp.fetch(url).getContentText(); const document = XmlService.parse(xml); const root = document.getRootElement(); const atom = XmlService.getNamespace('http://www.w3.org/2005/Atom'); const entries = root.getChildren('entry', atom); for (let i = 0; i < entries.length; i++) { const title = entries[i].getChild('title', atom).getText(); const categoryElements = entries[i].getChildren('category', atom); const labels = []; for (let j = 0; j < categoryElements.length; j++) { labels.push(categoryElements[j].getAttribute('term').getValue()); } Logger.log('%s (%s)', title, labels.join(', ')); } } // Create and log an XML representation of the threads in your Gmail inbox. function createXml() { const root = XmlService.createElement('threads'); const threads = GmailApp.getInboxThreads(); for (let i = 0; i < threads.length; i++) { const child = XmlService.createElement('thread') .setAttribute('messageCount', threads[i].getMessageCount()) .setAttribute('isUnread', threads[i].isUnread()) .setText(threads[i].getFirstMessageSubject()); root.addContent(child); } const document = XmlService.createDocument(root); const xml = XmlService.getPrettyFormat().format(document); Logger.log(xml); }
Propriétés
Propriété | Type | Description |
---|---|---|
Content | Content | Énumération représentant les types de nœuds de contenu XML. |
Méthodes
Méthode | Type renvoyé | Brève description |
---|---|---|
create | Cdata | Crée un nœud CDATASection non associé avec la valeur donnée. |
create | Comment | Crée un nœud Comment non associé avec la valeur donnée. |
create | Doc | Crée un nœud Document non associé au nœud Element racine avec le nom donné. |
create | Doc | Crée un nœud Document non associé au nœud racine Element avec le nom donné et l'ID système donné pour les données du sous-ensemble externe. |
create | Doc | Crée un nœud Document non associé au nœud Element racine avec le nom donné, ainsi que l'ID public et l'ID système donnés pour les données du sous-ensemble externe. |
create | Document | Crée un document XML vide. |
create | Document | Crée un document XML avec le nœud racine Element donné. |
create | Element | Crée un nœud Element non associé avec le nom local donné et sans espace de noms. |
create | Element | Crée un nœud Element non associé avec le nom local et l'espace de noms donnés. |
create | Text | Crée un nœud Text non associé avec la valeur donnée. |
get | Format | Crée un objet Format pour générer un document XML compact. |
get | Namespace | Crée un Namespace avec l'URI donné. |
get | Namespace | Crée un Namespace avec le préfixe et l'URI donnés. |
get | Namespace | Crée un Namespace qui représente l'absence d'un espace de noms réel. |
get | Format | Crée un objet Format pour générer un document XML lisible par l'humain. |
get | Format | Crée un objet Format pour générer un document XML brut. |
get | Namespace | Crée un Namespace avec le préfixe xml standard. |
parse(xml) | Document | Crée une Document à partir du fichier XML donné, sans le valider. |
Documentation détaillée
create Cdata(text)
Crée un nœud CDATASection
non associé avec la valeur donnée.
Paramètres
Nom | Type | Description |
---|---|---|
text | String | la valeur à définir ; |
Renvois
Cdata
: nœud CDATASection
nouvellement créé
create Comment(text)
create Doc Type(elementName)
Crée un nœud Document
non associé au nœud Element
racine avec le nom donné.
Paramètres
Nom | Type | Description |
---|---|---|
element | String | Nom du nœud Element racine à spécifier dans la déclaration Doc |
Renvois
Doc
: nœud Document
nouvellement créé
create Doc Type(elementName, systemId)
Crée un nœud Document
non associé au nœud racine Element
avec le nom donné et l'ID système donné pour les données du sous-ensemble externe.
Paramètres
Nom | Type | Description |
---|---|---|
element | String | Nom du nœud Element racine à spécifier dans la déclaration Doc |
system | String | ID système des données du sous-ensemble externe à définir |
Renvois
Doc
: nœud Document
nouvellement créé
create Doc Type(elementName, publicId, systemId)
Crée un nœud Document
non associé au nœud Element
racine avec le nom donné, ainsi que l'ID public et l'ID système donnés pour les données du sous-ensemble externe.
Paramètres
Nom | Type | Description |
---|---|---|
element | String | Nom du nœud Element racine à spécifier dans la déclaration Doc |
public | String | ID public des données du sous-ensemble externe à définir |
system | String | ID système des données du sous-ensemble externe à définir |
Renvois
Doc
: nœud Document
nouvellement créé
create Document()
create Document(rootElement)
create Element(name)
create Element(name, namespace)
create Text(text)
get Compact Format()
Crée un objet Format
pour générer un document XML compact. Le formateur utilise par défaut l'encodage UTF-8
, aucune indentation et aucun saut de ligne supplémentaire, mais inclut la déclaration XML et son encodage.
// Log an XML document in compact form. const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; const document = XmlService.parse(xml); const output = XmlService.getCompactFormat().format(document); Logger.log(output);
Renvois
Format
: le formateur nouvellement créé
get Namespace(uri)
get Namespace(prefix, uri)
get No Namespace()
get Pretty Format()
Crée un objet Format
pour générer un document XML lisible par l'humain. Le formateur utilise par défaut l'encodage UTF-8
, une indentation de deux espaces, des séparateurs de ligne \r\n
après chaque nœud et inclut la déclaration XML et son encodage.
// Log an XML document in human-readable form. const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; const document = XmlService.parse(xml); const output = XmlService.getPrettyFormat().format(document); Logger.log(output);
Renvois
Format
: le formateur nouvellement créé
get Raw Format()
Crée un objet Format
pour générer un document XML brut. Le formateur utilise par défaut l'encodage UTF-8
, aucune indentation et aucun saut de ligne autre que ceux fournis dans le document XML lui-même, et inclut la déclaration XML et son encodage.
// Log an XML document in raw form. const xml = '<root><a><b>Text!</b><b>More text!</b></a></root>'; const document = XmlService.parse(xml); const output = XmlService.getRawFormat().format(document); Logger.log(output);
Renvois
Format
: le formateur nouvellement créé