QName

In Files

Parent

Generated with Razzle Dazzle Redfish.
[Validate]

Defines QName and AttributeName classes.

Attributes

name[R]

(Not documented)

local_name[R]

(Not documented)

uri[R]

(Not documented)

prefix[R]

(Not documented)

Public Class Methods

__new( name_or_namespace, name=nil ) click to toggle source

Alias for new

new( name_or_namespace, name=nil ) click to toggle source

(Not documented)

# File lib/r4x/qname.rb, line 10
    def new( name_or_namespace, name=nil )
      case name_or_namespace
      when QName
        return name_or_namespace
      when nil
        if QName === name or name.class == "QName"
          return name.dup
        else
          __new(name_or_namespace, name)
        end
      else
        __new(name_or_namespace, name )
      end
    end
Also aliased as: __new
new( namespace, name ) click to toggle source

(Not documented)

# File lib/r4x/qname.rb, line 32
  def initialize( namespace, name )
    @name = name.local_name.to_s # to_String
    case namespace
    when nil, ''
      namespace = (name == '*' ? nil : get_default_namespace )
    end
    @local_name = name
    unless namespace
      @uri = nil
      @prefix = nil
    else
      namespace = Namespace.new( namespace )
      @uri = namespace.uri
      @prefix = namespace.prefix
    end
  end

Public Instance Methods

get_namespace( in_scope_namespaces=nil ) click to toggle source
# File lib/r4x/qname.rb, line 63
  def get_namespace( in_scope_namespaces=nil )
    raise 'no uri [should not have occured]' unless uri
    in_scope_namespaces ||= []
    ns = in_scope_namespaces.find { |n| uri == n.uri }  # prefix == n.prefix ?
    ns = Namespace.new( uri ) unless ns  # or ns = Namespace.new( prefix, uri ) ?
    ns
  end
to_s() click to toggle source
# File lib/r4x/qname.rb, line 50
  def to_s
    s = ''
    if uri != ''
      unless uri
        s = '*::'
      else
        s = "#{uri}::"
      end
    end
    "#{s}#{local_name}"
  end

Disabled; run with --debug to generate this.