Class: Lutaml::Xml::DataModel::XmlAttribute
- Inherits:
-
Object
- Object
- Lutaml::Xml::DataModel::XmlAttribute
- Defined in:
- lib/lutaml/xml/data_model.rb
Overview
Represents an XML attribute with optional namespace.
Instance Attribute Summary collapse
-
#name ⇒ String
readonly
Attribute local name.
-
#namespace_class ⇒ Class?
readonly
XmlNamespace class (not instance).
-
#value ⇒ String
readonly
Attribute value.
Instance Method Summary collapse
-
#initialize(name, value, namespace_class = nil) ⇒ XmlAttribute
constructor
Initialize a new XML attribute.
-
#inspect ⇒ String
Detailed inspection for debugging.
-
#qualified_name(prefix = nil) ⇒ String
Get qualified name (prefix:name or name).
-
#to_s ⇒ String
String representation for debugging.
Constructor Details
#initialize(name, value, namespace_class = nil) ⇒ XmlAttribute
Initialize a new XML attribute
184 185 186 187 188 |
# File 'lib/lutaml/xml/data_model.rb', line 184 def initialize(name, value, namespace_class = nil) @name = name @value = value @namespace_class = namespace_class end |
Instance Attribute Details
#name ⇒ String (readonly)
Returns Attribute local name.
171 172 173 |
# File 'lib/lutaml/xml/data_model.rb', line 171 def name @name end |
#namespace_class ⇒ Class? (readonly)
Returns XmlNamespace class (not instance).
174 175 176 |
# File 'lib/lutaml/xml/data_model.rb', line 174 def namespace_class @namespace_class end |
#value ⇒ String (readonly)
Returns Attribute value.
177 178 179 |
# File 'lib/lutaml/xml/data_model.rb', line 177 def value @value end |
Instance Method Details
#inspect ⇒ String
Detailed inspection for debugging
215 216 217 218 |
# File 'lib/lutaml/xml/data_model.rb', line 215 def inspect ns_info = namespace_class ? " (ns: #{namespace_class})" : "" "#<#{self.class.name} #{self}#{ns_info}>" end |
#qualified_name(prefix = nil) ⇒ String
Get qualified name (prefix:name or name)
194 195 196 197 198 199 200 201 202 203 |
# File 'lib/lutaml/xml/data_model.rb', line 194 def qualified_name(prefix = nil) if prefix "#{prefix}:#{name}" elsif namespace_class.respond_to?(:prefix_default) ns_prefix = namespace_class.prefix_default ns_prefix ? "#{ns_prefix}:#{name}" : name else name end end |
#to_s ⇒ String
String representation for debugging
208 209 210 |
# File 'lib/lutaml/xml/data_model.rb', line 208 def to_s "#{qualified_name}=\"#{value}\"" end |