ruby-rdf / rdf-vocab

Common RDF Vocabularies
The Unlicense
50 stars 29 forks source link

Cannot `require 'rdf-vocab'` #8

Closed dazza-codes closed 9 years ago

dazza-codes commented 9 years ago

Cannot require rdf-vocab directly, but it is present after require of linkeddata gem; i.e.

[1] pry(main)> RDF::Vocab::OA.Annotation
NameError: uninitialized constant RDF
from (pry):1:in `__pry__'
[2] pry(main)> require 'rdf-vocab'
LoadError: cannot load such file -- rdf-vocab
from (pry):2:in `require'
[3] pry(main)> RDF::Vocab::OA.Annotation
NameError: uninitialized constant RDF
from (pry):3:in `__pry__'
[4] pry(main)> require 'linkeddata'
=> true
[5] pry(main)> RDF::Vocab::OA.Annotation
=> #<RDF::Vocabulary::Term:0x3f82f113a340 URI:http://www.w3.org/ns/oa#Annotation>
[6] pry(main)> 

The entire bundle is:

$ bundle show --paths
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/addressable-2.3.8
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/bcp47-0.3.3
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/builder-3.2.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/bundler-1.9.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/celluloid-0.16.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/coderay-1.1.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/coveralls-0.8.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/crack-0.4.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/diff-lcs-1.2.5
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/docile-1.1.5
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/domain_name-0.5.24
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/dotenv-2.0.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/ebnf-0.3.7
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/equivalent-xml-0.6.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/ffi-1.9.8
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/formatador-0.2.5
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/guard-2.12.5
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/guard-compat-1.2.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/guard-ctags-bundler-1.4.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/haml-4.0.6
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/hitimes-1.2.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/htmlentities-4.3.3
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/http-cookie-1.0.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/i18n-0.7.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/json-1.8.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/json-ld-1.1.8
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/link_header-0.0.8
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/linkeddata-1.1.11.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/listen-2.10.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/lumberjack-1.0.9
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/method_source-0.8.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/mime-types-2.4.3
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/mini_portile-0.6.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/nenv-0.2.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/net-http-persistent-2.9.4
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/netrc-0.10.3
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/nokogiri-1.6.6.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/notiffany-0.0.6
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/pry-0.10.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/pry-doc-0.6.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.4.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rb-fsevent-0.9.4
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rb-inotify-0.9.5
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-1.1.11
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-aggregate-repo-1.1.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-isomorphic-1.1.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-json-1.1.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-microdata-2.0.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-n3-1.1.3
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-rdfa-1.1.6
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-rdfxml-1.1.4
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-reasoner-0.2.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-tabular-0.1.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-trig-1.1.4
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-trix-1.1.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-turtle-1.1.6
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-vocab-0.8.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rdf-xsd-1.1.3
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rest-client-1.8.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rspec-3.2.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rspec-core-3.2.3
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rspec-expectations-3.2.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rspec-mocks-3.2.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/rspec-support-3.2.2
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/safe_yaml-1.0.4
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/shellany-0.0.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/simplecov-0.10.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/simplecov-html-0.10.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/slop-3.6.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sparql-1.1.5
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sparql-client-1.1.4
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/sxp-0.1.5
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/term-ansicolor-1.3.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/thor-0.19.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/tilt-2.0.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/timers-4.0.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/tins-1.3.5
/data/src/dlss/ld4l_data/annotations/triannon-client
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/unf-0.1.4
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/unf_ext-0.0.7.1
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/vcr-2.9.3
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/webmock-1.21.0
/home/user_xxx/.rbenv/versions/2.2.1/lib/ruby/gems/2.2.0/gems/yard-0.8.7.6
gkellogg commented 9 years ago

I doesn't/shouldn't require the linkeddata gem, but it probably needs a require "rdf/vocab". In the case of the individual vocabularies, they'll need a require "rdf/vocab" as they may not be loaded from the autoload in rdf/vocab. rdf/vocab does require rdf.

There should be a way to do this in the RDF::VocabularyLoader through an option.

gkellogg commented 9 years ago

As a workaround, instead of require "linkeddatea", try require "rdf/vocab" before manually loading your vocabulary. Of course, if you do this, you shouldn't need to manually load the vocabulary itself.

dazza-codes commented 9 years ago

require 'rdf/vocab' works for me; added pull request to update docs to that effect.