lib/spread2rdf/namespace.rb in spread2rdf-0.0.1pre.1 vs lib/spread2rdf/namespace.rb in spread2rdf-0.0.1

- old
+ new

@@ -1,7 +1,11 @@ module Spread2RDF module Namespace + DEFAULTS = { + UNIT: ::RDF::Vocabulary.new('http://qudt.org/vocab/unit#') + } + class << self def [](name) name = name.to_sym self.namespace[name] || ( RDF.const_defined?(name) && RDF.const_get(name)) || @@ -16,11 +20,11 @@ else raise ArgumentError, "expecting a namespace but got #{namespace}:#{namespace.class}" end end def namespace - @namespace ||= {} + @namespace ||= DEFAULTS end def namespaces namespace.values end @@ -30,10 +34,10 @@ when Symbol Namespace[namespace_descriptor] when RDF::Vocabulary, RDF::URI, String namespace_descriptor.to_s else - raise "invalid namespace: #{namespace_descriptor.inspect}" + raise "invalid namespace: #{namespace_descriptor.inspect}:#{namespace_descriptor.class}" end end def const_missing(name) self[name] or super