Sha256: 89a9a82304affa9605bb501cdad12803111de8fee9cba622604559781d894b03
Contents?: true
Size: 1.01 KB
Versions: 6
Compression:
Stored size: 1.01 KB
Contents
require 'xommelier' require 'nokogiri' require 'xommelier/xml/namespace' require 'active_support/concern' require 'xommelier/xml/schema' module Xommelier module Xml extend ActiveSupport::Concern DEFAULT_NS = 'http://www.w3.org/XML/1998/namespace' module ClassMethods include Schema # Defines namespace used in formats def xmlns(uri = nil, options = {}, &block) if uri options[:module] ||= self instance_variable_set(:@_xmlns, Xommelier::Xml::Namespace.new(uri, options, &block)) end instance_variable_get(:@_xmlns) || Xml.xmlns end end included do instance_variable_set :@_xmlns, nil end # Define XML default namespace extend ClassMethods xmlns DEFAULT_NS, as: :xml # Inject common XML attributes to every XML element require 'xommelier/xml/element' class Element attribute :lang, ns: Xml.xmlns, as: 'xml:lang' attribute :base, type: Uri, ns: Xml.xmlns, as: 'xml:base' end end end
Version data entries
6 entries across 6 versions & 1 rubygems