2009-09-08 40 views
6

Tôi đã tìm thấy một số nguồn liên quan đến cách xác thực tài liệu xml dựa trên lược đồ, nhưng tôi có một ứng dụng bằng ruby ​​mà tôi cần phải xác thực rằng lược đồ do người dùng cung cấp là chính lược đồ hợp lệ. Có cách nào để tôi có thể kiểm tra điều này không? Có một lược đồ XSD để xác nhận hợp lệ một lược đồ XSD không? Hoặc là có thư viện hoặc đá quý làm điều này cho tôi?Xác thực lược đồ XSD trong Ruby

Trả lời

4

Như schemas là tài liệu XML bản thân bạn có thể xác nhận chúng giống như bất kỳ tài liệu khác. Cả XSD và DTD cho Lược đồ XML đều có thể tìm thấy trên trang này http://www.w3.org/2001/XMLSchema.

9

Bạn có thể sử dụng Nokogiri cho việc này:

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

+1 cho Nokogiri – Kevin

+0

Tôi khuyên bạn nên sử dụng nokogiri, đặc biệt là trên libxml từ trải nghiệm thực tế. – Jim

Các vấn đề liên quan