BMEcat
BMEcat is a standard for electronic data transfer by electronic catalogues created and published by the BME (Bundesverband Materialwirtschaft, Einkauf und Logistik e. V., the German association for materials management, purchasing and logistics). I.e. in contrast to the ECLASS dictionary which describes how things can be characterized at an abstract level it is about actual instances of application classes which are described by distinct values in accordance to the dictionary.
BMEcat is
- the standard for the exchange of electronic product catalogues
- XML-based
- freely available
- usable as a licence free of charge
BMEcat 2005.2
ECLASS Technical Specification 101: ECLASS in BMEcat
Version 1.0; 2023-08-15
The objective of this document is the definition of a common application of ECLASS content in the context of BMEcat catalogs. Although BMEcat is available in four different versions 1.2, 2005, 2005.1 and the last update 2005.2 this document is a generic specification. This document is a holistic view of all ECLASS modelling options (including both ECLASS representations Advanced and Basic) and their application in BMEcat 2005.2. If something is not possible or needs to be mapped differently, version dependent specifications are marked.
BMEcat 2005.1 (Advanced)
In order to transport the whole bandwidth of information, that can be expressed in the ECLASS advanced model, there was created the BMEcat 2005.1-advanced schema.
Guideline
ECLASS offers an ECLASS-BMEcat 2005.1 guideline which helps you to use ECLASS standard with the BMEcat.
ECLASS Guideline - Embedding ECLASS Advanced into BMEcat 2005.1
Version 2.1; 2014-03-14
Older versions of this document can be found in the Version history of BMEcat 2005.1 specification
In this document ECLASS describes how to exchange product data with ECLASS and BMEcat 2005.1. It contains how to exchange classification and properties including their values and it is designed for the national and international use. The differences between BMEcat 2005 and BMEcat 2005.1 (advanced) format are described further down below on this page.
XSD
ECLASS only supports the T_NEW_CATALOG transaction.
BMEcat 2005.1 (Advanced) schema is here
Note that only BMEcat 2005.1 (advanced) is defined as an XML Schema, for older versions only a DTD based definition is given.
Documentation regarding the BMEcat 2005 format can be obtained free of charge from the BMEcat website's download area (registration required) in German and English language. The differences between BMEcat 2005 and BMEcat 2005.1-advanced format are described further down below on this wiki page.
Examples
BMEcat 2005
Guideline
ECLASS offers an ECLASS-BMEcat 2005 guideline which helps you to use ECLASS standard with the BMEcat.
ECLASS Guideline - Embedding ECLASS into BMEcat 2005
Version 1.1; 2014-03-14
Older versions of this document can be found in the Version history of BMEcat 2005 specification
In this document ECLASS describes how to exchange product data with ECLASS and BMEcat 2005. It contains how to exchange classification and properties including their values and it is designed for the national and international use. The differences between BMEcat 2005 and BMEcat 2005.1 (advanced) format are described further down below on this page.
DTD
ECLASS only supports the T_NEW_CATALOG transaction.
BMEcat 2005 DTD is here.
BMEcat 2005 schema is here.
Documentation regarding the BMEcat 2005 format can be obtained free of charge from the BMEcat website's download area (registration required) in German and English language.
Differences between BMEcat 2005 and BMEcat 2005.1-advanced
BMEcat 2005.1-advanced is fully backward compatible with BMEcat 2005, i.e. all changes in BMEcat 2005.1-advanced are optional extensions to BMEcat 2005. Goals for the BMEcat 2005.1-advanced format were to improve the multilingual capabilities of BMEcat as well as to support products according to the ECLASS advanced model.
Multilinguality
In BMEcat 2005 multilingual catalogs are supported. The content can be defined in any language having a three letter code assigned in ISO 639-2:1998. There are, however, more dimensionsto content than just language. Most prominently there are the place where the language is spoken, e.g. American vs. British English, and the script used, e.g. Serbian having both ћирилица and latinica as script representations. All of these dimensions can be subsumed in the concept locale and the best practices for handling them are described in the IETFs RFC 5646 Tags for Identifying Languages. The BMEcat datatype dtMLSTRING was extended to allow its specification not only by dtLANG (three letter language code) but also by dtLOCALE (code according to RFC 5646).
Example of multilingual content for the same value:
... <FEATURE> <FVALUE locale=“en“>Abricot</FVALUE> </FEATURE> </PRODUCT_FEATURES> |
Products according to advanced model
tree structure
In the advanced data model, product descriptions are no longer flat but form a tree. To indicate the position of a property node in the valuation tree the FID and FPARENT_ID elements (containing integer index references unique within a product) were introduced within the existing FEATURE element. Moreover the FEATURE element itself is now allowed to occur recursively within other FEATUREs.
Old (BMEcat 2005) definition of FEATURE:
<xsd:element name="FEATURE"> <xsd:complexType> <xsd:sequence> <xsd:choice> <xsd:element ref="FNAME" maxOccurs="unbounded"/> </xsd:choice> <xsd:choice> <xsd:element ref="FVALUE" maxOccurs="unbounded"/> </xsd:choice> </xsd:choice> </xsd:sequence> </xsd:complexType> </xsd:element> |
New (BMEcat 2005.1-advanced) definition of FEATURE:
<xsd:element name="FEATURE"> <xsd:complexType> <xsd:sequence> <xsd:choice> <xsd:element ref="FNAME" maxOccurs="unbounded"/> </xsd:choice> <xsd:choice> <xsd:element ref="FVALUE" maxOccurs="unbounded"/> </xsd:choice> </xsd:choice> </xsd:sequence> </xsd:complexType> </xsd:element> |
The patterns of polymorphism and cardinality are expressed within the tree structure as a certain combination of properties and structure. The BMEcat example valuations contain separate examples for both patterns.
aspect
Aspects contain structures describing a certain view on a product. To allow for direct representation of aspects within BMEcat 2005.1-advanced the element FEATURE_GROUP was added to the element PRODUCT_FEATURES as a container representing the aspect, having an optional preferred name (FEATURE_GROUP_NAME), definition (FEATURE_GROUP_DESCRIPTION) and IRDI (REFERENCE_FEATURE_GROUP_ID).
<xsd:element name="FEATURE_GROUP"> <xsd:complexType> <xsd:sequence> <xsd:element ref="FEATURE_GROUP_NAME" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> |
The BMEcat example valuations contain a separate example for aspect.
BMEcat 1.2
Guideline
ECLASS offers an ECLASS-BMEcat 1.2 Guideline which helps you to use the ECLASS standard with the BMEcat.
ECLASS Guideline - Embedding ECLASS into BMEcat 1.2
Version 1.0; 2014-03-14
Older versions of this document can be found in the Version history of BMEcat 1.2 specification.
In this document ECLASS describes how to exchange product data with ECLASS and BMEcat 1.2. It contains how to exchange classification and properties including their values and it is designed for a national and international use.
DTD
For version 1.2 there is only a DTD (no schemata). ECLASS only supports the T_NEW_CATALOG transaction.
BMEcat 1.2 DTD is here.
Documentation regarding the BMEcat 1.2 format can be obtained free of charge from the BMEcat website's download area (registration required) in German and English language.