【问题标题】:Validating the xml against XSD In xmlstarlet在 xmlstarlet 中针对 XSD 验证 xml
【发布时间】:2014-03-01 11:45:56
【问题描述】:

我正在针对给定的 XSD 验证许多 XML 文件。它在命令行中打印一些错误。我需要将错误转化为一个变量。

我正在使用 Perl。我尝试了以下事情,但无法满足我的要求。

$values = system("xmlstarlet val --err --xsd Test.xsd Test1.xml");

返回 0 或 1

$values = `xmlstarlet val --err --xsd Test.xsd Test1.xml`

错误看起来像这样

test.xml:5340.23:元素“SP”:不需要此元素。

它只打印有效或无效,我也需要上面提到的错误。

我使用了以下命令

**xmlstarlet val --err --xsd Test.xsd Test1.xml** 

让我知道一些解决错误的想法。

【问题讨论】:

标签: xml perl xslt xsd xmlstarlet


【解决方案1】:

试试这个代码;

my $error; 
my $values = `xmlstarlet val --err --xsd Test.xsd Test1.xml 2>&1`;

if ($?) {
    $error = $values;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-07-26
    • 2012-09-20
    • 2011-10-12
    • 2011-07-18
    • 1970-01-01
    • 1970-01-01
    • 2014-01-23
    相关资源
    最近更新 更多