Skip to content

Commit bd61387

Browse files
authored
Merge pull request majlis-erc#791 from evolvedbinary/workaround-cardinality
2 parents 622a1cc + f05b001 commit bd61387

2 files changed

Lines changed: 22 additions & 7 deletions

File tree

src/main/xar-resources/services/get-rec.xql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ declare function local:markdown($nodes as node()*) as item()* {
6868
return
6969
"
"
7070

71-
case element(tei:emph)
71+
case element(tei:em)
7272
return
7373
(
7474
"*",

src/main/xar-resources/services/submit.xql

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -114,15 +114,22 @@ declare function local:transform($new as xs:boolean, $id as xs:string, $uri as x
114114
return
115115
element {node-name($node)} {
116116
$node/@*,
117-
local:markdown2TEI($node/node())
117+
(: NOTE(AR) workaround for max as tei:note has multiple child nodes :)
118+
(: local:markdown2TEI($node/node()) :)
119+
for $child in $node/node()
120+
return
121+
local:markdown2TEI($child)
118122
}
119123

120124
case element(tei:summary)
121125
return
122-
element {node-name($node)} {
123-
$node/@*,
124-
local:markdown2TEI($node/node())
125-
}
126+
if ($node[parent::tei:layoutDesc]) then
127+
local:passthru($new, $id, $uri, $node)
128+
else
129+
element {node-name($node)} {
130+
$node/@*,
131+
local:markdown2TEI($node/node())
132+
}
126133

127134
case element(tei:quote)
128135
return
@@ -360,6 +367,14 @@ declare function local:attrs-updated-source($attrs as attribute()*) as attribute
360367

361368
(: Markdown to TEI :)
362369
declare function local:markdown2TEI($node) as element(tei:p)* {
370+
if (count($node) gt 1)
371+
then
372+
(: <document>{root($n)}</document> :)
373+
let $nodes := for $n in $node return <node uri="{document-uri(root($n))}">{$n}</node>
374+
return
375+
util:log("INFO", ("PROBLEM: ", <nodes>{$nodes}</nodes>, <parent>{$node[1]/parent::node()}</parent>))
376+
else(),
377+
363378
for $l in tokenize($node, '\n\n')
364379
return
365380
<tei:p>{local:lineBreak($l)}</tei:p>
@@ -377,7 +392,7 @@ declare function local:markdown($s) {
377392
for $node in fn:analyze-string($s, "\*(.*?)\*")/child::*
378393
return
379394
typeswitch($node)
380-
case element(fn:match) return <tei:emph>{$node/fn:group/node()}</tei:emph>
395+
case element(fn:match) return <tei:em>{$node/fn:group/node()}</tei:em>
381396
default return $node/node()
382397
};
383398

0 commit comments

Comments
 (0)