Class: Dcc::Validate::Schematron::Rules::UsedSoftwarePlacement

Inherits:
Base show all
Defined in:
lib/dcc/validate/schematron/rules/used_software_placement.rb

Overview

dcc:usedSoftware is recommended but only generates a warning.

Instance Method Summary collapse

Methods inherited from Dcc::Validate::Schematron::Rule

#code

Instance Method Details

#check_on(dcc) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/dcc/validate/schematron/rules/used_software_placement.rb', line 14

def check_on(dcc)
  return [] unless Dcc::TypeGuards.has_attribute?(dcc, :measurement_results)

  mr_list = safe_attr(dcc.measurement_results, :measurement_result)
  return [] if mr_list.empty?

  present = mr_list.any? do |mr|
    Dcc::TypeGuards.has_attribute?(mr, :used_software) && !mr.used_software.nil?
  end

  present ? [] : [
    issue(
      severity: :warning,
      message: "dcc:usedSoftware is missing on every measurementResult",
    ),
  ]
end

#severityObject



10
11
12
# File 'lib/dcc/validate/schematron/rules/used_software_placement.rb', line 10

def severity
  ::Dcc::Validate::Severity::WARNING
end