XML格式错误,但我不知道为什么

时间:2011-01-11 12:28:52

标签: xml

我有以下XML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<results>
<ip>195.72.186.157</ip>
<country>UNITED KINGDOM (UK)</country>
<city>Oxford</city>
<latitude>51.75</latitude>
<longitude>-1.25</longitude>
<staticmap>http://maps.google.com/maps/api/staticmap?center=51.75,-1.25&sensor=false&zoom=13&size=500x300</staticmap>
<dynamicmap>http://maps.google.co.uk/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=51.75,-1.25&amp;sll=52.7115,-2.0006&amp;sspn=0.07831,0.264187&amp;ie=UTF8&amp;ll=51.75,-1.25&amp;spn=0.048204,0.132093&amp;z=14&amp;output=embed</dynamicmap>
</results>

问题是,当我验证它时,它会变得格格不入。它不喜欢的问题是一个等号。它的问题是什么?我在这里验证了它:

http://www.w3schools.com/dom/dom_validate.asp

3 个答案:

答案 0 :(得分:6)

你错过了一个放大器;在staticmap元素中的sensor参数旁边。实际上,您需要对该元素值中的所有&符号进行编码。

答案 1 :(得分:2)

您需要在Google地图网址中对您的&号进行编码,即

<staticmap>http://maps.google.com/maps/api/staticmap?center=51.75,-1.25&amp;sensor=false&amp;zoom=13&amp;size=500x300</staticmap>

你是为<dynamicmap>而不是<staticmap>

做的

答案 2 :(得分:0)

这些字符在xml中保留。你可以用它们的charcode替换它们(使用&amp; #NNN;)或将它们包装在CDATA部分中