Metadaten-Eingabeformulare (ModsForms)¶
Einleitung¶
Dieses Kapitel behandelt die Infrastruktur und Konfiguration der Metadaten-Eingabeformulare, wie sie, zum Beispiel im Publikationsserver-Kontext zum Einsatz kommen.
Die Modsforms Komponente des VLS ermöglicht es dem Portalnutzer, einen neuen MetadataKnoten anzulegen.
Zum Verständnis der Metadaten-Eingabeformulare werden, im folgenden Kapitel, einige Begriffe vorrausgesetzt:
- Modsforms
Komponente des VLS zur Web-basierten Metadateneingabe im MODS Format durch Nutzer.
- Formtype
Ein Formulartyp - zum Beispiel zur Erfassung von Dissertationen. Das Verhalten eines Formtype in Bezug auf Authentifizierung und Workflow wird durch die Formconfig spezifiziert. Die Zuweisung eines Formtype zu einem oder mehreren metadataType erfolgt über die types.
- Formdef <forms/formdef/full>
Template zur Definition der durch einen Formtype genutzten TopLevelFormEntries.
- FormEntry
Basisklasse aller Bausteine eines Modsforms Formulars. FormEntries können der konkreten Dateneingabe dienen: (z.B. TextFormEntry, DateFormEntry, DropdownFormEntry, RadioFormEntry, MultiLevelSelectionFormEntry) oder als WrapperObjekte fungieren (z.B. ModsFormEntry, MultiValueFormEntry, FormSection).
Auch die FormSpec, die das eigentliche Verhalten und Handling sämtlicher Eingaben implementiert, ist ein FormEntry. Sie bildet die Wurzel des durch die verschachtelten FormEntries aufgespannten Baumes, der das Formular definiert (siehe auch Formdef).
Jedes FormEntry besitzt einen, in seinem Teilbaum eindeutigen, Identifier.
- TopLevelFormEntry
Baustein eines Formtype zur Eingabe eines bibliographischen Sachverhalts wie, beispielsweise Autoren, Ausgabedatum, Verlag, aber auch anderer relevanter Daten wie Klassifikationseinordnung oder Dateiuploads.
Das Verhalten eines einzelnen TopLevelFormEntry wird durch die Formconfig gesteuert. Damit ist es auch möglich, Einträge gänzlich zu deaktivieren.
- Formconfig
Teil der dconfig, durch den das Verhalten der Modsforms gesteuert wird.
- Formauth
Rechtesteuerung der verschiedenen Anlege-, Anhäng-, und Editieroperationen. Gesteuert mittels der Formconfig .
- FormWikidata
Steuerung der im Formular angezeigten Erklärung- und Hilfetexte.
Diese Unterkomponenten der Modsforms greifen ineinander und werden, in diesem Kapitel <forms/index/full>, detailliert behandelt.
Die folgende Grafik zeigt die Interaktionen der Modsforms
-Komponente
mit anderen Teilen des VLS.
Definition eines Formulars¶
Ein Metadaten-Eingabeformular bildet, technisch gesehen, eine
Baumstruktur. Die Wurzel dieses Baumes ist immer ein Formspec
Objekt,
dass zu Laufzeit instanziiert und mit weiteren
FormEntries <forms/formentry/full> gemäß der Formdef für den
jeweiligen Formtype angereichert wird.
Die Grunddefinition des Formular-Templates für einen Formtype erfolgt
derzeit direkt im Python-code. Dabei werden, durch die Formdef, die in
einem Formulartyp verwendeten TopLevelFormEntry Bausteine dem FormSpec
Objekt zugewiesen.
Sämtliche Formtype sind in der FormRegistry
registriert, in der
weitere Verhaltenssteuerungen vorgenommen werden.
FormRegistry¶
In der FormRegistry
sind alle verwendbaren Formtypes
registriert,
die zur Erzeugung (CREATE
) und Manipulation (UPDATE
) von
MetadataKnoten Einträgen definiert sind.
Formtypes¶
Folgende Formtypes
sind in der formRegistry
registriert und durch
die nachfolgenden Formdef Templates definiert.
Der Titel eines jeden Formdef
-Blocks bezeichnet den Formtype. Dieser
wird benötigt, um das Formular in der Formconfig referenzieren zu
können. Dort können dann die einzelnen TopLevelFormEntry Bausteine des
Templates, die hier inkludiert werden, konfiguriert werden.
Für weitere Informationen siehe TopLevelFormEntries <forms/formentry/TopLevelFormEntry>.
doctoralThesis¶
def doctoralThesis(self, form):
form.label = "mainlabel_doctoralThesis"
form.vlsAppend(AuthorFormEntry)
form.vlsAppend(TitleFormEntry)
form.vlsAppend(TranslatedTitleFormEntry)
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(UrlNetpublicationFormEntry)
form.vlsAppend(DoiFormEntry)
form.vlsAppend(UrnFormEntry)
form.vlsAppend(ExtentFormEntry)
form.vlsAppend(PersonFormEntry, ident='thesisAdvisor',
label=u"thesisAdvisor", marcrelators="ths")
form.vlsAppend(PersonFormEntry, ident='thesisExaminer',
label=u"thesisExaminer", marcrelators="cns")
form.vlsAppend(LanguageFormEntry)
form.vlsAppend(ExtensionDateFormEntry, ident='submission')
form.vlsAppend(ExtensionDateFormEntry, ident='defense')
form.vlsAppend(LocationFormEntry)
form.vlsAppend(DateIssuedFormEntry)
form.vlsAppend(PublisherFormEntry)
form.vlsAppend(MultiAbstractFormEntry)
form.vlsAppend(MultiKeywordsFormEntry)
self._addClassifications(form)
form.vlsAppend(UploadFileFormEntry)
form.vlsAppend(MultiUploadFileFormEntry)
form.vlsAppend(UrlRepositoryFormEntry)
form.vlsAppend(EmailFormEntry)
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(DeferredPublicationDate)
form.vlsAppend(LegalFormEntry)
thesis¶
def thesis(self, form):
form.label = u"mainlabel_thesis"
form.vlsAppend(AuthorFormEntry)
form.vlsAppend(TitleFormEntry)
form.vlsAppend(TranslatedTitleFormEntry)
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(DoiFormEntry)
form.vlsAppend(ExtentFormEntry)
form.vlsAppend(PersonFormEntry, ident='thesisAdvisor',
label=u"thesisAdvisor", marcrelators="ths")
form.vlsAppend(PersonFormEntry, ident='thesisExaminer',
label=u"thesisExaminer", marcrelators="cns")
form.vlsAppend(LanguageFormEntry)
form.vlsAppend(ExtensionDateFormEntry, ident='submission')
form.vlsAppend(ExtensionDateFormEntry, ident='defense')
form.vlsAppend(DateIssuedFormEntry)
form.vlsAppend(LocationFormEntry)
form.vlsAppend(MultiAbstractFormEntry)
form.vlsAppend(MultiKeywordsFormEntry)
self._addClassifications(form)
form.vlsAppend(UploadFileFormEntry)
form.vlsAppend(MultiUploadFileFormEntry)
form.vlsAppend(EmailFormEntry)
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(DeferredPublicationDate)
form.vlsAppend(LegalFormEntry)
studyThesis¶
def studyThesis(self, form):
form.label = u"mainlabel_studyThesis"
form.vlsAppend(AuthorFormEntry)
form.vlsAppend(TitleFormEntry)
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(DoiFormEntry)
form.vlsAppend(ExtentFormEntry)
form.vlsAppend(LanguageFormEntry)
form.vlsAppend(ExtensionDateFormEntry, ident='submission')
form.vlsAppend(ExtensionDateFormEntry, ident='defense')
form.vlsAppend(DateIssuedFormEntry)
form.vlsAppend(MultiAbstractFormEntry)
form.vlsAppend(MultiKeywordsFormEntry)
self._addClassifications(form)
form.vlsAppend(UploadFileFormEntry)
form.vlsAppend(MultiUploadFileFormEntry)
form.vlsAppend(EmailFormEntry)
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(DeferredPublicationDate)
form.vlsAppend(LegalFormEntry)
preprint¶
def preprint(self, form):
form.label = u"mainlabel_preprint"
form.vlsAppend(AuthorFormEntry)
form.vlsAppend(PersonFormEntry)
form.vlsAppend(ExtentFormEntry)
form.vlsAppend(LanguageFormEntry)
form.vlsAppend(TitleFormEntry)
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(DoiFormEntry)
form.vlsAppend(DateModifiedFormEntry)
form.vlsAppend(MultiAbstractFormEntry)
form.vlsAppend(MultiKeywordsFormEntry)
self._addClassifications(form)
form.vlsAppend(UploadFileFormEntry)
form.vlsAppend(MultiUploadFileFormEntry)
form.vlsAppend(EmailFormEntry)
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(DeferredPublicationDate)
form.vlsAppend(LegalFormEntry)
erArticle¶
Ermöglicht es, einen in einer Zeitschrift erschienen Artikel abzubilden, bei dem die bibliographischen Informationen der Zeitschrift keinen separaten MetadataKnoten erzeugen, sondern im MODS des MetadataType des article selbst gehalten werden.
def erArticle(self, form):
form.label = u"mainlabel_erArticle"
form.vlsAppend(SwitchRepublishedFormEntry)
# Angaben zum Aufsatz
form.vlsAppend(AuthorFormEntry)
form.vlsAppend(PersonFormEntry)
form.vlsAppend(LanguageFormEntry)
form.vlsAppend(TitleFormEntry)
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(UrlNetpublicationFormEntry)
form.vlsAppend(DoiFormEntry)
form.vlsAppend(UrnFormEntry)
# Angaben zur Zeitschrift
more = VlsFormSection(parent=form, ident='journal_data', label=u"periodical_info")
more.vlsAppend(TitleFormEntry, ident="parentTitle", modsContext='host',
label=u"periodical_title", subtitle=False)
more.vlsAppend(LocationFormEntry, modsContext='host')
more.vlsAppend(PublisherFormEntry, modsContext='host')
more.vlsAppend(DateIssuedFormEntry, modsContext='host')
more.vlsAppend(VolumeIssueFormEntry, modsContext='host')
more.vlsAppend(ExtentFormEntry, modsContext='host')
more.vlsAppend(IssnFormEntry, modsContext='host')
# Weitere Angaben
more = VlsFormSection(parent=form, ident='moredata', label=u"additional_data")
more.vlsAppend(MultiAbstractFormEntry)
form.vlsAppend(MultiKeywordsFormEntry)
self._addClassifications(more)
more.vlsAppend(UploadFileFormEntry)
more.vlsAppend(MultiUploadFileFormEntry)
form.vlsAppend(UrlRepositoryFormEntry)
more.vlsAppend(EmailFormEntry)
more.vlsAppend(RestrictionInfo)
more.vlsAppend(LicenseInfo)
more.vlsAppend(DeferredPublicationDate)
more.vlsAppend(LegalFormEntry)
erBookPart¶
def erBookPart(self, form):
form.label = u"mainlabel_erBookPart"
form.vlsAppend(SwitchRepublishedFormEntry)
# Angaben zum Aufsatz
form.vlsAppend(AuthorFormEntry)
form.vlsAppend(PersonFormEntry)
form.vlsAppend(LanguageFormEntry)
form.vlsAppend(TitleFormEntry)
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(UrlNetpublicationFormEntry)
form.vlsAppend(DoiFormEntry)
form.vlsAppend(UrnFormEntry)
# Angaben zum Sammelwerk
more = VlsFormSection(parent=form, ident='collected_edition_data', label=u"collected_edition_data")
more.vlsAppend(TitleFormEntry, ident="parentTitle", modsContext='host',
label=u"collected_edition_title", subtitle=False)
more.vlsAppend(TitleFormEntry, ident="seriesTitle", modsContext='series',
subtitle=False, label="series_title")
more.vlsAppend(DetailNumberFormEntry, ident="seriesVolume", label=u"volume",
modsContext='series')
more.vlsAppend(PersonFormEntry, marcrelators='edt', modsContext='host',
label=u"collected_edition_editor")
# PublisherFormEntry(parent=more, modsContext='host')
more.vlsAppend(LocationFormEntry, modsContext='host')
more.vlsAppend(DateIssuedFormEntry, modsContext='host')
more.vlsAppend(VolumeFormEntry, modsContext='host')
more.vlsAppend(ExtentFormEntry, modsContext='host')
more.vlsAppend(IsbnFormEntry, modsContext='host')
# Weitere Angaben
more = VlsFormSection(parent=form, ident='moredata', label=u"additional_data")
more.vlsAppend(MultiAbstractFormEntry)
form.vlsAppend(MultiKeywordsFormEntry)
self._addClassifications(more)
more.vlsAppend(UploadFileFormEntry)
more.vlsAppend(MultiUploadFileFormEntry)
form.vlsAppend(UrlRepositoryFormEntry)
more.vlsAppend(EmailFormEntry)
more.vlsAppend(RestrictionInfo)
more.vlsAppend(LicenseInfo)
more.vlsAppend(DeferredPublicationDate)
more.vlsAppend(LegalFormEntry)
book¶
def book(self, form):
form.label = u"mainlabel_book"
form.vlsAppend(SwitchRepublishedFormEntry)
form.vlsAppend(AuthorFormEntry)
form.vlsAppend(PersonFormEntry)
form.vlsAppend(TitleFormEntry)
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(UrlNetpublicationFormEntry)
form.vlsAppend(DoiFormEntry)
form.vlsAppend(UrnFormEntry)
form.vlsAppend(ExtentFormEntry)
form.vlsAppend(LocationFormEntry)
form.vlsAppend(DateIssuedFormEntry)
form.vlsAppend(PublisherFormEntry)
form.vlsAppend(IsbnFormEntry)
form.vlsAppend(TitleFormEntry, ident="seriesTitle", modsContext='series',
subtitle=False, label="series_title")
form.vlsAppend(DetailNumberFormEntry, ident="seriesVolume", label=u"volume",
modsContext='series')
form.vlsAppend(LanguageFormEntry)
form.vlsAppend(MultiAbstractFormEntry)
form.vlsAppend(MultiKeywordsFormEntry)
self._addClassifications(form)
form.vlsAppend(UploadFileFormEntry)
form.vlsAppend(MultiUploadFileFormEntry)
form.vlsAppend(UrlRepositoryFormEntry)
form.vlsAppend(EmailFormEntry)
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(DeferredPublicationDate)
form.vlsAppend(LegalFormEntry)
book2¶
def hebis_book(self, form):
form.label = u"mainlabel_book"
form.vlsAppend(PublisherFormEntry)
form.vlsAppend(LocationFormEntry)
form.vlsAppend(TitleFormEntry)
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(PersonFormEntry)
form.vlsAppend(CorporateFormEntry)
form.vlsAppend(DateIssuedFormEntry)
form.vlsAppend(LanguageFormEntry)
form.vlsAppend(EditionFormEntry)
form.vlsAppend(ExtentFormEntry)
form.vlsAppend(UrlNetpublicationFormEntry)
form.vlsAppend(IsbnFormEntry)
form.vlsAppend(UrnFormEntry)
form.vlsAppend(DoiFormEntry)
more = VlsFormSection(parent=form, ident='seriesdata', label=u"series_data")
more.vlsAppend(TitleFormEntry, ident="seriesTitle", modsContext='series',
subtitle=False, label="series_title")
more.vlsAppend(DetailNumberFormEntry, ident="seriesVolume", label=u"number",
modsContext='series')
form = VlsFormSection(parent=form, ident='moredata', label=u"additional_data")
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(UploadFileFormEntry)
form.vlsAppend(UrlRepositoryFormEntry)
self._addClassifications(form) # Sachgruppen der DNB (http://www.dnb.de)
form.vlsAppend(MultiNoteFormEntry)
book_minimal¶
def book_minimal(self, form):
form.label = u"mainlabel_book"
form.vlsAppend(PublisherFormEntry)
form.vlsAppend(TitleFormEntry, label="book_title")
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(DateIssuedFormEntry)
form.vlsAppend(UrlNetpublicationFormEntry)
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(DeferredPublicationDate)
form.vlsAppend(UrnFormEntry)
form.vlsAppend(MultiNoteFormEntry)
form.vlsAppend(UploadFileFormEntry)
form.vlsAppend(MultiUploadFileFormEntry)
form.vlsAppend(UrlRepositoryFormEntry)
periodical_minimal¶
def periodical_minimal(self, form):
form.label = u"mainlabel_periodical"
form.vlsAppend(PublisherFormEntry)
form.vlsAppend(TitleFormEntry, subtitle=False, label="periodical_title")
form.vlsAppend(UrlNetpublicationFormEntry)
form.vlsAppend(DateIssuedFormEntry)
form.vlsAppend(PeriodicalFrequencyFormEntry)
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(MultiNoteFormEntry)
borndigital¶
def bornDigital(self, form):
form.label = u"mainlabel_borndigital"
form.vlsAppend(AuthorFormEntry)
form.vlsAppend(PersonFormEntry)
form.vlsAppend(ExtentFormEntry)
form.vlsAppend(LanguageFormEntry)
form.vlsAppend(TitleFormEntry)
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(DoiFormEntry)
form.vlsAppend(DateIssuedFormEntry)
form.vlsAppend(MultiAbstractFormEntry)
form.vlsAppend(MultiKeywordsFormEntry)
self._addClassifications(form)
form.vlsAppend(UploadFileFormEntry)
form.vlsAppend(MultiUploadFileFormEntry)
form.vlsAppend(EmailFormEntry)
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(DeferredPublicationDate)
form.vlsAppend(LegalFormEntry)
dtm¶
def minimal(self, form):
form.label = u"mainlabel_minimal"
self._addClassifications(form)
t = form.vlsAppend(TitleFormEntry)['wrapper']['title']
t.showEmptyLabel = False
form.vlsAppend(ProjectNumberFormEntry)
form.vlsAppend(UrlRepositoryFormEntry, showEmptyLabel=False)
form.vlsAppend(UploadFileFormEntry, ident="pdffile",
label=u"upload_pdf", filetype='pdf')
form.vlsAppend(UploadFileFormEntry, ident="zipfile",
label=u"upload_zip", filetype='zip')
form.vlsAppend(RestrictionInfo)
form.vlsAppend(LicenseInfo)
form.vlsAppend(DeferredPublicationDate)
form.vlsAppend(LegalFormEntry)
createSubstructure / structureMeta¶
def createSubstructure(self, form):
form.vlsAppend(TitleFormEntry)
form.vlsAppend(UploadFileFormEntry)
form.vlsAppend(UploadFileFormEntry, ident="pdffile",
label=u"upload_pdf", filetype='pdf')
form.vlsAppend(UploadFileFormEntry, ident="zipfile",
label=u"upload_zip", filetype='zip')
form.vlsAppend(UploadFileFormEntry, ident="epubfile",
label=u"upload_epub", filetype='epub')
form.vlsAppend(DeleteStructureFormEntry)
FormEntries (Grundlegende Basisinfrastruktur)¶
Sämtliche in einem Mods-Formular implementierten Verhaltensweisen und Eingabemöglichkeiten sind letztendlich auf die FormEntry Basisklasse (FormEntryBase) zurückzuführen.
Jedes FormEntry und BasicFormEntry besitzt einen, in seinem Teilbaum des
Formulars, eindeutigen Identifier. Die Kette dieser Identifier im Baum,
der FormPath
, ermöglicht es, jedes Eingabefeld eindeutig zu
referenzieren und dient als Schlüssel zur Datenübermittlung.
FormEntries bieten Einsprungpunkte an, die es dem API-Nutzer erlauben, anwendungsspezifische Handling- und Initialisierungsroutinen zu definieren. Im Kontext der hier behandelten Modsforms, dienen diese hauptsächlich der Manipulation der MODS XML-Struktur.
Es existieren zwei grundlegende Klassen von FormEntries
:
BasicFormEntry¶
BasicFormEntries bieten direkte Eingabemöglichkeiten an. Sie können keine weiteren Kind-FormEntries aufnehmen.
TextFormEntry
/TextBoxFormEntry
: Stellt ein Text-Eingabefeld zur VerfügungFileUploadFormEntry
/TrackedFileUploadFormEntry
: Ermöglicht DateiuploadsExplanationFormEntry
: Bietet erklärende Texte darDateFormEntry
: Offeriert verschieden Möglichkeiten zur DatumseingabeDropdownFormEntry
/RadioFormEntry
/CheckboxFormEntry
: Erlaubt es dem Nutzer, aus mehreren Optionen zu wählenMultiLevelSelectionFormEntry
: Implementiert einen ausklappbaren, verschachtelten Baum zur Auswahl eines oder mehrerer EinträgeActionFormEntry
: Gibt dem Nutzer die Möglichkeit, definierte Aktionen, wie z.B. ‚Datensatz Löschen‘, durchzuführen
ContainerFormEntry¶
ContainerFormEntriers
bilden eine Hülle um anderer FormEntries und
BasicFormEntries.
FormSpec
: Root-Knoten des Formularbaumes mit übergreifenden Handling-RoutinenTopLevelFormEntry
: Container zur Aufnahme vonWrapperFormEntries
undBasicFormEntries
FormSection
: Ermöglicht die visuelle Abgrenzung mehrererTopLevelFormEntries
im FomularWrapperFormEntry
: GruppiertFormEntries
innerhalb einesTopLevelFormEntry
MultiValueFormEntry
/MultiValueInstanceFormEntry
: Ermöglicht Wiederholbarkeit der im Container gewrapptenFormEntries
Modsformsspezifische TopLevelFormEntries¶
ModsTopLevelFormEntries
sind vorgefertigte Implementierungen von
TopLevelFormEntry
. Diese definieren jeweils einen Teilbaum eines
Formulars, der üblicherweise das Einlesen und Schreiben eines
bibliographischen Sachverhalts ermöglicht. Im einfachsten Fall ist dazu
lediglich ein TextFormEntry
erforderlich, während zur Erfassung
komplexerer Informationen erst eine Kombination aus mehreren
BasicFormEntries <forms/formentry/BasicFormEntry> den
Anforderungen gerecht wird.
In der Abbildung sind einige ModsTopLevelFormEntry
dargestellt. Das
AuthorFormEntry, besitzt die TextFormEntry
Eingabefelder Lastname,
Firstname, und Matrikel-Nr.
Bei solchen Daten, die eine Mehrfacheingabe erlauben, z.B.
AuthorFormEntry
, wird der Inhalt des ModsTopLevelFormEntries
in ein
MultiValueFormEntry
gewrappt. Das MultiValueFormEntry
sorgt dafür,
dass im Frontend ein Add-Button angezeigt wird, sodass mehr als ein
z.B. Autor erfasst werden kann.
Formularkonfiguration über dconfig¶
Die Konfiguration eines Formtype in Bezug auf Authentifizierung, Workflow und TopLevelFormEntry <forms/formentry/TopLevelFormEntry> Verhalten erfolgt über den Formconfig Bereich der dconfig.
Die dconfig
erlaubt es, Verhaltenssteuerungen einer Domain oder eines
Domaintypes zu vorzunehmen. Innerhalb der Formconfig können Optionen für
alle registrierten Formtypes
auf einmal gesetzt werden (DEFAULTS
),
sowie Konfigurations-Abweichungen für bestimmte Formtypes
vorgenommen
werden.
Die Formconfig hat den dconfigSection
-Namen: modsforms und besitzt
folgende Struktur:
[modsforms]
[[workflowOptions]]
[[[DEFAULTS]]] # oder Formtype-Name
[[[[create]]]]
[[[[update]]]]
[[[[append]]]]
[[templateOptions]]
[[[DEFAULTS]]] # Formtype oder Formtype-Name
[[[[DEFAULTS]]]] # oder TopLevelFormEntry ident
Hinweis
Um einen Wert innerhalb der dconfig
zu referenzieren, wird folgende
Nomenklatur verwendet:
dconfig.section.subsection.subsubsection.configAttribute
Wenn eine Einstellung für eine bestimmte domain
gemeint ist:
dconfig[domainName].section.subsection.subsubsection.configAttribute
Zur Auszeichnung von Einstellungen, die für einen domainType
(zum
Beispiel pubserv) gelten sollen, wird notiert:
dconfig[<domainType>].section.subsection.subsubsection.configAttribute