Basic types

Identifier

The type udt:IdentifierType is used for unique identification in the element instances. Uniqueness is assumed to be ensured here by an underlying scheme of markings.

An element of this type has simple content of type xsd:string and additional optional attributes to identify the marking scheme. Two element instances are to be regarded as identical if they concur in terms of element name, content and the identificationSchemeID attribute.

Rule: EAN-Code

Veloconnect-compliant implementations must set the identificationSchemeID attribute to the value EAN/UCC-13, if the marking is an EAN code. If UPC-A codes are used, they are to be transformed into an EAN code by a leading 0.

Rule: ILN/GLN

Veloconnect-compliant implementations must set the identificationSchemeID attribute to the value GLN, if the marking is an International location number (ILN) or global location number (GLN).

Indications of quantity

cbc:QuantityType

An indicated quantity consists of a value (number) and a unit. The base type cbc:Quantity Type is used to represent quantities. The value of the quantity is represented as a string of type xsd:decimal in the contents of an element instance, the unit by the attribute quantityUnitCode, which must always be specified. A unit is represented by a code of up to three letters from the code list as per TRADE/CEFACT/2001/20. This list encompasses several hundred units. In view of the Veloconnect specification's area of application, we restrict this list as follows:

Rule: Units

A Veloconnect-compliant client or server must be able to handle the following units correctly:

  • EA
    Discrete: Object or item to be considered as a unit.

  • PR
    Discrete: Pair consisting of two objects which are identical except for exactly one characteristic which can assume only two values. For example: A pair of shoes, a pair of brake jaws.

  • PK
    Discrete: Package consisting of several identical parts.

  • SET
    Discrete: Set consisting of several parts combined into one unit for functional or sales-related reasons.

  • MTR
    Length: Metre

  • CMT
    Length: Centimetre

  • MMT
    Length: Millimetre

  • KGM
    Weight: Kilogram

  • GRM
    Weight: Gram

  • LTR
    Volume: Litre

  • MLT
    Volume: Millilitre

Correct handling means: Two quantities are to be treated as identical if they are the same as defined by their units.

In the case of physical units of measure for length, weight and volume, it is obvious how different units for the same physical quantities can be mutually converted. For example, <cbc:Quantity quantityUnitCode="MTR">0.58</cbc:Quantity> and <cbc:Quantity quantityUnitCode="MMT">580</cbc:Quantity> are to be considered as identical.

Rule: Discrete units

This is not obvious in the case of discrete units. We define the following rules for Veloconnect-compliant implementations:

  1. The units comprising piece, pair and set are not to be mutually compared, nor are they comparable with any of the physical quantities.

  2. Converting a quantity whose unit is package into another unit Y is only possible if Y is not package, and if a number U is explicitly specified so that 1 package corresponds to a quantity of U Y.

Objects are described with element type cac:ItemType which allows the required, explicit specification to convert the package unit into another unit.

Rule: Other units according to TRADE/CEFACT/2001/20

A use of units other than those mentioned above from the TRADE/CEFACT/2001/20 list does not contradict the Veloconnect specification . A Veloconnect-compliant server is allowed to respond to a message with an error message if the client uses a unit other than one of those explicitly listed above. A Veloconnect-compliant client must process such a unit if it is delivered by the server. For this, the client can either consider this unit as not comparable to any other unit, or let the user specify a conversion into a known unit.