Hi,
I am trying to output XML with a link to a RelaxNG schema without success.
- It works with DTDs using doctype-public and doctype-systems in the serialization params of file:write - It works with .xsd because the declaration is in the attribute - For relaxNg, the intro line looks like a PI, but I can't seem to be able to keep PIs when outputting xml with file:write
Specifically:
let $map-params := map { 'method': 'xml', 'indent': 'no', 'omit-xml-declaration': 'no' }
let $map := ( <?xml-model href="urn:oasis:names:tc:dita:rng:map.rng" schematypens="http://relaxng.org/ns/structure/2.x"?>, <map> <?test name="abc"?>
<title>{lower-case($spez/child::*[name()='name']/text())}</title>{
<title>{lower-case($spez/child::*[name()='name']/text())}</title>{ ... }</map> ) return file:write($dir-path || '/spec-' || lower-case($spez/child::*[name()='name']/text()) || '.ditamap', $map)
gets me:
<map> <title>Tests for elements - version 2.0</title> ... </map>
Both the declaration and the in-content test pi disappear.
What am I missing here?
Hi France,
This seems to work:
let $map := ( processing-instruction xml-model {'href="urn:oasis:names:tc:dita:rng:map.rng" schematypens="http://relaxng.org/ns/structure/2.x%22%27%7D, <map> {processing-instruction test {'name="abc"'}} <title>…</title> <title>…</title> </map> ) return …
Gerrit
On 01.07.2022 12:39, France Baril wrote:
Hi,
I am trying to output XML with a link to a RelaxNG schema without success.
- It works with DTDs using doctype-public and doctype-systems in the serialization params of file:write
- It works with .xsd because the declaration is in the attribute
- For relaxNg, the intro line looks like a PI, but I can't seem to be able to keep PIs when outputting xml with file:write
Specifically:
let $map-params := map { 'method': 'xml', 'indent': 'no', 'omit-xml-declaration': 'no' } let $map := ( <?xml-model href="urn:oasis:names:tc:dita:rng:map.rng" schematypens="http://relaxng.org/ns/structure/2.x <http://relaxng.org/ns/structure/2.x>"?>, <map> <?test name="abc"?> <title>{lower-case($spez/child::*[name()='name']/text())}</title>{ <title>{lower-case($spez/child::*[name()='name']/text())}</title>{ ... }</map> ) return file:write($dir-path || '/spec-' || lower-case($spez/child::*[name()='name']/text()) || '.ditamap', $map)
gets me:
<map> <title>Tests for elements - version 2.0</title> ... </map>
Both the declaration and the in-content test pi disappear.
What am I missing here?
-- France Baril Architecte documentaire / Documentation architect france.baril@architextus.com mailto:france.baril@architextus.com
Yep, the problem was 22 inches in front of the screen on that one. I was looking in a different output folder. Doh!
On Fri, Jul 1, 2022 at 11:59 AM Imsieke, Gerrit, le-tex < gerrit.imsieke@le-tex.de> wrote:
Hi France,
This seems to work:
let $map := ( processing-instruction xml-model {'href="urn:oasis:names:tc:dita:rng:map.rng" schematypens="http://relaxng.org/ns/structure/2.x%22%27%7D,
<map> {processing-instruction test {'name="abc"'}} <title>…</title> <title>…</title> </map> ) return …
Gerrit
On 01.07.2022 12:39, France Baril wrote:
Hi,
I am trying to output XML with a link to a RelaxNG schema without
success.
- It works with DTDs using doctype-public and doctype-systems in the serialization params of file:write
- It works with .xsd because the declaration is in the attribute
- For relaxNg, the intro line looks like a PI, but I can't seem to be able to keep PIs when outputting xml with file:write
Specifically:
let $map-params := map { 'method': 'xml', 'indent': 'no', 'omit-xml-declaration': 'no' } let $map := ( <?xml-model href="urn:oasis:names:tc:dita:rng:map.rng" schematypens="http://relaxng.org/ns/structure/2.x <http://relaxng.org/ns/structure/2.x>"?>, <map> <?test name="abc"?> <title>{lower-case($spez/child::*[name()='name']/text())}</title>{ <title>{lower-case($spez/child::*[name()='name']/text())}</title>{ ... }</map> ) return file:write($dir-path || '/spec-' || lower-case($spez/child::*[name()='name']/text()) || '.ditamap', $map)
gets me:
<map> <title>Tests for elements - version 2.0</title> ... </map>
Both the declaration and the in-content test pi disappear.
What am I missing here?
-- France Baril Architecte documentaire / Documentation architect france.baril@architextus.com mailto:france.baril@architextus.com
-- Gerrit Imsieke Geschäftsführer / Managing Director le-tex publishing services GmbH Weissenfelser Str. 84, 04229 Leipzig, Germany Phone +49 341 355356 110, Fax +49 341 355356 510 gerrit.imsieke@le-tex.de, http://www.le-tex.de
Registergericht / Commercial Register: Amtsgericht Leipzig Registernummer / Registration Number: HRB 24930
Geschäftsführer / Managing Directors: Gerrit Imsieke, Svea Jelonek, Thomas Schmidt
basex-talk@mailman.uni-konstanz.de