# File proofreader.rb, line 213 def range?(eloras, die) validity = true # default range, 0..* if die if die.range # divide and count eloras by parent groups parent_groups = Hash.new(0) eloras.each do |elora| case elora when REXML::Attribute parent_groups[elora.element] += 1 when REXML::Element parent_groups[elora.parent] += 1 end end parent_groups.each do |parent, tally| if not die.range === tally validity = false error = "RANGE #{tally} ##{die.range}#" @errors << [die.namespace, die.xpath, error] end end end end return validity end