The Global Language of Business
  1. Home
  2. Standards
  3. GS1 XML
  4. Technical User Guide to GS1 XML 3.x
  5. Main differences between the GS1 XML 3.0 and 2.0

Main differences between the GS1 XML 3 and 2

The review of the GS1 XML design has been done based on feedback from user community who experienced difficulties in implementation of MR2 and requested significant changes.

Reasons for change

The design of the previous Major Release 2 was very flexible, but at the same time difficult to implement and understand. Over the years user requirements changed demanding more simplicity in place of flexibility that turned out to be unnecessary. The main reasons for changing the previous GS1 XML design were:

  • Reduce overhead when used in GS1 EDI messaging: Transaction and Batching were not used in GS1 EDI exchange
  • Improve tool support (parsers, validators and mapping tools)
  • Make the design easier to understand and implement:
  • Provide single ‘root’ schema for validation
  • Clearly define what types of documents are allowed in one message
  • Simplify maintenance of code lists and thus accelerate implementation

Main changes in the GS1 XML design

FUNCTIONALITY
MR3
MR2
SBDH Mandatory Optional
Transaction Not used Used, optional
Commands Not used, command instructions moved to Document component Used, optional
Root schema One Many – no clear ‘root’
Document types allowed in one message One document type Various document types
Number of documents allowed in one message Up to 10.000 Any
Proxy schemas Not used  Used, optional 
Namespaces Different for every schema file  One for multiple schema files
Context categories Not used Used in namespaces
Actions Enumerated in the Document component, value CORRECT removed from GS1 EDI list  Enumerated in the Command layer
Code list values Most (those that are likely to evolve) stored outside of the schema Enumerated in the schema
Common library Three library schemas: shared and domain common (separate ones for GS1 EDI and GDSN) Library of multiple schemas separately defining common components 
Use of elements vs. attributes Attributes used only for data types, elements for everything else No specific rules, except for use of attributes for metadata