Module: REXML::Namespace

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

Adds named attributes to an object.

### Methods

fully_expanded_name has_name? name=

### 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_expanded_name()

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

has_name?( other, ns=nil )

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

name=( name )

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]