Module: Lutaml::Xml::ElementPrefixResolver
- Defined in:
- lib/lutaml/xml/element_prefix_resolver.rb
Overview
ElementPrefixResolver - Determine element prefix from namespace declaration plan
Extracts common logic for resolving element prefixes across all XML adapters. Handles prefix format detection and namespace declaration lookups.
Class Method Summary collapse
-
.resolve(mapping:, plan:) ⇒ Hash
Resolve element prefix from namespace declaration plan.
Class Method Details
.resolve(mapping:, plan:) ⇒ Hash
Resolve element prefix from namespace declaration plan
Determines if element should use a prefix based on:
-
Whether namespace class uses prefix format
-
The prefix defined in the namespace declaration
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/lutaml/xml/element_prefix_resolver.rb', line 29 def self.resolve(mapping:, plan:) prefix = nil ns_info = nil if mapping.namespace_class uri = mapping.namespace_class.uri ns_info = DeclarationPlanQuery.find_namespace_by_uri(plan, uri) if ns_info && ns_info[:format] == :prefix # Use prefix from namespace info prefix = ns_info[:prefix] end end { prefix: prefix, ns_info: ns_info, } end |