2021.06 2022.06

MyCoRe-Konventionen

Benennung der Properties

MyCoRe-Properties beginnen immer mit MCR, darauf folgt ein Punkt und dann der Komponentenname (z.B. ACL, IFS ...). Alle weiteren Bezeichner sind mit Punkt voneinander getrennt und beginnen mit einem Grossbuchstaben.

Beispiel:
MCR.IFS.FileMetadataStore.Class

Ausgenommen von diesem Namenskonzept sind Properties von konfigurierbaren Klasseninstanzen und solche von Drittanbietern (z.B. Log4j, Hibernate). Diese behalten jeweils ihre Konventionen bei.

Komponente Property-Kürzel Kommentar
allgemeine Konfiguration MCR.ConfigurationMCR.XMLParser
ACL MCR.Access
Classification Browser MCR.ClassificationBrowser
Classification Editor MCR.ClassificationEditor
Commandline Tool MCR.CLI
Editor MCR.EditorFramework / MCR.Editor
Event Handler / Searcher MCR.EventHandler / MCR.Searcher
File Upload MCR.FileUpload
Goggle Indexer MCR.GoogleSitemap
IFS MCR.IFS
Index Browser MCR.IndexBrowser
Layout Service MCR.Request
Mail System MCR.Mail
Metadaten-Modell MCR.Metadata
OAI MCR.OAI
REST API MCR.RestAPI
SOLR MCR.Solr
Stores und Manager MCR.Persistence
Textextrakter MCR.TextFilterPlugin
URI Resolver MCR.URIResolver
User Administration MCR.Useradmin
User Kernsystem MCR.Users
WebService MCR.WebService
Zip Tool MCR.Zip

Benennung von I18N Übersetzungen

Alle Übersetzungsvariablen erhalten ein einheitliches Namensschema. Alle Übersetzungen von Texten des Kerns und häufig benutzte Texte erhalten den Anfang common., Variablen der Module den Modulnamen und Teile der Anwendung den Anwendungsnamen.

Beispiel:

common.cancel = Abbrechen
mods.object.edit = Editieren Objekt
myapp.title.label = Titel

Stylesheets

Stylesheets in MyCoRe und DocPortal sind einheitlich zu benennen. Sie sollten (wenn möglich) komplett klein geschrieben werden. Die Verwendung eines Präfix wie mcr, MyCoRe oder mycore entfällt, auch werden keine Unterstriche genutzt.

Beispiele:

results.xsl
user.xsl
editor.xsl

Stylesheets für das Layout der Webseiten ...
[ToDo: Thomas] Namenskonvention bzgl. RootTag

Verwendung des Maven-Datamodel-Plugin

Datenmodelle nach dem MyCoRe-Datenmodel-Schema 2 müssen im Maven-Modul unter src/main/datamodel/def stehen und den Namen {datenmodel}.xml haben. Dabei wird {datenmodel} dann in die Schemadatei {datenmodel}.xsd umgewandelt und so referenziert.

SOLR-Konfigurationen

Die SOLR-Konfiguration wurde mit Release 2018.06 modularisiert. Somit enthält jedes Modul nur noch die SOLR-Konfigurationsdefinitionen, die es benötigt. Um Namensdopplungen zu vermeiden, haben alle Typ- und Felddefinitionen einen Modulprefix in der Form {prefix}.{name}, Beispiel mods.identifier. Lediglich die MyCoRe-Basisfelder in mycore-base entsprechen nicht diese Konvention, da sie immer vorhanden sind.

Auch die RequestHandler sollten mit einem Präfix versehen sein. Ansonsten folgt die Benennung der RequestHandler entsprechend der Solr-Namenskonventionen in Kamelhöckerschreibweise: prefixMyRequestHandlerName, Beispiel uboExport.