Measurements - IM: Difference between revisions

From imde.io

Created page with "The '''Measurements''' information model defines the technology neutral structure for describing the physical size and quantity of trade items and packaging. It has two subsections: '''Trade Item Measurements''', aligned with the GS1 Package and Product Measurement Standard, and '''Packaging Measurements''', captured per Packaging Element using a shape aware model. Material Thickness is held separately at material level. This page describes t..."
 
No edit summary
 
Line 1: Line 1:
The '''Measurements''' information model defines the technology neutral structure for describing the physical size and quantity of trade items and packaging. It has two subsections: '''Trade Item Measurements''', aligned with the GS1 Package and Product Measurement Standard, and '''Packaging Measurements''', captured per Packaging Element using a shape aware model. [[Material Thickness - TX|Material Thickness]] is held separately at material level.
The '''Measurements''' information model defines the technology neutral structure for describing the physical size and quantity of trade items, products and packaging. It has three subsections: '''Trade Item Measurements''' and '''Product Measurements''', aligned with the GS1 Package and Product Measurement Standard, and '''Packaging Measurements''', captured per Packaging Element using a shape aware model. [[Material Thickness - TX|Material Thickness]] is held separately at material level.


This page describes the Information Model only. The Unit of Measure code list and Shape Type code list (L4), and the data schemas in XLS, XML and JSON (L5), are described on their own pages. Minimum Critical Dimension and recyclability roll up logic are out of scope here.
This page describes the Information Model only. The Unit of Measure, Shape Type and Product Measurement Type code lists (L4), and the data schemas in XLS, XML and JSON (L5), are described on their own pages. Minimum Critical Dimension and recyclability roll up logic are out of scope here.


== Scope ==
== Scope ==


The Measurements Data Topic has two subsections in this release:
The Measurements Data Topic separates three subjects that are often confused:


* '''Trade Item Measurements''' for Sales Units, Grouped Units and Transport Units, using GS1 definitions.
* '''Trade Item Measurements''' describe the trade item as placed on the market or moved through logistics: its outer dimensions and its gross weight. For Sales Units, Grouped Units and Transport Units.
* '''Packaging Measurements''' for Packaging Elements, using a context aware, shape driven model, with Material Thickness held at material level.
* '''Product Measurements''' describe the goods themselves: net weight, net content, drained weight, and optional alternative measurements such as dimensions in use or with and without a stand. For the product inside a Sales Unit.
* '''Packaging Measurements''' describe the physical packaging: element outer dimensions, packaging weight and material thickness. For Packaging Elements.


Packaging is described using Sales Packaging, Grouped Packaging and Transport Packaging.
The three subsections meet in one weight identity: '''gross weight = net weight + tare weight''', where tare weight is the weight of the packaging. Packaging is described using Sales Packaging, Grouped Packaging and Transport Packaging.


== Where measurements attach ==
== Where measurements attach ==


Measurements attach at distinct points in the packaging hierarchy, and this separation is the backbone of the model.
'''Trade Item Measurements''' attach to the Sales Unit, the Grouped Unit and the Transport Unit, which are the levels carried in GS1 and GDSN. '''Product Measurements''' attach to the product inside a Sales Unit, because a Sales Unit = Product + Packaging. '''Packaging Measurements''' attach to the Packaging Element for outer dimensions and packaging weight, and to the material for thickness.
 
'''Trade Item Measurements''' describe the trade item as placed on the market or moved through logistics. They attach to the Sales Unit, the Grouped Unit and the Transport Unit, which are the levels carried in GS1 and GDSN.
 
'''Packaging Measurements''' describe the physical packaging itself. Outer dimensions attach to the Packaging Element, the lowest functional packaging part, while thickness attaches to the material.


{| class="wikitable"
{| class="wikitable"
! Level !! Meaning !! Measurement attached
! Level !! Meaning !! Measurement attached
|-
|-
| Packaging Unit || Complete physical packaging defined by the Bill of Materials for one Sales, Grouped or Transport Unit. || Roll up of element measurements (optional)
| Sales / Grouped / Transport Unit || The trade item as placed on the market or moved through logistics. || Trade Item Measurements; Product Measurements (Sales Unit)
|-
| Packaging Unit || Complete physical packaging defined by the Bill of Materials for one unit. || Roll up of packaging weight to tare weight
|-
|-
| Packaging Assembly Unit || A physical packaging component or SKU item in the BOM (jar, lid, label, carton, tray, flowwrap, cap, sleeve, pallet wrap). || Roll up of element measurements (optional)
| Packaging Assembly Unit || A physical packaging component or SKU item in the BOM. || Roll up of element measurements (optional)
|-
|-
| Packaging Element || Lowest functional packaging part, separate or integrated. || Packaging Measurements, outer dimensions (primary input level)
| Packaging Element || Lowest functional packaging part, separate or integrated. || Packaging Measurements: outer dimensions, packaging weight
|-
|-
| Packaging Material || One or more materials that make up a Packaging Element. || Material thickness (total)
| Packaging Material || One or more materials that make up a Packaging Element. || Material thickness (total); packaging weight
|-
|-
| Composite Material || Individual layers within a composite material. || Layer thickness
| Composite Material || Individual layers within a composite material. || Layer thickness
|}
|}


Each trade item level (Sales Unit, Grouped Unit, Transport Unit) carries its own Trade Item Measurements. Because a Sales Unit = Product + Packaging, a Sales Unit can also carry Product Measurements, which are a separate subsection of this Data Topic.
=== The weight identity ===
 
'''Gross weight = net weight + tare weight.''' Gross weight is the total weight of the trade item including its packaging, and is a Trade Item Measurement. Net weight is the weight of the product contents excluding packaging, and is a Product Measurement. Tare weight is the weight of the empty packaging; it equals the sum of the packaging weights of all Packaging Elements and materials in the Packaging Unit, and is therefore derived from Packaging Measurements. Tare is the official term for packaging weight, so gross weight minus net weight equals tare weight.


== Trade Item Measurements ==
== Trade Item Measurements ==


Trade Item Measurements follow the GS1 Package and Product Measurement Standard and the GDSN trade item measurements module. The goal is a global, unambiguous and repeatable definition of the nominal size and quantity of a trade item, whether packed or unpacked.
Trade Item Measurements follow the GS1 Package and Product Measurement Standard and the GDSN trade item measurements module. They describe the trade item as placed on the market or moved through logistics: its outer dimensions and its gross weight. Net weight, net content and drained weight describe the product, not the trade item.


=== Default front and the measurement process ===
=== Default front and the measurement process ===
Line 58: Line 59:
=== Alternative dimensions for round and irregular items ===
=== Alternative dimensions for round and irregular items ===


GS1 always derives height, width and depth from the bounding box around the trade item. For a round or cylindrical item the width and depth equal the sides of the rectangle drawn around the circle, so for a perfect cylinder width equals depth equals the diameter. To capture this explicitly, the model supports an alternative attribute, diameter, which records the widest circular cross section. Diameter is provided in addition to or instead of width and depth depending on the receiving system and the GS1 rule for the product type.
GS1 always derives height, width and depth from the bounding box around the trade item. For a round or cylindrical item the width and depth equal the sides of the rectangle drawn around the circle, so for a perfect cylinder width equals depth equals the diameter. To capture this explicitly, the model supports an alternative attribute, diameter, which records the widest circular cross section.
 
* Rectangular and box shaped items: use height, width and depth.
* Round, cylindrical or oval items: use height plus diameter, and where required also width and depth as the bounding rectangle.


=== Trade Item Measurement attributes ===
=== Trade Item Measurement attributes ===
Each linear attribute is a measured value with a unit of measure from the Unit of Measure code list (length subset). Weight and content attributes use the mass and volume subsets. The GDSN mapping gives the GS1 attribute used for data exchange.


{| class="wikitable"
{| class="wikitable"
Line 77: Line 73:
|-
|-
| diameter || Widest circular cross section for round or cylindrical items. || Measurement, length || 0..1 || tradeItemMeasurements/diameter
| diameter || Widest circular cross section for round or cylindrical items. || Measurement, length || 0..1 || tradeItemMeasurements/diameter
|-
| grossWeight || Total weight of the trade item including packaging. || Measurement, mass || 0..1 || tradeItemMeasurements/grossWeight
|}
'''Applies to:''' Sales Unit, Grouped Unit and Transport Unit.
== Product Measurements ==
Product Measurements describe the goods themselves, independent of the packaging. They cover the declared content and weight of the product, and a code list driven set of alternative measurements for products that are measured in more than one state. Product Measurements attach to the product inside a Sales Unit.
=== Core product measurements ===
{| class="wikitable"
! Attribute !! Definition !! Type / unit !! Card. !! GDSN mapping
|-
| netWeight || Weight of the product contents excluding packaging. || Measurement, mass || 0..1 || tradeItemMeasurements/netWeight
|-
|-
| netContent || Declared content of the consumer unit, including liquid where applicable. || Measurement, volume or mass or count || 0..n || netContent
| netContent || Declared content of the consumer unit, including liquid where applicable. || Measurement, volume or mass or count || 0..n || netContent
|-
|-
| netWeight || Weight of the trade item contents excluding packaging. || Measurement, mass || 0..1 || tradeItemMeasurements/netWeight
| drainedWeight || Weight of solid content excluding packing liquid, for items packed in brine, syrup or oil. || Measurement, mass || 0..1 || drainedWeight
|}
 
Net weight is the product side of gross weight = net weight + tare weight.
 
=== Alternative product measurements ===
 
A product can be measured in more than one state. Each alternative measurement is tagged with a Product Measurement Type from an L4 code list, and can carry its own dimensions and weight under that state. The set is optional and unbounded (0..N), so a user adds one or more alternative measurements only where they are relevant. The Product Measurement Type code list is seeded with the following values and is extensible.
 
{| class="wikitable"
! Code !! Measurement type !! Typical use
|-
| AS_STORED || As stored (dry) || Dry, concentrated or as stored product, for example dry pasta, powder or concentrate.
|-
|-
| grossWeight || Weight including packaging. || Measurement, mass || 0..1 || tradeItemMeasurements/grossWeight
| IN_USE || Prepared / in use || Product as prepared, reconstituted or in use, for example cooked or made up volume.
|-
|-
| drainedWeight || Weight of solid content excluding packing liquid, for items packed in brine, syrup or oil. || Measurement, mass || 0..1 || drainedWeight
| WITH_STAND || With stand || Display product measured with the stand fitted, for example a television.
|-
| WITHOUT_STAND || Without stand || Same product with the stand removed.
|-
| ASSEMBLED || Assembled || Product measured fully assembled.
|-
| FOLDED || Folded / collapsed || Product measured folded, collapsed or flat packed.
|}
|}


'''Applies to:''' Sales Unit, Grouped Unit and Transport Unit. The same attribute set is reused at each trade item level; the level is identified by the parent object, not by separate attributes.
{| class="wikitable"
! Attribute !! Definition !! Type / unit !! Card.
|-
| measurementTypeCode || Reference to the Product Measurement Type for this alternative measurement. || Code (Product Measurement Type list) || 1..1
|-
| height, width, depth, diameter || Dimensions of the product in this state. || Measurement, length || 0..1 each
|-
| weight || Weight of the product in this state. || Measurement, mass || 0..1
|-
| netContent || Content of the product in this state, for example prepared volume. || Measurement, volume or mass or count || 0..1
|}


== Packaging Measurements ==
== Packaging Measurements ==


Packaging Measurements describe the physical outer dimensions of a single Packaging Element. The input is context aware: the user first selects or inherits an Outershape, and the shape then determines which dimension fields are shown, which units apply by default, and which optional attributes such as nominal capacity are relevant. Thickness is not part of the shape; it is held on the material.
Packaging Measurements describe the physical packaging itself: the outer dimensions of each Packaging Element, its packaging weight, and its material thickness. The input is context aware: the user first selects or inherits an Outershape, and the shape then determines which dimension fields are shown and which units apply by default. Thickness is not part of the shape; it is held on the material.


=== The Outershape concept ===
=== The Outershape concept ===
Line 111: Line 151:
|}
|}


Thickness is deliberately not a dimension field. It is a property of the material, not of the outer shape, and is modelled at material level.
Thickness is deliberately not a dimension field. It is a property of the material and is modelled at material level.


=== Shape registry ===
=== Shape registry ===


The shape registry is stored once as reference data (an L4 code list). Each shape declares the ordered set of dimension fields it requires. Because thickness is held on the material, the Sheet / Film / Band shape covers all flat forms, from broad sheets and films to narrow bands and straps, which are geometrically identical to a sheet.
The shape registry is stored once as reference data (an L4 code list). Because thickness is held on the material, the Sheet / Film / Band shape covers all flat forms, from broad sheets and films to narrow bands and straps, which are geometrically identical to a sheet.


{| class="wikitable"
{| class="wikitable"
Line 133: Line 173:
=== Units and defaults ===
=== Units and defaults ===


Each dimension field carries its own unit of measure. Allowed length units are m, dm, cm and mm. Allowed capacity units are l, dl, cl and ml. The default unit is mm for all dimension fields. Thickness is handled separately at material level, with its own unit handling including um (micrometre) for thin films and foils.
Each dimension field carries its own unit of measure. Allowed length units are m, dm, cm and mm. Allowed capacity units are l, dl, cl and ml. Packaging weight uses mass units such as g and kg. The default unit is mm for all dimension fields. Thickness is handled separately at material level, with um (micrometre) available for thin films and foils.


{| class="wikitable"
=== Nominal capacity and Packaging Type Family ===
! Field context !! Default unit
|-
| Dimension fields (L, W, H, D), all shapes || mm
|-
| Nominal capacity (container class only) || ml
|}
 
When the Outershape changes, values for fields that exist on both shapes are preserved and units for removed fields are cleared. For example, changing Box to Sheet / Film / Band keeps L and W and drops H.


=== Element class and conditional attributes ===
Nominal capacity is the declared filling volume of a packaging element that holds a product. It is part of Packaging Measurements but applies only to Packaging Elements whose Packaging Type Family is Rigid Containers, for example cans, bottles, jars and cups. For all other families it is not recorded. Nominal capacity is measured in millilitres (ml) by default. The Packaging Type Family is taken from the IMDE Packaging Type Family code list (PACKAGING_TYPE_FAMILY) and is inherited from the Packaging Element Type.
 
Whether a Packaging Element can record a nominal capacity depends on its element class. Containers hold a product and therefore carry a nominal capacity; closures and other elements do not.


{| class="wikitable"
{| class="wikitable"
! Element class !! Dimensions !! Nominal capacity
! Packaging Type Family !! Nominal capacity
|-
|-
| Container (bottle, jar, can, tube, cup) || Yes || Yes
| Rigid Containers (cans, bottles, jars, cups) || Yes, default ml
|-
|-
| Closure (cap, lid, stopper) || Yes || No
| All other families || Not recorded
|-
| Other (label, sleeve, tray, insert) || Yes || No
|}
|}


=== Packaging Measurement attributes ===
=== Packaging Measurement attributes ===


Dimensions are stored as two parallel maps on the element: a value per field code and a unit per field code. Only the fields declared by the Outershape are populated.
Dimensions are stored as two parallel maps on the element: a value per field code and a unit per field code. Only the fields declared by the Outershape are populated. Packaging weight is captured per element and rolls up to the tare weight of the trade item.


{| class="wikitable"
{| class="wikitable"
Line 172: Line 200:
| dimensionUnit[field] || Unit of measure for that dimension field. || Code (length subset) || 0..1 per field
| dimensionUnit[field] || Unit of measure for that dimension field. || Code (length subset) || 0..1 per field
|-
|-
| nominalCapacity || Declared filling capacity of a container element. || Decimal || 0..1
| packagingWeight || Weight of this Packaging Element; rolls up to tare weight. || Measurement, mass || 0..1
|-
|-
| nominalCapacityUnit || Unit of measure for nominal capacity. || Code (capacity subset) || 0..1
| nominalCapacity || Declared filling volume; only for the Rigid Containers Packaging Type Family. || Decimal || 0..1
|-
| nominalCapacityUnit || Unit of measure for nominal capacity; default ml. || Code (capacity subset) || 0..1
|}
|}


== Material Thickness ==
== Material Thickness ==


Thickness is a property of the material, not of the element outer shape. This follows the [[Material Thickness - TX|Material Thickness]] taxonomy, which separates thickness from outer dimensions such as length, width, height, depth and diameter. Modelling thickness at material level keeps the shape registry purely geometric and matches current GDSN practice, where thickness is reported only for selected materials such as aluminium and is carried on the material.
Thickness is a property of the material, not of the element outer shape. This follows the [[Material Thickness - TX|Material Thickness]] taxonomy, which separates thickness from outer dimensions such as length, width, height, depth and diameter. Modelling thickness at material level keeps the shape registry purely geometric and matches current GDSN practice, where thickness is reported only for selected materials such as aluminium.


=== Where thickness lives in the hierarchy ===
=== Where thickness lives in the hierarchy ===
Line 197: Line 227:
=== Total thickness versus the sum of layers ===
=== Total thickness versus the sum of layers ===


For a composite, the material thickness (total) may be measured directly or derived from the sum of the layer thicknesses. Treat the layer thicknesses as the source of truth where layers are modelled. Enter the total directly for a simple material, and for a composite validate the total against the sum of the layers, flagging a mismatch rather than overwriting, so that a measured total and a calculated total stay reconcilable.
For a composite, the material thickness (total) may be measured directly or derived from the sum of the layer thicknesses. Treat the layer thicknesses as the source of truth where layers are modelled. Enter the total directly for a simple material, and for a composite validate the total against the sum of the layers, flagging a mismatch rather than overwriting.


=== The Thickness type ===
=== The Thickness type ===
Line 213: Line 243:
|}
|}


A separate average attribute is intentionally not introduced. The nominal value already represents the declared figure. If measured quality control statistics are captured later, model them as a distinct measured value rather than overloading nominal, so that the declared specification and the measured result never collide. A single nominal value satisfies the current GDSN requirement for materials such as aluminium today.
A separate average attribute is intentionally not introduced. If measured quality control statistics are captured later, model them as a distinct measured value rather than overloading nominal. A single nominal value satisfies the current GDSN requirement for materials such as aluminium today.


== Data model summary ==
== Data model summary ==
The Measurements information model resolves to the following entities. The model is technology neutral and maps directly to relational tables, to JSON objects and to XML complex types.


{| class="wikitable"
{| class="wikitable"
! Entity !! Key attributes !! Attaches to
! Entity !! Key attributes !! Attaches to
|-
|-
| TradeItemMeasurement || height, width, depth, diameter, netContent, netWeight, grossWeight, drainedWeight (each value plus unit) || Sales Unit, Grouped Unit, Transport Unit
| TradeItemMeasurement || height, width, depth, diameter, grossWeight (each value plus unit) || Sales Unit, Grouped Unit, Transport Unit
|-
|-
| PackagingMeasurement || outershapeCode, dimensionValue[ ], dimensionUnit[ ], nominalCapacity, nominalCapacityUnit || Packaging Element
| ProductMeasurement || netWeight, netContent, drainedWeight; alternativeMeasurement[ ] || Product (inside a Sales Unit)
|-
| AlternativeProductMeasurement || measurementTypeCode, height, width, depth, diameter, weight, netContent || ProductMeasurement (0..N)
|-
| PackagingMeasurement || outershapeCode, dimensionValue[ ], dimensionUnit[ ], packagingWeight, nominalCapacity, nominalCapacityUnit || Packaging Element
|-
|-
| MaterialThickness || nominal, minimum, maximum (each value plus unit) || Packaging Material (total) and Composite Material (layer)
| MaterialThickness || nominal, minimum, maximum (each value plus unit) || Packaging Material (total) and Composite Material (layer)
|-
|-
| ShapeType (reference) || code, name, dimensionFields[ ] (subset of L, W, H, D), sortOrder || Referenced by PackagingMeasurement
| ShapeType (reference) || code, name, dimensionFields[ ] (subset of L, W, H, D), sortOrder || Referenced by PackagingMeasurement
|-
| ProductMeasurementType (reference) || code, name, description || Referenced by AlternativeProductMeasurement
|-
|-
| UnitOfMeasure (reference) || code, name, quantityKind (length, mass, volume, count) || Referenced by all measurement values
| UnitOfMeasure (reference) || code, name, quantityKind (length, mass, volume, count) || Referenced by all measurement values
|}
|}


'''Reusable Measurement type.''' Every measured quantity is a pair of a decimal value and a unit of measure code. One shared Measurement type keeps Trade Item Measurements, Packaging Measurements and Material Thickness consistent and makes schema generation in XLS, XML and JSON straightforward. Material Thickness reuses this type with optional minimum and maximum, applied at the Packaging Material and Composite Material levels.
'''Reusable Measurement type.''' Every measured quantity is a pair of a decimal value and a unit of measure code. One shared Measurement type keeps all three subsections and Material Thickness consistent. The weight identity gross weight = net weight + tare weight links the three subsections, with tare weight derived as the sum of packaging weight across the Packaging Unit.


[[Category:Information Model]]
[[Category:Information Model]]

Latest revision as of 11:49, 21 June 2026

The Measurements information model defines the technology neutral structure for describing the physical size and quantity of trade items, products and packaging. It has three subsections: Trade Item Measurements and Product Measurements, aligned with the GS1 Package and Product Measurement Standard, and Packaging Measurements, captured per Packaging Element using a shape aware model. Material Thickness is held separately at material level.

This page describes the Information Model only. The Unit of Measure, Shape Type and Product Measurement Type code lists (L4), and the data schemas in XLS, XML and JSON (L5), are described on their own pages. Minimum Critical Dimension and recyclability roll up logic are out of scope here.

Scope

The Measurements Data Topic separates three subjects that are often confused:

  • Trade Item Measurements describe the trade item as placed on the market or moved through logistics: its outer dimensions and its gross weight. For Sales Units, Grouped Units and Transport Units.
  • Product Measurements describe the goods themselves: net weight, net content, drained weight, and optional alternative measurements such as dimensions in use or with and without a stand. For the product inside a Sales Unit.
  • Packaging Measurements describe the physical packaging: element outer dimensions, packaging weight and material thickness. For Packaging Elements.

The three subsections meet in one weight identity: gross weight = net weight + tare weight, where tare weight is the weight of the packaging. Packaging is described using Sales Packaging, Grouped Packaging and Transport Packaging.

Where measurements attach

Trade Item Measurements attach to the Sales Unit, the Grouped Unit and the Transport Unit, which are the levels carried in GS1 and GDSN. Product Measurements attach to the product inside a Sales Unit, because a Sales Unit = Product + Packaging. Packaging Measurements attach to the Packaging Element for outer dimensions and packaging weight, and to the material for thickness.

Level Meaning Measurement attached
Sales / Grouped / Transport Unit The trade item as placed on the market or moved through logistics. Trade Item Measurements; Product Measurements (Sales Unit)
Packaging Unit Complete physical packaging defined by the Bill of Materials for one unit. Roll up of packaging weight to tare weight
Packaging Assembly Unit A physical packaging component or SKU item in the BOM. Roll up of element measurements (optional)
Packaging Element Lowest functional packaging part, separate or integrated. Packaging Measurements: outer dimensions, packaging weight
Packaging Material One or more materials that make up a Packaging Element. Material thickness (total); packaging weight
Composite Material Individual layers within a composite material. Layer thickness

The weight identity

Gross weight = net weight + tare weight. Gross weight is the total weight of the trade item including its packaging, and is a Trade Item Measurement. Net weight is the weight of the product contents excluding packaging, and is a Product Measurement. Tare weight is the weight of the empty packaging; it equals the sum of the packaging weights of all Packaging Elements and materials in the Packaging Unit, and is therefore derived from Packaging Measurements. Tare is the official term for packaging weight, so gross weight minus net weight equals tare weight.

Trade Item Measurements

Trade Item Measurements follow the GS1 Package and Product Measurement Standard and the GDSN trade item measurements module. They describe the trade item as placed on the market or moved through logistics: its outer dimensions and its gross weight. Net weight, net content and drained weight describe the product, not the trade item.

Default front and the measurement process

Before height, width and depth can be determined, the default front of the consumer trade item must be identified. The default front is the surface with the largest area used by the brand owner to promote the product to the consumer. Where GS1 defines a specific rule for the product or packaging type, that rule is used. Where no clear promotional surface exists, the largest surface is treated as the default front.

Measurements are taken while facing the default front, with the trade item resting naturally on a flat surface. The maximum distance is always measured, including projections, caps, lids and any attached complementary products such as on packs or samples.

Dimension GS1 definition
Height Distance from the bottom most point to the top most point, measured facing the default front.
Width Distance from the left most point to the right most point, measured facing the default front.
Depth Distance from the default front to the farthest opposite surface (front to back).

Alternative dimensions for round and irregular items

GS1 always derives height, width and depth from the bounding box around the trade item. For a round or cylindrical item the width and depth equal the sides of the rectangle drawn around the circle, so for a perfect cylinder width equals depth equals the diameter. To capture this explicitly, the model supports an alternative attribute, diameter, which records the widest circular cross section.

Trade Item Measurement attributes

Attribute Definition Type / unit Card. GDSN mapping
height Vertical outer dimension facing the default front. Measurement, length 0..1 tradeItemMeasurements/height
width Horizontal outer dimension facing the default front. Measurement, length 0..1 tradeItemMeasurements/width
depth Front to back outer dimension facing the default front. Measurement, length 0..1 tradeItemMeasurements/depth
diameter Widest circular cross section for round or cylindrical items. Measurement, length 0..1 tradeItemMeasurements/diameter
grossWeight Total weight of the trade item including packaging. Measurement, mass 0..1 tradeItemMeasurements/grossWeight

Applies to: Sales Unit, Grouped Unit and Transport Unit.

Product Measurements

Product Measurements describe the goods themselves, independent of the packaging. They cover the declared content and weight of the product, and a code list driven set of alternative measurements for products that are measured in more than one state. Product Measurements attach to the product inside a Sales Unit.

Core product measurements

Attribute Definition Type / unit Card. GDSN mapping
netWeight Weight of the product contents excluding packaging. Measurement, mass 0..1 tradeItemMeasurements/netWeight
netContent Declared content of the consumer unit, including liquid where applicable. Measurement, volume or mass or count 0..n netContent
drainedWeight Weight of solid content excluding packing liquid, for items packed in brine, syrup or oil. Measurement, mass 0..1 drainedWeight

Net weight is the product side of gross weight = net weight + tare weight.

Alternative product measurements

A product can be measured in more than one state. Each alternative measurement is tagged with a Product Measurement Type from an L4 code list, and can carry its own dimensions and weight under that state. The set is optional and unbounded (0..N), so a user adds one or more alternative measurements only where they are relevant. The Product Measurement Type code list is seeded with the following values and is extensible.

Code Measurement type Typical use
AS_STORED As stored (dry) Dry, concentrated or as stored product, for example dry pasta, powder or concentrate.
IN_USE Prepared / in use Product as prepared, reconstituted or in use, for example cooked or made up volume.
WITH_STAND With stand Display product measured with the stand fitted, for example a television.
WITHOUT_STAND Without stand Same product with the stand removed.
ASSEMBLED Assembled Product measured fully assembled.
FOLDED Folded / collapsed Product measured folded, collapsed or flat packed.
Attribute Definition Type / unit Card.
measurementTypeCode Reference to the Product Measurement Type for this alternative measurement. Code (Product Measurement Type list) 1..1
height, width, depth, diameter Dimensions of the product in this state. Measurement, length 0..1 each
weight Weight of the product in this state. Measurement, mass 0..1
netContent Content of the product in this state, for example prepared volume. Measurement, volume or mass or count 0..1

Packaging Measurements

Packaging Measurements describe the physical packaging itself: the outer dimensions of each Packaging Element, its packaging weight, and its material thickness. The input is context aware: the user first selects or inherits an Outershape, and the shape then determines which dimension fields are shown and which units apply by default. Thickness is not part of the shape; it is held on the material.

The Outershape concept

Every Packaging Element has one Outershape, for example Box, Cylinder or Sheet / Film / Band. The Outershape is usually derived automatically from the selected Packaging Element Type (a bottle resolves to Cylinder, a tray resolves to Box) and is user overridable. The shape controls which of the four dimension fields are presented and the default unit of each field. A Packaging Element cannot record dimensions until its Outershape is set.

Dimension field codes

Code Field Notes
L Length Longest planar dimension.
W Width Second planar dimension.
H Height Vertical dimension.
D Diameter Widest circular cross section.

Thickness is deliberately not a dimension field. It is a property of the material and is modelled at material level.

Shape registry

The shape registry is stored once as reference data (an L4 code list). Because thickness is held on the material, the Sheet / Film / Band shape covers all flat forms, from broad sheets and films to narrow bands and straps, which are geometrically identical to a sheet.

Shape Dimension fields Typical packaging examples
Box L, W, H Carton, tray, case, folding box, rigid box
Cylinder D, H Bottle, can, jar, tube, cup, cap
Sheet / Film / Band L, W Label, film, foil, laminate web, lidding, liner, layer pad, sleeve, tape, band, tear strip, pallet strap
Cord D, L Tie, string, drawstring, handle cord
Sphere D Ball, bead, spherical closure

Units and defaults

Each dimension field carries its own unit of measure. Allowed length units are m, dm, cm and mm. Allowed capacity units are l, dl, cl and ml. Packaging weight uses mass units such as g and kg. The default unit is mm for all dimension fields. Thickness is handled separately at material level, with um (micrometre) available for thin films and foils.

Nominal capacity and Packaging Type Family

Nominal capacity is the declared filling volume of a packaging element that holds a product. It is part of Packaging Measurements but applies only to Packaging Elements whose Packaging Type Family is Rigid Containers, for example cans, bottles, jars and cups. For all other families it is not recorded. Nominal capacity is measured in millilitres (ml) by default. The Packaging Type Family is taken from the IMDE Packaging Type Family code list (PACKAGING_TYPE_FAMILY) and is inherited from the Packaging Element Type.

Packaging Type Family Nominal capacity
Rigid Containers (cans, bottles, jars, cups) Yes, default ml
All other families Not recorded

Packaging Measurement attributes

Dimensions are stored as two parallel maps on the element: a value per field code and a unit per field code. Only the fields declared by the Outershape are populated. Packaging weight is captured per element and rolls up to the tare weight of the trade item.

Attribute Definition Type / unit Card.
outershapeCode Reference to the Outershape in the shape registry. Code (Shape Type list) 1..1
dimensionValue[field] Measured value for a declared dimension field (L, W, H, D). Decimal 0..1 per field
dimensionUnit[field] Unit of measure for that dimension field. Code (length subset) 0..1 per field
packagingWeight Weight of this Packaging Element; rolls up to tare weight. Measurement, mass 0..1
nominalCapacity Declared filling volume; only for the Rigid Containers Packaging Type Family. Decimal 0..1
nominalCapacityUnit Unit of measure for nominal capacity; default ml. Code (capacity subset) 0..1

Material Thickness

Thickness is a property of the material, not of the element outer shape. This follows the Material Thickness taxonomy, which separates thickness from outer dimensions such as length, width, height, depth and diameter. Modelling thickness at material level keeps the shape registry purely geometric and matches current GDSN practice, where thickness is reported only for selected materials such as aluminium.

Where thickness lives in the hierarchy

A Packaging Element consists of one or more Packaging Materials. A Packaging Material can be simple or composite. A composite Packaging Material consists of two or more Composite Materials, which are the individual layers of a laminate or multilayer structure. Thickness therefore has two variants.

Level Thickness variant Meaning
Packaging Material Material thickness Total thickness of the material or the complete material structure.
Composite Material (layer) Layer thickness Thickness of one individual layer within a composite material.

A simple, non composite material carries only material thickness. A composite carries a layer thickness on each Composite Material, plus a material thickness on the Packaging Material that represents the total structure.

Total thickness versus the sum of layers

For a composite, the material thickness (total) may be measured directly or derived from the sum of the layer thicknesses. Treat the layer thicknesses as the source of truth where layers are modelled. Enter the total directly for a simple material, and for a composite validate the total against the sum of the layers, flagging a mismatch rather than overwriting.

The Thickness type

Thickness reuses one shared type, applied at both the Packaging Material and Composite Material levels. The nominal value is the primary figure and is the value published for data exchange. Minimum and maximum are optional and used when a tolerance or range is required, mainly for films and foils. The default unit is mm, with um available for thin films and foils.

Attribute Definition Type / unit Card.
nominal Declared nominal thickness; the value published for data exchange. Measurement, length (mm or um) 0..1
minimum Lower bound of the thickness range, when a range is specified. Measurement, length 0..1
maximum Upper bound of the thickness range, when a range is specified. Measurement, length 0..1

A separate average attribute is intentionally not introduced. If measured quality control statistics are captured later, model them as a distinct measured value rather than overloading nominal. A single nominal value satisfies the current GDSN requirement for materials such as aluminium today.

Data model summary

Entity Key attributes Attaches to
TradeItemMeasurement height, width, depth, diameter, grossWeight (each value plus unit) Sales Unit, Grouped Unit, Transport Unit
ProductMeasurement netWeight, netContent, drainedWeight; alternativeMeasurement[ ] Product (inside a Sales Unit)
AlternativeProductMeasurement measurementTypeCode, height, width, depth, diameter, weight, netContent ProductMeasurement (0..N)
PackagingMeasurement outershapeCode, dimensionValue[ ], dimensionUnit[ ], packagingWeight, nominalCapacity, nominalCapacityUnit Packaging Element
MaterialThickness nominal, minimum, maximum (each value plus unit) Packaging Material (total) and Composite Material (layer)
ShapeType (reference) code, name, dimensionFields[ ] (subset of L, W, H, D), sortOrder Referenced by PackagingMeasurement
ProductMeasurementType (reference) code, name, description Referenced by AlternativeProductMeasurement
UnitOfMeasure (reference) code, name, quantityKind (length, mass, volume, count) Referenced by all measurement values

Reusable Measurement type. Every measured quantity is a pair of a decimal value and a unit of measure code. One shared Measurement type keeps all three subsections and Material Thickness consistent. The weight identity gross weight = net weight + tare weight links the three subsections, with tare weight derived as the sum of packaging weight across the Packaging Unit.