Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > XML > [XSL XHTML]   entity problem

Reply
Thread Tools

[XSL XHTML]   entity problem

 
 
Tjerk Wolterink
Guest
Posts: n/a
 
      03-18-2005
In XHTML the entity nbsp stands for  

A normal space like " " is also displayed as an normal space,
but multiple spaces like " " are interpreted as 1 space in the
xhtml page.
So there comes the   in handy: with "  " you have two
spaces. So with the nbsp entity you can create multiple spaces (in the display).

Now i have an xml file with   entities,
i put it in an xsl-file that know xhtml entities.
But the output of this:

"  "

is translated (correctly) to:

" "

But now the whole point of the   entity in xhtml is gone!!
How do you solve this problem
 
Reply With Quote
 
 
 
 
Richard Tobin
Guest
Posts: n/a
 
      03-18-2005
In article <423aba7f$0$81519$(E-Mail Removed)>,
Tjerk Wolterink <(E-Mail Removed)> wrote:

&nbsp; is defined as   which is a reference to the
non-breaking-space character. If you have a way to type it in, you
can perfectly well use that character directly instead of using an
entity or reference, and it is different from an ordinary space
character even though it may look the same when you look at the file.

>"&nbsp;&nbsp;"
>
>is translated (correctly) to:
>
>" "


So those blank spaces between the quotes should be perfectly good
non-breaking-space characters, not ordinary spaces, and should work
just like &nbsp; references in XHTML.

-- Richard
 
Reply With Quote
 
 
 
 
Tjerk Wolterink
Guest
Posts: n/a
 
      03-18-2005
Richard Tobin wrote:
> In article <423aba7f$0$81519$(E-Mail Removed)>,
> Tjerk Wolterink <(E-Mail Removed)> wrote:
>
> &nbsp; is defined as   which is a reference to the
> non-breaking-space character. If you have a way to type it in, you
> can perfectly well use that character directly instead of using an
> entity or reference, and it is different from an ordinary space
> character even though it may look the same when you look at the file.
>
>
>>"&nbsp;&nbsp;"
>>
>>is translated (correctly) to:
>>
>>" "

>
>
> So those blank spaces between the quotes should be perfectly good
> non-breaking-space characters, not ordinary spaces, and should work
> just like &nbsp; references in XHTML.
>
> -- Richard


so you mean that " " and " " can be different characters?
 
Reply With Quote
 
Richard Tobin
Guest
Posts: n/a
 
      03-18-2005
In article <423ac86b$0$4580$(E-Mail Removed)>,
Tjerk Wolterink <(E-Mail Removed)> wrote:

>so you mean that " " and " " can be different characters?


Yes, Unicode has several different characters that may look like that.

-- Richard
 
Reply With Quote
 
Tjerk Wolterink
Guest
Posts: n/a
 
      03-18-2005
Richard Tobin wrote:
> In article <423ac86b$0$4580$(E-Mail Removed)>,
> Tjerk Wolterink <(E-Mail Removed)> wrote:
>
>
>>so you mean that " " and " " can be different characters?

>
>
> Yes, Unicode has several different characters that may look like that.
>
> -- Richard


i have foudn a smart solution:

<!DOCTYPE stylesheet [
<!ENTITY nbsp
"<xsl:text disable-output-escaping='yes'>&amp;nbsp;</xsl:text>">
]>

now it works
 
Reply With Quote
 
Richard Tobin
Guest
Posts: n/a
 
      03-18-2005
In article <423acdf8$0$87478$(E-Mail Removed)>,
Tjerk Wolterink <(E-Mail Removed)> wrote:
>now it works


It should have worked anyway!

-- Richard

 
Reply With Quote
 
Martin Honnen
Guest
Posts: n/a
 
      03-18-2005


Tjerk Wolterink wrote:

> i have foudn a smart solution:
>
> <!DOCTYPE stylesheet [
> <!ENTITY nbsp
> "<xsl:text disable-output-escaping='yes'>&amp;nbsp;</xsl:text>">
> ]>


Use it if your circumstances allow it and require it but be aware that
disable-output-escaping is an optional feature that is not supported by
every XSLT processor respectively output mode, for instance when the
result of the transformation is a tree that is not serialized then it
usually doesn't work.

--

Martin Honnen
http://JavaScript.FAQTs.com/
 
Reply With Quote
 
Tjerk Wolterink
Guest
Posts: n/a
 
      03-18-2005
Richard Tobin wrote:
> In article <423acdf8$0$87478$(E-Mail Removed)>,
> Tjerk Wolterink <(E-Mail Removed)> wrote:
>
>>now it works

>
>
> It should have worked anyway!
>
> -- Richard
>


i know what you mean, maybe the output document is valid and the " " is really a
non breaking space. the fact is that browsers like IE do not treat it like that.

But anyways, thanks for your help
 
Reply With Quote
 
Jukka K. Korpela
Guest
Posts: n/a
 
      03-19-2005
Tjerk Wolterink <(E-Mail Removed)> wrote:

> i know what you mean, maybe the output document is valid


How would validity be relevant here? (I suspect you are using the word
"valid" in some non-XML and not-so-well defined meaning.)

> and the " " is really a non breaking space.


No, what you have typed here is surely a normal space. You could not
have included a no-break space (that's the term, btw) into your
posting, since your message headers specify 7bit transfer.

I wonder why you use &nbsp; in the first place. Why don't you simply
write no-break spaces in whatever encoding you are using? If your
authoring tool does not let you type them easily, maybe you need a
better tool, or to find out how to define keyboard macros in the tool
you are using, or something. Even in Notepad you can type no-break
spaces. (Typing Alt 0160 is not very convenient, but it's comparable to
typing the six characters &nbsp;.)

> the fact is that browsers like IE
> do not treat it like that.


The fact is that browsers, even IE, treat the no-break space exactly as
the &nbsp; or   reference when processing an HTML document. You
have done something wrong. In the absence of specific information, such
as a URL of a demo page, it is impossible to say what went wrong.

--
Yucca, http://www.cs.tut.fi/~jkorpela/
 
Reply With Quote
 
Richard Tobin
Guest
Posts: n/a
 
      03-19-2005
In article <Xns961EA0E60C636jkorpelacstutfi@193.229.0.31>,
Jukka K. Korpela <(E-Mail Removed)> wrote:
>The fact is that browsers, even IE, treat the no-break space exactly as
>the &nbsp; or   reference when processing an HTML document. You
>have done something wrong. In the absence of specific information, such
>as a URL of a demo page, it is impossible to say what went wrong.


If you want to try to track down the problem, you could try setting
the output encoding of your stylesheet to ascii (using the encoding
attribute of the xslutput element). The processor will then have to
use a character reference to output any non-breaking spaces (since
they aren't in the ascii character set), so you will be able to see
them more easily.

-- Richard
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Entity, problem with entity key ThatsIT.net.au ASP .Net 1 09-07-2009 02:20 AM
Entity Framework - Reassigning child entity's parent Norm ASP .Net 3 07-06-2009 07:28 PM
How to relate a SQL based entity with an Object based entity in Entity Framework markla ASP .Net 1 10-06-2008 09:42 AM
Entity Name or Entity Number? Samuel van Laere HTML 4 02-24-2007 10:11 PM
Problem clearing a session entity Simon Harvey ASP .Net 0 08-16-2004 09:01 AM



Advertisments