You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by Kljopov Sergey <kl...@wetellyou.com> on 2000/09/01 14:49:23 UTC
RE: cannot force generation of " inside attribute value string
Try to patch FormatterToXML -
in method processAttribute:
protected void processAttribute(String name, String value)
throws SAXException
{
char delim = ( (isContainsIn('\"', value) == true) ? '\'' : '\"' );
accum(' ');
accum('=');
accum(delim);
writeAttrString(value, this.m_encoding);
accum(delim);
/** it's older code
accum(' ');
accum(name);
accum("=\"");
writeAttrString(value, this.m_encoding);
accum('\"');
*/
}
isContainsIn(char, String) returns true if char contains in String else
returns false
> -----Original Message-----
> From: greg@valinux.com [mailto:greg@valinux.com]On Behalf Of
> greg keraunen
> Sent: Thursday, August 31, 2000 4:31 AM
> To: xalan-dev
> Cc: James Byers
> Subject: cannot force generation of " inside attribute value string
>
>
> dear friends,
>
> I am having a problem producing xml output that includes double-quotes
> inside of an attribute value.
> Quotes are always converted to ", even when I try to use CDATA
> sections or <xsl:text disable-output-escaping="yes">.
> It does not matter what output mode I use: XML or HTML, the problem
> persists.
>
> This is what I want:
> <input type="text" name="vg_answer.qa[1]" value="<?php echo
> global_get(
> "vg_answer.qa[1]" ); ?>">
>
> This is what I am getting:
> <input type="text" name="vg_answer.qa[1]" value="<?php echo
> global_get(
> "vg_answer.qa[1]"; ) ?>">
>
> I know I could hack around this problem by generating the <input>
> element as a <xsl:text> element instead of letting it go into
> the output
> tree as and <input> element. But that won't work in this application
> because I need to set the value attribute of the <input> element using
> <xsl:attribute> and copy all of the other pre-existing attributes from
> the input xml file.
>
> Any ideas?
>
> --
> greg keraunen <gk...@valinux.com> 408-542-8600 x8085
> web software engineer
>