Eigene Fields definieren oder bestehende Fields verwenden?
am 26.11.2011 - 01:42 Uhr in
Nachdem ich im IRC unterschiedliche Auskünfte auf die Frage erhalten habe, probiere ich es noch einmal hier im Forum.
Meine Frage ist nicht so sehr, wie man ein eigenes Field via module definiert (das ist prima dokumentiert), sondern wann es Sinn macht und welche Alternativen ggf. zu nutzen wären.
Ziel ist ein Modul, welches Felder für den Umgang mit ONIX Daten bereitstellt. Die Felder werden im konkreten Fall einem commerce product entity angeheftet, so dass in einem späteren schritt eine ONIX .xml Datei generiert und an die verschiedenen Buchsortimente verteilt werden kann.
ONIX ist eine XML Spezifikation die für den Austausch von Information im Buchhandel genutzt wird.
Ein kurzer Überblick ist in folgendem PDF zu finden: http://akedo.org/download/onix_reference.pdf
Die darin verlinkten code-lists gibt es hier: http://akedo.org/onix-lists/
Für einige Elemente werden custom fields wohl zwingend notwendig sein, andere könnte ich theoretisch auch mit Drupal Hausmitteln zusammenklicken.
Je ein einfache Beispiel:
1. ISBN13
- text input
- custom validator der Aufbau und Prüfziffer kontrolliert
- speichern von 2 Werten: "9783000000" und "978-3-000-00000-0"
2. SenderIDType
- select list (vordefinierte key|value Paare)
In dem Schema haben die Elemente alle "short tags" und "long tags". Idealerweise würde ich diese auch mit einbinden, also zusätzlich zum raw value '14', auch z.B. "14" und "14" als strings vorhalten.
Meine Fragen dazu:
- Ist es der richtige Weg für jedes Element ein custom field anzulegen?
- Sehe ich es richtig, dass man pro Modul je ein custom field via hook_field_schema() definieren kann? (100 ONIX elemente = 100 module ?!? wohl eher nicht, oder?)
- Was wäre der empfohlene Weg um ein solches Schema sinnvoll in Code zu gießen, so dass a) ich bei zukünftigen Seiten leicht darauf zurückgreifen kann und b) auch andere sich die Arbeit mit der Übernahme der ONIX Struktur sparen können.
Vielen Dank für hilfreiches Feedback!
- Anmelden oder Registrieren um Kommentare zu schreiben

Neue Kommentare
vor 4 Tagen 10 Stunden
vor 4 Tagen 17 Stunden
vor 4 Tagen 17 Stunden
vor 4 Tagen 18 Stunden
vor 4 Tagen 23 Stunden
vor 5 Tagen 13 Stunden
vor 5 Tagen 22 Stunden
vor 1 Woche 1 Stunde
vor 1 Woche 20 Stunden
vor 1 Woche 3 Tagen