rdf-rdfxml 0.2.2.1 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/History.txt +3 -0
- data/VERSION +1 -1
- data/lib/rdf/rdfxml/patches/nokogiri_hacks.rb +9 -1
- data/lib/rdf/rdfxml/reader.rb +2 -3
- data/lib/rdf/rdfxml/version.rb +2 -2
- data/lib/rdf/rdfxml/writer.rb +9 -15
- data/rdf-rdfxml.gemspec +2 -2
- data/spec/uri_spec.rb +6 -0
- data/spec/writer_spec.rb +5 -6
- metadata +3 -13
    
        data/History.txt
    CHANGED
    
    
    
        data/VERSION
    CHANGED
    
    | @@ -1 +1 @@ | |
| 1 | 
            -
            0.2. | 
| 1 | 
            +
            0.2.3
         | 
| @@ -5,4 +5,12 @@ class Nokogiri::XML::Node | |
| 5 5 | 
             
                ns = self.namespace ? self.namespace.href : RDF::XML.to_s
         | 
| 6 6 | 
             
                RDF::URI.intern(ns + self.node_name)
         | 
| 7 7 | 
             
              end
         | 
| 8 | 
            -
             | 
| 8 | 
            +
             | 
| 9 | 
            +
              def display_path
         | 
| 10 | 
            +
                @display_path ||= case self
         | 
| 11 | 
            +
                when Nokogiri::XML::Document then ""
         | 
| 12 | 
            +
                when Nokogiri::XML::Element then parent ? "#{parent.display_path}/#{name}" : name
         | 
| 13 | 
            +
                when Nokogiri::XML::Attr then "#{parent.display_path}@#{name}"
         | 
| 14 | 
            +
                end
         | 
| 15 | 
            +
              end
         | 
| 16 | 
            +
            end
         | 
    
        data/lib/rdf/rdfxml/reader.rb
    CHANGED
    
    | @@ -208,9 +208,8 @@ module RDF::RDFXML | |
| 208 208 | 
             
                # Figure out the document path, if it is a Nokogiri::XML::Element or Attribute
         | 
| 209 209 | 
             
                def node_path(node)
         | 
| 210 210 | 
             
                  case node
         | 
| 211 | 
            -
                  when Nokogiri::XML:: | 
| 212 | 
            -
                   | 
| 213 | 
            -
                  else ""
         | 
| 211 | 
            +
                  when Nokogiri::XML::Node then node.display_path
         | 
| 212 | 
            +
                  else node.to_s
         | 
| 214 213 | 
             
                  end
         | 
| 215 214 | 
             
                end
         | 
| 216 215 |  | 
    
        data/lib/rdf/rdfxml/version.rb
    CHANGED
    
    
    
        data/lib/rdf/rdfxml/writer.rb
    CHANGED
    
    | @@ -393,21 +393,15 @@ module RDF::RDFXML | |
| 393 393 |  | 
| 394 394 | 
             
                    # No vocabulary found, invent one
         | 
| 395 395 | 
             
                    # Add bindings for predicates not already having bindings
         | 
| 396 | 
            -
                    #  | 
| 397 | 
            -
                    #    | 
| 398 | 
            -
                     | 
| 399 | 
            -
                     | 
| 400 | 
            -
             | 
| 401 | 
            -
             | 
| 402 | 
            -
             | 
| 403 | 
            -
             | 
| 404 | 
            -
             | 
| 405 | 
            -
                          path.last.index("/") != 0
         | 
| 406 | 
            -
                        return false
         | 
| 407 | 
            -
                      end
         | 
| 408 | 
            -
                      path.last
         | 
| 409 | 
            -
                    end
         | 
| 410 | 
            -
                    base_uri = uri.to_s[0..-(local_name.length + 1)]
         | 
| 396 | 
            +
                    # From RDF/XML Syntax and Processing:
         | 
| 397 | 
            +
                    #   An XML namespace-qualified name (QName) has restrictions on the legal characters such that not all property URIs can be expressed
         | 
| 398 | 
            +
                    #   as these names. It is recommended that implementors of RDF serializers, in order to break a URI into a namespace name and a local
         | 
| 399 | 
            +
                    #   name, split it after the last XML non-NCName character, ensuring that the first character of the name is a Letter or '_'. If the
         | 
| 400 | 
            +
                    #   URI ends in a non-NCName character then throw a "this graph cannot be serialized in RDF/XML" exception or error.
         | 
| 401 | 
            +
                    separation = uri.to_s.rindex(%r{[^a-zA-Z_0-9-](?=[a-zA-Z_])})
         | 
| 402 | 
            +
                    return nil unless separation
         | 
| 403 | 
            +
                    base_uri = uri.to_s[0..separation]
         | 
| 404 | 
            +
                    local_name = uri.to_s[separation+1..-1]
         | 
| 411 405 | 
             
                    @tmp_ns = @tmp_ns ? @tmp_ns.succ : "ns0"
         | 
| 412 406 | 
             
                    add_debug "create namespace definition for #{uri}"
         | 
| 413 407 | 
             
                    uri.vocab = RDF::Vocabulary(base_uri)
         | 
    
        data/rdf-rdfxml.gemspec
    CHANGED
    
    | @@ -5,11 +5,11 @@ | |
| 5 5 |  | 
| 6 6 | 
             
            Gem::Specification.new do |s|
         | 
| 7 7 | 
             
              s.name = %q{rdf-rdfxml}
         | 
| 8 | 
            -
              s.version = "0.2. | 
| 8 | 
            +
              s.version = "0.2.3"
         | 
| 9 9 |  | 
| 10 10 | 
             
              s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
         | 
| 11 11 | 
             
              s.authors = ["Gregg Kellogg"]
         | 
| 12 | 
            -
              s.date = %q{2010-08- | 
| 12 | 
            +
              s.date = %q{2010-08-31}
         | 
| 13 13 | 
             
              s.description = %q{    RDF::RDFXML is an RDF/XML reader and writer for Ruby using the RDF.rb library suite.
         | 
| 14 14 | 
             
            }
         | 
| 15 15 | 
             
              s.email = %q{gregg@kellogg-assoc.com}
         | 
    
        data/spec/uri_spec.rb
    CHANGED
    
    | @@ -99,6 +99,12 @@ describe RDF::URI do | |
| 99 99 | 
             
                end
         | 
| 100 100 | 
             
              end
         | 
| 101 101 |  | 
| 102 | 
            +
              context "Invalid Formats" do
         | 
| 103 | 
            +
                it "should detect invalid URI formats" do
         | 
| 104 | 
            +
                  lambda {Addressable::URI.parse("_:test")}.should raise_error(Addressable::URI::InvalidURIError)
         | 
| 105 | 
            +
                end
         | 
| 106 | 
            +
              end
         | 
| 107 | 
            +
              
         | 
| 102 108 | 
             
              context "vocab" do
         | 
| 103 109 | 
             
                RDF::Vocabulary.each do |v|
         | 
| 104 110 | 
             
                  specify {v.foo.vocab.should == v}
         | 
    
        data/spec/writer_spec.rb
    CHANGED
    
    | @@ -323,11 +323,11 @@ describe "RDF::RDFXML::Writer" do | |
| 323 323 | 
             
              describe "with bnodes" do
         | 
| 324 324 | 
             
                it "should not generate nodeID attribute unless node is referenced as an object" do
         | 
| 325 325 | 
             
                  @graph << [RDF::Node.new("a"), RDF::DC.title, "foo"]
         | 
| 326 | 
            -
             | 
| 327 | 
            -
             | 
| 328 | 
            -
             | 
| 329 | 
            -
             | 
| 330 | 
            -
             | 
| 326 | 
            +
                  check_xpaths(
         | 
| 327 | 
            +
                    serialize(:attributes => :untyped, :base => "http://release/"),
         | 
| 328 | 
            +
                    "/rdf:RDF/rdf:Description/@dc:title" => "foo",
         | 
| 329 | 
            +
                    "/rdf:RDF/rdf:Description/@rdf:nodeID" => false
         | 
| 330 | 
            +
                  )
         | 
| 331 331 | 
             
                end
         | 
| 332 332 |  | 
| 333 333 | 
             
                it "should generate a nodeID attribute if node is referenced as an object" do
         | 
| @@ -343,7 +343,6 @@ describe "RDF::RDFXML::Writer" do | |
| 343 343 | 
             
                end
         | 
| 344 344 |  | 
| 345 345 | 
             
                it "should replicate rdfcore/rdfms-seq-representation" do
         | 
| 346 | 
            -
                  $verbose = true
         | 
| 347 346 | 
             
                  graph_expect = parse(%(
         | 
| 348 347 | 
             
                    <http://example.org/eg#eric> a [ <http://example.org/eg#intersectionOf> (<http://example.org/eg#Person> <http://example.org/eg#Male>)] .
         | 
| 349 348 | 
             
                  ), :reader => RDF::N3::Reader)
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,12 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification 
         | 
| 2 2 | 
             
            name: rdf-rdfxml
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            -
              hash: 85
         | 
| 5 4 | 
             
              prerelease: false
         | 
| 6 5 | 
             
              segments: 
         | 
| 7 6 | 
             
              - 0
         | 
| 8 7 | 
             
              - 2
         | 
| 9 | 
            -
              -  | 
| 10 | 
            -
               | 
| 11 | 
            -
              version: 0.2.2.1
         | 
| 8 | 
            +
              - 3
         | 
| 9 | 
            +
              version: 0.2.3
         | 
| 12 10 | 
             
            platform: ruby
         | 
| 13 11 | 
             
            authors: 
         | 
| 14 12 | 
             
            - Gregg Kellogg
         | 
| @@ -16,7 +14,7 @@ autorequire: | |
| 16 14 | 
             
            bindir: bin
         | 
| 17 15 | 
             
            cert_chain: []
         | 
| 18 16 |  | 
| 19 | 
            -
            date: 2010-08- | 
| 17 | 
            +
            date: 2010-08-31 00:00:00 -07:00
         | 
| 20 18 | 
             
            default_executable: 
         | 
| 21 19 | 
             
            dependencies: 
         | 
| 22 20 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| @@ -27,7 +25,6 @@ dependencies: | |
| 27 25 | 
             
                requirements: 
         | 
| 28 26 | 
             
                - - ">="
         | 
| 29 27 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 30 | 
            -
                    hash: 19
         | 
| 31 28 | 
             
                    segments: 
         | 
| 32 29 | 
             
                    - 0
         | 
| 33 30 | 
             
                    - 2
         | 
| @@ -43,7 +40,6 @@ dependencies: | |
| 43 40 | 
             
                requirements: 
         | 
| 44 41 | 
             
                - - ">="
         | 
| 45 42 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 46 | 
            -
                    hash: 29
         | 
| 47 43 | 
             
                    segments: 
         | 
| 48 44 | 
             
                    - 1
         | 
| 49 45 | 
             
                    - 3
         | 
| @@ -59,7 +55,6 @@ dependencies: | |
| 59 55 | 
             
                requirements: 
         | 
| 60 56 | 
             
                - - ">="
         | 
| 61 57 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 62 | 
            -
                    hash: 3
         | 
| 63 58 | 
             
                    segments: 
         | 
| 64 59 | 
             
                    - 0
         | 
| 65 60 | 
             
                    version: "0"
         | 
| @@ -73,7 +68,6 @@ dependencies: | |
| 73 68 | 
             
                requirements: 
         | 
| 74 69 | 
             
                - - ">="
         | 
| 75 70 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 76 | 
            -
                    hash: 19
         | 
| 77 71 | 
             
                    segments: 
         | 
| 78 72 | 
             
                    - 0
         | 
| 79 73 | 
             
                    - 2
         | 
| @@ -89,7 +83,6 @@ dependencies: | |
| 89 83 | 
             
                requirements: 
         | 
| 90 84 | 
             
                - - ">="
         | 
| 91 85 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 92 | 
            -
                    hash: 3
         | 
| 93 86 | 
             
                    segments: 
         | 
| 94 87 | 
             
                    - 0
         | 
| 95 88 | 
             
                    version: "0"
         | 
| @@ -103,7 +96,6 @@ dependencies: | |
| 103 96 | 
             
                requirements: 
         | 
| 104 97 | 
             
                - - ">="
         | 
| 105 98 | 
             
                  - !ruby/object:Gem::Version 
         | 
| 106 | 
            -
                    hash: 3
         | 
| 107 99 | 
             
                    segments: 
         | 
| 108 100 | 
             
                    - 0
         | 
| 109 101 | 
             
                    version: "0"
         | 
| @@ -532,7 +524,6 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 532 524 | 
             
              requirements: 
         | 
| 533 525 | 
             
              - - ">="
         | 
| 534 526 | 
             
                - !ruby/object:Gem::Version 
         | 
| 535 | 
            -
                  hash: 3
         | 
| 536 527 | 
             
                  segments: 
         | 
| 537 528 | 
             
                  - 0
         | 
| 538 529 | 
             
                  version: "0"
         | 
| @@ -541,7 +532,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 541 532 | 
             
              requirements: 
         | 
| 542 533 | 
             
              - - ">="
         | 
| 543 534 | 
             
                - !ruby/object:Gem::Version 
         | 
| 544 | 
            -
                  hash: 3
         | 
| 545 535 | 
             
                  segments: 
         | 
| 546 536 | 
             
                  - 0
         | 
| 547 537 | 
             
                  version: "0"
         |