Formato TDS: relazione con il modello logico

Esistono delle restrizioni tra proprietà del modello logico e tipi di separazione TDS, ad esempio convalida del contenuto di gruppo o di composizione di gruppo. Le regole relative a tali opzioni sono descritte in Restrizioni per la nidificazione di tipi complessi.

Con tali regole è possibile garantire l'integrità del messaggio. E' necessario che una combinazione di tipo di separazione e convalida del contenuto di gruppo o di composizione di gruppo non crei un messaggio non chiaro per il programma di analisi TDS.

Valori predefiniti

In TDS i valori predefiniti sono rispettati solo dagli elementi a lunghezza fissa.

Tipo di separazione Utilizzo dei valori predefiniti

Delimitato da tag
Lunghezza fissa con tag
Lunghezza codificata con tag
Tutti gli elementi delimitati
Modello dati

I valori predefiniti non sono mai rispettati.

Lunghezza fissa
Lunghezza fissa AL3

I valori predefiniti sono rispettati nell'output da tutti gli elementi. Un elemento assente in cui non sono definiti valori predefiniti provoca un errore di scrittura.
Delimitato da elementi a lunghezza variabile I valori predefiniti sono rispettati solo dagli elementi a lunghezza fissa in output. E' necessario che per i valori a lunghezza fissa assenti sia disponibile un valore predefinito. Un elemento assente in cui non sono definiti valori predefiniti provoca un errore di scrittura.

Tipi semplici - unioni ed elenchi

Le unioni e gli elenchi sono concetti specifici di XML. Un elemento o un attributo di un tipo semplice che costituisce un elenco o un'unione provoca un'avvertenza di errore di elenco delle attività se nella serie di messaggi è presente un formato fisico TDS. E' possibile scegliere se impostare tale avviso come messaggio di errore o di avvertenza oppure di informazioni mediante le preferenze di convalida. Se dalla serie di messaggi viene creato un dizionario e viene effettuato un tentativo di analisi di un messaggio TDS definito in modo da contenere tali elementi o attributi, si verificherà un errore di runtime.

Numero minimo ricorrenze e Numero massimo ricorrenze

Le proprietà logiche Numero minimo ricorrenze e Numero massimo ricorrenze specificano il numero consentito di ricorrenze di un elemento o di un gruppo in un messaggio. Vengono utilizzate durante l'analisi e la scrittura dei messaggi e durante la convalida del contenuto di un messaggio.

Durante l'analisi e la scrittura, l'interpretazione esatta di tali proprietà dipende dalla proprietà Separazione elementi dati del gruppo o del tipo complesso parent come riportato nella tabella riportata di seguito.

Durante la convalida, le proprietà Numero minimo ricorrenze e Numero massimo ricorrenze sono utilizzate per verificare che il contenuto dell'albero dei messaggi corrisponda al modello.

Tipo di separazione Interpretazione di Numero minimo ricorrenze e Numero massimo ricorrenze

Delimitato da tag
Lunghezza fissa con tag
Lunghezza codificata con tag

Le proprietà Numero minimo ricorrenze e Numero massimo ricorrenze sono ignorate in modo efficace durante l'analisi e la scrittura. Durante l'analisi, il numero di ricorrenze è identificato dai tag nel messaggio. Durante la scrittura, il programma di scrittura emette tutte le ricorrenze nell'albero dei messaggi.
  • È consentito un numero variabile di ricorrenze (Numero minimo ricorrenze <> Numero massimo ricorrenze).
  • Sono consentite ricorrenze facoltative (Numero minimo ricorrenze = 0).
  • E' consentita l'opzione sempre assente (Numero massimo ricorrenze = 0).
  • E' consentito un numero non associato di ricorrenze (Numero massimo ricorrenze = -1).
Tutti gli elementi delimitati La proprietà Numero massimo ricorrenze viene utilizzata solo per l'analisi e la scrittura, insieme alla proprietà Delimitatore elemento ripetuto dell'elemento e alla proprietà Elimina delimitatori dell'elemento assente del tipo parent.

È consentito un numero variabile di ricorrenze (Numero minimo ricorrenze <> Numero massimo ricorrenze) se la proprietà Elimina delimitatori dell'elemento assente è impostata su Fine di tipo.

  • Se il valore Delimitatore è diverso dal valore Delimitatore elemento ripetuto, il valore Delimitatore indica la fine delle ricorrenze.
  • Se il valore Delimitatore è lo stesso valore di Delimitatore elemento ripetuto, una ripetizione vuota indica la fine delle ricorrenze.
  • In entrambi i casi, il valore Massimo ricorrenze costituisce il numero massimo di ripetizioni previste.

Se la proprietà Elimina delimitatori dell'elemento assente è impostata suMai, sono previste tutte le ricorrenze durante l'analisi e l'output durante la scrittura, sebbene l'analisi accetterà l'assenza degli elementi.

Le ricorrenze facoltative (Numero minimo ricorrenze = 0) sono ignorate ed è previsto ugualmente un delimitatore durante l'analisi e un output durante la scrittura.

E' consentita l'opzione sempre assente (Numero massimo ricorrenze = 0). Durante l'analisi non è previsto alcun delimitatore, né l'output durante la scrittura.

E' consentito un numero non associato di ricorrenze (Numero massimo ricorrenze = -1) se il valore di Delimitatore elemento ripetuto è diverso dal valore Delimitatore. E' necessario che le ripetizioni terminino con il delimitatore o con il Carattere di terminazione di gruppo o con il valore indicato come Delimitatore del gruppo contenitore oppure con la fine del flusso di bit del messaggio. Durante la scrittura, il programma di scrittura emette tutte le ricorrenze nell'albero dei messaggi.

Lunghezza fissa
Lunghezza fissa AL3

La proprietà Numero massimo ricorrenze viene utilizzata solo durante l'analisi e la scrittura. In generale, durante l'analisi sono previste le ricorrenze indicate in Numero massimo ricorrenze e durante la scrittura vengono emesse le ricorrenze indicate in Numero massimo ricorrenze se per gli elementi mancanti vengono utilizzati i valori predefiniti.

Il numero variabile di ricorrenze (Numero minimo ricorrenze <> Numero massimo ricorrenze) è ignorato e viene assunto il valore Numero massimo ricorrenze.

La ricorrenza facoltativa (Numero minimo ricorrenze = 0) è ignorata e viene assunto il valore Numero massimo ricorrenze.

E' consentita l'opzione sempre assente (Numero massimo ricorrenze = 0).

Solo a lunghezza fissa. È consentito un numero non associato di ricorrenze (Numero massimo ricorrenze = -1) se l'elemento o il gruppo è l'ultimo child del gruppo parent e il gruppo termina con un Carattere di terminazione di gruppo o con il valore indicato come Delimitatore o Carattere di terminazione di gruppo del gruppo contenitore oppure con la fine del flusso di bit del messaggio. Durante la scrittura, il programma di scrittura emette tutte le ricorrenze nell'albero dei messaggi; se tale numero è minore del valore indicato in Numero minimo ricorrenze, verranno scritti valori predefiniti aggiuntivi.

Delimitato da elementi a lunghezza variabile Per gli elementi semplici a lunghezza fissa, vengono seguite le regole del tipo di separazione Lunghezza fissa riportate sopra con due differenze.
  1. È consentito un numero variabile di ricorrenze (Numero minimo ricorrenze <> Numero massimo ricorrenze) e la fine delle ricorrenze è indicata da un delimitatore supplementare.
  2. E' consentito un numero non associato di ricorrenze (Numero massimo ricorrenze = -1) e la fine delle ricorrenze è indicata da un delimitatore supplementare. Durante la scrittura, il programma di scrittura emette tutte le ricorrenze nell'albero dei messaggi seguite da un delimitatore supplementare.

Per gli tutti i gruppi e gli elementi complessi e semplici a lunghezza variabile, vengono seguite le regole del tipo di separazione Tutti gli elementi delimitati riportate sopra.

Modello dati Le proprietà Numero minimo ricorrenze e Numero massimo ricorrenze sono ignorate in modo efficace durante l'analisi e la scrittura. Durante l'analisi, il modello è messo in corrispondenza il maggior numero di volte possibile. Durante la scrittura, il programma di scrittura emette tutte le ricorrenze nell'albero dei messaggi. Durante l'analisi, se il modello di dati consente e si verifica una corrispondenza a lunghezza zero, viene aggiunto un elemento all'albero dei messaggi e la corrispondenza termina per evitare un loop infinito.

È consentito un numero variabile di ricorrenze (Numero minimo ricorrenze <> Numero massimo ricorrenze).

Sono consentite ricorrenze facoltative (Numero minimo ricorrenze = 0). E' consentita l'opzione sempre assente (Numero massimo ricorrenze = 0).

E' consentito un numero non associato di ricorrenze (Numero massimo ricorrenze = -1).

Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
ad10510_