2009-09-08 8 views
6

J'ai trouvé plusieurs sources concernant la validation d'un document XML par rapport à un schéma, mais j'ai une application dans ruby ​​dans laquelle je dois valider qu'un schéma fourni par l'utilisateur est un schéma valide. Y a-t-il un moyen de vérifier cela? Existe-t-il un schéma XSD pour valider un schéma XSD? Ou y at-il des bibliothèques ou des gemmes qui font cela pour moi?XSD Schema Validation dans Ruby

Répondre

4

Comme les schémas sont des documents XML eux-mêmes, vous pouvez les valider comme tout autre document. Une XSD et une DTD pour XML Schema peuvent être trouvées sur ce site http://www.w3.org/2001/XMLSchema.

9

Vous pouvez utiliser Nokogiri pour cela:

begin 
    schema = Nokogiri::XML::Schema(File.read('invalid_schema.xsd')) 
rescue Nokogiri::XML::SyntaxError => e 
    puts "Invalid XML Schema!" 
end 
+1

+1 pour Nokogiri – Kevin

+0

Je recommande fortement nokogiri pour cela, en particulier sur libxml d'expérience pratique. – Jim