2017.06

Komponenten des MyCoRe-Kerns

Die vorliegende Seite behandelt die Komponenten des MyCoRe-Kerns sowie weitere im Zusammenhang mit MyCoRe nutzbare Bibliotheken.

MyCoRe-Komponenten

MyCoRe ist kein monolithisches System. Vielmehr besteht der Kern aus einzelnen Modulen, welche einzeln inklusive ihrer Abhängigkeiten genutzt werden können. Die nachfolgende alphabetische Auflistung gibt eine Übersicht über die verfügbaren Teile. Je nach Erfordernissen und Entwicklungen kann es vorkommen, dass einzelne Komponenten im Laufe der MyCoRe-Entwicklung im Laufe der Zeit bei Releases neu hinzukommen oder entfallen. Diese Dokumentation spiegelt den oben genannten Release-Stand wieder. Neben dieser Dokumentation sind die einzelnen Komponenten auch kurz auf den entsprechenden Git-Hub in ihren Kernpunkten beschrieben (z. B. https://github.com/MyCoRe-Org/mycore/tree/2017.06.0.x/mycore-sass ).

Liste der Komponenten

Komponentname Beschreibung   abhängig von
acl-editor2 2. Version des Editors für die benutzten Access Control List optional base
base Basis für alle anderen Komponenten required  
buildtools Werkzeuge für die Integration von MyCoRe-Komponenten über das ANT-Build-Tool optional base
classbrowser Anzeigekomponente für Klassifikationen optional base
classeditor Online-Editor für Klassifikationen required base
solr
coma Prototypische Entwicklung eines Content-Manager zu entwickeln, mit dem man einen Überblick über den gesamten Bestand an Daten (evtl. auch Metadaten) hat. optional base
complete spezielle Komponente zum Zusammenbau eines mycore-complete.jar, welches alle Komponenten enthält (siehe unten) deprecate alle
ifs alte Komponente des MyCoRe-Internal-File-Systems, Version 1 deprecate base
iiif eine Komponente zur Einbindung von IIIF in MyCoRe base
impex generiert Import- und Export-Pakete auf Grundlage einer SOLR-Query optional base
indexing Erstellung von Google-Sitemaps für angegebene Datenmodelltypen optional base
iview2 der ImageViewer, Version 2 optional base
media Werkzeuge zum Ermitteln von Medieninformationen für einzustellendes Material optional base
ifs
meta Dummy-Komponente, die die Verweise auf alle Komponenten zum Bau von mycore-complete.jar enthält   base
mets Komponente zur Bereitstellung von METS-Daten für die gespeicherten Derivate optional base
migration Komponente mit Werkzeugen zur Migration auf das MyCoRe-Release 2016 optional base
mods Werkzeuge zum Verarbeiten von MODS-Daten optional base
oai Implementierung eines OAI-Data-Providers für die MyCoRe-Webanwendung optional base
ifs
solr
pi Codesammlung zur Arbeit mit PURL - derzeit wird nur DOI unterstützt optional base
restapi Implementierung einer REST-API optional base
solr
sass Unterstützung des Compile-Vorganges von sass-Files zu css-Files optional base
solr Klassen zur Indizierung und Suche mit Apache SOLR required base
sword Implementierung einer Sword-Schnittstelle, Version 2 optional base
urn Implementierung einer URN-Vergabe für Objekte der Anwendung deprecate base
user2 Implementierung des Nutzer-Systems, Version 2 required base
classeditor
viewer Enthält den MyCoRe-Viewer für Bilder und PDFs. Das Modul kann sowohl standalone wie auch in einer MyCoRe-Anwendung integriert genutzt werden. optional base
wcms2 Implementierung eines Autorensystems für die Webanwendung, Version 2 optional base
webcli Implementierung der Möglichkeit, Kommandos der CLI über die Webanwendung auszuführen optional base
webtools Enthält Web-Tools wie Session Listing oder die Prozessliste optional base
wfc Eine Workflow-Implementierung optional base
xeditor Ein Gestaltungsystem für die Erstellung von Editorformularen, Version 2 optional base

Liste weiterer Maven-Module

Die nun aufgelisteten zusätzlichen Maven-Module sind im Subversion-System im Baum maven zu finden.

Komponente Beschreibung Version
datamodel-plugin Eine Erweiterung zur Erstellung eigener Datenmodelldefinitionen in eigenen Maven-Modulen 0.6-SNAPSHOT
mets-printer Basis-Projekt mit dem man die PDF-Funktion des MyCoRe-Viewers benutzen kann 1.0-SNAPSHOT

Integration einzelner MyCoRe-Komponenten

MyCoRe-Komponenten können einzeln je nach Bedarf in die eigene Anwendung integriert werden. Dazu sind lediglich die entsprechenden Angaben in der pom.xml -Datei zu machen. Wichtig ist dabei, auf Abhängigkeiten zu achten (siehe oben). Alle Komponenten sollten auch den selben Versionsstand haben, um Kompatibilitätsprobleme zu vermeiden. Die Integration der in den Komponenten enthaltenen Teile erfolgt entsprechend den Servlet-3.1-Regeln .

<project>
  ...
  <properties>
    <mycore.version>2017.06.0.x-SNAPSHOT</mycore.version>
  </properties>
  ...
  <dependencies>
    <dependency>
      <groupId>org.mycore</groupId>
      <artififactId>mycore-base</artifactId>
      <version>${mycore.version}</version>
    </dependency>
    <dependency>
      <groupId>org.mycore</groupId>
      <artififactId>mycore-user2</artifactId>
      <version>${mycore.version}</version>
    </dependency>
    <dependency>
      <groupId>org.mycore</groupId>
      <artififactId>mycore-classeditor</artifactId>
      <version>${mycore.version}</version>
    </dependency>
    <dependency>
      <groupId>org.mycore</groupId>
      <artififactId>mycore-solr</artifactId>
      <version>${mycore.version}</version>
     </dependency>
  </dependencies>
...
</project>

 Jens Kupferschmidt, Thomas Scheffler - 2017-06-27