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
192 193 194 195 196 |
# File 'lib/lutaml/xml/data_model.rb', line 192 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.
179 180 181 |
# File 'lib/lutaml/xml/data_model.rb', line 179 def name @name end |
#namespace_class ⇒ Class? (readonly)
Returns XmlNamespace class (not instance).
182 183 184 |
# File 'lib/lutaml/xml/data_model.rb', line 182 def namespace_class @namespace_class end |
#value ⇒ String (readonly)
Returns Attribute value.
185 186 187 |
# File 'lib/lutaml/xml/data_model.rb', line 185 def value @value end |
Instance Method Details
#inspect ⇒ String
Detailed inspection for debugging
223 224 225 226 |
# File 'lib/lutaml/xml/data_model.rb', line 223 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)
202 203 204 205 206 207 208 209 210 211 |
# File 'lib/lutaml/xml/data_model.rb', line 202 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
216 217 218 |
# File 'lib/lutaml/xml/data_model.rb', line 216 def to_s "#{qualified_name}=\"#{value}\"" end |