Subject: Re: [xsl] HTML/XHTML/HTML5 Serialization Options From: "Eliot Kimber ekimber@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Mon, 27 Apr 2015 21:20:27 -0000 |
I did a little more testing and here's what I found for the input "<br/>" using Saxon 9.6, just to confirm Mike's assertion about what Saxon does (and should be expected to do based on the spec): Input doc: HTML tags with no namespace: format="html": <br> format="xhtml": <br></br> Input doc: HTML tags in XHTML namespace: format="html": <br></br> format="xhtml": <br /> Since I want "<br />" in the result clearly I need to have my input HTML in the XHTML namespace and a format value of "xhtml". Cheers, E. bbbbb Eliot Kimber, Owner Contrext, LLC http://contrext.com On 4/10/15, 4:23 PM, "Michael Kay mike@xxxxxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: >As it happens I've been working on this the last couple of days: I found >that there were no tests in the W3C QT3 test suite for XHTML >serialization, and I committed about 50 this morning. > >In XSLT 2.0, the XHTML serialization method treats elements like <br/> >specially only if they are in the XHTML namespace. > >In 3.0, it depends on whether the property html-version="5" is set. If >not, it behaves as before: only elements in the XHTML namespace are >recognized. But with html-version="5", elements in no namespace are also >recognized. > >Inevitably, given the shortage of test material, I found that Saxon 9.6 >doesn't get all the details right, but on this particular point, I think >it's largely conformant. > >Michael Kay >Saxonica >mike@xxxxxxxxxxxx >+44 (0) 118 946 5893 > > > > >On 10 Apr 2015, at 22:08, Eliot Kimber ekimber@xxxxxxxxxxxx ><xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > >> This may be a Saxon-specific question, but I'll start here as there may >>be >> a general answer. >> >> I am generating HTML, either as XHTML or HTML or HTML5 and I'm running >> into issues with the handling of empty elements (meaning elements that >> were or can be tagged as self-closed elements, e.g., <br>). >> >> Doing a quick test with Saxon 9.6 and XSLT 2, given this input: >> >> <p>A br element: before<br/>after</p> >> >> >> And serializing it using method "html" the result is the expected: >> >> <p>A br element: before<br>after >> </p> >> >> >> But for XHTML it's: >> >> <p>A br element: before >> <br></br>after >> </p> >> >> >> What I would like to is a self-closed BR element: <br/>. >> >> Looking at the Saxon documentation I didn't see any Saxon-specific >> serialization parameters that would control this behavior. >> >> I realize I could implement my own serializer but I'm not keen to go to >> that length if at all possible. >> >> Is there a general solution that allows me to have XHTML or HTML5 output >> with self-closing elements? >> >> This comes up for me in several contexts: >> >> - Generating XHTML as required for EPUB2 and Kindle documents >> - Generating HTML as required for Web sites >> - Generating HTML5 as required for EPUB3 and for use in HTML5-based Web >> sites >> >> I suspect that the real problem is generating XHTML when I should be >> generating HTML. I need to explore that more, but I wanted to understand >> my readily-available serialization options first. >> >> Thanks, >> >> Eliot >> >> bbbbb >> Eliot Kimber, Owner >> Contrext, LLC >> http://contrext.com
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] HTML/XHTML/HTML5 Serializ, Jirka Kosek jirka@xx | Thread | [xsl] Type of a variable containing, Jorge . chocolate.ca |
Re: [xsl] banging my head against t, Wendell Piez wapiez@ | Date | |
Month |