Normalization

One meaning per field, with the original kept beside it.

Normalize labels, units and number formats across suppliers using family-aware rules — and keep the raw label, value and unit so every transformation can be checked.

Draft model public · mapping on request

The problem

Where normalization
usually goes wrong

Most errors come from rules that are applied globally when they only hold for one family or one source.

  • 01

    Global string rules

    “B means width” works until it meets a thrust bearing specified by height, or a supplier who uses B for total width.

  • 02

    Lost originals

    Once the raw label and unit are overwritten, nobody can audit or reverse a mapping decision.

  • 03

    Silent unit and format drift

    Decimal commas, inch values and missing units turn into plausible-looking but wrong millimetre numbers.

Worked example

Three “widths”,
three different fields

Synthetic rows from three suppliers. The rule that maps a label depends on the bearing family and the source’s documented semantics.

Label → context → normalized field → reviewIllustrative demo · synthetic data
  1. Raw

    Supplier labels

    S1
    “B” = 12
    S2
    “Width” = 0.472 in
    S3
    “B” = 9 (thrust)
  2. Context

    Family + source

    S1
    radial · B = ring width
    S2
    radial · width = ring width
    S3
    thrust · B = height
  3. Normalized

    Target fields

    S1
    ring_width = 12 mm
    S2
    ring_width = 11.99 mm
    S3
    height = 9 mm
  4. Open

    Kept for review

    S2
    inch → mm rounding
    S3
    source semantics unconfirmed
    all
    raw label retained

Note: S2 converts 0.472 in to 11.99 mm. Whether that should be presented as 12 mm is a presentation rule, not a data change — the stored value and the original both stay available.

Method

Rules you can read,
outputs you can audit

Every normalized value records which rule produced it and from which original.

  1. Inventory labels

    Collect every distinct label, unit and format per source and family.

  2. Define target fields

    Use the family schema: separate ring width, total width, component widths and height.

  3. Write scoped rules

    Rules are conditional on family and source; no universal string-to-field mapping.

  4. Convert carefully

    Explicit unit conversion with stated precision; decimal and thousands formats parsed per source locale.

  5. Flag what does not fit

    Values outside rules go to review, not into the nearest field.

Outcome and limits

What you get — and what you don’t

Normalized attributes you can filter and compare across brands, each with the raw label, raw value, unit and rule that produced it.

Detail
IncludedPer-family label mapping with written rules
IncludedUnit and number-format conversion with precision noted
IncludedRaw label/value/unit retained per attribute
IncludedList of unmapped or ambiguous columns
Not includedA public, universal mapping table
Not includedChanges to manufacturer-published values
Not includedEngineering interpretation beyond documented semantics

Delivery options

How it is delivered today

Related

Keep reading

FAQ

Questions
answered.

Still have a question?

Discuss normalization

Do you change the values manufacturers publish?

No. Normalization changes representation — field, unit, format — and records how. The original stays attached.

Can I get the mapping rules, not just the output?

Yes. In an assessment the rules are part of the deliverable, so your team can review and reuse them.

Send us your worst column.
We’ll show how we’d map it.

Describe the fields that refuse to line up across suppliers. We will reply with a mapping approach and what evidence it would need.