Module: CqmValidators::Schematron::CProcessor

Included in:
Validator
Defined in:
lib/schematron/c_processor.rb

Instance Method Summary collapse

Instance Method Details

#get_errors(document) ⇒ Object



6
7
8
9
# File 'lib/schematron/c_processor.rb', line 6

def get_errors(document)
  document = get_document(document)
  processor.transform(document)
end

#processorObject



11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/schematron/c_processor.rb', line 11

def processor
  return @processor if @processor

  doc = Nokogiri::XML(File.open(@schematron_file))
  doc.root['defaultPhase'] = 'errors'

  xslt = Nokogiri::XSLT(File.open(ISO_SCHEMATRON))

  result = xslt.transform(doc)
  # this needs to be done to associate the xslt file with a dirctory
  result = Nokogiri::XML(result.to_s, @schematron_file)
  @processor = Nokogiri::XSLT::Stylesheet.parse_stylesheet_doc(result)
end