Class: Lutaml::Xml::HoistingAlgorithm::FirstUsage
- Defined in:
- lib/lutaml/xml/hoisting_algorithm.rb
Overview
FirstUsage Algorithm
Declares namespace only at the literal first element that uses it. No hoisting - each element declares its own namespace.
Instance Method Summary collapse
Instance Method Details
#should_hoist_here?(element, namespace_class, _needs, context) ⇒ Boolean
102 103 104 105 106 107 108 109 110 |
# File 'lib/lutaml/xml/hoisting_algorithm.rb', line 102 def should_hoist_here?(element, namespace_class, _needs, context) return false if already_hoisted?(namespace_class, context) # Only declare if this element DIRECTLY uses the namespace element.namespace_class == namespace_class || element.attributes.any? do |a| a.namespace_class == namespace_class end end |