I've seen that the ampersand gets interpreted as HTML on the mailing list.
I'm sending the example as an attachment.
Here's a modified version to be seen on the mailing list site:
\startbuffer[test]
<text>
<!-- with following semicolon: ampersand and semicolon are eaten -->
<p>Me &amp; my friends; you &amp; your friends.</p>
<!-- without following semicolon: everything ok -->
<p>Me &amp; my friends. You &amp; your friends.</p>
<!-- way around: place a comment after the ampersand -->
<p>Me &amp;<!-- --> my friends; you &amp; your friends.</p>
</text>
\stopbuffer
\startxmlsetups xml:somesetups
\xmlsetsetup{#1}{text}{xml:text}
\xmlsetsetup{#1}{p}{xml:p}
\stopxmlsetups
\xmlregistersetup{xml:somesetups}
\startxmlsetups xml:text
\xmlflush{#1}
\stopxmlsetups
\startxmlsetups xml:p
\xmlflush{#1}\par\blank[line]
\stopxmlsetups
\starttext
\xmlprocessbuffer{main}{test}{}
\stoptext
\startbuffer[test]
<text>
<!-- with following semicolon: ampersand and semicolon are eaten -->
<p>Me & my friends; you & your friends.</p>
<!-- without following semicolon: everything ok -->
<p>Me & my friends. You & your friends.</p>
<!-- way around: place a comment after the ampersand -->
<p>Me &<!-- --> my friends; you & your friends.</p>
</text>
\stopbuffer
\startxmlsetups xml:somesetups
\xmlsetsetup{#1}{text}{xml:text}
\xmlsetsetup{#1}{p}{xml:p}
\stopxmlsetups
\xmlregistersetup{xml:somesetups}
\startxmlsetups xml:text
\xmlflush{#1}
\stopxmlsetups
\startxmlsetups xml:p
\xmlflush{#1}\par\blank[line]
\stopxmlsetups
\starttext
\xmlprocessbuffer{main}{test}{}
\stoptext___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : [email protected] / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://tex.aanhet.net
archive : http://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________