如何在Perl中使用XSD验证XML?

Joh*_*ohn 7 xml perl xsd

对于大多数Perl程序员来说,这可能是一个简单的问题,到目前为止,我只使用Perl两周,并且对Perl软件包非常不熟悉.

我有一个简单的XSD文件如下:

<?xml version="1.0" ?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sql="urn:schemas-microsoft-com:mapping-schema">
    <xsd:element name="elementname">
        <xsd:complexType>
            <xsd:sequence>
                <xsd:element name="field1" type="xsd:integer" minOccurs="0" maxOccurs="1"/>
                <xsd:element name="field2" type="xsd:string" minOccurs="0" maxOccurs="1"/>              
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>
</xsd:schema>
Run Code Online (Sandbox Code Playgroud)

我想用上面的XSD验证XML文件,以确保这是一个有效的XML.我应该使用什么Perl模块?我更喜欢在*nix上的ActivePerl和Perl上都可用的模块.发布一些代码片段会非常有帮助.

谢谢

Bri*_*new 5

我认为您需要来自 CPAN 的XML::Validator::Schema。这是README,并安装:

perl -MCPAN -e 'install XML::Validator::Schema'
Run Code Online (Sandbox Code Playgroud)