Naciones Unidas/Intercambio Electrónico de Datos para la Administración, el Comercio y el Transporte ( ONU/EDIFACT ) es un estándar internacional para el intercambio electrónico de datos (EDI) desarrollado para las Naciones Unidas y aprobado y publicado por la CEPE , la Comisión Económica de las Naciones Unidas para Europa. [1]
En 1987, tras la convergencia de las propuestas de sintaxis de las Naciones Unidas y de los EE.UU./ANSI, las reglas de sintaxis de las Naciones Unidas/EDIFACT fueron aprobadas como estándar ISO 9735 por la Organización Internacional de Normalización . [2]
El estándar EDIFACT proporciona:
El trabajo de mantenimiento y desarrollo ulterior de esta norma se realiza a través del Centro de las Naciones Unidas para la Facilitación del Comercio y el Comercio Electrónico ( CEFACT/ONU ) dependiente de la Comisión Económica de las Naciones Unidas para Europa, en el grupo de trabajo del ámbito de las finanzas UN CEFACT TBG5 .
Vea a continuación un ejemplo de un mensaje EDIFACT utilizado para responder a una solicitud de disponibilidad de un billete de avión (FRA-JFK-MIA):
UNA : +.? ' UNB +IATB : 1 +6XPPC : ZZ +LHPPC : ZZ +940101 : 0950 +1' UNH +1+PAORES : 93 : 1 : IA ' MSG +1 : 45 ' IFT +3+DISPONIBILIDAD DE XYZCOMPANY' ERC +A7V : 1 : AMD ' IFT +3+NO MÁS VUELOS' ODI ' TVL +240493 : 1000 :: 1220 +FRA+JFK+DL+400+C' PDI ++C : 3 +Y :: 3 +F :: 1 ' APD +74C : 0 ::: 6 ++++++6X' TVL +240493 : 1740 :: 2030 +JFK+MIA+DL+081+C' PDI ++C : 4 ' APD +EM2 : 0 : 1630 :: 6 +++++++DA' UNT +13+1' UNZ +1+1'
El segmento UNA es opcional. Si está presente, especifica los caracteres especiales que se utilizarán para interpretar el resto del mensaje. Hay seis caracteres UNA
en este orden:
Con la excepción del signo decimal (ver más abajo), los caracteres especiales en el segmento UNA de muestra anterior también son los valores predeterminados.
El separador de elementos de datos de componentes y el separador de elementos de datos son los separadores de "primer nivel" y "segundo nivel" de los elementos de datos dentro de un segmento de mensaje. Para abreviar, los llamaremos + y :, el + separa los elementos de datos de nivel superior o compuestos, y : separa los elementos de datos de segundo nivel anidados dentro de los elementos de datos compuestos. Los elementos de datos vacíos (o nulos) finales y sus separadores iniciales se omiten para reducir el tamaño del mensaje.
El signo decimal se utiliza para separar el número entero de la parte fraccionaria de los números no enteros. La naturaleza opcional del segmento UNA y la elección inicial de la coma (" , ") como signo decimal predeterminado proporcionan una fuente de confusión común. Las versiones 1 a 3 de las reglas de sintaxis ISO 9735 especifican la coma como valor predeterminado; la versión 4 establece que la posición del signo decimal en el segmento UNA debe ignorarse y que la coma y el punto (" . ") pueden usarse indistintamente en valores de datos numéricos. El segmento UNB indica qué versión de las reglas de sintaxis está en vigor. [3]
El carácter de liberación (análogo al \ en expresiones regulares ) se utiliza como prefijo para eliminar el significado especial del separador, la terminación de segmento y los caracteres de liberación cuando se utilizan como texto simple ("Carácter de escape" es el término norteamericano equivalente).
El terminador de segmento indica el final de un segmento de mensaje.
Nota: Los saltos de línea después de cada segmento en este ejemplo se han agregado para facilitar la lectura. Normalmente, no hay saltos de línea en los datos EDI.
UNH+1+PAORES:93:1:IA'
- Este es el segmento de encabezado del mensaje que se requiere al comienzo de cada mensaje. Este código especifica que el nombre y la versión del mensaje son PAORES 93 revisión 1 y fue definido por la organización IA (IATA).
IFT+3+NO MORE FLIGHTS'
- Este es un segmento de "Texto Libre Interactivo" que contiene el texto "NO MÁS VUELOS".
UNT+13+1'
- Este es el segmento del tráiler del mensaje. Se indicó que el mensaje enviado contiene 13 segmentos.
EDIFACT tiene una estructura jerárquica en la que el nivel superior se denomina intercambio y los niveles inferiores contienen múltiples mensajes que constan de segmentos , que a su vez constan de compuestos . La iteración final es un elemento que se deriva del Directorio de elementos de datos comerciales de las Naciones Unidas (UNTDED); estos están normalizados en todo el estándar EDIFACT.
Un grupo o segmento puede ser obligatorio (M) o condicional (C) y se puede especificar que se repita. Por ejemplo:
- C99 indica entre 0 y 99 repeticiones de un segmento o grupo- M99 significa entre 1 y 99 repeticiones de un segmento o grupo
Un grupo, al igual que un mensaje, es una secuencia de segmentos o grupos. El primer segmento o grupo que se encuentra debajo de un grupo debe ser obligatorio y el grupo debe ser condicional si la lógica de la situación así lo exige.
|_Servicio Cadena Asesoramiento UNA Opcional |____Encabezado de intercambio UNB obligatorio : |___Encabezado de grupo funcional UNG condicional : : |___Encabezado del mensaje UNH Obligatorio : : : |__ Segmentos de datos de usuario Según sea necesario : : |__ Tráiler del mensaje UNT Obligatorio : |__ Grupo funcional Trailer UNE Condicional |___ Remolque de intercambio UNZ obligatorio