XML-Decoder-Gruppen

Die Verarbeitung von XML-Dateien als Protokollquellen zum Definieren von Decodern zum Extrahieren von Daten aus der XML-Datei.

HINWEIS

Die Definition von XML-Decodergruppen für XML-Protokollquellen erfordert Kenntnisse über die Struktur und den Inhalt der XML-Datei, die zu extrahierenden Daten und die Felder, in denen diese Daten gespeichert werden. Dieser Abschnitt enthält grundlegende Beschreibungen der Parameter, die Sie für Decoder angeben können. Wie Sie Decoder verwenden, hängt von der XML-Datei ab, die Ihre Quelldaten enthält.

Informationen zu den Formatanforderungen für XML-Protokollquellen finden Sie unter Protokollquellen. Wenden Sie sich zur Unterstützung bei der Definition von XML-Decodern an die Adobe.

Die oberste Ebene eines XML-Decoders ist eine Decodergruppe (XMLDecoderGroup), die aus einer Reihe von Decodertabellen besteht, mit denen Sie Daten aus einer XML-Datei eines bestimmten Formats extrahieren. Wenn Sie XML-Dateien mit unterschiedlichen Formaten haben, müssen Sie für jedes Format eine Decoder-Gruppe definieren. Jede Decodergruppe besteht aus einer oder mehreren Decodertabellen.

In der folgenden Tabelle werden der Parameter Tabellen und alle Unterparameter beschrieben, die Sie zum Definieren einer XML-Decoder-Gruppe angeben müssen.

Parameter Beschreibung
Tabellen

Jede Tabelle in einer Decoder-Gruppe stellt eine Datenebene dar, die aus der XML-Datei extrahiert werden soll. Wenn Sie beispielsweise Daten zu Besuchern extrahieren möchten, erstellen Sie eine Decoder-Tabelle, die aus den Informationen besteht, die Sie für jeden Besucher extrahieren möchten. Sie können auch Decodertabellen in Decodertabellen erstellen (siehe Untergeordnete Elemente).

So fügen Sie eine Tabelle zu einer Decoder-Gruppe hinzu

  • Klicken Sie mit der rechten Maustaste auf Tabellen und klicken Sie auf Hinzufügen neuer > XMLDecoderTable .

Felder

Die erweiterten Felder (z. B. x-trackingid, x-email), in denen die Daten gespeichert werden. Die im Feld zu speichernden Daten werden durch die Unterfelder Pfad und/oder Vorgang bestimmt.

Der Pfad ist die Feldebene innerhalb der strukturierten XML-Datei. Der Pfad eines Felds ist relativ zum Pfad der Tabelle, in der es definiert ist. Beispiele sind tag.tag.tag oder tag.tag.tag.@attribute Beachten Sie, dass bei Pfaden zwischen Groß- und Kleinschreibung unterschieden wird.

Ein Vorgang wird auf jede Zeile im angegebenen Pfad angewendet, um eine Ausgabe zu erzeugen. Die folgenden Vorgänge sind verfügbar:

  • LAST: Das Feld nimmt den Wert des letzten Vorkommens des Pfads in der XML-Datei an.
  • RANDOM: Weist dem Feld einen zufälligen Wert zu. Dieser Vorgang ist nützlich, wenn Sie eine eindeutige ID generieren müssen, z. B. für das x-trackingid-Feld.
  • INHERIT: Das definierte Feld erbt seinen Wert aus dem entsprechenden Feld der übergeordneten Tabelle.
  • "Konstante ": Die Konstante muss in Anführungszeichen gesetzt werden. Sie können einen konstanten Vorgang verwenden, um zu überprüfen, ob ein bestimmter Pfad vorhanden ist. Wenn der Pfad vorhanden ist, wird dem Feld der Wert der Konstante zugewiesen.

So fügen Sie ein Feld zu einer Decodertabelle hinzu

  • Klicken Sie mit der rechten Maustaste auf Felder und klicken Sie dann auf Hinzufügen neuer > XMLDecoderField . Definieren Sie Feld, Vorgang und Pfad nach Bedarf.

Path

Die Ebene innerhalb der strukturierten XML-Datei, für die die Decoder-Tabelle Informationen enthält. Bei einer untergeordneten XML-Decodertabelle ist der Pfad relativ zum Pfad der übergeordneten Tabelle. Beachten Sie, dass bei Pfaden zwischen Groß- und Kleinschreibung unterschieden wird.

Wenn Ihre XML-Datei beispielsweise die Struktur enthält:

<visitor>

 

..

 

</visitor>

</logdata>    <p> dann wäre der Pfad <span class="filepath">logdata.visitor</span> . </p> </td>
Tabelle

Der Wert dieses Parameters sollte immer "Protokolleintrag"lauten.

Hinweis: Ändern Sie diesen Wert nicht, ohne die Adobe zu konsultieren.

Kinder

Optional. Eine oder mehrere eingebettete Decoder-Tabellen. Jedes untergeordnete Element enthält die oben beschriebenen Parameter "Felder", "Pfad"und "Tabelle".

Hinzufügen eines untergeordneten Elements zu einer Decodertabelle

  • Klicken Sie mit der rechten Maustaste auf Untergeordnete Elemente und klicken Sie auf Hinzufügen neuer > XMLDecoderTable . Definieren Sie Feld, Vorgang und Pfad nach Bedarf.

Um eine XML-Datei als Protokollquelle für einen Datensatz zu verwenden, müssen XML-Decoder-Gruppen und -Tabellen definiert werden, um die zu verarbeitenden Informationen in den Datensatz zu extrahieren. In diesem Beispiel erfahren Sie, wie Sie Decodergruppen und Tabellen für eine XML-Beispielprotokollquelle für einen Webdatensatz definieren.

Die folgende XML-Datei enthält Informationen zu einem Website-Besucher, einschließlich einer Experience Cloud-ID, E-Mail-Adresse, physischen Adresse und Informationen zu den Seitenansichten des Besuchers.

Da wir nur eine XML-Datei haben, benötigen wir nur eine Decoder-Gruppe, die wir "XML-Beispielformat"nennen. Diese Decoder-Gruppe gilt für alle anderen XML-Dateien im gleichen Format wie diese Datei. Um mit der Erstellung von XML-Decodertabellen innerhalb dieser Decoder-Gruppe zu beginnen, müssen wir zunächst festlegen, welche Informationen wir extrahieren und in welchen Feldern die Daten gespeichert werden sollen.

In diesem Beispiel extrahieren wir Informationen über den Besucher und die mit diesem Besucher verbundenen Seitenansichten. Dazu erstellen wir eine übergeordnete XML-Decodertabelle der obersten Ebene mit Informationen zum Besucher und eine eingebettete (untergeordnete) XML-Decodertabelle mit Informationen zu den Seitenansichten des Besuchers.

Die Informationen für die übergeordnete (Besucher-)Tabelle lauten wie folgt.

  • Eine Datentypkennung für jede Datenzeile in der XML-Datei. Wir verwenden VISITOR als unsere Kennung, damit wir schnell Datenzeilen für den Besucher und nicht für die Seitenansichten identifizieren können. Wir können diesen Wert im Feld x-rowtype speichern.
  • Die Besucher-ID, die wir im Feld x-trackingid speichern.
  • Die E-Mail-Adresse des Besuchers (contact.email), die wir im Feld x-email speichern.
  • Der Registrierungsstatus des Besuchers. Wenn der Besucher ein registrierter Benutzer ist, können wir den Wert "1"im Feld "x-is-registered"speichern.
  • Der Pfadwert ist logdata.visitor und der Tabellenwert Log Entry. Weitere Informationen zu diesen Parametern finden Sie in der obigen Tabelle XMLDecoderGroup .

Die Informationen für die untergeordnete Tabelle (Seitenansichten) lauten wie folgt:

  • Eine Datentypkennung für jede Datenzeile in der XML-Datei. Wir verwenden "PAGEVIEW"als unsere Kennung, damit wir Datenzeilen, die sich auf die Seitenansichten des Besuchers und nicht nur auf den Besucher beziehen, schnell identifizieren können. Dieser Wert wird im Feld x-rowtype gespeichert.
  • Die ID des Besuchers. Dieser Wert wird von der übergeordneten Tabelle übernommen und im Feld x-trackingid gespeichert.
  • Der Zeitstempel jeder Seitenansicht, der im Feld x-event-time gespeichert wird.
  • Der URI jeder Seitenansicht, der im Feld cs-uri-stamm gespeichert wird.
  • Der Pfadwert ist "pageview"und der Tabellenwert "Log Entry". Weitere Informationen zu diesen Parametern finden Sie in der obigen Tabelle XMLDecoderGroup .

Die folgende Bildschirmaufzeichnung zeigt einen Teil der Log Processing Dataset Include-Datei mit der resultierenden XML-Decoder-Gruppe für die XML-Beispieldatei, basierend auf der diskutierten Struktur der übergeordneten und untergeordneten XML-Decodertabellen.

Eine Tabelle, die die Ausgabe dieses Decoders für unsere XML-Beispieldatei anzeigt, sieht etwa wie folgt aus:

x-rowtype cs—uri-system x-email x-is-registered x-event-time x-tracking-id
BESUCHER foo@bar.com 1 1
PAGEVIEW /index.html 01.01.2006 08:00:00 1
PAGEVIEW / 01.01.2006 08:00:30 1

Sie können eine Tabelle wie die oben stehende in Data Workbench erstellen, indem Sie eine Feld-Viewer-Oberfläche verwenden. Informationen zur Benutzeroberfläche des Feld-Viewers finden Sie unter Tools für die Datensatzkonfiguration.

Verwenden von #value on XML element zum Lesen des Attributwerts

Sie können jetzt das Tag #value in XML-Pfaden verwenden, um den Wert eines XML-Elements abzurufen.

Wenn Sie beispielsweise zuvor den Pfad <Hit><Page name="Home Page" index="20">home.html</Page></Hit> angegeben haben, können Sie den Wert des Tags <Page> nicht lesen. Zum Lesen des Werts eines <Page>-Tags und seiner Attribute können Sie Hit.Page.@name bzw. Hit.Page.@index verwenden. Sie können den Wert des Tags auch mit dem Ausdruck Hit.Page.#value abrufen.

Sie können beispielsweise den Wert von Tag <varValue> lesen, indem Sie im Decoder folgendes Feld hinzufügen:

7 = XMLDecoderField: 
Field = string: x-varvalue-name-added 
Operation = string: LAST 
Path = string:  
<b>#value</b> 
Path = string: varValue 
Table = string: Log Entry

Auf ähnliche Weise können Sie den Wert des Tags <Rep> lesen, indem Sie im Decoder folgendes Feld hinzufügen:

7 = XMLDecoderField: 
Field = string: x-rep-name-added 
Operation = string: LAST 
Path = string: Rep.# 
<b>value</b> 
Path = string: Reps 
Table = string: Log Entry

Um dagegen den Wert des Element-Tags ohne Attribut zu lesen, können ein <text>-Tag unter einem <line>-Tag und sein Wert direkt gelesen werden, indem " text"in einem Pfad angegeben oder line.text verwendet wird, je nachdem, wie Sie den Decoder erstellt haben.

2 = XMLDecoderField: 
Field = string: x-chat-text 
Operation = string: LAST 
Path = string:  
<b>text</b> 
Path = string:  
<b>line</b> 
Table = string: Log Entry

Auf dieser Seite