ETIM BMEcat Validator
Free ETIM BMEcat validator: check ETIM class IDs, feature/value codes, units and BMEcat structure in your browser. No upload, no login, no file-size cap.
This ETIM BMEcat validator checks whether the ETIM classification embedded in a BMEcat catalog file is structurally correct and ready to send to a trading partner. Paste or drop a BMEcat XML export and it flags malformed class references, malformed or duplicated feature codes, badly typed values and units, and the structural mistakes that get a file bounced before a buyer ever sees it.
ETIM BMEcat Validator
Runs in your browser · no uploadChecks structure and code formats only. It does not look codes up in the ETIM dictionary, so it cannot tell whether a feature belongs to its class or a value code to its feature. See how Claro classifies and validates ETIM data at catalog scale →
What it checks
The validator parses your BMEcat XML and inspects both the document structure and the ETIM payload attached to each ARTICLE. It reports on:
- BMEcat well-formedness and version — valid XML, a recognized
BMECATroot and version attribute, and a coherent header so downstream parsers can read the file at all. - ETIM class references — every ETIM class ID in
REFERENCE_FEATURE_GROUP_IDmatches the expectedECformat (for exampleEC000042) and is not blank, truncated, or wrapped in stray namespace prefixes. - ETIM version consistency — a single declared ETIM release (such as ETIM 8.0 or 9.0) is used throughout, so a feature coded against one release is not mixed with class IDs from another.
- Feature codes (
EF…) — feature identifiers are present, well-formed, and not repeated within a class. - Value codes and value types — every
FVALUEis a well-formedEV…value code, a plain number,true/false, or a two-value numeric range with the lower bound first — not free text, a decimal comma, or a number with unit text glued on. A-(no value) needsFVALUE_DETAILSNA, MV or UN. - Units of measure — where
FUNITis given, it is an ETIM unit code (EU…) on a numeric value rather than an ad-hoc string like “mm.” or “Amps”. ETIM defines each feature’s unit, so leavingFUNITout is fine. - Mandatory coverage gaps — articles that carry an ETIM class but no features at all, which usually means a mapping step silently dropped the data.
- Encoding and character issues — mojibake, stray BOM bytes, and broken multi-byte characters in feature values that survive into the export.
Each finding comes with a plain-language explanation and the article reference, so a catalog manager who is not fluent in BMEcat can still see exactly which SKU and which line to fix.
How it works
BMEcat is the XML container format widely used across industrial distribution, MRO, furniture and other technical-product categories to move catalogs between a supplier and a buyer. ETIM is the classification model that travels inside it: a controlled vocabulary of product classes, features, values and units. A file that opens fine in a text editor can still be invalid because an ETIM class ID is misspelled, a feature belongs to the wrong class, or a numeric value is missing its unit. Those are exactly the cases this validator surfaces.
- 1Parse the XMLThe file is read with a standard XML parser to confirm well-formedness and identify the BMEcat version and declared ETIM release.
- 2Walk every articleFor each
ARTICLE, the tool extracts the ETIM class, its features, values and units. - 3Validate against ETIM rulesClass, feature and value identifiers are checked for correct format and internal consistency; values are checked for the right type, and units for the ETIM code format.
- 4Report pass/failYou get a per-article list of errors and warnings with a short explanation for each.
This tool checks format and structure. The ETIM dictionary is licensed and is not bundled, so the tool cannot confirm that a class exists in a release, that a feature belongs to its class, or that a value code belongs to its feature. Nor does it certify that a value is commercially correct — that a contactor really is rated at the coil voltage you typed, or that a desk’s stated width matches the physical product. Confirming values against a trustworthy source is a separate, harder problem; see the related resources below for how Claro approaches it at catalog scale.
Related resources
Glossary
What Is ETIM in BMEcat?
How the ETIM classification model is embedded inside a BMEcat XML file, with the key elements explained.
Playbook
How to Validate an ETIM XML Export
A step-by-step workflow for catching ETIM errors before you send a catalog to a trading partner.
Tool
BMEcat Viewer
Open and browse a BMEcat file article-by-article in your browser to inspect what the validator flags.
Tool
ECLASS BMEcat Validator
The same kind of structural check for catalogs classified with ECLASS instead of ETIM.
Guide
7 Field-Level Errors That Stall Every Catalog Launch
The recurring data mistakes that block onboarding across industrial, MRO and CPG catalogs.
Tool
ETIM xChange Validator
Validate ETIM xChange JSON files against the standard.
Claro
Classification & validation at catalog scale
See how Claro classifies, validates and writes back ETIM data with source-linked provenance for every value.
FAQ
What is a BMEcat file?
BMEcat is an open XML standard for exchanging electronic product catalogs between suppliers and buyers. A single BMEcat document holds a header plus one ARTICLE element per product, each carrying descriptions, prices, identifiers and — when ETIM is used — a classification block with class, feature, value and unit codes. It is common in industrial distribution, MRO, furniture and other technical-product trades.
What does the ETIM part of a BMEcat file contain?
The ETIM block assigns each article an ETIM class (for example EC000042 for a miniature circuit breaker) and lists that class’s features as code/value pairs — for instance a rated current feature carrying a numeric value and an ampere unit. ETIM gives every supplier a shared vocabulary, so a buyer can compare like-for-like products across catalogs instead of parsing free-text descriptions.
Why does my BMEcat file fail ETIM validation even though it opens fine?
A file can be perfectly valid XML and still fail ETIM rules. Common causes are a class ID from one ETIM release mixed with features from another, a feature code that does not belong to the declared class, a numeric value with no unit, or a value typed as free text where a value code is required. Those issues are invisible in a text editor but get a catalog rejected by a trading partner’s intake system.
Is my catalog uploaded anywhere?
No. The validator runs entirely in your browser using JavaScript, so the file never leaves your machine. That makes it safe to check confidential or price-bearing BMEcat exports. There is no account to create and no server-side processing.
Does passing this validator mean my data is correct?
It means your file is structurally valid ETIM in BMEcat — the codes are well-formed and internally consistent. It does not confirm that each value is factually true for the product. Verifying values against a reliable source, and keeping that link to the source, is a separate step; Claro automates that with source-linked provenance on every enriched value.
Claro
See where your catalog breaks — free
Claro runs this automatically: resolve identity, fill missing attributes, validate updates, and write clean records back into your PIM/ERP. Upload a sample supplier file for a free catalog audit.
Get a free catalog audit