[Expat-discuss] numeric entities

Karl Waclawek karl at waclawek.net
Mon Nov 22 14:59:24 CET 2004


I am not a build specialist, but can our build process
take that into account? Which C compiler are you using?
When you build, the symbol __GNUC__ obviously gets defined,
but I guess it should not.

Karl

----- Original Message ----- 
From: "Lee Brown" <lee at puddledock.net>
To: <expat-discuss at libexpat.org>
Sent: Monday, November 22, 2004 12:30 AM
Subject: Re: [Expat-discuss] numeric entities


> So my problem appears to be a problem with my port to Unixware 2.1.3.  The
> parameters passed into XmlUtf8Encode were corrupted on entry to the
> function.  I changed internal.h to define the FASTCALL macro and the other
> macros of that group as empty strings and then I got the behavior I wanted.
> 
> Thanks Karl and Rolf,
> Lee
> 
> ----- Original Message ----- 
> From: "Karl Waclawek" <karl at waclawek.net>
> To: "Lee Brown" <lee at puddledock.net>; <expat-discuss at libexpat.org>
> Sent: Sunday, November 21, 2004 10:09 PM
> Subject: Re: [Expat-discuss] numeric entities
> 
> 
> > I ran xmlwf -m -d tmp < test.xsl just like you
> > (the -c is superfluous in this case) and my output is:
> >
> > <document>
> > <starttag name="outer" byte="23" nbytes="7" line="2" col="0"/>
> > <chars str="&#10;" byte="30" nbytes="2" line="2" col="7"/>
> > <starttag name="text" byte="32" nbytes="6" line="3" col="0"/>
> > <chars str="BEFORE" byte="38" nbytes="6" line="3" col="6"/>
> > <chars str="@" byte="44" nbytes="5" line="3" col="12"/>
> > <chars str="&amp;" byte="49" nbytes="5" line="3" col="17"/>
> > <chars str="AFTER" byte="54" nbytes="5" line="3" col="22"/>
> > <endtag name="text" byte="59" nbytes="7" line="3" col="27"/>
> > <chars str="&#10;" byte="66" nbytes="2" line="3" col="34"/>
> > <endtag name="outer" byte="68" nbytes="8" line="4" col="0"/>
> > </document>
> >
> > I am running Expat built from current CVS on VS C++ 6.0.
> > I can't recall a recent bug regarding character references.
> >
> > Maybe you should try the pre-built distribution, and if that
> > one works for you, have a look at your Expat build.
> >
> > Karl
> >
> > ----- Original Message ----- 
> > From: "Lee Brown" <lee at puddledock.net>
> > To: <expat-discuss at libexpat.org>
> > Sent: Sunday, November 21, 2004 8:32 PM
> > Subject: Re: [Expat-discuss] numeric entities
> >
> >
> > > Okay, I used xmlwf from 1.95.8 this way:
> > >
> > > xmlwf -c -m -d tmp < test.xsl
> > >
> > > test.xsl looks like this:
> > >
> > > <?xml version="1.0"?>
> > > <outer>
> > > <text>BEFORE&#64;&amp;AFTER</text>
> > > </outer>
> > >
> > > The output file looks like this:
> > >
> > > <document>
> > > <starttag name="outer" byte="22" nbytes="7" line="2" col="0"/>
> > > <chars str="&#10;" byte="29" nbytes="1" line="2" col="7"/>
> > > <starttag name="text" byte="30" nbytes="6" line="3" col="0"/>
> > > <chars str="BEFORE" byte="36" nbytes="6" line="3" col="6"/>
> > > <chars str="" byte="42" nbytes="5" line="3" col="12"/>
> > > <chars str="&amp;" byte="47" nbytes="5" line="3" col="17"/>
> > > <chars str="AFTER" byte="52" nbytes="5" line="3" col="22"/>
> > > <endtag name="text" byte="57" nbytes="7" line="3" col="27"/>
> > > <chars str="&#10;" byte="64" nbytes="1" line="3" col="34"/>
> > > <endtag name="outer" byte="65" nbytes="8" line="4" col="0"/>
> > > </document>
> > >
> > > Notice the strings "BEFORE" and "AFTER" in the input file, which are
> > > separated by a numeric entity (the value of the at-sign) and a standard
> > > entity.  The standard entity is repeated as a character value in the
> xmlwf
> > > output, but the numeric entity is discarded.
> > >
> > > But, if I do not use the -m option, I do see an exact copy of my input
> file.
> > >
> > > This is the behavior I might expect for external entities, but it is my
> > > understanding that numeric entities should work like the "standard"
> > > pre-defined entities.
> > >
> > > It is important to repeat that this appears to be a change in the
> behavior
> > > from an earlier release.  Is this a bug that everyone sees, or is it a
> bug
> > > in my port (in which case are there any suggestions about where to
> look), or
> > > is my XML file incorrect (in which case, what would be correct)?
> > >
> > > P.S., the xmlwf man page asks why anyone would want to use the -c, -m,
> > > and -d options.  I found them quite useful to see if expat would indeed
> make
> > > an exact copy of the input.
> > >
> > > Thanks,
> > > Lee
> > >
> > >
> > > ----- Original Message ----- 
> > > From: "Karl Waclawek" <karl at waclawek.net>
> > > To: <expat-discuss at libexpat.org>
> > > Sent: Sunday, November 21, 2004 6:04 PM
> > > Subject: Re: [Expat-discuss] numeric entities
> > >
> > >
> > >> I suggest you test this with Expat directly.
> > >>
> > >> Karl
> > >>
> > >> ----- Original Message ----- 
> > >> From: "Lee Brown" <lee at puddledock.net>
> > >> To: <expat-discuss at libexpat.org>
> > >> Sent: Sunday, November 21, 2004 5:27 PM
> > >> Subject: [Expat-discuss] numeric entities
> > >>
> > >>
> > >> The handling of numeric entities changed between releases 1.95.5 and
> > > 1.95.8, such that in 1.95.8
> > >> numeric entities seem to be ignored during output.
> > >>
> > >> Example XSL file:
> > >>
> > >> <?xml version="1.0"?>
> > >> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> > > version="1.0">
> > >> <xsl:output method="text"/>
> > >> <xsl:template match="/test">
> > >>         <xsl:for-each select="line">
> > >>                 <xsl:value-of select="."/>
> > >>                 <xsl:text>&#64;</xsl:text>
> > >>                 <xsl:text>&amp;</xsl:text>
> > >>         </xsl:for-each>
> > >> </xsl:template>
> > >> </xsl:stylesheet>
> > >>
> > >> Example XML input file:
> > >>
> > >> <?xml version="1.0"?>
> > >> <test>
> > >> <line>line one</line>
> > >> <line>line two</line>
> > >> <line>line three</line>
> > >> </test>
> > >>
> > >> I'm using Sablotron's sabcmd.  When linked with expat 1.95.5 each
> output
> > > line is followed by an
> > >> at-sign (#64) and an ampersand.  When linked with expat 1.95.8 each
> line
> > > is followed only by an
> > >> ampersand.
> > >>
> > >> Is this intentional?  Or am I the only one experiencing this (I have my
> > > own port of expat built from
> > >> source)?  Anyone know how to write out the value of a numeric entity?
> > >>
> > >> Thanks,
> > >> Lee
> > >> _______________________________________________
> > >> Expat-discuss mailing list
> > >> Expat-discuss at libexpat.org
> > >> http://mail.libexpat.org/mailman/listinfo/expat-discuss
> > >>
> > >> _______________________________________________
> > >> Expat-discuss mailing list
> > >> Expat-discuss at libexpat.org
> > >> http://mail.libexpat.org/mailman/listinfo/expat-discuss
> > >>
> > >
> > > _______________________________________________
> > > Expat-discuss mailing list
> > > Expat-discuss at libexpat.org
> > > http://mail.libexpat.org/mailman/listinfo/expat-discuss
> > >
> 
> _______________________________________________
> Expat-discuss mailing list
> Expat-discuss at libexpat.org
> http://mail.libexpat.org/mailman/listinfo/expat-discuss
> 


More information about the Expat-discuss mailing list