Как обращаться со специальными символами в URL-адресах внутри XML

У меня есть элемент XML, который имеет URL-адрес как один из его дочерних элементов, например:
http://maps.google.com/FortWorth&Texas,more+url;data

При анализе этого вопроса у меня возникают две проблемы:
1.) Символ ( & ) разбивает весь синтаксис, если не заменен на & amp (что нарушает URL)
2.) Запятая ( , ) пытается отправить мой синтаксический анализатор следующему ребенку, что приводит к неполному URL-адресу.

Что я могу сделать, чтобы исправить это?
Я использую Javascript и PHP.

Замена & с помощью & не должен нарушать URL. Вы не оставили?

Лучшее решение – вы должны обернуть это в тег CDATA:

<![CDATA[ http://maps.google.com/FortWorth&Texas,more+url;data ]]>

Что говорит синтаксическому анализатору XML рассматривать его как текст, а не анализировать &.

Существуют определенные символы, которые недействительны в XML – вам нужно «убежать» от них в XML-документе.

Эти символы и их «экранированные» версии:

 > &gt; < &lt; & &amp; ' &apos; " &quot;