XMLStreamingAPI : Bereichsbezogen

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 14 Minuten Lesedauer
  • Erstellt eine große Streaming-XML-Nutzlast zur Verwendung in einer REST- oder SOAP-Anforderung zum Senden von Massendaten an eine Drittanbieter-API. Sie können die Nutzlast auch als XML-Zeichenfolge für eine Nicht-Streaming-Option erstellen.

    Verwenden Sie diese Methoden in einem Workflow-Studio -Skriptschritt mit dem Namespace-Bezeichner sn_ih. Sie können diese API beispielsweise verwenden, um im Skriptschritt Workflow-Studio eine XML-Nutzlast zu erstellen und den zurückgegebenen Wert an den REST-Schritt zu übergeben, um die Anforderung an einen Drittanbieterservice zu senden. Weitere Informationen finden Sie im Workflow-Studio Skriptschritt.
    Hinweis:
    Sie können diese API nur in der Umgebung Workflow-Studio verwenden.

    Für diese Klasse ist kein Konstruktor vorhanden. Stattdessen müssen Sie die Methode build() in der Klasse XMLStreamingBuilder aufrufen, um ein XMLStreamingAPI-Objekt zurückzugeben.

    API-Aufrufreihenfolge

    Generieren Sie XML-Nutzlasten, indem Sie zuerst ein Builder-Objekt mit XMLStreamingBuilder instanziieren und dann die Methoden in der XMLStreamingAPI -Klasse aufrufen:

    1. XMLStreamingBuilder: Erstellt ein Builder-Objekt
    Verwenden Sie diese Methoden in der folgenden Reihenfolge, um ein Builder-Objekt zu erstellen:
    1. XMLStreamingBuilder(): Instanziiert das XMLStreamingBuilder-Objekt.
    2. withAttachment(): Optional. Erstellt ein XML-Dokument als Anhang und speichert es in der Tabelle „Streaming-Anhänge“ [streaming_attachment]. Wenn Sie diese Methode nicht aufrufen, erstellt die API die Nutzlast als XML-Zeichenfolge.
    3. RunesAt(): Optional. Legt eine Uhrzeit fest, nach der der Anhang abläuft. Die Standardeinstellung ist „falsch“. Muss auch withAttachment()- Methode aufrufen.
    4. build(): Gibt ein XMLStreamingAPI-Objekt zurück.
    2. XMLStreamingAPI: Erstellt die XML-Nutzlast
    Verwenden Sie diese Methoden in der folgenden Reihenfolge, um die XML-Nutzlast zu erstellen:
    1. startDocument(): Erstellt das übergeordnete Element der obersten Ebene im XML-Dokument.
    2. Methoden zum Generieren von untergeordneten Elementen im XML-Dokument, z. B. writeTextElement(), startElement()und writeArray().
    3. Methoden zum Generieren von Attributen für ein Element, z. B. writeAttribute(), writeNamespace()und writeDtd().
    4. endElement(): Schließt ein XML-Element.
    5. endDocument: Schließt das übergeordnete Element der obersten Ebene.
    6. getXMLString() oder getAttachmentId(): Gibt die von Ihnen erstellte XML-Zeichenfolge oder Anhangs-ID zurück.
    7. close(): Schließt das XMLStreamingAPI-Objekt.

    Größenbeschränkungen

    Über diese API generierte Nutzlasten dürfen diese Größenbeschränkungen nicht überschreiten:

    • Anhänge: 200 MB
    • Zeichenfolgen: 5 MB

    Das folgende Beispiel zeigt, wie Sie ein XML-Dokument erstellen und in der Tabelle „Streaming-Anhänge“ [streaming_attachment] mit einem definierten Ablaufdatum speichern.

    
    try {
      var ttl = new GlideDateTime("2011-01-01 12:00:00");
      var builder = new sn_ih.XMLStreamingBuilder()
        .withAttachment() // Creates the XML document in streaming mode within an attachment.
        .expiresAt(ttl) // Sets an expiration date for the attachment.
        .build(); // Creates the XMLStreamingAPI object.
    
      builder.startDocument("Employee") // Begins generating the XML document.
        .writeTextElement("firstName","John") // Writes a "firstName" element and value.
        .writeTextElement("lastName","Smith")
        .writeTextElement("age","25")
        .startElement("address") // Adds an "address" parent element.
          .writeTextElement("streetAddress", "21 2nd Street") // Writes a child element and value.
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
        .endElement() // Adds a closing tag for the "address" element.
        .startElement("phoneNumber")
          .writeTextElement("type","home")
          .writeTextElement("number","212 555-1234")
          .writeTextElement("type","fax")
          .writeTextElement("number","646 555-4567")
        .endElement()
      .endDocument() // Stops generating the XML document.
          
      gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
    } catch (err) {
      gs.log(err);
    } finally {
      builder.close();
    }

    Alternativ zeigt dieses Beispiel, wie Sie im Skriptschritt die API verwenden und die Nutzlast als XML-Zeichenfolge erstellen. Sie können diese Option verwenden, um Nutzlasten unter 5 MBzu erstellen.

    (function execute(inputs, outputs) {
    
      var builder = new sn_ih.XMLStreamingBuilder().build();
      
      builder.startDocument("Employee")
        .enablePrettyPrint()
        .writeTextElement("firstName","John")
        .writeTextElement("lastName","Smith")
        .writeTextElement("age","25")
        .startElement("address")
          .writeTextElement("streetAddress", "21 2nd Street")
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
        .endElement()
        .startElement("phoneNumber")
          .writeTextElement("type","home")
          .writeTextElement("number","212 555-1234")
          .writeTextElement("type","fax")
          .writeTextElement("number","646 555-4567")
        .endElement()
      .endDocument()
    
      outputs.payload = builder.getXMLString();
      
    })(inputs, outputs);

    Ausgabe:

    <?xml version="1.0" encoding="UTF-8"?>
    <firstName>John</firstName>
    <lastName>Smith</lastName>
    <age>25</age>
    <address>
      <streetAddress>21 2nd Street</streetAddress>
      <city>Santa Clara</city>
      <state>CA</state>
      <postalCode>11111</postalCode>
    </address>
    <phoneNumber>
      <type>home</type>
      <number>212 555-1234</number>
      <type>fax</type>
      <number>646 555-4567</number>
    </phoneNumber>

    XMLStreamingAPI – schließen ()

    Schließt das XMLStreamingAPI-Objekt. Sie müssen diese Methode aufrufen, um den Stream nach dem Erstellen Ihres XML-Dokuments zu schließen.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 2. Ergebnisse
    Typ Beschreibung
    void

    Beispiel

    Das folgende Beispiel zeigt, wie Sie ein XML-Dokument erstellen und in der Tabelle „Streaming-Anhänge“ [streaming_attachment] mit einem definierten Ablaufdatum speichern.

    
    try {
      var ttl = new GlideDateTime("2011-01-01 12:00:00");
      var builder = new sn_ih.XMLStreamingBuilder()
        .withAttachment() // Creates the XML document in streaming mode within an attachment.
        .expiresAt(ttl) // Sets an expiration date for the attachment.
        .build(); // Creates the XMLStreamingAPI object.
    
      builder.startDocument("Employee") // Begins generating the XML document.
        .writeTextElement("firstName","John") // Writes a "firstName" element and value.
        .writeTextElement("lastName","Smith")
        .writeTextElement("age","25")
        .startElement("address") // Adds an "address" parent element.
          .writeTextElement("streetAddress", "21 2nd Street") // Writes a child element and value.
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
        .endElement() // Adds a closing tag for the "address" element.
        .startElement("phoneNumber")
          .writeTextElement("type","home")
          .writeTextElement("number","212 555-1234")
          .writeTextElement("type","fax")
          .writeTextElement("number","646 555-4567")
        .endElement()
      .endDocument() // Stops generating the XML document.
          
      gs.log(builder.getAttachmentId()); // Returns the sys_id of the attachment.
    } catch (err) {
      gs.log(err);
    } finally {
      builder.close();
    }

    XMLStreamingAPI – disablePrettyPrint()

    Beendet die XML-Formatierung für schön drucken.

    Bevor Sie diese Methode aufrufen, müssen Sie enablePrettyPrint() aufrufen, um einem Abschnitt XML-Formatierungen hinzuzufügen.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie Sie dem Adresselement eine ansprechende Druckformatierung hinzufügen.

    try {
      var ttl = new GlideDateTime("2011-01-01 12:00:00");
      var builder = new sn_ih.XMLStreamingBuilder()
        .withAttachment()
        .expiresAt(ttl)
        .build();
    
      builder.startDocument("Employee")
        .writeTextElement("firstName","John")
        .writeTextElement("lastName","Smith")
        .writeTextElement("age","25")
        .enablePrettyPrint()
        .startElement("address")
          .writeTextElement("streetAddress", "21 2nd Street")
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
        .endElement()
        .disablePrettyPrint()
        .startElement("phoneNumber")
          .writeTextElement("type","home")
          .writeTextElement("number","212 555-1234")
          .writeTextElement("type","fax")
          .writeTextElement("number","646 555-4567")
        .endElement()
      .endDocument()
          
      gs.log(builder.getAttachmentId());
    } catch (err) {
      gs.log(err);
    } finally {
      builder.close();
    }

    XMLStreamingAPI – enablePrettyPrint()

    Fügt einem XML-Element oder einer Struktur von Elementen eine ansprechende Druckformatierung hinzu.

    Verwenden Sie die Methode disablePrettyPrint(), um die Formatierung zu beenden.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 6. Ergebnisse
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie Sie dem Adresselement eine ansprechende Druckformatierung hinzufügen.

    try {
      var ttl = new GlideDateTime("2011-01-01 12:00:00");
      var builder = new sn_ih.XMLStreamingBuilder()
        .withAttachment()
        .expiresAt(ttl)
        .build();
    
      builder.startDocument("Employee")
        .writeTextElement("firstName","John")
        .writeTextElement("lastName","Smith")
        .writeTextElement("age","25")
        .enablePrettyPrint()
        .startElement("address")
          .writeTextElement("streetAddress", "21 2nd Street")
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
        .endElement()
        .disablePrettyPrint()
        .startElement("phoneNumber")
          .writeTextElement("type","home")
          .writeTextElement("number","212 555-1234")
          .writeTextElement("type","fax")
          .writeTextElement("number","646 555-4567")
        .endElement()
      .endDocument()
          
      gs.log(builder.getAttachmentId());
    } catch (err) {
      gs.log(err);
    } finally {
      builder.close();
    }

    XMLStreamingAPI – endDocument()

    Beendet die Struktur Ihres XML-Dokuments.

    Nachdem Sie die startDocument() -Methode aufgerufen und Ihr Streaming-XML-Dokument organisiert haben, rufen Sie die endDocument()- Methode am Ende der Struktur Ihres Dokuments auf. Sie müssen diese beiden Methoden zusammen verwenden, um die Struktur Ihres Streaming-XML-Dokuments erfolgreich zu erstellen.

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 8. Ergebnisse
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie Sie ein XML-Dokument erstellen, das Elemente zu einem Benutzer enthält.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('Employee')
            .writeTextElement('firstName', 'John')
            .writeTextElement('lastName', 'Smith')
            .writeTextElement('age', '25')
            .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }

    XMLStreamingAPI – endElement()

    Fügt einem XML-Element ein schließendes Tag hinzu.

    Verwenden Sie die folgenden Methoden in dieser Reihenfolge, um ein gültiges XML-Element zu erstellen:
    1. Verwenden Sie die Methode startElement(), um ein Start-Tag hinzuzufügen.
    2. Verwenden Sie die Methode endElement(), um das schließende Tag hinzuzufügen.
    Tabelle : 9. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 10. Ergebnisse
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie ein übergeordnetes Element namens „dress“ erstellt und anschließend vier untergeordnete Elemente beschrieben werden.

    try {
      var ttl = new GlideDateTime("2011-01-01 12:00:00");
      var builder = new sn_ih.XMLStreamingBuilder()
        .withAttachment()
        .expiresAt(ttl)
        .build();
    
      builder.startDocument("Employee")
          .startElement("address")
          .writeTextElement("streetAddress", "21 2nd Street")
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
        .endElement()
      .endDocument()
          
      gs.log(builder.getAttachmentId());
    } catch (err) {
      gs.log(err);
    } finally {
      builder.close();
    }

    XMLStreamingAPI – getXMLString()

    Gibt das XML-Dokument als Zeichenfolge zurück.

    Um das XML-Dokument als Zeichenfolge zurückzugeben, rufen Sie nicht die getAttachementId()- Methode in der XMLStreamingBuilder- Klasse auf. Weitere Informationen finden Sie unter XMLStreamingBuilder – Bereichsbezogen.

    Tabelle : 11. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 12. Ergebnisse
    Typ Beschreibung
    Zeichenfolge Mit den XMLStreamingAPI -Methoden erstelltes XML-Dokument als Zeichenfolge

    Das folgende Beispiel zeigt, wie Sie ein XML-Dokument erstellen und dann als Zeichenfolge zurückgeben.

    (function execute(inputs, outputs) {
    
      var builder = new sn_ih.XMLStreamingBuilder().build();
      
      builder.startDocument("Employee")
        .enablePrettyPrint()
        .writeTextElement("firstName","John")
        .writeTextElement("lastName","Smith")
        .writeTextElement("age","25")
        .startElement("address")
          .writeTextElement("streetAddress", "21 2nd Street")
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
        .endElement()
        .startElement("phoneNumber")
          .writeTextElement("type","home")
          .writeTextElement("number","212 555-1234")
          .writeTextElement("type","fax")
          .writeTextElement("number","646 555-4567")
        .endElement()
      .endDocument()
    
      outputs.payload = builder.getXMLString();
      
    })(inputs, outputs);

    Ausgabe:

    <?xml version="1.0" encoding="UTF-8"?>
    <firstName>John</firstName>
    <lastName>Smith</lastName>
    <age>25</age>
    <address>
      <streetAddress>21 2nd Street</streetAddress>
      <city>Santa Clara</city>
      <state>CA</state>
      <postalCode>11111</postalCode>
    </address>
    <phoneNumber>
      <type>home</type>
      <number>212 555-1234</number>
      <type>fax</type>
      <number>646 555-4567</number>
    </phoneNumber>

    XMLStreamingAPI – startDocument(String rootElement, Object namespaceDefinitionMap)

    Startet die Erstellung eines XML-Dokuments.

    Rufen Sie nach dem Aufrufen der build()- Methode die startDocument()- Methode auf, um mit der Organisation Ihres XML-Dokuments zu beginnen. Sie müssen auch die Methode endDocument am Ende der Struktur Ihres Dokuments aufrufen.

    Tabelle : 13. Parameter
    Name Typ Beschreibung
    rootElement Zeichenfolge Optional. Stammelement oder übergeordnetes Element der obersten Ebene für Ihr XML-Dokument.
    namespaceDefinitionMap Objekt Optional. Zuordnung von Schlüsseln und Werten für die Namespaces und die zugehörigen Werte in einer nachfolgenden Liste von Elementen. Zum Beispiel:
    {
    'namespaceOne':'namespaceValue',
    'namespaceTwo':'namespaceValue'
    }
    Tabelle : 14. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie Sie ein XML-Dokument erstellen, das Elemente mit Informationen zu einem Mitarbeiter enthält.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('Employee')
            .writeTextElement('firstName', 'John')
            .writeTextElement('lastName', 'Smith')
            .writeTextElement('age', '25')
            .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }

    XMLStreamingAPI - startElement (Zeichenfolgenname, ObjektnamespaceMap, ObjektattributeMap, Zeichenfolgenpräfix)

    Fügt ein Start-Tag für ein XML-Element hinzu.

    Verwenden Sie die folgenden Methoden in dieser Reihenfolge, um ein gültiges XML-Element zu erstellen:
    1. Verwenden Sie die Methode startElement(), um ein Start-Tag hinzuzufügen.
    2. Verwenden Sie die Methode endElement(), um das schließende Tag hinzuzufügen.
    Tabelle : 15. Parameter
    Name Typ Beschreibung
    Name Zeichenfolge Name des XML-Elements.
    namespaceMap Objekt Optional. Zuordnung von Schlüsseln und Werten für die Namespaces und die zugehörigen Werte in einer nachfolgenden Liste von Elementen. Zum Beispiel:
    {
    'namespaceOne':'namespaceValue',
    'namespaceTwo':'namespaceValue'
    }
    attributeMap Objekt Optional. Zuordnung von Schlüsseln und Werten für die Attribute und die zugehörigen Werte in einer nachfolgenden Liste von Elementen.
    Präfix Zeichenfolge Optional. Präfix für das XML-Element.
    Tabelle : 16. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie ein übergeordnetes Element namens „dress“ erstellt und anschließend vier untergeordnete Elemente beschrieben werden.

    try {
      var ttl = new GlideDateTime("2011-01-01 12:00:00");
      var builder = new sn_ih.XMLStreamingBuilder()
        .withAttachment()
        .expiresAt(ttl)
        .build();
    
      builder.startDocument("Employee")
          .startElement("address")
          .writeTextElement("streetAddress", "21 2nd Street")
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
        .endElement()
      .endDocument()
          
      gs.log(builder.getAttachmentId());
    } catch (err) {
      gs.log(err);
    } finally {
      builder.close();
    }

    XMLStreamingAPI – writeArray(String elementName, Array data, String WrappingElement)

    Fügt Ihrem Streaming-XML-Dokument eine Liste geschachtelter Elemente mit vordefiniertem Text hinzu.

    Nach dem Aufrufen der startDocument()- Methode können Sie die writeArray()- Methode aufrufen, um Ihrem XML-Streaming-Dokument einen Block geschachtelter Elemente hinzuzufügen.

    Tabelle : 17. Parameter
    Name Typ Beschreibung
    elementName Zeichenfolge Name des XML-Elements, das jeder im Array data aufgeführten Zeichenfolge zugeordnet ist.
    Daten Array Liste der Werte, die jedem in wrappingElementgeschachtelten Element zugewiesen werden sollen.
    WrappingElement Zeichenfolge Übergeordnetes Element, das jeweils elementNameenthält.
    Tabelle : 18. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie ein übergeordnetes Element namens „officeLocations“erstellt und dann ein Array von fünf Elementen der Stadt geschachtelt wird.

    try {
      var ttl = new GlideDateTime("2011-01-01 12:00:00");
      var builder = new sn_ih.XMLStreamingBuilder()
        .withAttachment()
        .expiresAt(ttl)
        .build();
    
      builder.startDocument("Employee")
          .writeArray('city', ['Santa Clara','San Diego','Chicago','Sydney','London'], 'officeLocations')
      .endDocument()
          
      gs.log(builder.getAttachmentId());
    } catch (err) {
      gs.log(err);
    } finally {
      builder.close();
    }

    XMLStreamingAPI – writeAttribute(Zeichenfolgenname, Zeichenfolgenwert)

    Fügt einem Element in Ihrem XML-Dokument ein Attribut hinzu.

    Nach dem Aufrufen der Methode startDocument(), startElement()oder writeTextElement() können Sie die Methode writeAttribute() aufrufen, um dem zugehörigen XML-Element ein Attribut hinzuzufügen.

    Tabelle : 19. Parameter
    Name Typ Beschreibung
    Name Zeichenfolge Name des Attributs des XML-Elements.
    Wert Zeichenfolge Wert für das Attribut des XML-Elements.
    Tabelle : 20. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    In diesem Beispiel wird dem Mitarbeiterelement ein Attribut mit der Bezeichnung „idNumber“ hinzugefügt.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('Employee')
        .writeAttribute('idNumber','12345')
            .writeTextElement('firstName', 'John')
            .writeTextElement('lastName', 'Smith')
            .writeTextElement('age', '25')
        .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }

    XMLStreamingAPI – writeAttributes(Object attributeMap)

    Fügt einem Element in Ihrem XML-Dokument Attribute hinzu.

    Nach dem Aufrufen der Methode startDocument(), startElement()oder writeTextElement() können Sie die Methode writeAttributes() aufrufen, um dem zugehörigen XML-Element Attribute hinzuzufügen.

    Tabelle : 21. Parameter
    Name Typ Beschreibung
    attributeMap Objekt Zuordnung von Schlüsseln und Werten, die Attributnamen und -werte enthalten, die dem XML-Element zugeordnet werden sollen. Zum Beispiel:
    {
    'attributeOne':'attributeValue',
    'attributeTwo':'attributeValue'
    }
    Tabelle : 22. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    In diesem Beispiel werden dem Element „Mitarbeiter“die Attribute „idNumber“, „officeLocation“ und „department“ hinzugefügt.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('Employee')
        .writeAttributes({'idNumber':'12345', 'officeLocation':'San Diego', 'department':'Sales'})
            .writeTextElement('firstName', 'John')
            .writeTextElement('lastName', 'Smith')
            .writeTextElement('age', '25')
        .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }

    XMLStreamingAPI – writeCData(Zeichenfolgendaten)

    Fügt Ihrem XML-Dokument CDATA hinzu.

    Nach dem Aufrufen der Methode writeCDataElement() können Sie die Methode writeCData() aufrufen, um CDATA innerhalb des Elements hinzuzufügen.

    Tabelle : 23. Parameter
    Name Typ Beschreibung
    data Zeichenfolge Wert, der nach dem CDATA-Stichwort in Ihr CDATA-Element aufgenommen werden soll.
    Tabelle : 24. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    In diesem Beispiel wird CDATA zum CDATA-Element timeWorkedhinzugefügt.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('Employee')
            .writeTextElement('firstName', 'John')
            .writeTextElement('lastName', 'Smith')
            .writeTextElement('age', '25')
            .writeCDataElement('timeWorked')
            .writeCData('< 2 years')
        .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }

    XMLStreamingAPI - writeCDataElement(Zeichenfolgenname, Zeichenfolgendaten, Objektpräfix)

    Fügt Ihrem XML-Dokument ein CDATA-Element hinzu.

    Nach dem Aufrufen der startDocument()- Methode können Sie die writeCDataElement()- Methode aufrufen, um Ihrem XML-Dokument ein CDATA-Element hinzuzufügen.

    Tabelle : 25. Parameter
    Name Typ Beschreibung
    Name Zeichenfolge Name des CDATA-Elements.
    Daten Zeichenfolge Optional. Typ der Daten, als der das CDATA-Element analysiert werden soll.
    Präfix Objekt Optional. Zuordnung der untergeordneten Elemente und Werte, die das CDATA-Element enthält. Zum Beispiel:
    {
    'prefixOne':'prefixValue',
    'prefixTwo':'prefixValue'
    }
    Sie müssen das Präfix eines XML-Elements mithilfe von writeNamespace()einem Namespace zuordnen.
    Tabelle : 26. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    In diesem Beispiel wird eine Dokumenttypdefinition mit der Bezeichnung „address“ verwendet, um eine interne Dokumenttypdefinition für das XML-Dokument zu definieren.

    try {
      var ttl = new GlideDateTime("2011-01-01 12:00:00");
      var builder = new sn_ih.XMLStreamingBuilder()
        .withAttachment()
        .expiresAt(ttl)
        .build();
    
      builder.startDocument("Employee")
      .writeDtd('address')
      .writeCDataElement('home', '#PCDATA', {'streetAddress', 'city', 'state', 'postalCode'})
          .writeTextElement("streetAddress", "21 2nd Street")
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
      .endDocument()
          
      gs.log(builder.getAttachmentId());
    } catch (err) {
      gs.log(err);
    } finally {
      builder.close();
    }

    XMLStreamingAPI – writeCharacters(String text)

    Fügt Ihrem XML-Dokument Text hinzu.

    Verwenden Sie die Methode writeCharacters(), um Zeichenfolgendaten in einen Abschnitt in Ihrem XML-Dokument einzufügen.

    Tabelle : 27. Parameter
    Name Typ Beschreibung
    text Zeichenfolge Text, der einem Abschnitt Ihres XML-Dokuments hinzugefügt werden soll.
    Tabelle : 28. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie Sie Elementen in Ihrem XML-Dokument Textwerte hinzufügen.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('Employee')
            .startElement('firstName')
            .writeCharacters('John')
            .EndElement()
            .startElement('lastName')
            .writeCharacters('Smith')
            .endElement()
        .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }

    XMLStreamingAPI – writeComment(Zeichenfolgenkommentar)

    Fügt Ihrem XML-Dokument einen Kommentar hinzu.

    Nach dem Aufrufen der startDocument() -Methode können Sie die writeComment()- Methode aufrufen, um Ihrem XML-Dokument einen Kommentar hinzuzufügen.

    Tabelle : 29. Parameter
    Name Typ Beschreibung
    Kommentar Zeichenfolge Einzubeziehender Kommentartext.
    Tabelle : 30. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie einem XML-Dokument ein Kommentar hinzugefügt wird.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('Employee')
            .writeComment('Element for information related to active employees.')
            .writeTextElement('firstName', 'John')
            .writeTextElement('lastName', 'Smith')
            .writeTextElement('age', '25')
        .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }

    XMLStreamingAPI – writeDtd(String dtd)

    Fügt Ihrem XML-Dokument eine Dokumenttypdefinition hinzu.

    Nach dem Aufrufen der startDocument()- Methode können Sie die writeDtd()- Methode aufrufen, um Ihrem XML-Dokument eine gültige XML-Dokumenttypdefinition hinzuzufügen.

    Tabelle : 31. Parameter
    Name Typ Beschreibung
    DTD Zeichenfolge Name einer gültigen XML-Dokumenttypdefinition.
    Tabelle : 32. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    In diesem Beispiel wird eine Dokumenttypdefinition mit der Bezeichnung „address“ verwendet, um eine interne Dokumenttypdefinition für das XML-Dokument zu definieren.

    try {
      var ttl = new GlideDateTime("2011-01-01 12:00:00");
      var builder = new sn_ih.XMLStreamingBuilder()
        .withAttachment()
        .expiresAt(ttl)
        .build();
    
      builder.startDocument("Employee")
      .writeDtd('address')
      .writeCDataElement('home', '#PCDATA', {'streetAddress', 'city', 'state', 'postalCode'})
          .writeTextElement("streetAddress", "21 2nd Street")
          .writeTextElement("city", "Santa Clara")
          .writeTextElement("state", "CA")
          .writeTextElement("postalCode", "11111")
      .endDocument()
          
      gs.log(builder.getAttachmentId());
    } catch (err) {
      gs.log(err);
    } finally {
      builder.close();
    }

    XMLStreamingAPI – writeNamespace (Zeichenfolgenpräfix, Zeichenfolge namespaceURI)

    Fügt einem Element in Ihrem XML-Dokument einen Namespace hinzu.

    Nach dem Aufrufen der Methode startDocument(), startElement()oder writeTextElement() können Sie die Methode writeNamespace() aufrufen, um dem zugehörigen XML-Element einen Namespace hinzuzufügen.

    Tabelle : 33. Parameter
    Name Typ Beschreibung
    Präfix Zeichenfolge Präfix für den XML-Namespace.
    namespaceURI Zeichenfolge Optional. URI für den Namespace.
    Tabelle : 34. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie Sie dem Stammelement des Unternehmens einen Namespace und einen URI hinzufügen und dann das Präfix dem geschachtelten Element „companyName“ zuweisen.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('company')
        .writeNamespace('x','https://www.servicenow.com')
            .writeTextElement('companyName', 'ServiceNow')
            .writeNamespace('x')
        .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }

    XMLStreamingAPI – writeNamespaces(Object namespaceMap)

    Fügt dem Stammelement in Ihrem XML-Dokument Namespaces hinzu.

    Nach dem Aufrufen der Methode startDocument() oder startElement() können Sie die Methode writeNamespaces() aufrufen, um Namespaces für das zugeordnete XML-Element zu deklarieren.

    Tabelle : 35. Parameter
    Name Typ Beschreibung
    namespaceMap Objekt Zuordnung von Schlüsseln und Werten, die Namespace-Präfixe und URIs enthalten, die dem Stammelement des XML-Dokuments XML zugeordnet werden sollen. Zum Beispiel:
    {
    'namespaceOne':'namespaceValue',
    'namespaceTwo':'namespaceValue'
    }
    Tabelle : 36. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    In diesem Beispiel werden dem Stammelement des Unternehmens zwei Namespaces und URIs hinzugefügt, und anschließend werden den geschachtelten Elementen die entsprechenden Präfixe zugewiesen.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('company')
        .writeNamespaces({'x':'https://www.servicenow.com', 'y':'https://www.developer.servicenow.com'})
            .writeTextElement('companyName', 'ServiceNow')
            .writeNamespace('x')
            .writeTextElement('devFramework', 'UI Framework')
            .writeNamespace('y')
        .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }

    XMLStreamingAPI – writeTextElement(Zeichenfolgenname, Zeichenfolgentext, Objektpräfix)

    Fügt Ihrem XML-Dokument ein einzelnes XML-Element hinzu.

    Nach dem Aufrufen der startDocument()- Methode können Sie die writeTextElement()- Methode aufrufen, um der Struktur Ihres XML-Dokuments ein einzelnes XML-Element hinzuzufügen.

    Tabelle : 37. Parameter
    Name Typ Beschreibung
    Name Zeichenfolge Name des XML-Elements.
    text Zeichenfolge Wert für das XML-Element.
    Präfix Objekt Optional. Zuordnung der Präfixe und Werte, die dem XML-Element zugeordnet sind. Zum Beispiel:
    {
    'prefixOne':'prefixValue',
    'prefixTwo':'prefixValue'
    }
    Sie müssen das Präfix eines XML-Elements mithilfe von writeNamespace()einem Namespace zuordnen.
    Tabelle : 38. Rückgaben
    Typ Beschreibung
    XMLStreamingAPI Streaming-XML-Objekt zum Erstellen der Nutzlast.

    Das folgende Beispiel zeigt, wie Sie ein XML-Dokument erstellen, das drei Elemente mit Informationen zu einem Mitarbeiter enthält.

    try {
        var ttl = new GlideDateTime('2011-01-01 12:00:00');
        var builder = new sn_ih.XMLStreamingBuilder().withAttachment().expiresAt(ttl);
        var streamingDocument = builder.build();
    
        streamingDocument.startDocument('Employee')
            .writeTextElement('firstName', 'John')
            .writeTextElement('lastName', 'Smith')
            .writeTextElement('age', '25')
        .endDocument();
        gs.log(streamingDocument.getAttachmentId());
    } catch (err) {
        gs.log(err);
    } finally {
        streamingDocument.close();
    }