TradeItem Domain Model

Class diagram showing schema relationships — generated from the OpenAPI specification.

100% Scroll to zoom · Drag to pan
classDiagram
  direction TB
  class TradeItem {
    Gln supplierIdGln✱
    string supplierItemNumber✱
    TradeItemDetails details
    ItemDescription[] descriptions
    TradeItemOrdering ordering✱
    TradeItemPricing[] pricings
    ItemRelation[] relations
    ItemLogistic[] logisticDetails
    ItemAttachment[] attachments
    PackagingUnit[] packagingUnits
  }
  TradeItem --> "1" TradeItemDetails : details
  TradeItem --> "*" ItemDescription : descriptions
  TradeItem --> "1" TradeItemOrdering : ordering
  TradeItem --> "*" TradeItemPricing : pricings
  TradeItem --> "*" ItemRelation : relations
  TradeItem --> "*" ItemLogistic : logisticDetails
  TradeItem --> "*" ItemAttachment : attachments
  TradeItem --> "*" PackagingUnit : packagingUnits
  class TradeItemDetails {
    string supplierAltItemNumber
    string manufacturerItemNumber
    Gln manufacturerIdGln✱
    string manufacturerProductNumber✱
    Gtin[] itemGtins
    string buyerItemNumber
    string discountGroupId
    string bonusGroupId
    string itemValidityDate✱
    string itemObsolescenceDate
    ItemStatus itemStatus
    ItemCondition itemCondition
    boolean stockItem
    integer shelfLifePeriod
  }
  class ItemDescription {
    LanguageCode descriptionLanguage✱
    string minimalItemDescription✱
    string uniqueMainItemDescription
    string discountGroupDescription
    string bonusGroupDescription
  }
  class TradeItemOrdering {
    UnitCodes orderUnit✱
    number minimumOrderQuantity✱
    number orderStepSize✱
    integer standardOrderLeadTime
    UnitCodes useUnit
    number useUnitConversionFactor
    number singleUseUnitQuantity
    UnitCodes alternativeUseUnit
    number alternativeUseUnitConversionFactor
  }
  class TradeItemPricing {
    UnitCodes priceUnit✱
    number priceUnitFactor
    number priceQuantity✱
    CurrencyCode currencyCode✱
    boolean priceOnRequest
    number grossListPrice
    number netPrice
    number recommendedRetailPrice
    number vat
    string priceValidityDate✱
    string priceExpiryDate
    AllowanceSurcharge[] allowanceSurcharges
  }
  TradeItemPricing --> "*" AllowanceSurcharge : allowanceSurcharges
  class AllowanceSurcharge {
    string allowanceSurchargeIndicator✱
    string allowanceSurchargeValidityDate
    AllowanceSurchargeTypes allowanceSurchargeType✱
    number allowanceSurchargeAmount
    integer allowanceSurchargeSequenceNumber
    number allowanceSurchargePercentage
    number allowanceSurchargeMinimumQuantity
  }
  class ItemRelation {
    string relatedSupplierItemNumber✱
    string relatedManufacturerItemNumber
    Gtin[] relatedItemGtins
    RelationType relationType✱
    integer relatedItemQuantity✱
  }
  class ItemLogistic {
    number baseItemNetLength
    number baseItemNetWidth
    number baseItemNetHeight
    number baseItemNetDiameter
    string netDimensionUnit
    number baseItemNetWeight
    string netWeightUnit
    number baseItemNetVolume
    string netVolumeUnit
  }
  class ItemAttachment {
    AttachmentType attachmentType✱
    AttachmentTypeSpecification attachmentTypeSpecification
    LanguageCode[] attachmentLanguages
    string attachmentFilename
    string attachmentUri✱
    string attachmentDescription
    string attachmentIssueDate
    string attachmentExpiryDate
  }
  class PackagingUnit {
    string supplierPackagingNumber
    string manufacturerPackagingNumber
    Gtin[] packagingGtins
    PackagingTypeCode packagingTypeCode✱
    string packagingUnitName
    number packagingQuantity
    boolean tradeItemPrimaryPackaging
    string packagingGs1Code128
    number grossLength
    number grossWidth
    number grossHeight
    number grossDiameter
    string grossDimensionUnit
    number grossWeight
    string grossWeightUnit
    TradeItemEnclosed[] tradeItemEnclosed
  }
  PackagingUnit --> "*" TradeItemEnclosed : tradeItemEnclosed
  class TradeItemEnclosed {
    string enclosedSupplierItemNumber✱
    string enclosedManufacturerItemNumber
    Gtin[] enclosedItemGtins
    integer enclosedItemQuantity✱
  }