declare namespace tei="http://www.tei-c.org/ns/1.0"; declare namespace rng="http://relaxng.org/ns/structure/1.0"; declare namespace request="http://exist-db.org/xquery/request"; let $e := request:get-parameter("name", "") let $lang := request:get-parameter("lang", "") for $c in collection("/db/TEI")//tei:classSpec[@ident=$e] { for $a in $c//tei:attDef let $Desc:= if ($a/tei:desc[@xml:lang=$lang]) then $a/tei:desc[@xml:lang=$lang] else $a/tei:desc[not(@xml:lang)] return {$a/@usage} {data($a/@ident)} {data($Desc)} {data($a/tei:defaultVal)} { for $d in $a/tei:datatype return { $d/@minOccurs } { $d/@maxOccurs } { $d/* } } { for $d in $a/tei:valList return {for $dv in $d/tei:valItem return { $dv/@ident } } }