Gruppi decodificatori XML

Elaborazione di file XML come origini di registro per definire decodificatori per l'estrazione di dati dal file XML.

Nota

Per definire i gruppi di decodificatori XML per le origini di registro XML è necessario conoscere la struttura e il contenuto del file XML, i dati da estrarre e i campi in cui tali dati vengono memorizzati. Questa sezione fornisce descrizioni di base dei parametri che è possibile specificare per i decoder. Il modo in cui si utilizza un decodificatore dipende dal file XML che contiene i dati di origine.

Per informazioni sui requisiti di formato per le origini di registro XML, vedere Originidi registro. Per assistenza nella definizione dei decoder XML, contattate Adobe.

Il livello principale di un decodificatore XML è un gruppo di decodificatori (XMLDecoderGroup), ovvero un insieme di tabelle di decodificatori utilizzate per estrarre i dati da un file XML di un particolare formato. Se disponete di file XML di formati diversi, dovete definire un gruppo di decodificatori per ciascun formato. Ciascun gruppo di decodificatori è costituito da una o più tabelle di decodificatori.

Nella tabella seguente sono descritti il parametro Tables e tutti i sottoparametri che è necessario specificare per definire un gruppo di decodificatori XML.

Parametro Descrizione
Tabelle

Ogni tabella in un gruppo di decodificatori rappresenta un livello di dati da estrarre dal file XML. Ad esempio, se desideri estrarre dati sui visitatori, creerai una tabella di decodificazione composta dalle informazioni che desideri estrarre per ogni visitatore. È inoltre possibile creare tabelle di decodificazione all'interno delle tabelle di decodificazione (vedere Bambini).

Aggiunta di una tabella a un gruppo di decodificatori

  • Fare clic con il pulsante destro del mouse su Tables e scegliere Add new > XMLDecoderTable .

Campi

Campi estesi (ad esempio x-trackingid, x-email) in cui vengono memorizzati i dati. I dati da memorizzare nel campo sono determinati dai sottomoduli Percorso e/o Operazione.

Percorso è il livello del campo all'interno del file XML strutturato. Il percorso di un campo è relativo al percorso della tabella in cui è definito. Alcuni esempi includono tag.tag. o tag.tag.tag.@attribute . I percorsi seguono la distinzione tra maiuscole e minuscole.

Un'operazione viene applicata a ogni linea del percorso specificato per produrre un output. Sono disponibili le seguenti operazioni:

  • ULTIMO: Il campo prende il valore dell'ultima occorrenza del percorso nel file XML.
  • RANDOM: Assegna un valore casuale al campo. Questa operazione è utile per generare un ID univoco, ad esempio per il campo x-trackingid.
  • EREDITARIO: Il campo definito eredita il proprio valore dal campo corrispondente della tabella padre.
  • "costante ": La costante deve essere racchiusa tra virgolette. È possibile utilizzare un'operazione costante per verificare l'esistenza di un particolare percorso; se il percorso esiste, al campo viene assegnato il valore della costante.

Aggiunta di un campo a una tabella decoder

  • Fare clic con il pulsante destro del mouse su Campi , quindi scegliere Aggiungi nuovo > XMLDecoderField . Definire Campo, Operazione e Percorso, a seconda delle necessità.

Percorso

Il livello all'interno del file XML strutturato per il quale la tabella decoder contiene informazioni. Per una tabella di decodifica XML figlio, il percorso è relativo al percorso della tabella padre. I percorsi seguono la distinzione tra maiuscole e minuscole.

Ad esempio, se il file XML contiene la struttura:

<visitor>

 

..

 

</visitor>

</logdata>  </code> <p> il percorso sarà <span class="filepath"> logdata.visitor </span>. </p> </td>
Tabella

Il valore di questo parametro deve sempre essere "Log Entry".

Nota: Non modificate questo valore senza consultare Adobe.

Bambini

Facoltativo. Una o più tabelle decoder incorporate. Ogni elemento secondario include i parametri Campi, Percorso e Tabella descritti in precedenza.

Aggiunta di un elemento secondario a una tabella decoder

  • Fare clic con il pulsante destro del mouse su Figli e scegliere Aggiungi nuovo > XMLDecoderTable . Definire Campo, Operazione e Percorso, a seconda delle necessità.

Per utilizzare un file XML come origine di registro per un set di dati, è necessario definire i gruppi di decodificatori XML e le tabelle per estrarre le informazioni da elaborare nel set di dati. In questo esempio viene illustrato come definire gruppi di decodificatori e tabelle per un'origine di registro XML di esempio per un set di dati Web.

Il seguente file XML contiene informazioni su un visitatore del sito Web, incluso un Experience Cloud ID, un indirizzo e-mail, un indirizzo fisico e informazioni sulle visualizzazioni della pagina del visitatore.

Poiché disponiamo di un singolo file XML, è necessario un solo gruppo di decodificatori, denominato "Sample XML Format". Questo gruppo di decodificatori si applica a tutti gli altri file XML dello stesso formato di questo file. Per iniziare a creare tabelle di decodificatore XML all'interno di questo gruppo di decodificatori, è necessario innanzitutto determinare quali informazioni si desidera estrarre e quali campi saranno memorizzati.

In questo esempio, estraiamo informazioni sul visitatore e sulle visualizzazioni di pagina associate a tale visitatore. A questo scopo, creiamo una tabella di decodificatore XML di primo livello (principale) con informazioni sul visitatore e una tabella di decodificatore XML (figlio) incorporata con informazioni sulle visualizzazioni di pagina del visitatore.

Le informazioni per la tabella padre (visitatore) sono le seguenti

  • Identificatore del tipo di dati per ogni riga di dati nel file XML. Usiamo VISITOR come identificatore per identificare rapidamente le righe di dati relative al visitatore e non alle visualizzazioni della pagina. Questo valore può essere memorizzato nel campo x-rowtype.
  • L’ID del visitatore, che viene memorizzato nel campo x-trackingid.
  • L'indirizzo e-mail del visitatore (contact.email), memorizzato nel campo x-email.
  • Lo stato di registrazione del visitatore. Se il visitatore è un utente registrato, possiamo memorizzare il valore "1" nel campo x-is-registrato.
  • Il valore Percorso è logdata.visitore il valore Tabella è Log Entry. Per informazioni su questi parametri, vedere la tabella XMLDecoderGroup riportata sopra.

Le informazioni per la tabella figlio (visualizzazioni di pagina) sono le seguenti:

  • Identificatore del tipo di dati per ogni riga di dati nel file XML. Usiamo "PAGEVIEW" come identificatore, in modo da poter identificare rapidamente le righe di dati relative alle visualizzazioni di pagina del visitatore e non solo al visitatore. Questo valore viene memorizzato nel campo x-rowtype.
  • L’ID del visitatore. Questo valore viene ereditato dalla tabella padre e memorizzato nel campo x-trackingid.
  • La marca temporale di ciascuna visualizzazione di pagina, memorizzata nel campo x-event-time.
  • URI di ogni visualizzazione di pagina, memorizzato nel campo cs-uri-stem.
  • Il valore Path è pageview e il valore Table è "Log Entry". Per informazioni su questi parametri, vedere la tabella XMLDecoderGroup riportata sopra.

La seguente acquisizione dello schermo mostra una porzione di Log Processing Dataset Include file con il gruppo di decodificatori XML risultante per il file XML di esempio, in base alla struttura discussa delle tabelle di decoder XML padre e figlio.

Una tabella che mostra l'output di questo decodificatore per il file XML di esempio ha un aspetto simile a quello riportato di seguito:

x-rowtype cs—uri-stem x-email x-is-registrato x-event-time x-tracking-id
VISITATORE foo@bar.com 1 1
PAGEVIEW /index.html 2006-01-01 08:00:00 1
PAGEVIEW / 2006-01-01 08:00:30 1

È possibile creare una tabella come quella riportata sopra in Workbench dati utilizzando un'interfaccia visualizzatore di campi. Per informazioni sull'interfaccia del visualizzatore di campi, consultate Strumenti di configurazioneDataSet.

Utilizzo di #value sull'elemento XML per leggere il valore dell'attributo

You can now use the #value tag in XML paths to pull the value of an XML element.

Ad esempio, specificando in precedenza un percorso di <Hit><Page name="Home Page" index="20">home.html</Page></Hit> sinistra non è possibile leggere il valore del <Page> tag. Per leggere il valore di un <Page> tag e i relativi attributi, potete utilizzare Hit.Page.@name e Hit.Page.@index rispettivamente. È inoltre possibile richiamare il valore del tag utilizzando Hit.Page.#value espressione.

Ad esempio, potete leggere il valore del tag <varValue> aggiungendo il seguente campo nel decoder:

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

Allo stesso modo, potete leggere il valore del tag <Rep> aggiungendo il seguente campo nel decoder:

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

Al contrario, per leggere il valore del tag elemento senza attributo, un <text> tag sotto un <line> tag e il relativo valore possono essere letti direttamente assegnando " text" in un percorso o utilizzando line.text, a seconda di come avete creato il decodificatore.

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

In questa pagina