xsl-list
[Top] [All Lists]

RE: [xsl] handling tags and PIs within a macro

2007-10-23 07:52:27

Hi Michael,

So how do you explain the fact that those macros are
parsed properly by the XSLTPROC according to the
defined templates, unless the macro contains the
mentioned problematic items? To add more information,
I am using Docbook XML.

Best regards,
Nancy

--- Michael Kay <mike(_at_)saxonica(_dot_)com> wrote:

XSLT can only handle well-formed XML input
documents. Your input is not
well-formed XML (in other words, it is not XML at
all, since there is no
other kind). Sorry, but XML is the name of this game
and you can't break the
rules.

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

-----Original Message-----
From: Nancy Brandt [mailto:nancy_brndt(_at_)yahoo(_dot_)com] 
Sent: 23 October 2007 15:10
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] handling tags and PIs within a
macro

Hi guys,

I have created templates by the help of which, the
compiler 
will parse my macros for graphics, chunks of table
entries, 
etc. The problem is that when a macro is parsed by
its 
template defined in .xsl file, the compiler cannot
handle 
such processing instructions as <sbr\>, <xref.../>
 
<command>, etc that are within the macro's text.
The compiler says:
parser error : Unescaped '<' not allowed in
attributes 
values. How do I create a template within each
macro 
template, so that those processing instructions in
the <> 
format will be handled regularly, without changing
their 
format to &lt;...&gt;?

Please, advise!

P.S. here is an example of a table row macro (and
within this 
row there could be all these problematic PIs.

<xsl:template match="j_entry">
<row>
  <entry>
  <xsl:element name="formalpara">
    <xsl:attribute name="id">
      <xsl:value-of select="@fid"/>
     </xsl:attribute>
     <title>
       <xsl:value-of select="@cmd"/>
     </title>
  </xsl:element>

  <formalpara>
    <title>Description</title>
    <xsl:value-of select="@dsc"/>
  </formalpara>

  <formalpara>
    <title>Relevant to</title>
    <xsl:value-of select="@rel"/>
  </formalpara>

  <formalpara>
    <title>Type</title>
    <xsl:value-of select="@t"/>
  </formalpara>
  
  <formalpara>
    <title>Default Value</title>
    <xsl:value-of select="@val"/>
  </formalpara>
  </entry>
</row>
</xsl:template>

The macro in the XML source file looks like this:

<j_entry cmd="admin/user/mail" dsc="Quota of a
mailbox in 
Megabytes. The default value is taken from the
mail server 
default quota (see entry <xref linkend='mta_quota'

xrefstyle='template:%t on page %p'/>)." rel="Mail
Server" 
t="integer" ver="4.0"
val="30"/>

Thanks in advance!
Kind regard,
Nancy

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam
protection 
around http://mail.yahoo.com 



--~------------------------------------------------------------------
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>
--~--




--~------------------------------------------------------------------
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>
--~--




__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

--~------------------------------------------------------------------
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>
--~--