module Spread2RDF::Namespace

Constants

DEFAULTS

Public Class Methods

[](name) click to toggle source
# File lib/spread2rdf/namespace.rb, line 8
def [](name)
  name = name.to_sym
  self.namespace[name] ||
      ( RDF.const_defined?(name) && RDF.const_get(name)) ||
      nil
end
[]=(name, namespace) click to toggle source
# File lib/spread2rdf/namespace.rb, line 15
def []=(name, namespace)
  name = name.to_sym
  self.namespace[name] = case namespace
    when RDF::Vocabulary          then namespace
    when String, RDF::URI         then RDF::Vocabulary.new(namespace)
    else raise ArgumentError, "expecting a namespace but got #{namespace}:#{namespace.class}"
  end
end
const_missing(name) click to toggle source
Calls superclass method
# File lib/spread2rdf/namespace.rb, line 43
def const_missing(name)
  self[name] or super
end
namespace() click to toggle source
# File lib/spread2rdf/namespace.rb, line 24
def namespace
  @namespace ||= DEFAULTS
end
namespaces() click to toggle source
# File lib/spread2rdf/namespace.rb, line 28
def namespaces
  namespace.values
end
resolve_to_namespace(namespace_descriptor) click to toggle source
# File lib/spread2rdf/namespace.rb, line 32
def resolve_to_namespace(namespace_descriptor)
  case namespace_descriptor
    when Symbol
      Namespace[namespace_descriptor]
    when RDF::Vocabulary, RDF::URI, String
      namespace_descriptor.to_s
    else
      raise "invalid namespace: #{namespace_descriptor.inspect}:#{namespace_descriptor.class}"
  end
end