Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

English

Pagetitle
Using the Publish Tool SADE
Using the Publish Tool SADE

General Components

eXist-db

eXist is an XML database, which allows to store XML documents, to retrieve and further process these by using XML technologies such as XQuery and XSLT. In case of larger amounts of data, the search can be accelerated by applying an index. eXist 2.2 provides a newly designed range index, which allows a faster search in individual XML fields or attributes. Especially the faceted search benefits from this development. eXist not onlyprovides the data base and the support of XML technologies, but also some relevant useful applications, which can be integrated appropriately. These are usually available via an own public repository. The here provided sample data set includes the works of William Shakespeare and
exemplifies its use with TEI documents.

Template Engine

The template engine of SADE is a fork of an earlier version of the eXist one. Changes concerning the template engine of newer eXist versions have been partially back ported into the SADE template engine. It makes it possible to write SADE modules that work independently of CSS and website design and with various representations. There is e.g. a bootstrap template for the faceted search. Templates with other CSS frameworks are also possible. The module’s functionality
remains the same in all representations.

SADE

As a software within the eXist-db, SADE uses this template engine and XAR modules. XAR modules are packages that combine XML resources as XQuery scripts, XSLT style sheets and XML allowing to install them in eXist as bundled apps or as extensions of functionality. The format used in eXist XAR is a modified version of the eXpath package one. These packages can be distributed as an individual upload or via package repositories.

Using the eXist template engine ensures the independence of such XAR modules from the layout of the represented website. Modules, templates and paths to the XML data can be defined in a configuration file in order to create own portals with the necessary components and individual designs. That way, data, data processing and visualization are also kept separately within the database.

Components like the view of TEI transformations, the search or the navigation - usually needed in digital editions - belong to the core part of the project and can further be developed. Own developments, such as a timeline or a map-based visualization, can be offered to the community as XAR modules.

At present, there are two projects within TextGrid that use earlier versions of SADE in a modified form: “Blumenbach-online”, the “digital edition of the notebooks of Theodor Fontane” and the “Bibliothek der Neologie”.

Digilib

Digilib is a server-based software for image editing. It allows, among other things, to retrieve images in different scales and formats or even individual image sections from the server. Digilib offers a service that carries out operations on the pictures, provides a REST-API as well as a web-based client. The latter one allows user interaction with images offered by the service and image processing functions.

Digilib has been available in TextGrid since the second funding phase. Under one of the Mellon Foundation funded project to integrate IIIF in TextGrid, the integration had significantly been improved in 2013. This also led to an optimization of speed. In future, the integrated Digilib service can be used instead of a SADE-integrated version for images hosted on TextGrid. One advantagesof this solution is that digital reproductions can be directly stored in TextGrid in the format in which they leave the scanning process - the TIFF format. Furthermore, it is no longer necessary to provide the images as JPEGs as it used to be when publishing with the SADE-integrated version.

Images do not need to be copied to the SADE installation, when using the TextGridLab for publication. When documents that contain images are output, objects are retrieved as JPEG in a suitable resolution (100px for thumbnails, 1500px for the view of scanned pages) based on the TextGrid URI of Digilib. Thus, in the future, speed optimisation can be carried out centrally via the TextGrid service. Individual SADE servers are relieved of the image conversion. SADE simplifies the use of the DARIAH-eXist-Hosting because of its independence of the integrated Digilib in so far as only one eXist database has to be available for a working installation.

TextGrid specific components

The components listed below function as modules within the eXist database as well as they do without the main component SADE. The extensions of SADE will be described in a subsequent section. All source codes are freely available at http://github.com/ubbo/.

tg-client

Most components of TextGrid can be controlled via REST/SOAP interface or web interface. The XQuery script provides all these functions within the database. Thus, authentication and other services are accessible via all other modules or if necessary also via the web interface. It currently offers connecting features to:

• the SPARQL-interface of TG-search
• the metadata objects provided by TG-crud
• the data objects provided by TG-crud
• the authentication service TG-auth (including a cached session ID to avoid unnecessary load on TG-auth)

Another feature allows to remove the URI prefix "textgrid" from the object references. In this way, the core services of TextGrid are provided within the database and can be integrated into other modules.

tg-connect

This script is used for document transmissions. It is responsible for retrieving and storing documents and uses the functions provided by the tg-client. It collects the information transmitted by the Publish tool SADE (TextGridLab Plugin) from the TextGrid Laboratory and processes them. Hence, the documents are transmitted from the TextGrid Repository to the SADE instance. Finally, the script is retrieved in order to set up the menu-navigation.

tg-menu

The hierarchical structure, which is represented in the TextGrid Laboratory within the Navigator, is set up with the module TG-menu. This structure will then be incorporated as a menu into the digital presentation interface. Here, it is still paid attention to keep the data separated from the layout. Based on this structure, an XML document is mainly generated and stored in the collection associated with the project. Finally, another processing step is necessary to be compliant with the respective template - the layout of the digital edition: An XSLT, which has to be stored in the project collection under the name of the selected template, is automatically retrieved. This allows using flexible layouts and designs.

digilib-Proxy

In the original version of the TextGrid SADE-publish-component published images were stored in the local directory of the Digilib SADE-installation. Therefore, authentication within TextGrid was only necessary when images were published. In the future, the TextGrid Digilib-service can be used for image representation. So whenever images are going to be displayed, an authentication will be necessary. This applies in the case where a rights management for the image query is needed, e.g. for image-documents especially released for the edition in question. Therefore a Digilib proxy was implemented in XQuery, a script that is able to use a valid TextGrid-account and that coordinates these queries. Requests from the portal to the Digilib are submitted to the proxy. This proxy uses a deposited TextGrid-user-account to log in on the TextGrid Repository, obtains a SessionID and the authorization to see the requested image. The authorization is passed on to the end user, while the corresponding session ID remains hidden.

Excursus: Functional Accounts
So-called functional accounts are already used by the two mentioned projects; their data must be
specified in the configuration of SADE. These are TextGrid-accounts, which assume only an
observer status within the projects in question. Currently each TextGrid-user-account is able to
create TextGrid-projects and to publish data. As for all TextGrid-accounts a real user is stored:
Liability and responsibility are clarified. But all users, who have expanded access rights within the
portal, could potentially know a user account stored in the project-portal of SADE. An even more
limited account type is therefore necessary. These are user accounts that explicitly only have read-
access to projects they are associated with.

SADE Module

Three new modules for SADE were programmed: one for the navigation, a viewer and a faceted search. All three modules use the template engine.

Navigation

The navigation module was developed in order to make the contents of the SADE-portal available within its own navigation menu. This module allows defining the menu structure of the portal in an XML file. Individual links are provided with a name and a reference; relative links remain withinthe portal. External links are also possible. A user manual has been edited for this module. The portal-navigation can be described in a simple XML structure; e.g. a XML configuration and the resulting layout of the menu (in the bootstrap template):

Code Block
languagexml
<navigation>
<item label="Text" link="index.html?id=text.md"/>
<submenu label="Links">
<item label="textgrid.de" link="http://textgrid.de "/>
</submenu>
</navigation>

menu created with the navigation moduleImage Modified

Currently, no submenus can be nested at this point.

Viewer

The programmed viewer module checks the file extension and distinguishes between HTML-, Markdown- and XML-documents. Instructions are provided for these document types, each of those leading to an HTML output. XML documents are examined in order to find out if they are created with the Text-Image-Link Editor integrated in TextGrid or if a different structure is given.

For the latter an appropriate XSLT style sheet according to the namespace is selected. This allows to display Markdown, TEI and XML documents with the same viewer. The viewer supports a page by page output of TEI documents, ignoring elements previously included in the document. Empty elements, which are potentially and semantically overlapping, are neglected. The Markdown representation was integrated in order to fast and easily create individual texts for the portal, which currently are not searchable. Support and tutorial documentations of the TextGrid-SADE – reference-installation are written in Markdown. TEI documents will be integrated into the website by using style sheets (provided by the TEI-C, http://www.teic.org/Tools/Stylesheets/). For layout purposes, individual style sheets instead of the built-in ones can be specified in the multiviewer section within the project-configuration-file (config.xml). One style sheet can be specified for each namespace of the document’s root node.

Code Block
languagexml
<module key="multiviewer">
<param key="xslt">
<!-- Nutze das eigene Stylesheet aus dem xslt Ordner im
Projektverzeichis (local=true) für den TEI namespace -->
<stylesheet
namespace="http://www.tei-c.org/ns/1.0"
local="true"
location="xslt/my-tei-stylesheet.xsl" /><!-- Eigenes stylesheet für den XML dokumente mit eigenem Namespace,
Übergabe eines Parameters an das XSLT -->
<stylesheet
namespace="http://my.project.org/specific-namespace/1.1"
local="true"
location="xslt/my-project.xslt.xsl">
<parameters>
<param name="imgParams" value="?dh=200"/>
</parameters>
</stylesheet>
</param>
</module>


SemToNotes-Integration

Software components from the project "SemToNotes" (https://github.com/HKIKoeln/SemToNotes and http://hkikoeln.github.io/SemToNotes/) have been integrated in the SADE environment for the representation of synoptic views. SemToNotes is an annotation and visualization tool, which is suitable for the description and presentation of topological structures in image documents and their content related links.

Image Modified

Faceted Search

A SADE module has been written for the search within published XML data, which performs the search and creates facets according to its configuration. These can be specified with XPath expressions within the configuration. On the web page, facets can be excluded from the search results by clicking on. The result can be limited to one facet by clicking on it.
An XSLT is used in order to display a single hit. It extracts metadata from the found document and represents it within the result field. This allows to output own metadata fields from the TEI document. It can be configured in the config.xml of the project, within the module with the key="faceted-search". Excerpt from config.xml

Code Block
languagexml
<module key="faceted-search">
[...]
<!-- Benutze ein eigenes XSLT für die Trefferanzeige -->
<param key="result-xslt">/db/sade-projects/my-project/xslt/search-
hit.xslt</param>
<param key="facets">
<!-- Vorgegebene Facetten, können geändert oder gelöscht werden -->
<facet key="persons" title="Person">
<xpath>tei:author</xpath>
</facet>
<facet key="keywords" title="Schlagwort">
<xpath>tei:term</xpath>
</facet>
<facet key="dates" title="Zeit">
<xpath>tei:date/@when</xpath>
</facet>
<facet key="places" title="Publikationsort">
<xpath>tei:pubPlace</xpath>
</facet>
<!-- Eigene Facette -->
<facet key="personstext" title="Person im Text">
<xpath>tei:persName</xpath>
<xpath>tei:rs</xpath>
</facet>
</param>
</module>
German

Pagetitle
Publikationswerkzeug SADE verwenden
Publikationswerkzeug SADE verwenden

Allgemeine Komponenten

eXist-db

eXist ist eine XML-Datenbank, das heißt es können XML-Dokumente abgelegt und mit XML- Technologien wie XQuery und XSLT abgefragt und weiterverarbeitet werden. Bei größeren Datenmengen lässt sich die Suche durch das Anlegen eines Index beschleunigen (http://exist- db.org/exist/apps/doc/indexing.xml). Das aktuelle eXist 2.2 bietet einen neugestalteten Range- Index (http://exist-db.org/exist/apps/wiki/blogs/eXist/NewRangeIndex). Mit diesem lassen sich schnellere Suchen in einzelnen XML-Feldern oder Attributen realisieren. Von dieser Entwicklung profitiert insbesondere die facettierte Suche. eXist bringt nicht nur die Datenbank und die Unterstützung der XML-Technologien mit, es wurden auch bereits einige relevante Programme geschrieben, deren Integration sinnvoll ist. Diese sind zumeist über ein eigenes öffentliches Repositorium verfügbar. Ein dort zur Verfügung gestellter Beispieldatensatz umfasst die Werke William Shakespeares und zeigt schon exemplarisch die Nutzung mit TEI-Dokumenten.

Template Engine

Die Template Engine von SADE ist ein Fork einer frühen Version der eXist Template Engine. Teilweise wurden Änderungen der Template Engine aus neueren eXist Versionen in die SADE Template Engine zurückportiert. Die Template Engine eröffnet die Möglichkeit, SADE Module zu schreiben die unabhängig von CSS und Webseitendesign mit verschiedenen Darstellungen funktionieren. So gibt es z.B. für die facetierte Suche ein Bootstrap Template, es wären aber auch Templates mit anderen CSS Frameworks möglich, die Funktionalität des Moduls bleibt in allen Darstellungen gleich.

SADE

SADE als Software innerhalb der eXist-db nutzt diese Template Engine und XAR-Module. XAR Module sind Pakete, in denen XML-Ressourcen wie XQuery-Scripte, XSLT-Stylesheets und XML zusammengefasst werden, und sich so gebündelt als Apps oder zur Funktionalitätserweiterung in eXist installieren lassen. Das in eXist genutzte XAR-Format ist eine modifizierte Version des eXpath package-Formates (http://expath.org/spec/pkg). Die Distribution dieser Pakete kann als Einzel- Upload oder über Paket-Repositorien erfolgen. Die Nutzung der eXist Template Engine stellt die Unabhängigkeit solcher XAR-Module vom Layout der dargestellten Webseite sicher. In einer Konfigurationsdatei lassen sich Module, Templates und Pfade zu XML-Daten festlegen und so eigene Portale mit den jeweils benötigten Komponenten und einem individuellem Design zusammenstellen. Damit bleiben auch innerhalb der Datenbank Daten, Datenverarbeitung und Visualisierung voneinander getrennt. Komponenten, die in digitalen Editionen in der Regel benötigt werden, wie eine Ansicht von TEI- Transformationen, eine Suche und die Navigation, gehören zum Kern des Projektes und können so gemeinsam weiterentwickelt werden. Der Austausch eigener Entwicklungen, wie beispielsweiseeine Zeitleiste oder eine Landkarten-basierte Visualisierung, können als XAR-Module der Community zur Verfügung gestellt werden. Im TextGrid-Kontext gibt es derzeit zwei Projekte, die frühere Versionen von SADE in modifizierter Form einsetzen: Blumenbach-Online, die digitale Edition der Notizbücher Theodor Fontanes und die “Bibliothek der Neologie”.

Digilib

Digilib (Sourceforge) ist eine serverseitige Software zur Manipulation von Bildern. Mit dieser ist es unter anderem möglich, Bilder in unterschiedlichen Skalierungen und Formaten oder auch nur einzelne Bildausschnitte vom Server abzurufen. Es gibt bei digilib einen Service, der die Operationen auf den Bildern vornimmt und eine REST-API bereitstellt sowie einen webbasierten Client, der die Nutzerinteraktion mit den vom Service angebotenen Bildern und Bildbearbeitungsfunktionen erlaubt.
Digilib ist schon seit der zweiten Förderphase in TextGrid verfügbar, die Integration wurde 2013, im Rahmen eines von der Mellon-Foundation geförderten Projektes zur Integration von IIIF in TextGrid, stark verbessert, wodurch auch eine Optimierung der Geschwindigkeit erreicht werden konnte. Für im TextGrid gehöstete Bilder kann in Zukunft der TextGrid-seitige digilib-Service anstelle einer SADE-integrierten Version zu verwendet werden. Diese Lösung hat einige Vorteile: So können mit ihr in TextGrid Digitalisate direkt in dem Format, in dem sie den Scan-Prozess verlassen – dem TIFF-Format – abgelegt werden. Eine Vorhaltung der Bilder im JPEG-Format, wie es bei der SADE-integrierten Version für die Publikation unerlässlich wäre, ist nun nicht mehr nötig. Die Bilder selbst brauchen bei der Publikation aus dem TextGridLab nicht zur SADE-Installation kopiert zu werden. Bei der Ausgabe von Dokumenten, die Bilder enthalten, werden die Objekte anhand der TextGrid-URI von digilib als JPEG in einer zweckmäßigen Auflösung (100px für Thumbnails, 1500px für die Ansicht von Seitenscans) abgerufen. So können in Zukunft Geschwindigkeitsoptimierungen zentral über den TextGrid-Service vorgenommen werden, die einzelnen SADE-Server werden von der Bildumrechnung entlastet. Die Unabhängigkeit von SADE von dem integrierten digilib vereinfacht die Nutzung des DARIAH-eXist-Hosting, da dadurch für eine funktionierende Installation nur eine eXist-Datenbank vorhanden sein muss.

TextGrid-spezifische Komponenten

Die nachfolgend aufgeführten Komponenten funktionieren als Module in der eXist-Datenbank, funktionieren aber auch ohne die Hauptkomponente SADE. Weiterhin folgen noch die Erweiterungen von SADE selbst in einem anschließenden Abschnitt. Alle Quellcodes sind unter http://github.com/ubbo/ frei Verfügbar.

tg-client

Die meisten Komponenten von TextGrid lassen sich per REST/SOAP-Schnittstelle oder Webinterface ansteuern. Das XQuery-Skript stellt all diese Funktionen in der Datenbank zur Verfügung. So kann man aus allen anderen Modulen oder ggf. auch von der Weboberfläche aus auf Authentifizierungsdienste und mehr zugreifen. Es bietet derzeit Anknüpfungen an:

• die SPARQL-Schnittstelle von tg-search
• die von tg-crud bereitgestellten Metadaten-Objekte
• die von tg-crud bereitgestellten Daten-Objekte
• den Authentifizierungsdienst tg-auth (inkl. einer zwischengespeicherten Session-ID, um unnötige Last bei tg-auth zu vermeiden) und es bietet zudem eine Funktion, um die URI-Prefixes "textgrid:" aus den Objektreferenzen zu
entfernen.

Damit stehen die Kernservices von TextGrid innerhalb der Datenbank zur Verfügung
und können in andere Module eingebunden werden.

tg-connect

Dieses Skript wird bei der Dokumentenübertragung genutzt. Es ist für das holen und ablegen der Dokumente verantwortlich und bedient sich intensiv der von tg-client bereitgestellten Funktionen. Es greift dabei die aus dem TextGrid Laboratory vom Publish-Tool SADE (TextGridLab Plugin) übertragenen Informationen ab und verarbeitet diese, überträgt also die Dokumente aus dem TextGrid Repository in diese SADE-Instanz. Abschließend wird das Skript zum Aufbau der Menüführung abgerufen.

tg-menu

Mit dem Modul tg-menu wird die aus dem TextGrid Laboratory innerhalb des Navigators zu sehende hierarchische Struktur aufgebaut. Diese wird dann als Menü in die digitale Präsentationsoberfläche eingebaut. Dabei wird weiterhin auf die Trennung von Daten und Layout geachtet. Primär wird ein XML-Dokument erzeugt, welches diese Struktur nachempfindet und in der dem Projekt zugehörigen Kollektion abgelegt. Um schließlich konform mit dem jeweiligen Template, dem Layout der digitalen Edition, zu sein, ist ein weiterer Verarbeitungsschritt nötig, ein XSLT, welches in der Projekt-Kollektion abgelegt sein muss und den Namen des gewählten Templates tragen sollte, wird automatisch aufgerufen. Dadurch können flexible Layouts und Designs eingesetzt werden.

digilib-Proxy

Bei der ursprünglichen Version der TextGrid Sade-Publish-Komponente wurden die Bilder beim Publizieren im lokalen digilib-Verzeichnis der SADE-Installation abgelegt. Daher brauchte die Authentifizierung bei TextGrid nur beim Publizieren der Bilder vorgenommen werden. In Zukunft kann der TextGrid digilib-Service für die Bilddarstellung genutzt werden, was einer Authentifizierung bei jeder Anzeige von Bildern bedarf.Dies gilt für den Fall, dass ein Rechtemanagement für die Bildabfrage nötig ist, beispielsweise bei nur für die betreffende Edition freigegebenen Bilddokumenten. Daher wurde in XQuery ein digilib Proxy implementiert, ein Skript, welches einen gültigen TextGrid-Account nutzen kann und diese Abfragen koordiniert. Anfragen an digilib aus dem Portal werden an den Proxy gestellt, dieser meldet einen hinterlegten TextGridNutzeraccount am TextGrid Repository an, bezieht eine SessionID und und damit die Berechtigung, das abzurufende Bild sehen zu dürfen. Diese Berechtigung wird an den Endnutzer weitergegeben, die zugehörige Session-ID bleibt aber versteckt.

Exkurs: Funktionsaccounts
Schon jetzt werden von den beiden genannten Projekten sogenannte Funktionsaccounts benutzt, deren Daten in der Konfiguration von SADE angegeben werden müssen. Dabei handelt es sich um TextGrid-Accounts, denen in den betreffenden Projekten lediglich Beobachter-Status zukommt. Derzeit kann jeder TextGrid Nutzeraccount TextGrid-Projekte erstellen und Daten publizieren. Da für alle TextGrid Accounts ein realer Nutzer hinterlegt ist, ist hier die Haftung, Verantwortlichkeit etc. geklärt. Ein im SADE-Projektportal hinterlegter Nutzeraccount könnte aber potentiell allen Nutzern, die erweiterte Zugangsrechte innerhalb des Portals haben, bekannt werden. Hier bedarf es eines noch stärker beschränkten Accounttypes. Das sind Nutzeraccounts, die explizit nur Leserechte an Projekten, denen sie zugeordnet sind, haben können.

SADE Module

Es wurden drei neue Module für SADE programmiert: eines für die Navigation, ein Viewer und eine
facettierte Suche. Alle drei Module nutzen die Template Engine.

Navigation

Um die Inhalte des SADE-Portals in einer eigenen Menüführung auffindbar zu machen, wurde das Navigationsmodul entwickelt. Mit diesem Modul ist es möglich, in einer XML-Datei die Menüstruktur des Portals festzulegen. Einzelne Links werden mit einem Namen und einem Verweis versehen, relative Links bleiben im Portal, externe Links sind ebenfalls möglich. Für dieses Modul wurde eine Nutzerdokumentation erstellt.1 Die Portal-Navigation kann in einer einfachen XML-Struktur beschrieben werden. Beispiel - XML Konfiguration und die resultierende Menüansicht (im Bootstrap Template):

Code Block
languagexml
<navigation>
<item label="Text" link="index.html?id=text.md"/>
<submenu label="Links">
<item label="textgrid.de" link="http://textgrid.de "/>
</submenu>
</navigation>

 

 Mit dem Navigationsmodul erstelltes MenüImage Modified

Derzeit können an dieser Stelle keine Untermenüs verschachtelt werden.

Viewer

Es wurde ein Viewer-Modul programmiert, welches die Datei-Endung prüft und zwischen HTML-, Markdown- und XML-Dokumenten unterscheidet. Für diese drei Dokumenttypen sind Anweisungen hinterlegt, die jeweils zu einer HTML-Ausgabe führen. Im Falle eines XML- Dokuments wird noch geprüft, ob es sich um ein mit dem in TextGrid integrierten Text-Bild-Link- Editor erstelltes Dokument handelt, oder eine andere Struktur vorliegt, bei der dann entsprechend des Namespaces ein passendes XSLT-Stylesheet ausgewählt wird. So ist es mit demselben Viewer beispielsweise möglich, Markdown, TEI und Blumenbach-Objekt-XML darzustellen. Der Viewer unterstützt auch die seitenweise Ausgabe von TEI-Dokumenten, wobei keine im Dokument zuvor stehenden Elemente berücksichtigt werden und somit auch potentiell semantisch übergreifende leere Elemente vernachlässigt werden. Die Markdown-Darstellung wurde integriert, um einzelne Portaltexte, die allerdings derzeit nicht durchsuchbar sind, schnell und einfach zu erstellen. Die Hilfe- und Tutorialdokumentationen der TextGrid-SADE-Referenzinstallation sind in Markdown verfasst. TEI-Dokumente werden mit Hilfe von Stylesheets (bereitgestellt von der TEI-C, http://www.tei-c.org/Tools/Stylesheets/) in die Webseite eingebunden. In der Projekt-Konfigurationsdatei können eigene Stylesheets zur Darstellung anstelle der integrierten Stylesheets angegeben werden. Dafür ist in der config.xml die Sektion Multiviewer zuständig. Hier kann pro namespace des Dokument root Knotens ein Stylesheet angegeben werden.

Auszug aus config.xml

Code Block
languagexml
<module key="multiviewer">
<param key="xslt">
<!-- Nutze das eigene Stylesheet aus dem xslt Ordner im
Projektverzeichis (local=true) für den TEI namespace -->
<stylesheet
namespace="http://www.tei-c.org/ns/1.0"
local="true"
location="xslt/my-tei-stylesheet.xsl" />
<!-- Eigenes stylesheet für den XML dokumente mit eigenem Namespace,
Übergabe eines Parameters an das XSLT -->
<stylesheet
namespace="http://my.project.org/specific-namespace/1.1"
local="true"
location="xslt/my-project.xslt.xsl">
<parameters>
<param name="imgParams" value="?dh=200"/>
</parameters>
</stylesheet>
</param>
</module>
SemToNotes-Integration

Für die Darstellung synoptischer Ansichten (mit Hilfe des Text-Bild-Link-Editors erarbeitete Verknüpfungen) wurden Softwarekomponenten aus dem Projekt "SemToNotes" (https://github.com/HKIKoeln/SemToNotes und http://hkikoeln.github.io/SemToNotes/) in die SADE-Umgebung integriert. SemToNotes ist ein Annotations- und Visualisierungstool, welches für die Beschreibung und Darstellung topologischer Strukturen in Bilddokumenten und deren Verknüpfungen mit inhaltlichen Informationen geeignet ist. Publiziert ein Nutzer eine mit dem Text-Bild-Link-Editor erstellte Datei sowie die zugehörigen TEI und Bilddokumente, können die TBLE Objekte mit Hilfe des SemToNotes Viewers dargestellt werden. Die integrierte Suche unterstützt diese Objektverknüpfungen und bietet bei Volltexttreffern auch TBLE-Objekte welche mit der Textstelle verknüpft sind an.

Image Modified

Illustration 2: Ergebnis der mit Hilfe des Text-Bild-Link-Editors erstellten Daten

Faceted Search

Für die Suche in publizierten XML-Daten wurde ein SADE-Modul geschrieben, welches die Suche durchführt und entsprechend seiner Konfiguration Facetten bildet. In der Konfiguration lassen sich für die einzelnen zu bildenden Facetten XPath-Ausdrücke angeben. Facetten lassen sich in der Webseite per Klick auf aus dem Such-Ergebnis ausschließen. Mit Klick auf die Facette lässt sich das Ergebnis auf diese Facette einschränken.Für die Darstellung eines einzelnen Ergebnistreffers wird ein XSLT verwendet, das Metadaten aus dem gefundenen Dokument extreiert und beim Suchtreffer darstellt. Das bietet eine flexible Möglichkeit, eigene Metadatenfelder aus dem TEI Dokument bei der Suchtrefferanzeige auszugeben. Konfiguriert wird dieses in der config.xml des Projektes, im module mit key="faceted- search".

Auszug aus config.xml

Code Block
languagexml
<module key="faceted-search">
[...]
<!-- Benutze ein eigenes XSLT für die Trefferanzeige -->
<param key="result-xslt">/db/sade-projects/my-project/xslt/search-
hit.xslt</param>
<param key="facets">
<!-- Vorgegebene Facetten, können geändert oder gelöscht werden -->
<facet key="persons" title="Person">
<xpath>tei:author</xpath>
</facet>
<facet key="keywords" title="Schlagwort">
<xpath>tei:term</xpath>
</facet>
<facet key="dates" title="Zeit">
<xpath>tei:date/@when</xpath>
</facet>
<facet key="places" title="Publikationsort">
<xpath>tei:pubPlace</xpath>
</facet>
<!-- Eigene Facette -->
<facet key="personstext" title="Person im Text">
<xpath>tei:persName</xpath>
<xpath>tei:rs</xpath>
</facet>
</param>
</module>