XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Conferences Close Tree View
+ Stylus Studio Feature Requests (1192)
- Stylus Studio Technical Forum (14621)
-> - Stylus Studio - Registrar en o... (1)
-> + Stylus Studio - Registrar en o... (2)
-> + Can a pipeline send a file by ... (2)
-> + After Updateing WIN10 to WIN11... (12)
-> + Where do I add the custom java... (3)
-> + Where is the Diagram tab? (5)
-> + Applying XSLT to Word DOCX/XML (2)
-> - CSV conversion via ConvertToXM... (1)
-> + Text symbols in SS not same as... (4)
-> + Exposing xquery as webservice ... (6)
-> + Syntax Identifier (2)
-> + Saving a Converted XML as an X... (5)
-> + Output document cannot be pars... (4)
-> - Archiving output from conversi... (1)
-> + EDIFACT guideline from Stylus ... (3)
-> + CSV file putting all the data ... (5)
-> + Can't install Home version 64b... (5)
-> + presale - Can I covers this sc... (5)
-> + Problem with UNB (5)
-> + Splitting EDIFACT files pipeli... (4)
-- [1-20] [21-40] [41-60] Next
+ Website Feedback (249)
+ XSLT Help and Discussion (7625)
+ XQuery Help and Discussion (2016)
+ Stylus Studio FAQs (159)
+ Stylus Studio Code Samples & Utilities (364)
+ Stylus Studio Announcements (113)
Topic  
Postnext
Shane McRobertsSubject: Tags not getting closed when generating HTML from XSLT
Author: Shane McRoberts
Date: 27 Sep 2005 12:09 PM
I'm trying to generate HTML from XML using XSLT, and I'm having trouble doing the simplest thing. For some reason my tags aren't getting closed for empty tags.

This XSL file:
================
<?xml version='1.0'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html>
<head>
</head>
<body>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
=======================
generates this output file:
=======================
<html><head><META http-equiv="Content-Type" content="text/html"></head><body></body></html>
=======================

Note that the closing / is missing from the META tag. I've tried it with the built-in processor and with Saxon (I ran into this on a 2.0 stylesheet, but it doesn't seem to matter). If you try inserting a <link rel="stylesheet"/> element, the same thing happens. In fact none of my empty tags are terminated.

What am I doing wrong?

Thanks,

Shane


Documenttest(1).xslt
sample xslt with link element

Postnext
(Deleted User) Subject: Tags not getting closed when generating HTML from XSLT
Author: (Deleted User)
Date: 27 Sep 2005 03:01 PM
Hi Shane,
your stylesheet is missing the xsl:output instruction, so it is assumed to generate an HTML page (because the root node is <html>).
According to the XSLT specs, "the html output method should not output an end-tag for empty elements. For HTML 4.0, the empty elements are area, base, basefont, br, col, frame, hr, img, input, isindex, link, meta and param. For example, an element written as <br/> or <br></br> in the stylesheet should be output as <br>."
If you want the XSLT to generate well-formed XML you should add the instruction <xsl:output method="xml"/> right after the <xsl:stylesheet> instruction.

Hope this helps,
Alberto

Postnext
Shane McRobertsSubject: Tags not getting closed when generating HTML from XSLT
Author: Shane McRoberts
Date: 28 Sep 2005 12:30 AM
Thanks Alberto. It *does* work if I use method="xml", but I don't understand why it doesn't work with method="xhtml" (that's what I originally started with before scaling back to try to narrow the problem). It's not xhtml if it's not valid or well-formed xml, right?

Cheers,

Shane

Postnext
Shane McRobertsSubject: Tags not getting closed when generating HTML from XSLT
Author: Shane McRoberts
Date: 28 Sep 2005 12:37 AM
One other side note. Isn't it weird that output method=xhtml causes the processor to emit a META tag rather than meta?

Postnext
Ivan PedruzziSubject: Tags not getting closed when generating HTML from XSLT
Author: Ivan Pedruzzi
Date: 28 Sep 2005 12:48 AM
xhtml method is only supported by XSLT 2.0.

XSLT 1.0 supports text, xml or html


Ivan Pedruzzi
Stylus Studio Team

Postnext
Shane McRobertsSubject: Tags not getting closed when generating HTML from XSLT
Author: Shane McRoberts
Date: 28 Sep 2005 05:23 PM
Originally Posted: 28 Sep 2005 04:28 PM
>xhtml method is only supported<br> >by XSLT 2.0.<br> <br> Yes, I realize that. And when I use it I get the same results--open tags and upper case META. If simply changing the "1.0" to "2.0" and using Saxon 8.4 isn't sufficient to make the processor use XSLT 2.0, then that might be part of my problem.

Postnext
Tony LavinioSubject: Tags not getting closed when generating HTML from XSLT
Author: Tony Lavinio
Date: 12 Oct 2005 12:17 AM
We have identified the trouble with the XSLT 2.0 xhtml output method.
The next release will resolve this.

Posttop
Shane McRobertsSubject: Tags not getting closed when generating HTML from XSLT
Author: Shane McRoberts
Date: 21 Oct 2005 02:45 PM
Originally Posted: 21 Oct 2005 12:23 PM
you're welcome

   
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.