xChange – nowy format wymiany danych produktowych

ETIM International opracował i opublikował nowy międzynarodowy format wymiany danych produktowych. Ma on docelowo zastąpić dotychczas używany format ETIM BMEcat. Nowy format zapewnia zgodność z European Master Data Guideline (EMDG) opracowanym przez organizację FEST (Europejską Federację Hurtowników Instalacyjnych i Grzewczych). Celem wytycznych EMDG było jednolite zdefiniowanie i zidentyfikowanie wspólnych atrybutów danych podstawowych produktu. Należy zauważyć, że EMDG nie jest formatem wymiany, a stanowi jedynie wytyczne, które powinny pomóc w jasnej identyfikacji i zdefiniowaniu atrybutów danych podstawowych; zapewnia wspólną podstawę dla zawartości danych produktowych i może mieć zastosowanie do różnych formatów wymiany i dowolnej metody transferu danych produktowych.
Łącząc zestaw danych produktu opracowywany przez FEST (wytyczne EMDG) z klasyfikacją ETIM, dotyczącą danych technicznych produktów oraz doświadczeniem wymiany danych w dotychczasowym formacie BMEcat, ETIM International jako ekspert ds. standaryzacji opracował nowy format wymiany danych produktowych.
Jako nazwę nowego formatu wybrano „ETIM xChange”. Struktura formatu xChange rozróżnia informacje o produkcie (co jest produkowane) i informacje o artykule handlowym (co jest sprzedawane), z trzecim poziomem dodanym w celu zdefiniowania różnych jednostek opakowania dla tej samego artykułu handlowego, inaczej mówiąc: pozycji handlowej. W większości przypadków, gdy produkty są tożsame z artykułami handlowymi, należy przyjąć najmniejszy artykuł handlowy na poziomie produktu i powtórzyć go jako pozycję handlową. W tym przypadku wystąpi pewna nadmiarowość w powtarzaniu identyfikatorów, ale w ogólnym podejściu jest to z nawiązką zrekompensowane u innych producentów przez brak konieczności powtarzania wszystkich ogólnych informacji o produkcie dla każdej innej pozycji handlowej dla tego samego produktu.

JSON jako alternatywa dla XML

Format ETIM xChange jest oparty na notacji JSON, powszechnie znanej w społecznościach programistów, a wraz ze schematem JSON stanowi bardzo dobrą alternatywę dla znacznikowej notacji XML, wykorzystywanej w formacie BMEcat. JSON (JavaScript Object Notation) to lekki format wymiany danych, który jest łatwy do odczytu i zapisu przez ludzi oraz łatwy do analizowania i generowania przez maszyny. Jest często używany do przesyłania danych między serwerem a aplikacją internetową, a także do plików konfiguracyjnych i przechowywania danych.

Jak już wspomniano, istnieje formalny sposób definiowania struktury i ograniczeń dla poszczególnych pól/obiektów właściwego pliku JSON. Jest to tzw. schemat JSON (JSON Schema), który zapewnia zestaw reguł definiujących dozwolone typy danych, strukturę obiektu JSON i relacje między różnymi częściami danych. Schemat JSON jest powszechnie używany do celów walidacji, zapewniając, że dane JSON są zgodne z określonym zestawem reguł lub standardów.

xChange vs BMEcat

W porównaniu do pliku BMEcat nowy format xChange proponuje bardziej kompaktowy zapis (brak długich znaczników charakterystycznych dla plików XML).
W ramach jednego pliku xChange istnieje możliwość przesyłania danych produktowych wielu dostawców. Zrezygnowano z obowiązku przesyłania danych ETIM (dane ETIM są zalecane ale nieobowiązkowe) oraz umożliwiono przesyłanie danych produktowych wg innych klasyfikacji. Zmieniono grupowanie danych: oprócz rozróżnienia produktu oraz artykułu handlowego, dane opakowaniowe, logistyczne, zamówieniowe oraz cenowe powiązano z artykułem handlowym. Wprowadzono grupę danych legislacyjnych; grupę danych LCA (Life Cycle Assessment). Zmieniono długości oraz format wielu pól, wprowadzono nowe pola, dostosowując je do wytycznych EMDG, lub je rozszerzając. Wprowadzono 5-znakowe oznaczenie języków, ułatwiając rozróżnienie między wersjami tego samego języka stosowanymi w różnych krajach (np. en-GB, en-US). Zmieniono podejście do plików multimedialnych dostarczanych z danymi produktowymi: zrezygnowano z pojęcia plików MIME na rzecz „załączników” (attachments), z nieco inną ich definicją i strukturą.

Wersja 1.0

Wersja 1.0 formatu ETIM xChange przeznaczonego do wymiany podstawowych danych  produktowych została oficjalnie wydana 19.02.2024 r.

Materiały dodatkowe:

ETIM xChange_Guideline_V1.0-2024-02-19.pdf – Podstawowy dokument zawierający ogólne wytyczne i wyjaśnienia, definicje, opis formatów i szczegóły poszczególnych pól oraz listy stosowanych kodów.

ETIM xChange_CountrySpecificGuidelines_V1.0-2024-02-19.pdf – Podobnie jak w przypadku BMEcat, format xChange może zawierać pola/elementy oraz rozszerzenia (nowość) specyficzne dla danego kraju.

ETIM xChange_OverviewElements_V1.0-2024-02-19.xlsx – Plik Excel ze strukturą xChange, umożliwiający przegląd pełnej struktury formatu z różnymi poziomami, z podsumowaniem szczegółów pól. Cztery główne poziomy (dostawca, produkt, pozycja handlowa i jednostka opakowania) są podświetlone na niebiesko, inne poddrzewa są podświetlone na jasnopomarańczowo.

ETIM xChange_MappingBMECat_V1.0-2024-02-19.xlsx – Mapowanie xChange V1.0 z ETIM BMEcat V5.0

ETIM xChange_SchemaDiagram_V1.0-2024-02-19.jpg – Graficzna wizualizacja schematu xChange w gigantycznym pliku graficznym. Można wyodrębnić fragmenty schematu, może to być bardzo wygodne i przejrzyste dla celów wsparcia i dokumentacji.

ETIM xChange_Schema_V1.0-2024-02-19.json.txt – Schemat JSON, rdzeń standardu xChange i kluczowy plik dla rozwiązań programistycznych, które chcą obsługiwać nowy format. (Rozszerzenie txt pliku zostało dodane dla ułatwienia jego dystrybucji.)

ETIM xChange_SampleFile_V1.0-2024-02-19.json.txt – Mały plik testowy stanowiący przykładowe dane; użyteczny do sprawdzenia, czy schemat został poprawnie zaimplementowany. (Rozszerzenie txt pliku zostało dodane dla ułatwienia jego dystrybucji.)