Обзор стандарта UN/EDIFACT
При разработке стандартов электронного документооборота была проведена работа по исследованию использования всех данных "бумажных" документов, используемых во внешнеэкономической деятельности. Как выяснилось, большинство документов содержат повторяющиеся данные, и даже целые группы данных.
Например, название и адрес фирмы отправителя встречается как в счете-фактуре, транспортно-сопроводительных документах - CMR, так и в таможенной декларации.
Было предложено выделить наиболее повторяющиеся группы данных, и в них выделить соответствующие поля данных. В последствии оказалось, что данные так часто повторяются, что для их заполнения было разработано более 200 специальных кодировочных таблиц - называемых справочники данных.
Часть справочников (такие как трехзначные коды стран мира, коды валют) использовались до появления стандартов UN/EDIFACT. Эти справочники были пересмотрены и скорректированы с точки зрения использования их в новых стандартах.
В основу стандарта UN/EDIFACT положены следующие принципиальные идеи:
Группа сегментов кроме типовых сегментов данных может содержать другие группы сегментов.
Сегменты в группе сообщений могут повторяться некоторое количество раз. Также незаполненные (пустые) сегменты могут опускаться.
Стандартом предусмотрено около 200 различных типов сегментов, из которых составляется сообщение.
На рис. 1 Представлен фрагмент структуры сообщения, на котором видно, как объеденены в группу SG. 8 сегменты TDT-LOC и MEA-EQN которые в свою очередь объединены в группу SG.9 В группе, порядок следования сегментов строго упорядочен, но они могут повторяться, например:
TDT- LOC MEA-EQN MEA-EQN TDT- LOC MEA-EQN
Первый раз, в группе SG.9 сегменты MEA- EQN повторяются два раза, второй раз - один. В группе SG.8 - сегменты TDT- LOC повторяются - два раза.
Сегменты данных состоят из элементов данных, которые могут быть простыми (аналогом является поле данных) и составными (обычно 2-3 поля данных).
На конец 1999 года разработано более 170 стандартных сообщений. Стандартом предусмотрено, что каждое сообщение имеет уникальный 6-значный код из заглавных букв, а каждый сегмент данных имеет 3-значныный код из заглавных букв.
По правилам UN/EDIFACT не предусмотрено использование символов перевода строки и возврата каретки, но для наглядности на каждой строчке расположен отдельный сегмент. Ниже, для примера, показано разобранное на сегменты сообщение ORDERS в стандарте UN/EDIFACT.
UNH+000002+ORDERS:D:96A:UN:EAN008' | Заголовок Сообщения |
BGM+220+B00002+9' | Номер заказа |
DTM+137:19940202:102' | дата отправки сообщения |
NAD+BY+++Stadt- und Universitaetsbibliothek | Имя и адрес покупателя |
:Frankfurt+Bockenheimer Landstr. 134-13 8+Frankfurt++60325' RFF+API:DE1141110388' | Идентификатор покупателя |
NAD+SU+++DREIER' | Наименование поставщика |
CUX+2:DEM:9' | Валюта оплаты |
LIN+1' | Позиция заказа 1 |
PIA+5+3772815359:IB' | Идентификатор ISBN заказа |
IMD+F+050+:::Die "Jahrbuecher fuer wissensc haftl:iche Kritik"' IMD+F+060+:::Hegels Berliner Gegenakademie' IMD+F+065+:::Hrsg. von Christoph Jamme' IMD+F+110+:::Stuttgart-Bad Cannstadt' IMD+F+120+:::Frommann-Holzboog' IMD+F+170+:::1994' IMD+F+190+:::Spekulation und Erfahrung' IMD+F+191+:::Abt. 2' IMD+F+192+:::Untersuchungen' IMD+F+194+:::Bd. 27' IMD+F+220+:::Gewebe' | Подробности описания товара |
QTY+21:1' | кол-во копий заказа |
PRI+AAE:295:CA' | Цена заказа в Нем. марках |
UNS+S' | Разделительный сегмент |
CNT+2:1' | Общее кол-во позиций - 1 |
UNT+25+000002' | Общее кол-во сегментов = 25 |
Ниже приведены названия некоторых сегментов:
BGM | BEGINNING OF MESSAGE | НАЧАЛО СООБЩЕНИЯ |
CUX | CURRENCIES | ВАЛЮТА |
DTM | DATE/TIME/PERIOD | ДАТА/ВРЕМЯ/ПЕРИОД |
IDM | ITEM DESCRIPTION | ОПИСАНИЕ ПУНКТА |
Состоит из следующих элементов данных:
Первый элемент | BY |
Четвертый элемент | Stadt-und Universitaetsbibliothek:Frankfurt |
Пятый элемент | Bockenheimer.Landstr.134-138 |
Шестой элемент | Frankfurt |
Восьмой элемент | 60325 |
Элементы данных могут быть простыми и составными, состоящими из компонентов. Для составных элементов данных предусмотрен еще один разделитель - в данном случае "двоеточие". Четвертый элементы данных в вышеприведенном примере, являются составными, части которого разделены символом ":" Последовательность элементов данных в сегменте регламентируется справочником элементов данных и строго определена.