[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: spacing issue

Subject: RE: spacing issue
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Sat, 4 Jun 2005 22:39:27 +0100
xsl spacing
I meant, specify indent="no" in xsl:output.

If this doesn't solve the problem then I need to look at it more carefully.

You definitely should not try to handle this using d-o-e.

Michael Kay
http://www.saxonica.com/ 

> -----Original Message-----
> From: Spencer Tickner [mailto:spencertickner@xxxxxxxxx] 
> Sent: 04 June 2005 22:03
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: Re:  spacing issue
> 
> Thanks for the post, 
> 
> I'm not sure Michael; when you say "don't use indenting" do you mean
> in the output declaration (I have already changed this to 'no'), or in
> the xslt document itself? I was able to fix the problem using
> disable-output-escaping="yes" with &lt; and &gt;. However I get the
> feeling that these kinds of things should be avoided.
> 
> Either way it is up and looking good, I do appreciate the post.
> 
> Cheers, 
> 
> Spencer
> 
> On 6/4/05, Michael Kay <mike@xxxxxxxxxxxx> wrote:
> > The XSLT 2.0 rules on this are rather more precise than the 
> 1.0 rules
> > (although the details are in a non-normative note), and the 
> behaviour you
> > are seeing is consistent with those rules:
> > 
> > http://www.w3.org/TR/xslt-xquery-serialization/#HTML_INDENT
> > 
> > Basically these rules mean that unrecognized elements are treated as
> > block-level elements, not as inline elements.
> > 
> > In effect this means that since you're not using standard 
> HTML, the standard
> > HTML indenting rules don't meet your needs. So the answer 
> seems to be: don't
> > use indenting.
> > 
> > Michael Kay
> > http://www.saxonica.com/
> > 
> > 
> > 
> > > -----Original Message-----
> > > From: Spencer Tickner [mailto:spencertickner@xxxxxxxxx]
> > > Sent: 04 June 2005 18:46
> > > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > > Subject: Re:  spacing issue
> > >
> > > I have turned indent="yes" to "no", added strip-space 
> elements="*",
> > > played with the output method.. I've got it close but still have a
> > > space in the brakets due to a carriage return I just 
> cannot get rid
> > > of:
> > >
> > > <p class="para">(
> > >        <insert><span class="insert">t.1</span></insert>)&nbsp;
> > >        <insert><span class="insert">granting 
> authorization to members
> > > to provide accounting services to the public through 
> limited liability
> > > partnerships;</span></insert>
> > > </p>
> > >
> > > I realize that <insert> is not a html tag, however we use it as a
> > > indexing field for our search engine. So am I correct in 
> assuming that
> > > there is no way to tell Saxon that all tags and text 
> between the ()'s
> > > must be on one line?
> > >
> > >
> > > On 6/4/05, Michael Kay <mike@xxxxxxxxxxxx> wrote:
> > > > You're using indent=yes, with the HTML output method, and
> > > you're using an
> > > > element in your result tree (insert) that isn't defined in
> > > HTML, so the
> > > > processor doesn't know what the rules are, and is 
> making up its own.
> > > >
> > > > If this happens with inline elements that are defined in
> > > the HTML spec, such
> > > > as span, then you have grounds for complaint. But if you're
> > > going to use
> > > > non-standard HTML, then you should either avoid using the
> > > HTML output
> > > > method, or avoid indent="yes".
> > > >
> > > > Michael Kay
> > > > http://www.saxonica.com/
> > > >
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Spencer Tickner [mailto:spencertickner@xxxxxxxxx]
> > > > > Sent: 03 June 2005 23:00
> > > > > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> > > > > Subject:  spacing issue
> > > > >
> > > > > Hi everyone, thank you all in advance for the help,
> > > > >
> > > > > I am getting strange spaces in my output. A sample of my code
> > > > > is below:
> > > > >
> > > > > XSLT
> > > > >
> > > > > <?xml version="1.0" encoding="utf-8"?>
> > > > > <xsl:stylesheet version="2.0"
> > > > > xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
> > > > >       <xsl:output method="html" indent="yes"
> > > > > omit-xml-declaration="yes"
> > > > > encoding="ISO-8859-1" name="html"/>
> > > > >
> > > > > <xsl:template match="/">
> > > > >       <p class="sub">(<xsl:apply-templates
> > > > > select="subsectionnumber"/>)&#xA0; <xsl:apply-templates
> > > > > select="subsectiontext"/></p>
> > > > > </xsl:template>
> > > > >
> > > > > <xsl:template match="subsectionnumber">
> > > > >       <xsl:apply-templates
> > > > >
> > > 
> select="text()|strong|a|graphic|em|sup|sub|u|insert|br|eacute|hr"/>
> > > > > </xsl:template>
> > > > >
> > > > > <xsl:template match="text()">
> > > > >       <xsl:value-of select="."/>
> > > > > </xsl:template>
> > > > >
> > > > > <xsl:template match="insert">
> > > > >       <p class="insert"><xsl:apply-templates/></p>
> > > > > </xsl:template>
> > > > >
> > > > > Sample xml
> > > > >
> > > > > <subsectionnumber><insert>2</insert></subsectionnumber>
> > > > > <subsectiontext>Here is some text for subsection
> > > 2</subsectiontext>
> > > > >
> > > > > Output.
> > > > >
> > > > > Without the insert tags in the above line everything is
> > > sweet as some
> > > > > kind of sweet candy. However with insert in the xml 
> (and any other
> > > > > inline element) I get spaces around my subsectionnumber.
> > > > >
> > > > > Example
> > > > >
> > > > > Without <insert>
> > > > >
> > > > > <p class="sub">(2)&nbsp; A bylaw passed by the board may be
> > > > > repealed,</p>
> > > > >
> > > > > With <insert>
> > > > >
> > > > > <p class="para">(
> > > > >
> > > > >         <insert><span class="insert">t.1</span></insert>
> > > > >
> > > > >                                       )
> > > > >                       &nbsp;
> > > > >
> > > > >             <insert><span class="insert">granting 
> authorization to
> > > > > members</span></insert>
> > > > >
> > > > >          </p>
> > > > >
> > > > >
> > > > > What I need?
> > > > >
> > > > > Ok, so the code is ugly, I for one am not a stickler for
> > > beautifully
> > > > > formatted code, however  I have to get rid of the extra
> > > space put in
> > > > > by the browser for the carriage returns. ie ( t.1 ).
> > > > >
> > > > > Any help would be great.
> > > > >
> > > > > Spencer

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.