xsl-list
[Top] [All Lists]

Re: [xsl] Re: UTF characters

2010-03-31 07:45:41
At 2010-03-31 18:07 +0530, Siddhi Thakkar wrote:
Hi again,
Here is an example of the query asked earlier, suppose I have two paragraphs:

PARA1: <p>INTRODUCTION- This is plain text</p>
PARA2: <p>INTRODUCTION- This is text with UTF character â?¦ </p>

AND if write something like:
<xsl:template match="p">
   <xsl:if test="contains(text(),'INTRODUCTION')">
       <!--do something-->
   </xsl:if>
</xsl:template>
Both the paragraphs will enter this xsl:if loop. Similarly, I would like to write a function or template which enters the xsl:if loop only if it comes across a UTF character, and please note that the input can have any UTF from its generic family.

Now it sounds like you are asking about character encoding and not character sets. That is a very different question from your first question:

I would like to know if there are any built-in ways in XSLT for the processor to know about the unicode characters in input xml. Could you please help?

All XML processing is based on Unicode characters and is independent of the character encoding used to represent those Unicode characters. By the time XSLT is acting on the source node tree, any knowledge or awareness of the character set used to encode the Unicode characters is long gone.

But perhaps you are asking "does the text contain characters outside of those found in the ASCII table?" ... which I see as a third question.

Both your PARA1 and PARA2 examples are encoded using UTF. Both contain characters in Unicode. Only PARA2 has characters that are outside of the ASCII table.

 <xsl:template match="p">
   <xsl:if test="string-to-codepoints(.) > 127">
      <!--the string has a non-ASCII character-->
   </xsl:if>
 </xsl:template>

This works because of the use of ">" to test a node set against a scalar value ... the test is true if *any* of the comparisons is true. The test is false only when all of the tests are false.

I hope this helps.

. . . . . . . . . Ken


--
XSLT/XQuery training:         San Carlos, California 2010-04-26/30
Principles of XSLT for XQuery Writers: San Francisco,CA 2010-05-03
XSLT/XQuery training:                 Ottawa, Canada 2010-05-10/14
XSLT/XQuery/UBL/Code List training: Trondheim,Norway 2010-06-02/11
Vote for your XML training:   http://www.CraneSoftwrights.com/s/i/
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
G. Ken Holman                 mailto:gkholman(_at_)CraneSoftwrights(_dot_)com
Male Cancer Awareness Nov'07  http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--

<Prev in Thread] Current Thread [Next in Thread>