导致xmllint警告的原因是什么?

时间:2010-10-27 08:12:12

标签: xml lint

我正在为我们的集成服务器编写一个插件,它使用libxml2的xmllint命令行工具来验证XML文件。根据{{​​3}},xmllint有一个--nowarning选项可以抑制警告。

现在,我的问题很简单,我可能只是错过了一些明显的东西,但是什么原因引起了这样的警告?如果我不知道它究竟是什么样子,那么解析输出有点困难: - )

1 个答案:

答案 0 :(得分:2)

如果解析或验证文档时出现问题,可能会发出警告。

这是一个简单的示例,其中由于xml版本无效而发出警告:

<?xml version="dummy"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>

运行它:

$ xmllint test.xml
test.xml:1: warning: Unsupported version 'dummy'
<?xml version="dummy"?>
                     ^
<?xml version="dummy"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>

--nowarning选项仅在您设置了--htmlout选项时才有效。

$ xmllint --nowarning --htmlout test.xml
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"
        "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><head><title>xmllint output</title></head>
<body bgcolor="#ffffff"><h1 align="center">xmllint output</h1>
<?xml version="dummy"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>
</body></html>

xmllint的源代码是here