If it weren't for that sharp (i.e. if you just remove it temporarily), can you build the PDF without the debs being installed? Cheers, Martin On 15-10-03 10:20 AM, Hugh Cayless wrote:
Yeah, it still fails. This has to be because the Stylesheets aren’t properly escaping the hash in that one URL. '#' is completely legal and uncontroversial in URIs and has to be supported—and obviously is, mostly. This has somehow exposed a case where it isn’t...
On Oct 3, 2015, at 13:06 , Hugh Cayless
wrote: Yeah, I’ll have a go. It’s on a VM, so it’ll take me a little while to get it fired up again.
On Oct 3, 2015, at 12:25 , Martin Holmes
wrote: Hi Syd,
Anyway, I just looked at the code, and got a bit queasy. From the .../TEI/P5/Makefile it looks like .../TEI/P5/Utilities/guidelines-latex.xsl is run from an ant file. That file imports /usr/share/xml/tei/stylesheet/latex/latex.xsl. So you better have the Debian packages installed to do this.
Curses and more curses. This is what I've been dreading. If it's true that this is never overridden by an XSLT variable being passed in, then I was wrong that Jenkins is no longer dependent (as Sebastian and I believed) on the debs being installed; and that means our own build process is still dependent on the debs being up to date.
Hugh, I believe you built a Jenkins that had no TEI debs installed on it, didn't you? Can it build the PDFs OK?
Cheers, Martin
On 15-10-02 05:22 PM, Syd Bauman wrote:
Egads. Ick.
But this doesn't make sense. Surely the character '#' occurs in content elsewhere in the Guidelines.
Just looked: yes, it does, 95 times. E.g.: <code>http://www.example.org/somewhere.xml#p1</code>
So what's different between the <code> in xenoData.xml which contains a sharp, and the one above? Or better yet, between it and <code>personography.xml#MDH</code> which also occurs inside an <exemplum>?
The difference *may* be that in the above case, the sharp is inside a teix:code, where is in the xenoData case, the sharp is inside a tei:code. But there is another example of a '#' inside tei:exemplum/tei:code, namely
<p>In the last case, the identifier includes a non-Unicode character which is defined elsewhere by means of a <gi>glyph</gi> or <gi>char</gi> element referenced here as <code>#sym</code>. </p>
which is in idno.xml. So I'm really confused.
Anyway, I just looked at the code, and got a bit queasy. From the .../TEI/P5/Makefile it looks like .../TEI/P5/Utilities/guidelines-latex.xsl is run from an ant file. That file imports /usr/share/xml/tei/stylesheet/latex/latex.xsl. So you better have the Debian packages installed to do this. That file has three functions of interest: tei:escapeCharsVerbatim(), tei:escapeChars(), and tei:escapeCharsPartial(). Any one of these functions would convert a '#' to '\#'. So the question, of course, is why isn't one of them being called?
I need to turn my attention elsewhere for awhile, but hope to get back to this by tomorrow late morning (my time).
Ditching the example, at least temporarily, may be the best bet. But the idea that we can never have '#' an an example is chilling.
It's a pain, isn't it... (and you have to wonder what sort of an idiot thinks that it would be cool to make up a namespace like that) . But if you want to produce the Guidelines in PDF using LaTeX, either you have to ditch that example, or misrepresent the RDF namespace, or somehow find a way of tweaking the LaTeX code before it gets processed (in LaTeX, I believe, you would simply escape the character with a backslash) -- tei-council mailing list tei-council@lists.tei-c.org http://lists.lists.tei-c.org/mailman/listinfo/tei-council
PLEASE NOTE: postings to this list are publicly archived