From be5b4b82cd1f478e329878dd7b1b0ddc1d477bf1 Mon Sep 17 00:00:00 2001 From: bwbohl <b.w.bohl@gmail.com> Date: Thu, 19 Dec 2024 09:54:33 +0100 Subject: [PATCH] getLinkTarget.xql: replace MEI fallback with global fallback --- add/data/xql/getLinkTarget.xql | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/add/data/xql/getLinkTarget.xql b/add/data/xql/getLinkTarget.xql index ff128ea2f..3fc56f48e 100644 --- a/add/data/xql/getLinkTarget.xql +++ b/add/data/xql/getLinkTarget.xql @@ -192,10 +192,18 @@ declare function local:getWindowTitle($doc as node()+, $type as xs:string) as xs (: HTML :) else if ($type = 'html') then ($doc//head/data(title)) + + else if($type = 'unknown') then + + let $eventualTitleContainers := ($doc//mei:titleStmt, $doc/tei:titleStmt) + let $eventualTitles := ( + for $et in $eventualTitleContainers return + eutil:getLocalizedTitle($eventualTitleContainers[1], $lang), + for $t in $doc//*:title return + $t => normalize-space() + ) - (: MEI fallback if no title is found :) - else if (exists($doc//mei:mei) and exists(($doc//mei:titleStmt)[1])) then - (eutil:getLocalizedTitle(($doc//mei:titleStmt)[1], $lang)) + return $eventualTitles[1] else (string('unknown')) -- GitLab