XML Service

Usługa XML

Ta usługa umożliwia skryptom analizowanie, nawigowanie i tworzenie programowo dokumentów 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);
}

Zajęcia

NazwaKrótki opis
AttributeReprezentacja atrybutu XML.
CdataWęzeł XML CDATASection.
CommentWęzeł XML Comment.
ContentOgólny węzeł XML.
ContentTypeWyliczenie reprezentujące typy węzłów treści XML.
DocTypeWęzeł XML DocumentType.
DocumentReprezentacja dokumentu XML.
ElementWęzeł XML Element.
EntityRefWęzeł XML EntityReference.
FormatFormatowanie służące do wyprowadzania dokumentu XML. Dostępne są 3 wstępnie zdefiniowane formaty, które można dodatkowo dostosować.
NamespaceReprezentacja przestrzeni nazw XML.
ProcessingInstructionWęzeł XML ProcessingInstruction.
TextWęzeł XML Text.
XmlServiceTa usługa umożliwia skryptom analizowanie, nawigowanie i tworzenie dokumentów XML w ramach programowania.

Attribute

Metody

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

Cdata

Metody

MetodaZwracany typKrótki opis
append(text)TextDodaje podany tekst do treści, które już istnieją w węźle.
detach()ContentOdłącza węzeł od nadrzędnego węzła Element.
getParentElement()ElementPobiera węzeł nadrzędny Element węzła.
getText()StringPobiera wartość tekstową węzła Text.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi 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()ContentOdłącza węzeł od nadrzędnego węzła Element.
getParentElement()ElementPobiera węzeł nadrzędny Element węzła.
getText()StringPobiera wartość tekstową węzła Comment.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi 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()CdataPrzekształca węzeł w węzeł CDATASection na potrzeby autouzupełniania.
asComment()CommentPrzekształca węzeł w węzeł Comment na potrzeby autouzupełniania.
asDocType()DocTypePrzekształca węzeł w węzeł DocumentType na potrzeby autouzupełniania.
asElement()ElementPrzekształca węzeł w węzeł Element na potrzeby autouzupełniania.
asEntityRef()EntityRefPrzekształca węzeł w węzeł EntityReference na potrzeby autouzupełniania.
asProcessingInstruction()ProcessingInstructionPrzekształca węzeł w węzeł ProcessingInstruction na potrzeby autouzupełniania.
asText()TextPrzekształca węzeł w węzeł Text na potrzeby autouzupełniania.
detach()ContentOdłącza węzeł od nadrzędnego węzła Element.
getParentElement()ElementPobiera węzeł nadrzędny Element węzła.
getType()ContentTypePobiera typ treści węzła.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi 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()ContentOdłącza węzeł od nadrzędnego węzła Element.
getElementName()StringPobiera nazwę wierzchołka Element głównego określonego w deklaracji DocType.
getInternalSubset()StringPobiera dane wewnętrznego podzbioru węzła DocumentType.
getParentElement()ElementPobiera węzeł nadrzędny Element węzła.
getPublicId()StringPobiera publiczny identyfikator zewnętrznych danych podzbioru dla węzła DocumentType.
getSystemId()StringPobiera identyfikator systemu danych zewnętrznych podzbioru dla węzła DocumentType.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.
setElementName(name)DocTypeUstawia nazwę węzła Element, który ma być podany w deklaracji DocType.
setInternalSubset(data)DocTypeUstawia dane wewnętrznego podzbioru dla węzła DocumentType.
setPublicId(id)DocTypeUstawia publiczny identyfikator zewnętrznego podzbioru danych dla węzła DocumentType.
setSystemId(id)DocTypeUstawia identyfikator systemu danych zewnętrznych podzbioru dla węzła DocumentType.

Document

Metody

MetodaZwracany typKrótki opis
addContent(content)DocumentDodaje podany węzeł na końcu dokumentu.
addContent(index, content)DocumentWstawia dany węzeł pod podanym indeksem wśród wszystkich węzłów, które są bezpośrednimi podrzędnymi dokumentu.
cloneContent()Content[]Tworzy kopie wszystkich nieprzypisanych węzłów, które są bezpośrednimi podrzędnymi dokumentu.
detachRootElement()ElementOdłącza i zwraca węzeł główny Element dokumentu.
getAllContent()Content[]Pobiera wszystkie węzły, które są bezpośrednimi podrzędnymi dokumentu.
getContent(index)ContentPobiera węzeł o danym indeksie spośród wszystkich węzłów, które są bezpośrednimi podrzędnymi dokumentu.
getContentSize()IntegerPobiera liczbę węzłów, które są bezpośrednimi 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()DocTypePobiera deklarację DocType dokumentu.
getRootElement()ElementPobiera główny Element węzeł dokumentu.
hasRootElement()BooleanOkreśla, czy dokument ma węzeł główny Element.
removeContent()Content[]Usuwa wszystkie węzły, które są bezpośrednimi podrzędnymi dokumentu.
removeContent(content)BooleanUsuwa podany węzeł, jeśli jest on bezpośrednio podrzędnym węzłem dokumentu.
removeContent(index)ContentUsuwa węzeł o danym indeksie spośród wszystkich węzłów, które są bezpośrednimi podrzędnymi dokumentu.
setDocType(docType)DocumentUstawia deklarację DocType dokumentu.
setRootElement(element)DocumentUstawia Element, czyli wierzchołek dokumentu.

Element

Metody

MetodaZwracany typKrótki opis
addContent(content)ElementDodaje podany węzeł jako ostatni element podrzędny węzła Element.
addContent(index, content)ElementWstawia dany węzeł pod podanym indeksem wśród wszystkich węzłów, które są bezpośrednimi podrzędnymi węzła Element.
cloneContent()Content[]Tworzy niezałączone kopie wszystkich węzłów, które są bezpośrednimi podrzędnymi węzła {@code Element}.
detach()ContentOdłącza węzeł od nadrzędnego węzła Element.
getAllContent()Content[]Pobiera wszystkie węzły, które są bezpośrednimi podrzędnymi węzła {@code Element}.
getAttribute(name)AttributePobiera atrybut węzła Element o podanej nazwie bez podawania przestrzeni nazw.
getAttribute(name, namespace)AttributePobiera atrybut węzła Element o podanej nazwie i przestrzeni nazw.
getAttributes()Attribute[]Pobiera wszystkie atrybuty węzła Element w kolejności, w jakiej występują w dokumencie.
getChild(name)ElementPobiera pierwszy węzeł Element o podanej nazwie i bez przestrzeni nazw, który jest bezpośrednim podrzędnym węzłem tego węzła Element.
getChild(name, namespace)ElementPobiera pierwszy węzeł Element o podanej nazwie i przestrzeni nazw, który jest bezpośrednim podrzędnym węzłem tego węzła Element.
getChildText(name)StringPobiera wartość tekstową węzła o danej nazwie i bez przestrzeni nazw, jeśli węzeł jest węzłem bezpośrednim węzła Element.
getChildText(name, namespace)StringPobiera wartość tekstową węzła o podanej nazwie i przestrzeni nazw, jeśli węzeł jest bezpośrednim podrzędnym węzła Element.
getChildren()Element[]Pobiera wszystkie węzły Element, które są bezpośrednimi podrzędnymi 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 podrzędnymi węzła Element, w kolejności ich występowania w dokumencie.
getChildren(name, namespace)Element[]Pobiera wszystkie węzły Element o danej nazwie i w danej przestrzeni nazw, które są bezpośrednimi podrzędnymi węzła Element, w kolejności, w jakiej występują w dokumencie.
getContent(index)ContentPobiera węzeł o danym indeksie spośród wszystkich węzłów, które są bezpośrednimi podrzędnymi węzła {@code Element}.
getContentSize()IntegerPobiera 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 podrzędnymi węzła {@code Element}, w kolejności, w jakiej występują w dokumencie.
getDocument()DocumentPobiera dokument XML zawierający węzeł {@code Element}.
getName()StringPobiera lokalną nazwę węzła Element.
getNamespace()NamespacePobiera nazwę przestrzeni nazw węzła Element.
getNamespace(prefix)NamespacePobiera przestrzeń nazw z danym prefiksem dla węzła Element.
getParentElement()ElementPobiera węzeł nadrzędny Element węzła.
getQualifiedName()StringPobiera nazwę lokalną 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 podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.
isAncestorOf(other)BooleanOkreśla, czy ten węzeł Element jest węzłem nadrzędnym bezpośrednim czy pośrednim danego węzła Element.
isRootElement()BooleanOkreśla, czy węzeł Element jest węzłem głównym dokumentu.
removeAttribute(attribute)BooleanUsuwa dany atrybut z tego węzła Element, jeśli taki atrybut istnieje.
removeAttribute(attributeName)BooleanUsuwa atrybut tego węzła Element o danej nazwie i bez przestrzeni nazw, jeśli taki atrybut istnieje.
removeAttribute(attributeName, namespace)BooleanUsuwa atrybut tego węzła Element o danej nazwie i w danej przestrzeni nazw, jeśli taki atrybut istnieje.
removeContent()Content[]Usuwa wszystkie węzły, które są bezpośrednimi podrzędnymi węzła {@code Element}.
removeContent(content)BooleanUsuwa podany węzeł, jeśli jest on bezpośrednim podrzędnym węzła {@code Element}.
removeContent(index)ContentUsuwa węzeł o danym indeksie spośród wszystkich węzłów, które są bezpośrednimi podrzędnymi węzła {@code Element}.
setAttribute(attribute)ElementUstawia podany atrybut dla tego węzła Element.
setAttribute(name, value)ElementUstawia atrybut tego węzła Element z podaną nazwą, wartością i bez przestrzeni nazw.
setAttribute(name, value, namespace)ElementUstawia atrybut tego węzła Element z podaną nazwą, 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()ContentOdłącza węzeł od nadrzędnego węzła Element.
getName()StringPobiera nazwę węzła EntityReference.
getParentElement()ElementPobiera węzeł nadrzędny Element węzła.
getPublicId()StringPobiera publiczny identyfikator węzła EntityReference.
getSystemId()StringPobiera identyfikator systemu węzła EntityReference.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi 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)StringWypisuje podany parametr Document jako sformatowany ciąg znaków.
format(element)StringWypisuje podany węzeł Element jako sformatowany ciąg znaków.
setEncoding(encoding)FormatOkreśla kodowanie znaków, którego ma używać formatowanie.
setIndent(indent)FormatUstawia ciąg znaków używany do wcięcia węzłów podrzędnych względem ich węzłów nadrzędnych.
setLineSeparator(separator)FormatUstawia ciąg znaków do wstawienia, gdy formatowanie normalnie wstawia podział wiersza.
setOmitDeclaration(omitDeclaration)FormatOkreśla, czy formatowanie powinno pomijać deklarację XML, np. <?xml version="1.0" encoding="UTF-8"?>.
setOmitEncoding(omitEncoding)FormatOkreśla, czy formater powinien pominąć 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()ContentOdłącza węzeł od nadrzędnego węzła Element.
getData()StringPobiera nieprzetworzone dane dotyczące każdej instrukcji w węźle ProcessingInstruction.
getParentElement()ElementPobiera węzeł nadrzędny Element węzła.
getTarget()StringPobiera wartość docelową węzła ProcessingInstruction.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi podrzędnymi węzła, w kolejności, w jakiej występują w dokumencie.

Text

Metody

MetodaZwracany typKrótki opis
append(text)TextDodaje podany tekst do treści, które już istnieją w węźle.
detach()ContentOdłącza węzeł od nadrzędnego węzła Element.
getParentElement()ElementPobiera węzeł nadrzędny Element węzła.
getText()StringPobiera wartość tekstową węzła Text.
getValue()StringPobiera wartość tekstową wszystkich węzłów, które są bezpośrednimi lub pośrednimi 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 niepowiązany węzeł CDATASection z określoną wartością.
createComment(text)CommentTworzy niepowiązany węzeł Comment z określoną wartością.
createDocType(elementName)DocTypeTworzy niepowiązany węzeł DocumentType dla węzła głównego Element o podanej nazwie.
createDocType(elementName, systemId)DocTypeTworzy niepowiązany węzeł DocumentType dla węzła Element z daną nazwą i danym identyfikatorem systemowym dla danych zewnętrznych podzbioru.
createDocType(elementName, publicId, systemId)DocTypeTworzy nieprzyłączony węzeł DocumentType dla węzła Element z podaną nazwą oraz podanym identyfikatorem publicznym i identyfikatorem systemowym dla danych zewnętrznych podzbioru.
createDocument()DocumentTworzy pusty dokument XML.
createDocument(rootElement)DocumentTworzy dokument XML z danym węzłem głównym Element.
createElement(name)ElementTworzy niepowiązany węzeł Element o podanej nazwie lokalnej i bez przestrzeni nazw.
createElement(name, namespace)ElementTworzy niepowiązany węzeł Element z daną nazwą lokalną i przestrzenią nazw.
createText(text)TextTworzy niepowiązany węzeł Text z określoną wartością.
getCompactFormat()FormatTworzy obiekt Format, aby wygenerować skompresowany dokument XML.
getNamespace(uri)NamespaceTworzy obiekt Namespace z podanym identyfikatorem URI.
getNamespace(prefix, uri)NamespaceTworzy Namespace z danym prefiksem i identyfikatorem URI.
getNoNamespace()NamespaceTworzy Namespace, który reprezentuje brak prawdziwej przestrzeni nazw.
getPrettyFormat()FormatTworzy obiekt Format, aby wygenerować czytelny dla człowieka dokument XML.
getRawFormat()FormatTworzy obiekt Format, aby wygenerować surowy dokument XML.
getXmlNamespace()NamespaceTworzy Namespace ze standardowym prefiksem xml.
parse(xml)DocumentTworzy Document z podanego kodu XML bez jego weryfikacji.