<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Lieber Herr Schwidder,</p>
<p>nochmals ganz herzlichen Dank! Tatsächlich hatte ich nach der
letzten Änderung keine Neuindexierung mehr gemacht (ich bin immer
ein bisschen unsicher, nach welchen Änderungen das nötig ist). Das
habe ich jetzt nachgeholt und nun sieht es gut aus. In der Datei
solr.xslt habe ich die Reihenfolge von CompletedDate und
CompletedYear getauscht.</p>
<p>Nochmals einen schönen Abend in die Runde</p>
<p>Annegret Baade-Kelishani<br>
</p>
<p><br>
</p>
<div class="moz-cite-prefix">Am 22.05.2024 um 19:10 schrieb Jens
Schwidder:<br>
</div>
<blockquote type="cite"
cite="mid:df8203ed-3917-4e6e-a2c6-7848ab9889e9@zib.de">Liebe Frau
Baade-Kelishani,
<br>
<br>
ich sehe nichts im Code, das mir Ihrer Konfiguration (unten)
zulassen würde, dass CompletedDate anstelle von CompletedYear
verwendet wird.
<br>
<br>
Ich gehe davon aus, dass sie eine komplette Neu-Indexierung nach
den Änderungen in der Konfiguration gemacht haben und das keine
doppelten
<br>
Konfigurationseinträge in der Datei config.ini vorhanden sind.
<br>
<br>
<br>
Wenn in "...year.order" nur ein Feld angegeben wird, dann ist der
Wert
<br>
von Year leer, wenn das Feld nicht gesetzt ist. Die Konfiguration
wird
<br>
in folgender Funktion ausgelesen:
<br>
<br>
Opus\Search\Solr\Document\Xslt::getYearOrder
<br>
<br>
Die Klasse ist in folgender Datei definiert.
<br>
<br>
vendor/opus4-repo/search/src/Solr/Document/Xslt.php
<br>
<br>
Sie könnten sich dort die aktive Konfiguration ins Log
(workspace/log/index.log) ausgeben lassen.
<br>
<br>
Log::get()->err(implode(',', self::$yearOrder));
<br>
<br>
Mit dem Log-Level "->err" sollte, die Ausgabe im Log landen.
<br>
<br>
Wenn ich irgendwann mal Zeit habe, werde ich ein Tool hinzufügen,
um die effektive Konfiguration auszugeben ohne solche Zeilen
hinzufügen zu müssen.
<br>
<br>
<br>
Wenn dort "CompletedYear" ausgeben wird und der Index aktuell ist,
dann könnte es noch Probleme mit dem XSLT geben.
<br>
<br>
In der Datei XSLT-Datei
<br>
<br>
Solr/Document/solr.xslt
<br>
<br>
werden die möglichen Werte an die Funktion übergeben, die bestimmt
welcher Wert für die Indexierung verwendet wird.
<br>
<br>
<xsl:variable name="year">
<br>
<xsl:value-of
select="php:functionString('Opus\Search\Solr\Document\Xslt::indexYear',
<br>
/Opus/Opus_Document/PublishedDate/@Year,
<br>
/Opus/Opus_Document/@PublishedYear,
<br>
/Opus/Opus_Document/CompletedDate/@Year,
<br>
/Opus/Opus_Document/@CompletedYear)" />
<br>
</xsl:variable>
<br>
<br>
Es kann lokal auch ein eigenes Solr XSLT verwendet werden.
<br>
<br>
Wenn das XSLT auch dem Standard entspricht, habe ich im Augenblick
keine weiteren Ideen.
<br>
<br>
<br>
Viele Grüße
<br>
<br>
Jens
<br>
<br>
<br>
On 22.05.24 18:15, Baade-Kelishani, Annegret wrote:
<br>
<blockquote type="cite">Lieber Herr Schwidder,
<br>
<br>
ganz herzlichen Dank, das hat mich schon mal weitergebracht. Das
Problem mit dem inverted hat sich erledigt, das funktioniert
durch Ihre Beschreibung jetzt wie gewünscht.
<br>
<br>
Meine Einstellungen sehen jetzt so aus:
<br>
<br>
searchengine.solr.facets =
author_facet,institute,has_fulltext,language,doctype,subject,enrichment_zugriffsart,belongs_to_bibliography,year<br>
search.facet.year.indexField = 'year_inverted'
<br>
search.index.field.year.order = 'CompletedYear'
<br>
search.facet.year.type = 'Year'
<br>
search.facet.year.sort = lexi
<br>
<br>
Durch weitere Tests habe ich herausgefunden, dass tatsächlich
bei uns nicht das PublishedYear anstelle des CompletedYear
belegt wird, wie ich zuerst dachte, sondern das Jahr von
CompletedDate. Dabei habe ich doch eingestellt, dass
CompletedYear verwendet werden soll? Haben Sie da vielleicht
noch eine Idee?
<br>
<br>
Nochmals vielen Dank für Ihre Mühe und einen schönen Abend
<br>
<br>
Annegret Baade-Kelishani
<br>
<br>
<br>
Am 22.05.2024 um 08:24 schrieb Jens Schwidder:
<br>
<blockquote type="cite">Liebe Frau Baade-Kelishani,
<br>
<br>
ich habe mal versucht das bei mir nachzuvollziehen und sehe
folgende Probleme.
<br>
<br>
Die folgende Option sollte den Feldnamen verwenden, also so
aussehen:
<br>
<br>
search.index.field.year.order = 'CompletedYear'
<br>
<br>
Bei der Indexierung muss angegeben werden, welches Feld
verwendet werden soll. Bei der Anzeige der Facette ist der
Name des Index-Feldes im Solr-Schema notwendig.
<br>
<br>
Bei den Inverted-Index-Feldern, wird ein Trick verwendet, um
die umgekehrte Reihenfolge zu erzeugen. Dafür ist der Prefix
da, der bei Ihnen mit angezeigt wird. Folgende Option sorgt
dafür, dass die Facette
<br>
als "Year" behandelt und bei der Anzeige gegebenenfalls der
Prefix gefiltert wird.
<br>
<br>
search.facet.year.type = 'Year'
<br>
<br>
Diese Option sollte nie geändert werden. Wenn ich diese Option
bei mir entferne, sieht die Anzeige wie bei Ihnen aus.
<br>
<br>
Generell ist die Empfehlung die Datei "application.ini"
(Defaults) nie zu verändern, sondern die notwendige lokale
Konfiguration in die Datei "config.ini" zu schreiben.
<br>
<br>
Natürlich kann und wird OPUS 4 lokal auf die vielfältigste Art
und Weise angepasst, auch im Code, aber je mehr es vermieden
werden kann, desto besser. Dafür haben wir über die Jahre
immer mehr Aspekte konfigurierbar gemacht. Die Datei
"application.ini" wird sich in zukünftigen Versionen ändern
und wird in Teile zerlegt werden.
<br>
<br>
Ich hoffe das hilft ihnen weiter.
<br>
<br>
Viele Grüße
<br>
<br>
Jens Schwidder
<br>
<br>
<br>
On 21.05.24 19:30, Baade-Kelishani, Annegret wrote:
<br>
<blockquote type="cite">Lieber Herr Schwidder,
<br>
<br>
das ist eine tolle Option, aber bei mir funktioniert es
leider nicht. Ich habe nun in meiner application.ini
folgende Einstellungen gewählt:
<br>
<br>
searchengine.solr.facets =
author_facet,institute,has_fulltext,language,doctype,subject,enrichment_zugriffsart,belongs_to_bibliography,year<br>
<br>
search.facet.year.indexField = 'completed_year_inverted'
<br>
search.index.field.year.order = 'completed_year'
<br>
search.facet.year.sort = lexi
<br>
<br>
Das Ergebnis sieht so aus:
<br>
<br>
<br>
Jahr der Veröffentlichung in Opus
<br>
<br>
* 63511:2024
<br>
<a class="moz-txt-link-rfc2396E" href="http://opustest2.bibliothek.fh-aachen.de/opus4/solrsearch/index/search/searchtype/all/start/0/rows/10/facetNumber_year/all/yearfq/63511%3A2024"><http://opustest2.bibliothek.fh-aachen.de/opus4/solrsearch/index/search/searchtype/all/start/0/rows/10/facetNumber_year/all/yearfq/63511%3A2024></a> (120)
<br>
* 63512:2023
<br>
<a class="moz-txt-link-rfc2396E" href="http://opustest2.bibliothek.fh-aachen.de/opus4/solrsearch/index/search/searchtype/all/start/0/rows/10/facetNumber_year/all/yearfq/63512%3A2023"><http://opustest2.bibliothek.fh-aachen.de/opus4/solrsearch/index/search/searchtype/all/start/0/rows/10/facetNumber_year/all/yearfq/63512%3A2023></a> (498)
<br>
* 63513:2022
<br>
<a class="moz-txt-link-rfc2396E" href="http://opustest2.bibliothek.fh-aachen.de/opus4/solrsearch/index/search/searchtype/all/start/0/rows/10/facetNumber_year/all/yearfq/63513%3A2022"><http://opustest2.bibliothek.fh-aachen.de/opus4/solrsearch/index/search/searchtype/all/start/0/rows/10/facetNumber_year/all/yearfq/63513%3A2022></a> (457)
<br>
* 63514:2021
<br>
<a class="moz-txt-link-rfc2396E" href="http://opustest2.bibliothek.fh-aachen.de/opus4/solrsearch/index/search/searchtype/all/start/0/rows/10/facetNumber_year/all/yearfq/63514%3A2021"><http://opustest2.bibliothek.fh-aachen.de/opus4/solrsearch/index/search/searchtype/all/start/0/rows/10/facetNumber_year/all/yearfq/63514%3A2021></a> (284)
<br>
* ...
<br>
<br>
Wobei die Jahre sich weiterhin auf das Published_Year und
nicht auf das Completed_Year beziehen. Gibt es jemanden, bei
dem die Einstellung mit dem Completed_Year funktioniert?
<br>
<br>
Herzlichen Dank und viele Grüße in die Runde
<br>
<br>
Annegret Baade-Kelishani
<br>
<br>
<br>
Am 23.04.2024 um 18:00 schrieb Jens Schwidder:
<br>
<blockquote type="cite">Liebe Frau Baade-Kelishani,
<br>
<br>
die Indexierung für die Jahresfacette lässt sich
mittlerweile konfigurieren.
<br>
<br>
<a class="moz-txt-link-freetext" href="https://www.opus-repository.org/userdoc/search/yearfacet.html">https://www.opus-repository.org/userdoc/search/yearfacet.html</a>
<br>
<br>
Ich hoffe das hilft Ihnen weiter.
<br>
<br>
Viele Grüße
<br>
<br>
Jens Schwidder
<br>
<br>
<br>
On 4/23/24 17:43, Baade-Kelishani, Annegret wrote:
<br>
<blockquote type="cite">Liebe Kolleginnen und Kollegen,
<br>
<br>
ich beziehe mich auf eine Mail aus dem Archiv aus dem
November 2011. Es ging um die Frage, welche Datumsangabe
aus OPUS für die Sortierreihenfolge und für die Anzeige
des Jahres in Klammern in den Trefferlisten verwendet
wird:
<br>
<br>
<blockquote type="cite">die Anzeige der Jahre in der
Facette "Erscheinungsjahr" ist abhängig davon, welches
Jahr im
<br>
Solr-Index indexiert wurde.
<br>
Nach diesem indexierten Jahr erfolgt dann ebenfalls
die Sortierung in den Suchergebnissen und die
<br>
Anzeige der "Jahre in Klammern".
<br>
</blockquote>
In der Mail wurde beschrieben, dass man durch die
Anpassung der Datei solr.xslt erreichen kann, dass nicht
das Datum der Erstpublikation, sondern das
Erscheinungsjahr als relevantes Feld "year" verwendet
werden kann:
<br>
<br>
<blockquote type="cite">Wir benutzen bei den migrierten
OPUS3-Instanzen für die Indexierung des Jahres, das
Feld
<br>
"CompletedYear".
<br>
<br>
Im Script für die Migration von OPUS3 nach OPUS4 wird
das Feld "Erstellungsjahr" aus OPUS3
<br>
nach "Jahr der Fertigstellung"="CompletedYear" in
OPUS4 gemappt.
<br>
<br>
Für die Änderung der Indexierung des Jahres müssen Sie
wie folgt vorgehen:
<br>
<br>
<br>
1. Die Standardeinstellung für das Jahr in der Datei
solr.xslt auskommentieren und die Zeile mit
<br>
CompletedYear ersetzen
<br>
<br>
vi
/home/opus/opus4-<instanz>/opus4/library/Opus/SolrSearch/Index/solr.xslt<br>
<br>
alt: <!-- year (Standardeinstellung für
Jahr)
<br>
<xsl:element name="field">
<br>
<xsl:attribute
name="name">year</xsl:attribute>
<br>
<xsl:choose>
<br>
<xsl:when
test="/Opus/Opus_Document/PublishedDate/@Year !=
''">
<br>
<xsl:value-of
select="/Opus/Opus_Document/PublishedDate/@Year" />
<br>
</xsl:when>
<br>
<xsl:otherwise>
<br>
<xsl:value-of
select="/Opus/Opus_Document/@PublishedYear" />
<br>
</xsl:otherwise>
<br>
</xsl:choose>
<br>
</xsl:element>
<br>
-->
<br>
<br>
<br>
neu: <xsl:element name="field">
<br>
<xsl:attribute
name="name">year</xsl:attribute>
<br>
<xsl:value-of
select="/Opus/Opus_Document/@CompletedYear" />
<br>
</xsl:element>
<br>
<br>
</blockquote>
Das habe ich damals für unsere Installation genauso
nachgebaut, und es ist nun seit Jahren so gelaufen. Nun
probieren wir gerade, unsere Installation mit der
Version 4.6.3 auf die 4.8 zu migrieren. Eine direkte
Migration scheint nicht möglich zu sein, dazu gab es
hier schon entsprechende Mails, daher gehen wir über den
Zwischenschritt 4.7.1. In unserer Testinstanz ist die
Datei solr.xslt unverändert, das heißt, meine Änderung
bezüglich "year" ist erhalten geblieben, aber
<br>
<br>
- die Sortierung bezieht sich auf das PublishedYear und
nicht auf das CompletedYear
<br>
<br>
- in Klammern wird das PublishedYear angezeigt, wenn das
nicht vorhanden ist (das ist bei der Mehrzahl unserer
Dokumente der Fall), bleibt es ganz frei
<br>
<br>
- und am schlimmsten: auch die Facettierung bezieht sich
auf das PublishedYear, wenn das nicht gefüllt ist, wird
das Dokument bei der Jahresfacette nicht berücksichtigt
<br>
<br>
Was kann man da machen bzw. wo kann ich das jetzt wieder
so einstellen, dass es für uns richtig funktionieren
würde?
<br>
<br>
Vielen Dank für Ihre Hilfe und freundliche Grüße aus
Aachen
<br>
<br>
Annegret Baade-Kelishani
<br>
<br>
<br>
-- <br>
Kobv-opus-tester mailing list
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Kobv-opus-tester@zib.de">Kobv-opus-tester@zib.de</a>
<br>
<a class="moz-txt-link-freetext" href="https://listserv.zib.de/mailman/listinfo/kobv-opus-tester">https://listserv.zib.de/mailman/listinfo/kobv-opus-tester</a>
<br>
</blockquote>
<br>
<br>
-- <br>
Kobv-opus-tester mailing list
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Kobv-opus-tester@zib.de">Kobv-opus-tester@zib.de</a>
<br>
<a class="moz-txt-link-freetext" href="https://listserv.zib.de/mailman/listinfo/kobv-opus-tester">https://listserv.zib.de/mailman/listinfo/kobv-opus-tester</a>
<br>
</blockquote>
</blockquote>
<br>
<br>
--
<br>
Kobv-opus-tester mailing list
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Kobv-opus-tester@zib.de">Kobv-opus-tester@zib.de</a>
<br>
<a class="moz-txt-link-freetext" href="https://listserv.zib.de/mailman/listinfo/kobv-opus-tester">https://listserv.zib.de/mailman/listinfo/kobv-opus-tester</a>
<br>
</blockquote>
</blockquote>
<br>
</blockquote>
<div class="moz-signature">-- <br>
<table
style="font-family:Verdana,Arial,Helvetica,sans-serif;font-size:80%">
<tbody>
<tr>
<td style="vertical-align:top" width="50"><img
src="cid:part1.YXyS0eSX.abJTE2NC@fh-aachen.de"
alt="FH Aachen" width="38" height="128"></td>
<td width="400">
<div class="vcard">
<div style="font-weight:bold" class="fn n"> <span
class="title" style="">Dipl.-Bibl.</span> <span
class="given-name" style="">Annegret</span> <span
class="family-name" style="">Baade-Kelishani</span>
</div>
<div>Hochschulbibliothek</div>
<div class="org" style="margin-top:1em">FH Aachen<br>
University of Applied Sciences</div>
<div class="adr">
<!-- <span class="type" style="display:none">work</span> -->
<div class="street-address">Eupener Str. 70</div>
<div> <span class="postal-code"
style="display:inline;margin-right:0.2em">52066</span>
<span class="locality" style="display:inline">Aachen</span>
| <span class="country-name"
style="display:inline;">Germany</span> </div>
</div>
<div class="tel" style="margin-top:1em"> T <span
class="value">+49 241 6009-52063</span> </div>
<a class="url moz-txt-link-freetext"
style="color:#00b5ad" href="https://fhac.de/BIB">https://fhac.de/BIB</a><br>
<a class="email moz-txt-link-freetext"
style="display:block;color:#00b5ad"
href="mailto:baade@fh-aachen.de">baade@fh-aachen.de</a>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>