XML Service

Usługa XML

Ta usługa umożliwia skryptom analizowanie dokumentów XML, poruszanie się po nich i tworzenie ich w sposób programowy.

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

Zajęcia

NazwaKrótki opis
AttributeReprezentacja atrybutu XML.
CdataReprezentacja węzła XMLCDATASection.
CommentReprezentacja węzła XMLComment.
ContentReprezentacja ogólnego węzła XML.
ContentTypeWyliczenie reprezentujące typy węzłów treści XML.
DocTypeReprezentacja węzła XMLDocumentType.
DocumentReprezentacja dokumentu XML.
ElementReprezentacja węzła XMLElement.
EntityRefReprezentacja węzła XMLEntityReference.
FormatFormatowanie do generowania dokumentu XML z 3 wstępnie zdefiniowanymi formatami, które można dodatkowo dostosować.
NamespaceReprezentacja przestrzeni nazw XML.
ProcessingInstructionReprezentacja węzła XMLProcessingInstruction.
TextReprezentacja węzła XMLText.
XmlServiceTa usługa umożliwia skryptom analizowanie dokumentów XML, poruszanie się po nich i tworzenie ich w sposób programowy.

Attribute

Metody

MetodaZwracany typKrótki opis
getName()StringPobiera lokalną nazwę atrybutu.
getNamespace()Namespace|nullPobiera przestrzeń nazw atrybutu.
getValue()StringPobiera wartość atrybutu.
setName(name)AttributeUstawia lokalną nazwę atrybutu.
setNamespace(namespace)AttributeUstawia przestrzeń nazw atrybutu.
setValue(value)AttributeUstawia wartość atrybutu.

Cdata

Metody

MetodaZwracany typKrótki opis
append(text)TextDołącza podany tekst do treści, która już znajduje się w węźle.
detach()Content|nullOdłącza węzeł od węzła nadrzędnego Element.
getParentElement()Element|nullZwraca węzeł nadrzędny węzła Element.
getText()StringPobiera wartość tekstową węzła Text.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi elementami podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.
setText(text)TextUstawia wartość tekstową węzła Text.

Comment

Metody

MetodaZwracany typKrótki opis
detach()Content|nullOdłącza węzeł od węzła nadrzędnego Element.
getParentElement()Element|nullZwraca węzeł nadrzędny węzła Element.
getText()StringPobiera wartość tekstową węzła Comment.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi elementami podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.
setText(text)CommentUstawia wartość tekstową węzła Comment.

Content

Metody

MetodaZwracany typKrótki opis
asCdata()Cdata|nullRzutuje węzeł jako węzeł CDATASection na potrzeby autouzupełniania.
asComment()Comment|nullRzutuje węzeł jako węzeł Comment na potrzeby autouzupełniania.
asDocType()DocType|nullRzutuje węzeł jako węzeł DocumentType na potrzeby autouzupełniania.
asElement()Element|nullRzutuje węzeł jako węzeł Element na potrzeby autouzupełniania.
asEntityRef()EntityRef|nullRzutuje węzeł jako węzeł EntityReference na potrzeby autouzupełniania.
asProcessingInstruction()ProcessingInstruction|nullRzutuje węzeł jako węzeł ProcessingInstruction na potrzeby autouzupełniania.
asText()Text|nullRzutuje węzeł jako węzeł Text na potrzeby autouzupełniania.
detach()Content|nullOdłącza węzeł od węzła nadrzędnego Element.
getParentElement()Element|nullZwraca węzeł nadrzędny węzła Element.
getType()ContentTypePobiera typ treści węzła.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi elementami podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.

ContentType

Właściwości

WłaściwośćTypOpis
CDATAEnumWęzeł XML CDATASection.
COMMENTEnumWęzeł XML Comment.
DOCTYPEEnumWęzeł XML DocumentType.
ELEMENTEnumWęzeł XML Element.
ENTITYREFEnumWęzeł XML EntityReference.
PROCESSINGINSTRUCTIONEnumWęzeł XML ProcessingInstruction.
TEXTEnumWęzeł XML Text.

DocType

Metody

MetodaZwracany typKrótki opis
detach()Content|nullOdłącza węzeł od węzła nadrzędnego Element.
getElementName()StringPobiera nazwę węzła głównego Element określonego w deklaracji DocType.
getInternalSubset()StringPobiera wewnętrzne dane podzbioru dla węzła DocumentType.
getParentElement()Element|nullZwraca węzeł nadrzędny węzła Element.
getPublicId()StringPobiera publiczny identyfikator zewnętrznych danych podzbioru dla węzła DocumentType.
getSystemId()StringPobiera identyfikator systemowy zewnętrznych danych podzbioru dla węzła DocumentType.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi elementami podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.
setElementName(name)DocTypeUstawia nazwę węzła głównego Element, która ma być określona w deklaracji DocType.
setInternalSubset(data)DocTypeUstawia wewnętrzny podzbiór danych dla węzła DocumentType.
setPublicId(id)DocTypeUstawia publiczny identyfikator zewnętrznych danych podzbioru dla węzła DocumentType.
setSystemId(id)DocTypeUstawia identyfikator systemu zewnętrznego podzbioru danych dla węzła DocumentType.

Document

Metody

MetodaZwracany typKrótki opis
addContent(content)DocumentDołącza podany węzeł na końcu dokumentu.
addContent(index, content)DocumentWstawia podany węzeł pod podanym indeksem wśród wszystkich węzłów, które są bezpośrednimi elementami podrzędnymi dokumentu.
cloneContent()Content[]Tworzy niepowiązane kopie wszystkich węzłów, które są bezpośrednimi elementami podrzędnymi dokumentu.
detachRootElement()Element|nullOdłącza i zwraca węzeł główny Element dokumentu.
getAllContent()Content[]Pobiera wszystkie węzły, które są bezpośrednimi elementami podrzędnymi dokumentu.
getContent(index)Content|nullZwraca węzeł o podanym indeksie spośród wszystkich węzłów, które są bezpośrednimi elementami podrzędnymi dokumentu.
getContentSize()IntegerZwraca liczbę węzłów, które są bezpośrednimi elementami podrzędnymi dokumentu.
getDescendants()Content[]Pobiera wszystkie węzły, które są bezpośrednimi lub pośrednimi elementami podrzędnymi dokumentu, w kolejności, w jakiej występują w dokumencie.
getDocType()DocType|nullPobiera DocTypedeklaracjęDocType dokumentu.
getRootElement()Element|nullPobiera węzeł główny Element dokumentu.
hasRootElement()BooleanOkreśla, czy dokument ma węzeł główny Element.
removeContent()Content[]Usuwa wszystkie węzły, które są bezpośrednimi elementami podrzędnymi dokumentu.
removeContent(content)BooleanUsuwa podany węzeł, jeśli jest on bezpośrednim elementem podrzędnym dokumentu.
removeContent(index)Content|nullUsuwa węzeł o podanym indeksie spośród wszystkich węzłów, które są bezpośrednimi elementami podrzędnymi dokumentu.
setDocType(docType)DocumentUstawia deklarację DocType dokumentu.
setRootElement(element)DocumentUstawia węzeł główny Element dokumentu.

Element

Metody

MetodaZwracany typKrótki opis
addContent(content)ElementDołącza podany węzeł jako ostatni element podrzędny węzła Element.
addContent(index, content)ElementWstawia podany węzeł pod podanym indeksem wśród wszystkich węzłów, które są bezpośrednimi elementami podrzędnymi węzła Element.
cloneContent()Content[]Tworzy nieprzyłączone kopie wszystkich węzłów, które są bezpośrednimi elementami podrzędnymi węzła {@code Element}.
detach()Content|nullOdłącza węzeł od węzła nadrzędnego Element.
getAllContent()Content[]Pobiera wszystkie węzły, które są bezpośrednimi elementami podrzędnymi węzła {@code Element}.
getAttribute(name)Attribute|nullPobiera atrybut tego węzła Element o podanej nazwie i bez przestrzeni nazw.
getAttribute(name, namespace)Attribute|nullPobiera atrybut tego węzła Element o podanej nazwie i przestrzeni nazw.
getAttributes()Attribute[]Pobiera wszystkie atrybuty tego węzła Element w kolejności, w jakiej występują w dokumencie.
getChild(name)Element|nullPobiera pierwszy węzeł Element o podanej nazwie i bez przestrzeni nazw, który jest bezpośrednim węzłem podrzędnym węzła Element.
getChild(name, namespace)Element|nullPobiera pierwszy węzeł Element o podanej nazwie i przestrzeni nazw, który jest bezpośrednim elementem podrzędnym węzła Element.
getChildText(name)String|nullPobiera wartość tekstową węzła o podanej nazwie i bez przestrzeni nazw, jeśli węzeł jest bezpośrednim elementem podrzędnym węzła Element.
getChildText(name, namespace)String|nullPobiera wartość tekstową węzła o podanej nazwie i przestrzeni nazw, jeśli węzeł jest bezpośrednim elementem podrzędnym węzła Element.
getChildren()Element[]Pobiera wszystkie węzły Element, które są bezpośrednimi elementami podrzędnymi tego węzła Element, w kolejności, w jakiej występują w dokumencie.
getChildren(name)Element[]Pobiera wszystkie węzły Element o podanej nazwie i bez przestrzeni nazw, które są bezpośrednimi elementami podrzędnymi węzła Element, w kolejności, w jakiej występują w dokumencie.
getChildren(name, namespace)Element[]Pobiera wszystkie węzły Element o podanej nazwie i przestrzeni nazw, które są bezpośrednimi elementami podrzędnymi tego węzła Element, w kolejności, w jakiej występują w dokumencie.
getContent(index)Content|nullZwraca węzeł o podanym indeksie spośród wszystkich węzłów, które są bezpośrednimi elementami podrzędnymi węzła {@code Element}.
getContentSize()IntegerZwraca liczbę węzłów, które są bezpośrednimi elementami podrzędnymi węzła {@code Element}.
getDescendants()Content[]Pobiera wszystkie węzły, które są bezpośrednimi lub pośrednimi węzłami podrzędnymi węzła {@code Element}, w kolejności, w jakiej występują w dokumencie.
getDocument()DocumentZwraca dokument XML zawierający węzeł {@code Element}.
getName()StringPobiera lokalną nazwę węzła Element.
getNamespace()NamespacePobiera przestrzeń nazw węzła Element.
getNamespace(prefix)NamespacePobiera przestrzeń nazw z podanym prefiksem dla węzła Element.
getParentElement()Element|nullZwraca węzeł nadrzędny węzła Element.
getQualifiedName()StringPobiera lokalną nazwę i prefiks przestrzeni nazw węzła Element w formacie [namespacePrefix]:[localName].
getText()StringPobiera wartość tekstową węzła Element.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi elementami podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.
isAncestorOf(other)BooleanOkreśla, czy węzeł Element jest bezpośrednim czy pośrednim elementem nadrzędnym danego węzła Element.
isRootElement()BooleanOkreśla, czy węzeł Element jest węzłem głównym dokumentu.
removeAttribute(attribute)BooleanUsuwa podany atrybut z tego węzła Element, jeśli taki atrybut istnieje.
removeAttribute(attributeName)BooleanUsuwa atrybut tego węzła Element o podanej nazwie i bez przestrzeni nazw, jeśli taki atrybut istnieje.
removeAttribute(attributeName, namespace)BooleanUsuwa atrybut tego węzła Element o podanej nazwie i przestrzeni nazw, jeśli taki atrybut istnieje.
removeContent()Content[]Usuwa wszystkie węzły, które są bezpośrednimi elementami podrzędnymi węzła {@code Element}.
removeContent(content)BooleanUsuwa podany węzeł, jeśli jest on bezpośrednim elementem podrzędnym węzła {@code Element}.
removeContent(index)Content|nullUsuwa węzeł o podanym indeksie spośród wszystkich węzłów, które są bezpośrednimi elementami podrzędnymi węzła {@code Element}.
setAttribute(attribute)ElementUstawia podany atrybut dla tego węzła Element.
setAttribute(name, value)ElementUstawia atrybut dla tego węzła Element o podanej nazwie i wartości bez przestrzeni nazw.
setAttribute(name, value, namespace)ElementUstawia atrybut tego węzła Element o podanej nazwie, wartości i przestrzeni nazw.
setName(name)ElementUstawia lokalną nazwę węzła Element.
setNamespace(namespace)ElementUstawia przestrzeń nazw dla węzła Element.
setText(text)ElementUstawia wartość tekstową węzła Element.

EntityRef

Metody

MetodaZwracany typKrótki opis
detach()Content|nullOdłącza węzeł od węzła nadrzędnego Element.
getName()StringPobiera nazwę węzła EntityReference.
getParentElement()Element|nullZwraca węzeł nadrzędny węzła Element.
getPublicId()String|nullPobiera publiczny identyfikator węzła EntityReference.
getSystemId()String|nullPobiera identyfikator systemu węzła EntityReference.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi elementami podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.
setName(name)EntityRefUstawia nazwę węzła EntityReference.
setPublicId(id)EntityRefUstawia publiczny identyfikator węzła EntityReference.
setSystemId(id)EntityRefUstawia identyfikator systemu węzła EntityReference.

Format

Metody

MetodaZwracany typKrótki opis
format(document)StringZwraca podany argument Document jako sformatowany ciąg tekstowy.
format(element)StringZwraca podany węzeł Element jako sformatowany ciąg znaków.
setEncoding(encoding)FormatOkreśla kodowanie znaków, którego ma używać moduł formatujący.
setIndent(indent)FormatUstawia ciąg znaków używany do wcięcia węzłów podrzędnych względem węzłów nadrzędnych.
setLineSeparator(separator)FormatUstawia ciąg znaków, który ma być wstawiany, gdy formatujący zwykle wstawia podział wiersza.
setOmitDeclaration(omitDeclaration)FormatOkreśla, czy formatujący ma pomijać deklarację XML, np. <?xml version="1.0" encoding="UTF-8"?>.
setOmitEncoding(omitEncoding)FormatOkreśla, czy formatujący ma pomijać kodowanie w deklaracji XML, np. pole kodowania w <?xml version="1.0" encoding="UTF-8"?>.

Namespace

Metody

MetodaZwracany typKrótki opis
getPrefix()StringPobiera prefiks przestrzeni nazw.
getURI()StringPobiera identyfikator URI przestrzeni nazw.

ProcessingInstruction

Metody

MetodaZwracany typKrótki opis
detach()Content|nullOdłącza węzeł od węzła nadrzędnego Element.
getData()StringPobiera surowe dane dla każdej instrukcji w ProcessingInstruction węźle.
getParentElement()Element|nullZwraca węzeł nadrzędny węzła Element.
getTarget()StringPobiera element docelowy węzła ProcessingInstruction.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi elementami podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.

Text

Metody

MetodaZwracany typKrótki opis
append(text)TextDołącza podany tekst do treści, która już znajduje się w węźle.
detach()Content|nullOdłącza węzeł od węzła nadrzędnego Element.
getParentElement()Element|nullZwraca węzeł nadrzędny węzła Element.
getText()StringPobiera wartość tekstową węzła Text.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi elementami podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.
setText(text)TextUstawia wartość tekstową węzła Text.

XmlService

Właściwości

WłaściwośćTypOpis
ContentTypesContentTypeWyliczenie reprezentujące typy węzłów treści XML.

Metody

MetodaZwracany typKrótki opis
createCdata(text)CdataTworzy nieprzyłączony węzeł CDATASection o podanej wartości.
createComment(text)CommentTworzy nieprzyłączony węzeł Comment o podanej wartości.
createDocType(elementName)DocTypeTworzy nieprzyłączony węzeł DocumentType dla węzła głównego Element o podanej nazwie.
createDocType(elementName, systemId)DocTypeTworzy nieprzyłączony węzeł DocumentType dla węzła głównego Element o podanej nazwie i podanym identyfikatorze systemowym dla zewnętrznych danych podzbioru.
createDocType(elementName, publicId, systemId)DocTypeTworzy nieprzyłączony węzeł DocumentType dla węzła głównego Element o podanej nazwie oraz podany identyfikator publiczny i identyfikator systemowy dla zewnętrznego podzbioru danych.
createDocument()DocumentTworzy pusty dokument XML.
createDocument(rootElement)DocumentTworzy dokument XML z podanym węzłem głównym Element.
createElement(name)ElementTworzy nieprzyłączony węzeł Element o podanej nazwie lokalnej i bez przestrzeni nazw.
createElement(name, namespace)ElementTworzy nieprzyłączony węzeł Element o podanej nazwie lokalnej i przestrzeni nazw.
createText(text)TextTworzy nieprzyłączony węzeł Text o podanej wartości.
getCompactFormat()FormatTworzy obiekt Format do generowania kompaktowego dokumentu XML.
getNamespace(uri)NamespaceTworzy obiekt Namespace z podanym identyfikatorem URI.
getNamespace(prefix, uri)NamespaceTworzy Namespace z podanym prefiksem i identyfikatorem URI.
getNoNamespace()NamespaceTworzy Namespace, który reprezentuje brak rzeczywistej przestrzeni nazw.
getPrettyFormat()FormatTworzy obiekt Format do generowania czytelnego dokumentu XML.
getRawFormat()FormatTworzy obiekt Format do wyświetlania nieprzetworzonego dokumentu XML.
getXmlNamespace()NamespaceTworzy Namespace ze standardowym prefiksem xml.
parse(xml)DocumentTworzy obiekt Document z podanego kodu XML bez weryfikowania go.