Goobi viewer (English)
Documentation homeGoobi viewer Digests
  • Goobi viewer manual
  • Documentation overview
  • What is the Goobi viewer?
  • Configuration
    • 1. Goobi viewer Core
      • 1.1 Local settings
      • 1.2 Translations
      • 1.3 Folder configuration
      • 1.4 URL configuration
      • 1.5 User accounts
        • 1.5.1 Authentication Provider
        • 1.5.2 Sending e-mails
        • 1.5.3 Further settings
      • 1.6 Performance
      • 1.7 Access conditions and images
      • 1.8 Captcha
      • 1.9 PDF download
        • 1.9.1 Variants
        • 1.9.2 Download Links
        • 1.9.3 Individual PDF title page
      • 1.10 ePub download
      • 1.11 Image options
        • 1.11.1 Extended scrolling in the image view
        • 1.11.2 Navigation between structure types
        • 1.11.3 Image view configuration
        • 1.11.4 Maintaining zoom and rotation while browsing in the image view
        • 1.11.5 External images
        • 1.11.6 Restriction of image scaling
        • 1.11.7 Thumbnail settings
        • 1.11.8 Image Footer
      • 1.12 Individual page types
      • 1.13 Opening certain document types in alternative page views
      • 1.14 Full text hints
      • 1.15. Language settings
      • 1.16 Theme
        • 1.16.1 External themes
      • 1.17 Search
        • 1.17.1 Sorting
        • 1.17.2 Faceting
        • 1.17.3 Advanced search
        • 1.17.4 Timeline
        • 1.17.5 Calendar
        • 1.17.6 Save search
        • 1.17.7 Expand query for search sub-results
        • 1.17.8 Aggregated search hit display
        • 1.17.9 Versioning of records
        • 1.17.10 Exporting search results
        • 1.17.11 Search hit metadata
      • 1.18 Digital collections
        • 1.18.1 Collection hierarchy
        • 1.18.2 Sorting of records
        • 1.18.3 Sorting of collections
        • 1.18.4 Blacklist
        • 1.18.5 Collection size
        • 1.18.6 Further settings
        • 1.18.7 Structure element whitelist
      • 1.19 Metadata
        • 1.19.1 Main metadata
        • 1.19.2 Sidebar metadata
        • 1.19.3 Search hit metadata
        • 1.19.4 Archive metadata
        • 1.19.5 Image metadata
        • 1.19.6 Display of authority data
        • 1.19.7 Calendar structure elements
        • 1.19.8 Browsing
        • 1.19.9 Multilingual metadata
        • 1.19.10 Licenses
      • 1.20 Tables of contents
        • 1.20.1 Main table of contents
        • 1.20.2 Sidebar table of contents
        • 1.20.3 Download tables of content as PDF file
      • 1.21 Tag clouds
      • 1.22 Resolver
      • 1.23 Sidebar
      • 1.24 Navigation and display
      • 1.25 RSS feed
      • 1.26 Reading lists
      • 1.27 User comments
      • 1.28 CMS
      • 1.29 Transkribus
      • 1.30 Original content
      • 1.31 Piwik/Matomo
      • 1.32 Sitelinks
      • 1.33 API
        • 1.33.1 JSON
        • 1.33.2 IIIF
        • 1.33.3 Authentication
        • 1.33.4 CORS
      • 1.34 OpenSearch
      • 1.35 Embedding
      • 1.36 Maps
      • 1.37 Translations
      • 1.38 Archive
      • 1.39 Campaigns
      • 1.40 Add content
      • 1.41 Usage figures
      • 1.42 Config Editor
      • 1.43 Proxy
      • 1.44 ActiveMQ
      • 1.45 Developer
      • 1.46 External Ressources
    • 2. Goobi viewer Indexer
      • 2.1 Main configuration
      • 2.2 Directories
      • 2.3 Proxy
      • 2.4 Performance
      • 2.5 Structure types
      • 2.6 Metadata
      • 2.7 Starting and Exiting
      • 2.8 Indexing records
      • 2.9 Updating individual page documents
      • 2.10 Deleting records
      • 2.11 Solr scheme
      • 2.12 Further settings
    • 3. Goobi viewer Connector
      • 3.1 OAI interface
        • 3.1.1 Main Configuration
        • 3.1.2 Dublin Core
        • 3.1.3 Europeana
        • 3.1.4 METS
        • 3.1.5 LIDO
        • 3.1.6 MARCXML
        • 3.1.7 Xepicur
        • 3.1.8 Goobi viewer overview pages
        • 3.1.9 Goobi viewer crowdsourcing
        • 3.1.10 TEI
        • 3.1.11 CMDI
        • 3.1.12 Sets
      • 3.2 SRU interface
  • User interface
    • 1. Frontend
    • 2. Backend
      • 2.1 Dashboard
      • 2.2 Administration
        • 2.2.1 User
        • 2.2.2 Groups
        • 2.2.3 IP-Ranges
        • 2.2.4 Access licenses
        • 2.2.5 Rights
        • 2.2.6 Comments
        • 2.2.7 Terms of use
        • 2.2.8 New record
      • 2.3 Crowdsourcing
        • 2.3.1 Campaigns
        • 2.3.2 Annotations
      • 2.4 CMS
        • 2.4.1 Pages
        • 2.4.2 Categories
        • 2.4.3 Static pages
        • 2.4.4 Media
        • 5.4.5 Menus
        • 5.4.6 Collections
        • 5.4.7 Maps
  • Misc
    • 1. Use cases
      • 1.1 Series and convolutes
      • 1.2 Access restrictions
      • 1.3 Subthemes
      • 1.4 Authority data
      • 1.5 Multilingualism
      • 1.6 Maps
      • 1.7 Sub collections
      • 1.8 Multiple Goobi viewer
      • 1.9 Crowdsourcing module
      • 1.10 Archival documents
      • 1.11 Solr Queries
      • 1.12 Linking from METS file groups
      • 1.13 Add content
      • 1.14 Shibboleth
      • 1.15 Access restricted metadata
    • 2. FAQ
    • 3. Glossary
  • Devs & Ops
    • 1. Core Changelog
    • 2. Theme Changelog
    • 3. Installation guide
      • 3.1 Classical
      • 3.2 Docker
    • 4. Development environment
    • 5. API
    • 6. Explained!
Powered by GitBook
On this page
  • General
  • Capturing and evaluating the instance
  • Goobi workflow
  • Goobi viewer Indexer
  • Goobi viewer Core
  • Capture and display individual collections
  • Goobi workflow
  • Goobi viewer Indexer
  • Goobi viewer Core
  • Goobi viewer Backend

Was this helpful?

  1. Misc
  2. 1. Use cases

1.8 Multiple Goobi viewer

General

If two or more Goobi viewer instances are to be supplied from one Goobi workflow, various requirements must be met. This section describes how to configure common questions for Goobi workflow and Goobi viewer.

Capturing and evaluating the instance

Goobi workflow

In Goobi workflow, the instance in which the work is to be displayed must be entered. To do this, a new ViewerInstance metadata must be added in the rule set. This is then also added to DocStructs that had the CatalogIDDigital metadatum configured as a mandatory metadatum.

The relevant parts from the rule set are:

<MetadataType>
    <Name>ViewerInstance</Name>
    <language name="de">Anzeige in</language>
    <language name="en">Show in</language>
</MetadataType>

<!-- [...] -->
<metadata num="1o" DefaultDisplay="true">ViewerInstance</metadata>

<!-- [...] -->

<NamespaceDefinition>
    <URI>https://intranda.com/MODS/</URI>
    <prefix>intranda</prefix>
</NamespaceDefinition>

<!-- [...] -->

<Metadata>
    <InternalName>ViewerInstance</InternalName>
    <WriteXPath>./mods:mods/mods:extension/#intranda:viewerinstance</WriteXPath>
</Metadata>

In the configuration file goobi_metadataDisplayRules.xml a drop-down menu with the desired Goobi viewer instances is assigned:

<context projectName="*">
    <select1 ref="ViewerInstance">
        <item selected="true">
            <label>Viewer 1</label>
            <value>viewer1</value>
        </item>
        <item selected="false">
            <label>Viewer 2</label>
            <value>viewer2</value>
        </item>
        <item selected="false">
            <label>Viewer 3</label>
            <value>viewer3</value>
        </item>
        <item selected="false">
            <label>Viewer 1 and Viewer 2</label>
            <value>viewer1_and_viewer2</value>
        </item>
        <item selected="false">
            <label>Viewer 1 and Viewer 3</label>
            <value>viewer1_and_viewer3</value>
        </item>
        <item selected="false">
            <label>Viewer 2 and Viewer 3</label>
            <value>viewer2_and_viewer3</value>
        </item>
        <item selected="false">
            <label>All instances</label>
            <value>all</value>
        </item>
    </select1>
</context>

Goobi viewer Indexer

The metadatum ViewerInstance is written into a separate field within the Solr Index. For this, the following field definition must be added in the config_indexer.xml configuration file:

<init>
    <namespaces>
        <list>
            <intranda>https://intranda.com/MODS/</intranda>
        </list>
    </namespaces>
<init>

<!-- [...] -->

<fields>
    <MD2_VIEWERINSTANCE>
        <list>
            <item>
                <xpath>mets:xmlData/mods:mods/mods:extension/intranda:viewerinstance</xpath>
                <addToDefault>false</addToDefault>
                <addUntokenizedVersion>false</addUntokenizedVersion>
                <addToChildren>true</addToChildren>
                <addToPages>true</addToPages>
            </item>
        </list>
    </MD2_VIEWERINSTANCE>
</fields>

With addToChildren=true and addToPages=true it is ensured that metadata in sub-elements and pages can still be searched for if the instance restriction is set.

Goobi viewer Core

For each Goobi viewer instance, a staticQuerySuffix must now be defined, specifying which condition must be met for works to be displayed:

<search>
    <staticQuerySuffix>+(MD2_VIEWERINSTANCE:viewer1 MD2_VIEWERINSTANCE:viewer1_and_viewer2 MD2_VIEWERINSTANCE:viewer1_and_viewer3 MD2_VIEWERINSTANCE:all)</staticQuerySuffix>
</search>

The + stands for an "AND". The brackets summarise everything inside. If conditions are not explicitly linked within a query, this automatically corresponds to an "OR".

Capture and display individual collections

Goobi workflow

In order to enter individual collections per Goobi viewer instance, these must be entered as metadata. To do this, a new metadatum is added in the rule set for each instance. The relevant parts for another collection tree from the rule set are:

<MetadataType>
    <Name>Viewer2Collection</Name>
    <language name="de">Viewer 2 Kollektion</language>
    <language name="en">Viewer 2 collection</language>
</MetadataType>

<!-- [...] -->

<metadata num="*">Viewer2Collection</metadata>

<!-- [...] -->

<Metadata>
    <InternalName>Viewer2Collection</InternalName>
    <WriteXPath>./mods:mods/#mods:classification[@authority='z']</WriteXPath>
</Metadata>

If required, a drop-down menu with predefined collection names and values can be defined in goobi_metadataDisplayRules.xml.

Goobi viewer Indexer

First, the exported collections must be written into a separate field within the Solr index. To do this, the following field definition must be added to the config_indexer.xml configuration file:

<fields>
    <MD2_DC_VIEWER2>
        <list>
            <item>
                <xpath>mets:xmlData/mods:mods/mods:classification[@authority='z']</xpath>
                <getparents>all</getparents>
                <onetoken>true</onetoken>
                <onefield>false</onefield>
                <urlEncoding>false</urlEncoding>
                <addToDefault>false</addToDefault>
                <splittingCharacter>#</splittingCharacter>
                <addUntokenizedVersion>false</addUntokenizedVersion>
                <lowercase>true</lowercase>
                <addToChildren>true</addToChildren>
                <addToPages>true</addToPages>
            </item>
        </list>
    </MD2_DC_VIEWER2>
</fields>

Goobi viewer Core

This field must now be configured in the local config_viewer.xml instead of the usual DC field. For example:

<!-- Show MD2_DC_VIEWER2 instead of DC as collection field at the metadata page -->
<metadata>
    <mainMetadataList>
        <template name="_DEFAULT">
            <metadata label="MD2_DC_VIEWER2" value="">
                <param type="translatedfield" key="MD2_DC_VIEWER2_UNTOKENIZED" />
            </metadata>
        </template>
    </mainMetadataList>
</metadata>

<!-- Use MD2_DC_VIEWER2 instead of DC for facetting and in advanced search -->
<search>
    <facets>
        <field initialElementNumber="3">YEAR</field>
        <hierarchicalField initialElementNumber="3">MD2_DC_VIEWER2</hierarchicalField>
        <field initialElementNumber="3">DOCSTRCT_TOP</field>
        <field initialElementNumber="3">DOCSTRCT_SUB</field>
        <field initialElementNumber="3" sortOrder="alphabetical_asc">MD_PLACEPUBLISH</field>
    </facets>
    
    <advanced>
        <searchFields>
            <field>DEFAULT</field>
            <field>FULLTEXT</field>
            <field>CMS_TEXT_ALL</field>
            <field>PI_TOPSTRUCT</field>
            <field hierarchical="true">MD2_DC_VIEWER2</field>
            <field>DOCSTRCT_TOP</field>
            <field>DOCSTRCT_SUB</field>
            <field>MD_TITLE</field>
            <field>MD_CREATOR</field>
            <field>MD_PUBLISHER</field>
            <field>MD_PLACEPUBLISH</field>
            <field>MD_YEARPUBLISH</field>
            <field untokenizeForPhraseSearch="true">MD_SHELFMARK</field>
        </searchFields>
    </advanced>
</search>

<!-- Additional configuration such as for the breadcrumbs for MD_DC_VIEWER2 -->
<collections>
    <collection field="MD2_DC_VIEWER2">
        <addHierarchyToBreadcrumbs>true</addHierarchyToBreadcrumbs>
    </collection>
    <redirectToWork>false</redirectToWork>
</collections>

In addition, the field name must of course be translated accordingly in the messages files. For example:

MD2_DC_VIEWER2=Sammlung

Goobi viewer Backend

To display a collection page with its own tree, a new CMS page must now be created in the Goobi viewer backend based on the "Collection display" template, configured as an overwritten static page and linked in the menu:

Previous1.7 Sub collectionsNext1.9 Crowdsourcing module

Last updated 3 years ago

Was this helpful?

Create a new CMS page based on the template "Collection view".
The CMS page is configured and published as desired
The new CMS page is defined as a static page for the collections
The new CMS page is linked in the menu