Sequences y Choices (Secuencias y Elecciones)
En FSD puede definir secuencias fijas de registros o un orden arbitrario de registros. La secuencia fija significa que cada registro definido en la secuencia debe aparecer en el orden especificado. Esta es la construcción más común en FSD porque la mayoría de las estructuras de datos planos están diseñadas para recibir los datos en un orden especificado.
Un formato de datos planos supone registros y campos donde la estructura de los registros viene determinada por marcadores en los datos. Puede utilizar el elemento "choice" para estas estructuras de datos. Este elemento realiza una correspondencia de modelos para determinar el mejor registro para generar una salida. La correspondencia de modelos compara longitudes de campos, delimitadores de campos, el número de campos así como cualquier valor válido especificado para el campo.
Número de repeticiones
El número de repeticiones esperado se especifica en FSD mediante los elementos, "sequence ", "choice" y "record». El procesador FSD utiliza esta información para validar los datos.
El atributo "max-occurs" se establece en 1 por defecto. Esto significa que los elementos "record", "sequence" o "choice" solo pueden estar presentes una vez. Para algunos tipos de datos planos puede haber otro número fijo, pero en la mayoría de los casos cualquier número de repeticiones es válido. Esto se puede especificar con el valor 0, en cuyo caso FSD procesa los registros hasta que encuentra uno sin correspondencia.
El atributo "min-occurs" se utiliza únicamente para validaciones (y para facilitar la correspondencia de modelos cuando se utiliza el elemento "choice"). Antes de pasar al siguiente registro, el procesador FSD comprueba el número de repeticiones con el mínimo especificado por "min-occurs". Se genera un error si se encuentran más de las especificadas.