Semicolon in source XML being treated as argument delimiter?

We're having some trouble with a XYMacro for our table of contents when the input contains a semicolon. It seems likely that the semicolon is being treated as an argument delimiter at some point and the text following it is not being output.

Source XML

<?Pub partStartNumberAndText="PART X: REVOCATION OF PROBATION AND MANDATORY SUPERVISION; PAROLE HEARINGS" chapterNumber="46" >

macro

<mc; $${partStartNumberAndText}; partStart(${partStartNumberAndText});nul>${chapterNumber}

partStart macro

<me;0><sz;11q>$1<ql><lp;9q><mh;1q><qa><sz;14q><lz><me;2.1p><mb;-2q>

The resulting text is "PART X: REVOCATION OF PROBATION AND MANDATORY SUPERVISION" without the "; PAROLE HEARINGS".

Any advice for avoiding this problem would be appreciated.