XML无法在XML编辑器中打开

时间:2014-11-05 12:02:24

标签: xml

创建的XML未在浏览器中打开,并且会引发错误。

我的xml:

  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <newsitem>
<contentmeta>
<contentCreated>05/11/2014</contentCreated>
<contentModified>05/11/2014</contentModified>
 <classification1>*NULL*</classification1>
  <classification2>*NULL*</classification2>
  <geolocation1>*NULL*</geolocation1>
 <geolocation2>*NULL*</geolocation2>
<title>1</title>
 <headline>2</headline>
<subtitle>3</subtitle>
 <dateline>4</dateline>
  <bodytext>5 4 3 2 1<b><br>5 4 3 2</b><b><br>5 4 3</b><b><br>5 4</b><b><br>5</b> </bodytext>  ---> Error in this line
 <Keywords>*NULL*</Keywords>
 <pdfurl>BGL_2014_11_05_AM_01_MN.PDF</pdfurl>
</contentmeta>
</newsitem>

错误: 无法显示XML页面 无法使用XSL样式表查看XML输入。请更正错误,然后单击“刷新”按钮,或稍后重试。


结束标记'b'与开始标记'br'不匹配。处理资源'file:/// C:/ Documents and Settings / admin / My Docume ...

时出错

5 4 3 2 1
5 4 3 2

5 4 3

5 4

3 个答案:

答案 0 :(得分:2)

您的bodytext元素看起来似乎包含HTML,但是您按字面意思输入它,因此它被视为XML。

XML是严格的 - 每个元素必须具有匹配的结束元素,并且是“平衡的”。对于<br>元素,它们没有匹配的结束元素。

您有两种选择。您可以关闭<br>之类的<br />元素,也可以将bodytext视为CDATA,如下所示:

 <bodytext><![CDATA[ 5 4 3 2 1<b><br>5 4 3 2</b><b><br>5 4 3</b><b><br>5 4</b><b><br>5</b>  ]]></bodytext>

后者可能更为可取,因为XML和HTML背后的语义并不完全相同(否则你基本上强迫自己编写XHTML)。这允许您输入任何您想要的内容,而不是将其视为XML。

答案 1 :(得分:1)

就像消息中所说:在关闭当前b代码之前,您会关闭br代码。请记住,这是XML,而不是HTML;如果您的标签没有结束标记(例如br),则必须使用<br/>进行标记。 (就像@gp。所说,但更简洁。)

答案 2 :(得分:1)

br标记未关闭!

将其关闭为<br/><br> ... </br>