Skip to content

Commit e57a985

Browse files
committed
[feature] Add a prefixElement parameter to the API
1 parent a1b33d3 commit e57a985

1 file changed

Lines changed: 13 additions & 3 deletions

File tree

src/main/xar-resources/modules/content-negotiation/content-negotiation.xql

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ declare variable $local:results as xs:string? := rh:request-param("results");
4343
declare variable $local:start as xs:integer := rh:request-param-integer("start", 1);
4444
declare variable $local:type as xs:string? := rh:request-param("type");
4545
declare variable $local:wrap-element as xs:QName? := rh:request-param("wrapElement") ! xs:QName(.);
46+
declare variable $local:prefix-element as xs:string? := rh:request-param("prefixElement");
4647

4748
(:~
4849
: Search API
@@ -177,9 +178,18 @@ declare function local:search-element($element as xs:string?, $q as xs:string*,
177178
$headword[1]
178179
}
179180
}
180-
else
181-
element {xs:QName($element)}
182-
{attribute { "ref" } { $recID }, $headword[1] }
181+
else if (exists($local:prefix-element)) then
182+
let $prefixed-element := $local:prefix-element || ":" || local-name-from-QName(xs:QName($element))
183+
return
184+
element {xs:QName($prefixed-element)} {
185+
attribute { "ref" } { $recID },
186+
$headword[1]
187+
}
188+
else
189+
element {xs:QName($element)} {
190+
attribute { "ref" } { $recID },
191+
$headword[1]
192+
}
183193
}
184194
</title>
185195
{'' (:Not sure what the utility is here :)

0 commit comments

Comments
 (0)