Module REXML::Namespace
In: rexml/namespace.rb

Adds named attributes to an object.

Methods

Included Modules

XMLTokens

Constants

NAMESPLIT = /^(?:(#{NCNAME_STR}):)?(#{NCNAME_STR})/u

External Aliases

name -> local_name

Attributes

expanded_name  [R]  The name of the object, valid if set
name  [R]  The name of the object, valid if set
prefix  [RW]  The expanded name of the object, valid if name is set

Public Instance methods

Fully expand the name, even if the prefix wasn’t specified in the source file.

[Source]

# File rexml/namespace.rb, line 41
                def fully_expanded_name
                        ns = prefix
                        return "#{ns}:#@name" if ns.size > 0 
                        return @name
                end

Compares names optionally WITH namespaces

[Source]

# File rexml/namespace.rb, line 27
                def has_name?( other, ns=nil )
                        if ns
                                return (namespace() == ns and name() == other)
                        elsif other.include? ":"
                                return fully_expanded_name == other
                        else
                                return name == other
                        end
                end

Sets the name and the expanded name

[Source]

# File rexml/namespace.rb, line 14
                def name=( name )
                        @expanded_name = name
                        name =~ NAMESPLIT
                        if $1
                                @prefix = $1
                        else
                                @prefix = ""
                                @namespace = ""
                        end
                        @name = $2
                end

[Validate]