Class: Rng::NamespaceDeclaration

Inherits:
Object
  • Object
show all
Defined in:
lib/rng/namespace_declaration.rb

Overview

Represents a namespace declaration in RNC

Supports both default and prefixed namespace declarations:

  • default namespace = “uri”

  • default namespace prefix = “uri”

  • namespace prefix = “uri”

Examples:

Default namespace

decl = NamespaceDeclaration.new(uri: "http://example.com", is_default: true)
decl.default? #=> true

Prefixed namespace

decl = NamespaceDeclaration.new(prefix: "eg", uri: "http://example.com")
decl.prefixed? #=> true

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(uri:, prefix: nil, is_default: false) ⇒ NamespaceDeclaration

Initialize a namespace declaration

Parameters:

  • prefix (String, nil) (defaults to: nil)

    Namespace prefix (nil for unprefixed default)

  • uri (String)

    Namespace URI

  • is_default (Boolean) (defaults to: false)

    Whether this is the default namespace



27
28
29
30
31
# File 'lib/rng/namespace_declaration.rb', line 27

def initialize(uri:, prefix: nil, is_default: false)
  @prefix = prefix
  @uri = uri
  @is_default = is_default
end

Instance Attribute Details

#is_defaultObject (readonly)

Returns the value of attribute is_default.



20
21
22
# File 'lib/rng/namespace_declaration.rb', line 20

def is_default
  @is_default
end

#prefixObject (readonly)

Returns the value of attribute prefix.



20
21
22
# File 'lib/rng/namespace_declaration.rb', line 20

def prefix
  @prefix
end

#uriObject (readonly)

Returns the value of attribute uri.



20
21
22
# File 'lib/rng/namespace_declaration.rb', line 20

def uri
  @uri
end

Instance Method Details

#default?Boolean

Check if this is the default namespace

Returns:

  • (Boolean)


36
37
38
# File 'lib/rng/namespace_declaration.rb', line 36

def default?
  @is_default
end

#prefixed?Boolean

Check if this namespace has a prefix

Returns:

  • (Boolean)


43
44
45
# File 'lib/rng/namespace_declaration.rb', line 43

def prefixed?
  !@prefix.nil?
end