Grundlegende zusammengesetzte Typen

Kennzeichnung eines Gegenstands

Der Elementtyp cac:ItemIdentificationType wird verwendet, um Gegenstände zu identifizieren. Er besitzt die folgenden Elemente:

Name

Typ/Vorkommen

Beschreibung

Name

Typ/Vorkommen

Beschreibung

cac:ID

udt:IdentifierType

Kennzeichnung, wie z.B. Artikelnummer oder EAN-Code

cac:PhysicalAttribute

cac:PhysicalAttributeType*

identifzierende Merkmale

cac:MeasurementDimension

cac:DimensionType*

Maße zur Identifizierung eines Gegenstands

Das Vorkommen von Elementen wird in dieser Tabelle (und folgenden) auf diese Weise qualifiziert:

  • Keine Angabe: Element muss verwendet werden.

  • * Element kann beliebig oft vorkommen.

  • + Element muss mindestens einmal vorkommen.

  • ? Element kann höchstens einmal vorkommen.

Zur Zeit gehen wir davon aus, dass ein Gegenstand beim Verkäufer durch eine kennzeichnende Zeichenkette eindeutig identifiziert wird, z.B. durch eine interne Artikelnummer oder durch einen EAN-Code.

Es ist allerdings auch denkbar, dass zur Identifizierung eines Gegenstands zusätzlich zur Artikelnummer weitere Angaben wie z.B. Bekleidungsgröße oder Farbe erforderlich sind. Der Elementtyp ItemIdentificationType ist auch für diese Fälle geeignet. Wir werden allerdings erst genauere Regeln hierfür festlegen, wenn sich in der Praxis zeigt, dass dies benötigt wird.

Regel ItemIdentification

Bis auf weiteres gilt daher: veloconnect-konforme Implementierungen verwenden ausser dem Element cac:ID kein anderes der Kindelemente von ItemIdentifcationType.

Basispreise

Der Elementtyp cac:BasePriceType wird verwendet, um Preise mitzuteilen, die sich auf eine Menge beziehen:

Name

Typ/Vorkommen

Beschreibung

Name

Typ/Vorkommen

Beschreibung

cbc:PriceAmount

cbc:PriceAmountType

Der Betrag des Preises.

cbc:BaseQuantity

cbc:QuantityType?

Basismenge für den Preis

cbc:MaximumQuantity

cbc:QuantityType?

maximale Menge für Gültigkeit des Preises

cbc:MinimumQuantity

cbc:QuantityType?

minimale Menge für Gültigkeit des Preises

 

Regel: BasePriceType

Für veloconnect-konforme Implementierungen gelten folgende Regeln:

  1. In einer Instanz vom Typ cac:BasePriceType muss das Element BaseQuantity vorhanden sein.

  2. In allen Kind-Elementen einer Elementinstanz e vom Typ cbc:QuantityType darf nur ein und dieselbe Mengeneinheit (quantityUnitCode) verwendet werden. Diese nennen wir die Mengeneinheit von e. Ist eine Mengenangabe m gegeben, so nennen wir e gültig für m, wenn die Mengeneinheit von e mit der Mengeneinheit von m vergleichbar ist und m in dem Bereich liegt, der durch cbc:MinimumQuantity und cbc:MaximumQuantity in offensichtlicher Weise bestimmt ist. Insbesondere ist e nicht gültig für m, wenn die Mengeneinheiten nicht vergleichbar sind, und es ist gültig für m, wenn die Mengeneinheiten vergleichbar sind und die Elemente cbc:MaximumQuantity und cbc:MinimumQuantity nicht vorhanden sind.

  3. Werden in einem Instanzelement mehrere gleichnamige Kind-Elemente vom Typ BasePriceType verwendet, so wird damit eine Funktion mitgeteilt, die einer Mengenangabe einen Preis zuordnet, und zwar wie folgt: Gegeben sei die Mengenangabe m. Es werden unter den genannten Kind-Elementen alle ermittelt, die für m gültig sind. Wenn es kein solches Element gibt, dann ist die Funktion für dieses Argument m nicht definiert. Ansonsten wird aus den für m gültigen Elementen der kleinste Preisbetrag als Funktionswert festgesetzt.