Tag 'field' di una definizione FSD
L'elemento 'field' specifica un unico campo nei dati di input o di output.
Attributi
name
Specifica il nome del campo. Se l'attributo 'output' è impostato su yes, il nome verrà usato come nome del tag XML nell'output e per l'abbinamento della selezione a un tag XML durante l'input.
output
Specifica se il campo debba essere incluso nell'output. I valori validi di questo attributo sono:
- yes
Il record genera un tag nell'output.
- no
Il campo descrive semplicemente la struttura di dati e può essere utilizzato per ignorare dati.
Il valore predefinito è yes.
- yes
record-sep
Specifica una stringa di delimitazione opzionale per il campo. La stringa può contenere un valore qualsiasi, inclusi i seguenti caratteri speciali:
\r
Ritorno a capo
\n
-
Avanzamento riga
\t
Tabulazione
I dati hanno lunghezza fissa. Quando non è specificato un delimitatore per il campo, viene utilizzato l'attributo max-length.
Nell'ultimo campo di un record viene utilizzato il delimitatore specificato per il record anziché quello del campo.
valid-value
Definisce un valore fisso per il campo. Viene usato per la convalida dei dati in formato solo testo e per la corrispondenza con modelli tramite l'elemento 'choice'. Se l'attributo 'output' è impostato su no per i dati in formato solo testo, il valore specificato per 'valid-value' viene scritto nel file di testo.
leading-chars
Specifica una stringa che, se rilevata, deve essere rimossa dall'inizio di un campo. Se l'attributo 'trailing-chars' non è specificato, verrà utilizzato il primo di questi caratteri per regolare la distanza a sinistra dal bordo del valore nel caso in cui abbia una lunghezza inferiore a quella specificata dall'attributo 'min-length'.
trailing-chars
Specifica una stringa che, se rilevata, deve essere rimossa dalla fine di un campo. Verrà utilizzato il primo di questi caratteri per regolare la distanza a destra dal bordo del valore nel caso in cui abbia una lunghezza inferiore a quella specificata dall'attributo 'min-length'.
output-if-empty
Specifica se il campo debba essere scritto anche nel caso in cui sia vuoto. I valori validi di questo attributo sono yes e no. Il valore predefinito è no.
max-length
Indica la lunghezza massima dei dati. Questo valore specifica la quantità di dati considerati durante la lettura. Il valore predefinito è 128.
min-length
Indica la lunghezza minima dei dati. Questo valore viene usato per la convalida, per la corrispondenza con modelli tramite l'elemento 'choice' e per regolare la distanza dal bordo quando sono specificati gli attributi 'leading-chars' e/o 'trailing-chars'. Il valore predefinito è 0.
truncate
Se questo attributo è impostato su yes, i dati scritti nel file di testo vengono troncati al raggiungimento della lunghezza massima specificata. Il valore predefinito è no.
quoted
Specifica se i dati debbano essere racchiusi tra virgolette. Questo attributo consente di visualizzare il delimitatore di campo all'interno dei dati di output, perché il processore FSD non ricerca il delimitatore di campo nelle stringhe racchiuse da virgolette. I valori di questo attributo sono:
- No
I dati non sono considerati come una stringa tra virgolette e vengono scritti letteralmente durante la conversione/riconversione del file di testo.
- Yes
I dati vengono considerati come una stringa tra virgolette. Durante la conversione dal formato solo testo al formato XML, le virgolette presenti nei dati vengono rimosse e le virgolette rimanenti sono convertite in virgolette singole.
Durante la conversione dal formato XML al formato solo testo, i dati vengono racchiusi tra virgolette. Le virgolette rimanenti vengono identificate come caratteri di escape, ovvero le virgolette singole vengono convertite in virgolette doppie, ad esempio " viene convertito in "".
- No
Auto
Questa opzione si applica solo durante la conversione di file di testo delimitati in XML. Se i dati contengono il delimitatore di campo, vengono elaborati come se l'attributo 'quoted' fosse impostato su yes.
Il valore predefinito è auto.