Para los tipos de separación codificada, cada valor de datos va precedido de un código que se especifica como una propiedad de elemento.
Se utiliza el Separador de datos de código o el parámetro Longitud del código específico para determinar dónde finaliza el código y dónde empiezan los datos. Cada tipo de separación utiliza métodos diferentes para determinar el final de los datos.
La separación codificada es un formato flexible. Los elementos no tienen que aparecer en un orden específico. No es necesario que todos ellos estén presentes y pueden omitirse desde cualquier punto del mensaje.
Todos los tipos de separación codificada utilizan Separador de datos de código y Longitud del código. Pero sólo se puede establecer uno de estos parámetros a la vez.
tag1:data1donde el Separador de datos de código es :
tag1data1donde la Longitud del código es 4
La separación Codificada delimitada es un formato totalmente flexible. Los elementos no tienen ninguna longitud específica. Los elementos se separan con un delimitador definido previamente.
{tag1:data1*tag2222222:data2*tag333:data3}donde:
{tag11data1*tag22data2*tag33data3}donde los parámetros son como se ha indicado más arriba, excepto:
Aunque la separación de Longitud fija codificada es de un formato flexible, los datos deben tener una longitud específica. Esto significa que no es necesario ningún delimitador para determinar el final de cada elemento.
{tag1:data1tag22222222:data2000tag333:data300}donde:
{tag11data1tag22data2000tag33data300}donde los parámetros son como se ha indicado más arriba, excepto:
Este método tiene un código un campo de longitud antes de los datos. El campo de longitud indica al analizador la longitud de los datos que le siguen.
La longitud de este campo de longitud se define a su vez en el parámetro Longitud de longitud codificada. Las longitudes adicionales que se deben añadir a ésta, por ejemplo la longitud del propio campo, se establecen en el parámetro Caracteres adicionales en longitud codificada.
Estos ejemplos muestra cómo se aplican los valores establecidos en estos parámetros:
Si Longitud del código es 4, Longitud de longitud codificada es 3, Caracteres adicionales en longitud codificada es 0, en esta corriente de bits, CódigoA va seguido del campo de longitud de 3 caracteres de longitud. Esto indica que los datos siguientes (datosAAA) tienen una longitud de 7 caracteres. Entonces, se examina el siguiente campo, códigoB, y así sucesivamente.
Si Longitud del código es 4, Longitud de longitud codificada es 3, Caracteres adicionales en longitud codificada es 3, en esta corriente de bits, CódigoA va seguido del campo de longitud de 3 caracteres de longitud. Esto indica que los datos siguientes, más los caracteres adicionales, tiene una longitud de 12 caracteres: longitud del campo de longitud (3) + longitud de los datos (9) = 12. Por consiguiente, la longitud de los datos reales es sólo 12-3 = 9. Entonces se examina el siguiente campo, códigoB, y así sucesivamente. En cada caso la longitud proporcionada en la corriente de bits supera en 3 la longitud real de los datos.
{tag1111:008data1tag222222222:010data2AAtag3333:009data3A}donde:
{tag11008data1tag22010data2AAtag33009data3A}donde los parámetros son como se ha indicado más arriba, excepto: