Struttura ad albero del messaggio

La struttura ad albero del messaggio fa parte della struttura ad albero del messaggio logica nel quale il broker memorizza la propria rappresentazione interna del contenuto del messaggio.

La root di una struttura ad albero del messaggio viene denominata Root. La struttura ad albero del messaggio è sempre presente e viene trasmessa da un nodo all'altro all'interno di una singola istanza di un flusso di messaggi.

La struttura ad albero del messaggio include tutte le intestazioni presenti nel messaggio, oltre al contenuto del messaggio. Essa include anche la struttura ad albero secondaria delle proprietà (descritta in Programmi di analisi), se creata dal programma di analisi. Se un programma di analisi fornito ha creato la struttura ad albero del messaggio, l'elemento che rappresenta la struttura ad albero secondaria delle proprietà è seguito da nessuna intestazione o da più intestazioni.

Se il messaggio è stato ricevuto attraverso WebSphere MQ Enterprise Transport, WebSphere MQ Mobile Transport o WebSphere MQ Telemetry Transport, la prima intestazione (il secondo elemento) deve essere MQMD. Tutte le intestazioni aggiuntive incluse nel messaggio compaiono nella struttura ad albero nello stesso ordine in cui compaiono nel messaggio. L'ultimo elemento sotto la root della struttura ad albero del messaggio è sempre il contenuto del messaggio.

Se un programma di analisi definito dall'utente ha creato la struttura ad albero del messaggio, la struttura ad albero delle proprietà, se presente, è seguita dal contenuto del messaggio.

La struttura ad albero del messaggio è mostrata di seguito. Se il messaggio di input non è un messaggio WebSphere MQ, le intestazioni mostrate potrebbero non essere presenti. Se il programma di analisi che ha creato questa struttura ad albero è un programma di analisi definito dall'utente, la struttura ad albero delle proprietà potrebbe non essere presente.


La struttura ad albero del messaggio creata da un nodo di input e il programma di analisi per un messaggio ricevuto attraverso un trasporto che utilizza WebSphere MQ.

La struttura ad albero del contenuto è una struttura di elementi child (descritta di seguito) che rappresenta il contenuto del messaggio (dati) e ne riflette la struttura logica. L'albero della struttura viene creata dal programma di analisi (un programma di analisi fornito o uno specificato dall'utente) come descritto in Programmi di analisi.

Ogni elemento all'interno della struttura ad albero analizzata appartiene ad uno di questi tre tipi:

Elemento nome
Un elemento nome ha una stringa associata ad esso, che rappresenta il nome dell'elemento. Un esempio di elemento nome è XMLElement, descritto in Elemento XML.
Elemento valore
Un elemento valore ha un valore associato ad esso. Un esempio di un elemento valore è XMLContent, descritto in Contenuto XML.
Elemento nome-valore
Un elemento nome-valore è un'ottimizzazione del caso in cui un elemento nome contiene solo un elemento valore e nient'altro. L'elemento contiene sia un nome che un valore. Un esempio di elemento nome-valore è XMLAttribute, descritto in Attributo XML.

Per informazioni su come è popolata la struttura ad albero del messaggio, consultare Come è popolata la struttura ad albero del messaggio.

Cartella delle proprietà

La cartella delle proprietà è il primo elemento della struttura ad albero del messaggio e contiene le informazioni sulle caratteristiche del messaggio.

La root della cartella delle proprietà viene denominata Properties. Essa è il primo elemento sotto Root. Tutte le strutture ad albero del messaggio generate dai programmi di analisi integrati includono una cartella delle proprietà per il messaggio. Se si crea il proprio programma di analisi definito dall'utente, è possibile scegliere se il programma di analisi creerà una cartella delle proprietà. Tuttavia, per coerenza, si consiglia di includere questa azione nel programma di analisi definito dall'utente.

La cartella delle proprietà viene creata ed inserita nella struttura ad albero dopo tutte le intestazioni ma prima dei dati del messaggio. Essa contiene una serie di proprietà standard che è possibile manipolare nei nodi del flusso di messaggi allo stesso modo di qualunque altra proprietà. La maggioranza di questi campi sono mappati ai campi nelle intestazioni WebSphere MQ supportate, se presenti e sono trasmessi al programma di analisi appropriato quando un messaggio viene consegnato da un nodo ad un altro.

Ad esempio, l'intestazione MQRFH2 contiene informazioni sulla serie, il tipo e il formato del messaggio. Tali valori sono memorizzati nella cartella delle proprietà come MessageSet, MessageType e MessageFormat. Per accedere a questi valori utilizzando ESQL all'interno dei nodi di elaborazione del messaggio, fare riferimento a questi valori nella cartella delle proprietà; non fare riferimento direttamente ai campi nelle intestazioni da cui sono derivati.

Se il messaggio è convertito in un flusso di bit, ad esempio in un nodo di output, tutte le proprietà che rimangono unicamente nella cartella delle proprietà (cioè, non in qualche intestazione dei messaggi di output) non sono incluse in alcuna parte del messaggio di output.

Il programma di analisi delle proprietà assicura che i valori nei campi dell'intestazione corrispondano ai valori nella cartella delle proprietà al momento dell'input in ogni nodo e dell'output da ogni nodo. In uscita da un nodo, il programma di analisi delle proprietà richiama ogni programma di analisi dell'intestazione con i valori che contiene attualmente. Esso poi richiede di nuovo i valori dal programma di analisi dell'intestazione e aggiorna i propri valori. Se è stato codificato l'ESQL nel nodo che aggiorna i valori nella cartella delle proprietà o nell'intestazione o in entrambe, tali valori corrispondono sempre quando la struttura ad albero è trasmessa da quel nodo. Tuttavia, se un campo è stato aggiornato sia nella cartella delle proprietà che nell'intestazione con valori diversi, il valore impostato nell'intestazione è sovrascritto dal valore impostato nella cartella delle proprietà.

Quando l'elaborazione del flusso di messaggi è completata, la cartella delle proprietà viene eliminata.

Riferimenti correlati
Nodi integrati
Riferimento ESQL
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
ac12610_