Formatbeschreibung: Katalog für Brillenfassungen, Sonnenbrillen, Brillengläser, Kontaktlinsen und Handelswaren

Katalogformat und weitere Dokumentarten

Der Katalog ist der erste Teil und Basis für eine Reihe von Dokumenten zum Austausch von Daten für den kompletten Logistikketten-Prozess. Im Katalog hat der Lieferant die Möglichkeit, alle seine Produkte die er für einen bestimmten Markt anbietet, zu definieren. Der Katalog erlaubt dem Lieferanten, den Artikel mit detaillierten Informationen auf verschiedenen Ebenen zu beschreiben und für verschiedene Anwendungsfälle zu verwenden (technische Informationen, Marketing- Informationen, Preisinformationen, Beziehung zu anderen Ressourcen).

Im Katalog ist der komplette Lieferbereich für einen Artikel beschrieben. Auf dieser Grundlage kann für eine gültige Bestellung nur eine gültige Konfiguration ausgewählt werden.

Geschichte

Basis für dieses Format ist das SPECTARIS-Format für Kontaktlinsen das von der LOOK4 Company GmbH in Kooperation mit dem Deutschen Industrieverband SPECTARIS 2004 entwickelt wurde.

Die Datei Catalog.xml - der Produktkatalog

Der Aufbau

Das Format besteht aus folgenden standardisierten und somit allgemein gültigen Teilen:

Catalog.xsd:XML-Schema zum Katalog. Hier wird die Struktur des Katalogs zentral definiert. Über diese Datei kann der individuelle Katalog eines Herstellers online verifiziert werden.
Templates.xsd:XML-Schema zur Produkteigenschaften-Liste SpectarisTemplates.xml
Templates_contactlenses_v_1_13_2_DE.xml:
 Auflistung aller standardisierten Eigenschaften für die Produktgruppe Kontaktlinsen. Je Sprache gibt es eine entsprechende Datei.
Templates_frames_v_1_13_5_DE.xml:
 Liste aller standardisierten Produkteigenschaften für die Warengruppe Fassungen. Je Sprache gibt es eine entsprechende Datei.
Templates_lenses_v_1_13_2_DE.xml:
 Liste aller standardisierten Produkteigenschaften für die Warengruppe Brillengläser. Je Sprache gibt es eine entsprechende Datei.
Templates_global_v_1_13_4_DE.xml:
 Liste aller standardisierten, warengruppenunabhängigen Produkteigenschaften. Je Sprache gibt es eine entsprechende Datei.
../_images/templates.jpg

Bei Sonnenbrillen müssen entsprechend alle drei Templates (global, frames und lenses) eingebunden werden.

Da bei den Templates häufiger Ergänzungen erforderlich sind, gibt es hier Unterversionen (z.B. 1.13.2). Diese können je nach Templatetyp (z.B. frames, contactlenses) unterschiedlich sein. Die Releasebezeichnung hier im Dokument richtet sich somit nach der höchsten Unterversion.

Die Templates können für die aktuelle Version unter folgender URL aufgerufen werden (Beispiel):

https://templates.look4optics.com/v_1_13/templates.xsd

Übersicht der zwingend erforderlichen Features pro Warengruppe

Für eine optimale Prozessabwicklung, bzw. Nutzung der Kataloge, ist die Mitgabe bestimmter Produkteigenschaften erforderlich. Nachfolgend finden Sie eine Übersicht der zwingend anzugebenen Features je Warengruppe.

Kontaktlinsen

id includeInOrder
CLConfigType hidden
CLGeom hidden
CLType hidden
CLUsage hidden
Material false

Bei weichen Linsen (CLType=soft) müssen die folgenden Features verwendet werden

id includeInOrder
NumberOfUnits false
NumberOfUse false

Bei Pflegemitteln (ArticleType=care) müssen die folgenden Features verwendet werden

id includeInOrder
NumberOfUnits false
UnitOfMeasure false

Bei Flaschen (UnitOfMeasure=bottle) zusätzlich noch

id includeInOrder
UnitVolume false

Bei Zubehör (ArticleType=accessory) muss das folgende Feature verwendet werden

id includeInOrder
NumberOfUnits false

Fassungen

id includeInOrder
Brand false
EanCode optional
FosaLineID hidden
FosaLineIDLabel hidden
FrameColour true
FrameDbl true
FrameMaterialType false
FrameRimType false
FrameSearchColour hidden
FrameShapeLength true
FrameTempleLength true
imgLarge (Attribut)
UserGroup false

Sonnenbrillen

zusätzlich noch

id includeInOrder
LensColour false
LensColourLabel false
LensSearchColour hidden

Brillenbügel

id includeInOrder
EanCode optional
FrameTempleColour false
FrameTempleLength true
FrameTempleMaterialType false
FrameTempleSearchColour hidden
imgLarge (Attribut)

Mittelteil

id includeInOrder
EanCode optional
FrameMiddlePartColour true
FrameMiddlePartMaterialType false
FrameMiddlePartSearchColour hidden
imgLarge (Attribut)

Fassungs-Ersatzteil

id includeInOrder
FrameSparepartType hidden

Regeln für einen einheitlichen Aufbau

  1. Template Namen erhalten alle englische Bezeichnungen
  2. Template Namen werden grundsätzlich zusammengeschrieben
  3. Der erste Buchstabe eines Elements wird immer großgeschrieben
  4. Der erste Buchstabe eines Attributs wird immer kleingeschrieben
  5. Auf Verbindungszeichen wird verzichtet
  6. Für die Verbesserung der Lesbarkeit werden Wortverbindungen durch Großbuchstaben gekennzeichnet z.B. DeliveryRange / ProductCodingPattern /…

Die Template Dateien

In diesen Dateien werden alle Standard-Produkteigenschaften einer Warengruppe definiert. Jede Produkteigenschaft hat eine eindeutige Bezeichnung (TemplateId).

Hier werden für alle Produkteigenschaften die allgemeingültigen Datenelementeigenschaften definiert. Für jedes Datenelement sind folgende Angaben in der Liste der Datenelemente enthalten:

id:ist der eindeutige Elementname im XML-Format. Die Elementnamen werden Englisch gewählt.
includeInOrder:Bestellrelevant oder beschreibende Eigenschaft (Produktinfo)

Gültige Werte für ``includeInOrder``:

  1. true: Bestellrelevant, wird mit der Bestellung übertragen
  2. false: Nicht bestellrelevant, nur beschreibende Produkteigenschaft (Info)
  3. optional: Optionale Produkteigenschaft, kann angegeben werden und wird dann auch im Bestellsatz übertragen.
  4. hidden: Produktgruppierungsmerkmal, Produktgruppierung unsichtbar in SW-Oberflächen

Attribute

label:Feature-Bezeichnung in der jeweiligen Sprache
step:Schrittweite der Werte
formatString:Formatierung des Feldes
unit:Einheit der Produkteigenschaft
alwaysSigned:Anzeige immer mit Vorzeichen (z.B. sph / cyl für die Anzeige in einer Anwendung, default-Wert = false)

Beispiel XML-Code:

<FeatureValueTemplate id="AxisComplete" includeInOrder="true" label="&t_AxisComplete;"
  step="1" formatString="N0" unit="°" descr="&t_AxisComplete_descr;
  alwaysSigned="false" />

Das Element Catalog

Der Produktkatalog ist die Basis für alle weiteren Anwendungsarten wie Bestellung oder Statusaustausch.

Allgemeine Katalog-Informationen

Der Katalog beginnt mit der Definition allgemeiner Informationen zum Katalog:

Attribute Type / Use Description / Example
catalogDescription xs:string optional Katalogbeschreibung (z.B. CL Sortiment mit Pflegeprodukten 2011)
catalogID xs:string required ID für den Katalog, beschreibt eindeutig Hersteller/Marke/Gültigkeitsbereich (z.B. 373b9c80-8eb1-4b99-9f6f-1dd03353da53)
currency xs:string required Währung (z.B. EURO)
currencySymbol xs:string required Währungssymbol (z.B. $)
name xs:string required Bezeichnung des Kataloges (z.B. Woehlk-CL-2011)
schemaMajorVersionID xs:integer required Hauptversionsnummer für die Beschreibung der aktuellen Schema-Version (z.B. 1)
schemaMinorVersionID xs:integer required Unterversionsnummer für die Beschreibung der aktuellen Schema-Version (z.B. 0)
testCatalog xs:string optional Kennzeichen ob Test-Katalog (z.B. true)
versionID xs:string optional ID für Version (Inhalt) durch den Hersteller (z.B. 364-598-569-22)
version xs:string optional Beschreibung der Version (Inhalt) durch den Hersteller (z.B. new colour values for product xy)
validEndDate xs:dateTime optional Gültig bis Datum (z.B. 2012-01-01T00:00:00)
validStartDate xs:dateTime optional Gültig von Datum (z.B. 2011-01-01T00:00:00)

Beispiel XML-Code:

<Catalog
  xsi:noNamespaceSchemaLocation=
  "https://templates.look4optics.com/v_1_13/catalog.xsd"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  name="Fossil frames and sunglasses product catalog"
  catalogID="catalog_de_de.xml" version="2016 -Test1.0"
  currency="EUR" currencySymbol="&euro;"
  validStartDate="2018-06-01T15:30:47.0000000+01:00">
    <ValidCountries>
        <ValidCountry isoCountryCode="EN"/>
    </ValidCountries>
</Catalog>

Im Anschluss an die allgemeinen Kopfdaten gliedert sich der Katalog in folgende Bereiche:

ValidCountries:Angabe für welche Länder gültig
Supplier:Herstellerstammdaten
Templates:Definition von Eigenschaften die später zur Artikelbeschreibung verwendet werden
Articles:Beschreibung des einzelnen Artikels
Navigation:Navigation (optional)

Das Element Supplier

Innerhalb des Elements Supplier erfolgt die Definition aller Informationen zum Lieferanten/Hersteller. Das Element Supplier besitzt folgende Attribute:

Attribute Type / Use Description / Example
agb xs:anyURI optional Link auf AGBs (z.B. http://shop.woehlk.com/ Page_Webkit.aspx?menuEntryID=6&language=de)
ceo xs:string optional Management (z.B. Lothar Haase)
name xs:string required Name (z.B. Woehlk-CL-2011)
registration xs:string optional Lieferanten CoC-Nummer (z.B. WK-123)
supplierID xs:string required Eindeutige ID des Lieferanten = UmsatzsteuerID (z.B. DE813058544)
taxNo xs:string optional Steuernummer des Lieferanten (z.B. DE19 291 21294)
vatID xs:string optional Umsatzsteuer-ID des Lieferanten (z.B. DE813058544)

Beispiel XML-Code:

<Supplier supplierID="DE811449478" vatID="DE811449478"
  name="best frames GmbH">

Als weitere Informationen können hier unterschiedliche Adressen und Bankverbindungen des Lieferanten definiert werden:

Beispiel XML-Code:

<Supplier>
    <Addresses>
        <Address label="Mainaddress" name="best frames GmbH"
          street="Dorfstr. 2-4" zip="79280" city="Au" isoCountryCode="DE"
          phone="0761-40 10 510" fax="0761-40 10 51 22"
          email="info@best-frames.de"/>
        <Address label="Service Center" name=" best frames GmbH"
          street="Dorfstr. 2-4" zip="79280" city="Au" isoCountryCode="DE"
          phone="0761-40 10 51 55" fax="0761-40 10 51 33"
          email="info@best-frames.de "/>
    </Addresses>
    <BankAccounts>
        <BankAccount bankName="Volksbank Münster" eban="EBAN1" swift="SWIFT1"
          accountNo="12643" bankCode="455100" street="Bertoldstraße 4"
          zip="79116" city="Münster" isoCountryCode="DE"/>
        <BankAccount bankName="Sparkasse Hamburg" eban="EBAN2" swift="SWIFT2"
          accountNo="4943645" bankCode="45543645" street="Westplatz 56"
          zip="12345" city="Hamburg" isoCountryCode="DE"/>
    </BankAccounts>
</Supplier>

Das Element Templates

Include

Am Anfang steht die Zeile Include. Damit erfolgt die Einbindung der Dateien für die verschiedenen Warengruppen mit den zentral definierten Standard-Produkteigenschaften. Die eingebundenen Dateien sind:

Templates_frames_v_1_13_5_DE.xml

Templates_lenses_v_1_13_2_DE.xml

Templates_global_v_1_13_4_DE.xml

Templates_contactlenses_v_1_13_2_DE.xml

Über weitere Include-Befehle ist es möglich, Dateien für andere Produktgruppen einzubinden, in denen Produkteigenschaften beschrieben werden, die nicht im Standard definiert sind.

Die Definition weiterer Eigenschaften und Zusammenhänge erfolgt im Anschluss und gliedert sich in die folgenden Bereiche:

Feature Templates

Hier besteht die Möglichkeit eigene Produkteigenschaften zu definieren, die nicht im Standard enthalten sind. Dies kann alternativ auch in einer separaten Datei PrivateTemplates erfolgen die ebenfalls durch Include eingebunden wird.

Standard-Features

Die Listen der FeatureTemplates finden Sie in dem Dokument ‚Übersicht der Feature Templates‘.

FeatureEnumTemplateEx

Für einige Features können die Wertebereiche nicht im Standard definiert werden, da diese Katalog-, bzw. Herstellerspezifisch sind. Die wichtigsten Anwendungsfälle wären hier z.B. Material- oder Farbangaben die herstellerspezifisch und deshalb auf Katalog-Ebene definiert werden müssen.

Beispiel XML-Code:

<FeatureTemplateEx templateID="Line">
    <LabeledValue value="FUSION" label="FUSION"/>
    <LabeledValue value="KICK" label="KICKER"/>
    <LabeledValue value="KIDSP" label="KIDSPORT"/>
    <LabeledValue value="OPTICS" label="OPTICS"/>
    <LabeledValue value="PERF" label="PERFORMANCE"/>
    <LabeledValue value="SNAKES" label="SNAKES"/>
</FeatureTemplateEx>
Ressourcen für FeatureEnumValues

In Version 1.5 wurde die Möglichkeit geschaffen, einzelnen LabeledValues Ressourcen mitgeben zu können. Die Zuordnung kann global im allgemeinen Definitions- bereich unter FeatureTemplateEx und FeatureTemplate oder für einzelne Artikel erfolgen (Schema-Erweiterung in template.xsd). Das heißt es kann für Ausprägungen einer Produkteigenschaft (z.B. Farbe = rot) eine oder mehrere Produktansichten der roten Artikelvariante verknüpft werden. Damit können einzelne Produktvarianten bzw. Eigenschaften visualisiert werden.

Beispiel XML-Code 1:

<FeatureTemplateEx templateID="Color">
    <LabeledValue value="A41" label="bright green (clear pupil)">
        <Resources>
            <Resource templateID="imgMedium"
              uri="https://mediathek.look4optics.com/zdyh7rna.view"/>
            <Resource templateID="imgSmall"
              uri="https://mediathek.look4optics.com/kfdxe4ra.view"/>
        </Resources>
    </LabeledValue>
    <LabeledValue value="A41X" label="dark green (clear pupil)"/>
</FeatureTemplateEx>

Beispiel XML-Code 2:

<FeatureTemplates>
    <FeatureValueTemplate step="0" formatString="N0" unit="mm"
      alwaysSigned="false" id="FrameTempleLength" label="Temple length"
      labelShort="" descr="" includeInOrder="false"/>
    <FeatureValueTemplate step="0" formatString="N0" unit="mm"
      alwaysSigned="false" id="FrameShapeLength" label="Shape length"
      labelShort="" descr="" includeInOrder="false"/>
    <FeatureValueTemplate step="0" formatString="N0" unit="mm"
      alwaysSigned="false" id="FrameShapeHeight" label="Frame shape height"
      labelShort="" descr="" includeInOrder="false"/>
    <FeatureValueTemplate step="0" formatString="N0" unit="mm"
      alwaysSigned="false" id="FrameShapeMaxRadius" label="Shape max radius"
      labelShort="" descr="" includeInOrder="false"/>
    <FeatureValueTemplate step="0" formatString="N0" unit=""
      alwaysSigned="false" id="LensBaseCurve" label="Base curve" labelShort=""
      descr="" includeInOrder="false"/>
    <FeatureValueTemplate step="0" formatString="N0" unit="mm"
      alwaysSigned="false" id="FrameDbl" label="Bridge width" labelShort=""
      descr="" includeInOrder="hidden"/>
    <FeatureEnumTemplate id="Lining" label="Lining" labelShort="Lining"
      descr="Lining" includeInOrder="false">
        <LabeledValue value="Chopper gray" label="Chopper gray">
            <Resources>
                <Resource templateID="imgMedium"
                  uri="https://mediathek.look4optics.com/h3yz4rca.view"/>
                <Resource templateID="imgSmall"
                  uri="https://mediathek.look4optics.com/dhwxmffa.view"/>
            </Resources>
        </LabeledValue>
    </FeatureEnumTemplate>
</FeatureTemplates>
DefaultValues

Der DefaultValue (Standardwert) gilt generell für den ganzen Artikel oder für bestimmte Lieferbereiche. Eine Kombination ist nicht möglich. DefaultValues kann es nur für bestellrelevante Features geben, nicht für optionale oder andere Featuretypen.

Beispiel XML-Code:

<Features>
    <FeatureValue templateID="EdgeFlattening" deliveryTypeID="STD" defaultValue="0.3"
    rangeMin="0.3" rangeMax="0.5" rangeStep="0.2" includeZero="false" />
</Features>
Relationship Templates

Hier erfolgt die Definition möglicher Arten von Produkt-Beziehungen (z. B. Ersatzteil, Zubehör, Optionsartikel, Alternativprodukt …). Diese können später im Bereich Artikel verwendet werden um Beziehungen zwischen Artikeln zu definieren. Zum Beispiel Artikel E und F sind Ersatzteile von Artikel A.

Standard:

id label
accessory Zubehör
alternativeProduct Alternativ-Produkt
consistsOf Bestandteil
fittingTemples Passende Bügel
optionalArticle Optionsartikel
productVariant Produktvariante
sparePart Ersatzteile
Resource Templates

Hier können verschiedene Arten von Resource-Dateien definiert werden:

id mimetype Max. size label
animation360 html/php   360 Grad Animation
deliveryInfo html   Lieferbereichsinformationen
formData36Points txt   Formdaten 36 Punkte
formData360Points txt   Formdaten 360 Punkte
formDataTracerEssilor mo1   Formdaten von Tracer Essilor
formDataTracerNIDEK nid   Formdaten von Tracer NIDEK
formDataTracerOMA oma   Formdaten von Tracer OMA
formDataTracerWECO wec   Formdaten von Tracer WECO
formDataXML xml   Formdata XML
handlingInfo html   Anpassinformationen
imgFrameColourPreview image/jpg   Vorschaubild Fassungsfarbe
imgFrameFront image/jpg   Bild Fassung von vorne
imgFrameHalfSideLeft image/jpg   Bild Fassung halb links
imgFrameHalfSideRight image/jpg   Bild Fassung halb rechts
imgFrameLeft image/jpg   Bild Fassung links
imgFrameRight image/jpg   Bild Fassung rechts
imgLarge image/jpg 1024X1024px Große Detailansicht (z.B. Pop-Up-Fenster)
imgMedium image/jpg 200/200px Kleine Ansicht (z.B. für Artikelbeschreibung)
imgSmall image/jpg 80/80px Miniaturansicht (z.B. für Produkt-Listen)
imgSmallUnselected image/jpg 80/80px Miniaturansicht inaktiv (z.B. eingegraute Fotos)
productInfo html   Allg. Produktbeschreibung
shapeID txt   Formdata ID
technInfo html   Technische Informationen

Wir empfehlen die Pfadangaben für die einzelnen Resource-Typen im Kopf als Entities zu definieren. Damit können die Pfadangaben einmal zentral definiert und jederzeit mit einem Eintrag angepasst werden.

Beispiel XML-Code:

<?xml version="1.0" encoding="UTF-16"?>
<!DOCTYPE ResourcePath [
<!ENTITY imgLPath "https://www.firmaXY/pics/">
<!ENTITY imgMPath "https://www.firmaXY/pics/">
<!ENTITY imgSPath "https://www.firmaXY/pics/">]>

Bei der Zuordnung unter Article muss dann folgendes eingetragen werden:

Beispiel XML-Code:

<Resources>
    <Resource templateID="imgLarge" uri="&imgLPath Produkt_ImgL.jpg"/>
    <Resource templateID="imgSmall" uri="&imgLPath Produkt_ImgS.jpg"/>
</Resources>
DeliveryType Templates

Hier erfolgt die globale Definition unterschiedlicher Lieferbereiche.

id label priority
Stock ab Lager 10
Standard Anfertigung Basis 20
Production Anfertigung Individuell 30

Für die Auswertung gelten folgende Regeln:

  1. Ein höhere Priorität schlägt eine niedrigere
  2. Bei Auswahl eines Features mit höherer Priorität (niedrigerer Wert) erhält das komplette Produkt diesen Liefertyp

Beispiel XML-Code:

<DeliveryTypeTemplates>
    <DeliveryType id="STANDARD" priority="1" label="STANDARD"/>
</DeliveryTypeTemplates>
ClientGroup Templates

Definition einzelner Kundengruppen, die unter Article den einzelnen Produkten zugeordnet werden.

Dies ermöglicht die Steuerung von Berechtigungen und Ansichten einzelner Produkte für eine Produktgruppe, bzw. die automatische Erzeugung von Einzel-Katalogen für verschiedene Produktgruppen aus einem zentral gepflegten Hauptkatalog.

Beispiel XML-Code:

<ClientGroups>
    <ClientGroup templateID="Client group 1"/>
    <ClientGroup templateID="Client group 2"/>
</ClientGroups>

Articles

Hier erfolgt die genaue Beschreibung der einzelnen Artikel. Ein Artikel kann folgende Attribute aufweisen:

Attribute Type / Use Description / Example
formerArticleID xs:NMTOKEN optional Zuvor für diesen Artikel verwendeter Artikelcode (z.B. in anderen ERP Systemen) (z.B. A2777)
configLines xs:positiveInteger optional Anzahl der Konfigurationszeilen (Kontaktlinsen, Gläser=2 > paarweise, Fassungen/Handelswaren=1) (z.B. 2)
descr xs:string optional Artikelbeschreibung (z.B. Biokompatibles, hoch vertraegliches sphaerisches Monatstauschsystem mit Randasphaere fuer taegliches, verlaengertes Tragen)
id xs:NMTOKEN required Artikel-ID (eindeutig) bei Fassungen Modell-ID (z.B. A2780)
maxQuantity xs:positiveInteger optional Maximale Bestellmenge (z.B. 10)
minQuantity xs:positiveInteger optional Minimale Bestellmenge (z.B. 1)
name xs:string required Artikelname (z.B. Contact Life Spheric Box)
price xs:decimal required Einkaufspreis (Listen-EK) (z.B. 18.50)
quantityStep xs:positiveInteger optional Schrittweite für Bestellmenge (z.B. 1)
validEndDate xs:dateTime optional Artikel gültig bis (z.B. 2012-01-01T00:00:00)
validStartDate xs:dateTime optional Artikel gültig ab (z.B. 2011-01-01T00:00:00)
electronicOrderingAllowed xs:boolean optional Default-Wert = true

Beispiel XML-Code:

<Article id="SLOD30" name="SofLens one day 30er Box"
  descr="One day contact lens" price="19.90" maxQuantity="1" configLines="2">

Die Artikeldefinition gliedert sich in folgende Bereiche:

  1. ClientGroups: Zuordnung zu Kundengruppen, z.B. für Anzeige von Private Labels
  2. MetaData: Definition von Suchbegriffen und Zusatzverknüpfungen zu Produkten, z.B. für Auswertung in Anwendungen
  3. Relationships: Definition von Produktbeziehungen, z.B. Ersatzteile, Zubehör
  4. Resources: Zuordnung von Resource-Dateien zum Produkt, z.B. Bilder, HTML oder PDF-Dokumente, Formdaten etc.
  5. Features: Definition von eindeutigen Produkteigenschaften
  6. DeliveryRanges: Definition der Lieferbereiche je Produkt, bei Fassungen mögliche Modellvarianten
Webservices

Über das Element Webservices soll im Catalog definiert werden können, welche Webservices zur Verfügung stehen.

Attribute Type / Use Description / Example
webServiceType xs:NMTOKEN required Webservicetyp, Standardwerte: PlaceOrder, OrderResponse (z.B. GetCatalog)
webServiceName xs:string required Webservice Name (z.B. getCatalogInfos)
webServiceURL xs:anyURI required Webservice URL
webServicePriority xs:integer optional Webservice Priorität (z.B. 2)
ClientGroups

Zuordnung einzelner Kundengruppen zum Artikel. Hiermit kann definiert werden, für welche Kundengruppen der Artikel verfügbar ist. Damit kann die Anzeige einzelner Produkte für einzelne Kunden gesteuert werden (z.B. im lieferanteneigenen Shop oder in einer Branchensoftware) oder als Basis für die Erzeugung spezieller Kataloge für einzelne Kundengruppen verwendet werden (z.B. individuelle Kataloge für Einkaufsgemeinschaften).

Beispiel XML-Code:

<ClientGroups>
    <ClientGroup templateID="Client group 1 "/>
</ClientGroups>
MetaData

Hier können dem Produkt weitere Eigenschaften zugeordnet werden. Dies ermöglicht etwa die Realisierung von Suchfunktionen in Anwendungen (z.B. Stichwortsuche in elektronischem Produktkatalog oder Shop). Diese Daten werden i.d.R. nicht angezeigt sondern dienen eher der Auswertung oder als zusätzliche Informationen. Eine weitere Anwendung wäre die Definition von „Steuerungskennzeichen“, z.B. zur Parameterübergabe an Software.

Beispiel XML-Code:

<MetaData>
    <Meta name="keywords" value="Special goggle; Filter category;... "/>
    <Meta name="Author" value="Henry Smith"/>
</MetaData>
Relationships

Hier können Beziehungen zwischen einzelnen Artikeln definiert werden. Neben den Standardbeziehungen können auch eigene Beziehungsarten (für individuelle Anwendungen) definiert werden.

Beispiel XML-Code:

<Relationships>
    <Relationship templateID="accessory" articleID="Special case"/>
</Relationships>
Resources

Hier erfolgt die Definition der zum Produkt verfügbaren Informationen in externen Dateien (Resources). Neben den Standardresourcentypen können auch eigene Resourcen-Arten (für ind. Anwendungen) definiert werden.

Beispiel XML-Code:

<Resources>
    <Resource templateID="productInfo"
      uri="http://www.rodenstock.de.de/de/1234-50_PI.html"/>
    <Resource templateID="imgMedium"
      uri="https://mediathek.look4optics.com/e2dr2zza.view"/>
    <Resource templateID="imgSmall"
      uri="https://mediathek.look4optics.com/z23znc3a.view"/>
    <Resource templateID="imgSmallUnselected"
      uri="https://mediathek.look4optics.com/xnwyzfpa.view"/>
</Resources>
Features

Hier erfolgt die Zuweisung von Produkteigenschaften einzelner Produkte. Es können Standardeigenschaften (zentral definiert in Templates.xml) aber auch herstellerspezifische Eigenschaften zugeordnet werden (z.B. für die Anwendung in herstellerspezifischen Anwendungen). Auch hier gilt die Unterscheidung in FeatureValueItems (Zuordnung eines numerischen Wertes) und FeatureEnumItems (Auswahl an Werten wie z.B. Farben, Marken, Eigenschaften etc.).

Beispiel XML-Code:

<Features>
    <FeatureEnum templateID="ArticleType" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="sunglasses"/>
    </FeatureEnum>
    <FeatureEnum templateID="Brand" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="Bollé"/>
    </FeatureEnum>
    <FeatureEnum templateID="Line" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="Fusion"/>
    </FeatureEnum>
    <FeatureEnum templateID="UserGroup" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="unisex"/>
    </FeatureEnum>
    <FeatureEnum templateID="FrameRimType" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="fullRim"/>
    </FeatureEnum>
    <FeatureEnum templateID="FrameMaterialType" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="metal"/>
    </FeatureEnum>
    <FeatureEnum templateID="FrameRx" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="true"/>
    </FeatureEnum>
    <FeatureEnum templateID="FrameBridgeType" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="padsSilicon"/>
    </FeatureEnum>
    <FeatureEnum templateID="FrameSpringHinge" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="true"/>
    </FeatureEnum>
    <FeatureEnum templateID="NickelFree" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="false"/>
    </FeatureEnum>
    <FeatureEnum templateID="CountryOfOrigin" deliveryTypeID="STANDARD"
      includeInOrder="false">
        <FeatureEnumItem value="FR"/>
    </FeatureEnum>
</Features>

DeliveryRanges

Hier erfolgt die Definition der Lieferbereiche. Lieferbereiche sind eingeschränkte Produkteigenschaften bzw. Kombinationen aus Eigenschaften. Dabei ist zu beachten, dass es mindestens ein Umschalt-Feature je Block gibt, auf den sich alle weiteren Angaben beziehen und dessen Werte-Bereich sich nicht mit Werten in anderen Lieferbereichen überlappt. Wertebereiche die allgemein für das gesamte Produkt gelten, werden unter Features (generelle Produkteigenschaften) definiert.

Anwendungsbereiche für Brillenfassungen

Die Ablage einzelner möglicher Modellvarianten erfolgt als einzelne Lieferbereiche. Lieferbereiche sind eingeschränkte Produkteigenschaften bzw. Kombinationen aus Eigenschaften.

Für Shop-Anwendungen ist es oft gewünscht, Produkte deren Basiseigenschaften identisch sind (Modelle) und sich in der Ausführung, also nur einigen Produkteigen- schaften unterscheiden, zu einem Artikel zusammen zu fassen.

Diese Zusammenfassung kann über die Definition von verschiedenen Lieferbereichen abgebildet werden. Ein Artikel entspricht dann einem Modell (einer Fassung), die in unterschiedlichen Ausführungen verfügbar ist (unterschiedlichen Größen, Farben, Bügelvarianten).

Wertebereiche die allgemein für das gesamte Produkt gelten, werden unter Features (generelle Produkteigenschaften) definiert.

Konventionen für die Ablage von Modellvarianten

Fassungen und Sonnenbrillen werden in der Regel in verschiedenen Modellvarianten angeboten. Das heißt ein Fassungsmodell ist in verschiedenen Ausführungen (z.B. Modell Birdland mit 2 Scheibengrößen, 2 Stegweiten und in 5 verschiedenen Farben) erhältlich.

Modellvarianten werden bei den Herstellern als einzelne Artikel geführt und besitzen beim Hersteller deshalb eine interne Artikelnummer und/oder einen EAN/UPC-Code je Modellvariante (SKU). Für die Bestellung genügt die Angabe einer dieser eindeutigen (SKU-)Artikel-IDs. Bei manchen Unternehmen ist unter Umständen auch die Bestellung durch Angabe von Modell und Ausführungsmerkmalen (z.B. Farbe, Größe) möglich.

Auch für Fassungen können Eigenschaften über das Attribut includeInOrder als bestellrelevant definiert werden. Diese (mind. EAN oder int. Artikelnummer) werden dann für die Bestellung übertragen.

Das heißt, der Hersteller kann für jeden Artikel festlegen, welche Produkteigenschaften für die eindeutige Definition einer Modellvariante mitgegeben werden müssen, wenn nicht mit einer SKU-ID bestellt werden soll. Dies gilt insbesondere für Hersteller die keine SKU-IDs (EAN/UPC-Codes) verwenden.

Regeln für die Definition von DeliveryTypes
  1. Eine höhere Priorität schlägt eine niedrigere
  2. Bei Auswahl eines Features mit höherer Priorität (niedrigerer Wert) erhält das komplette Produkt diesen Liefertyp

Beispiel XML-Code:

<DeliveryRange>
    <Features>
        <FeatureEnum templateID="InternalArticleID"
          deliveryTypeID="STANDARD" includeInOrder="false">
            <FeatureEnumItem value="10017"/>
        </FeatureEnum>
        <FeatureEnum templateID="LensMaterialType" deliveryTypeID="STANDARD"
         includeInOrder="false">
            <FeatureEnumItem value="polycarbonate"/>
        </FeatureEnum>
        <FeatureEnum templateID="LensColour" deliveryTypeID="STANDARD"
          includeInOrder="false">
            <FeatureEnumItem value="Polarized Sandstone"/>
        </FeatureEnum>
        <FeatureEnum templateID="Availability" deliveryTypeID="STANDARD"
          includeInOrder="false">
            <FeatureEnumItem value="immediately"/>
        </FeatureEnum>
        <FeatureEnum templateID="FrameColour" deliveryTypeID="STANDARD"
          includeInOrder="false">
            <FeatureEnumItem value="Matte Bronze"/>
        </FeatureEnum>
        <FeatureEnum templateID="EanCode" deliveryTypeID="STANDARD"
          includeInOrder="true">
            <FeatureEnumItem value="0054917232412"/>
        </FeatureEnum>
        <FeatureValue templateID="FrameTempleLength"
          deliveryTypeID="STANDARD" value="125" includeInOrder="false"/>
        <FeatureValue templateID="FrameDbl" deliveryTypeID="STANDARD"
          value="18" includeInOrder="false"/>
        <FeatureValue templateID="FrameShapeLength"
          deliveryTypeID="STANDARD" value="64" includeInOrder="false"/>
        <FeatureValue templateID="FrameShapeHeight" deliveryTypeID="STANDARD"
          value="36" includeInOrder="false"/>
        <FeatureValue templateID="FrameMaxRadius" deliveryTypeID="STANDARD"
          value="66" includeInOrder="false"/>
        <FeatureValue templateID="DeliveryTime" deliveryTypeID="STANDARD"
          value="1" includeInOrder="false"/>
        <FeatureValue templateID="SalesPrice" deliveryTypeID="STANDARD"
          value="129" includeInOrder="false"/>
    </Features>
    <Resources>
    <Resource templateID="imgMedium"
      uri="https://mediathek.look4optics.com/e2dr2zza.view"/>
    <Resource templateID="imgSmall"
      uri="https://mediathek.look4optics.com/z23znc3a.view"/>
    <Resource templateID="imgSmallUnselected"
      uri="https://mediathek.look4optics.com/xnwyzfpa.view"/>
    </Resources>
</DeliveryRange>

Preisberechnung

Die Abbildung von Produktpreisen erfolgt über einen Basispreis je Produkt und Preis- differenzen (Auf-/Abschläge für einzelne Produkteigenschaften ‚Features‘).

Bei der Preisfindung für eine Produktkonfiguration gelten folgende Regeln:
  1. Festlegung des Liefertyps für die Gesamtkonfiguration. Bei Auswahl eines Features mit höherer Priorität (niedrigerer Wert) erhält das komplette Produkt diesen Liefertyp.
  2. Addition aller ausgewählten Features