rdf-json 0.2.0 → 0.3.0.pre
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/CREDITS +0 -0
 - data/README +19 -9
 - data/VERSION +1 -1
 - data/lib/rdf/json.rb +2 -2
 - data/lib/rdf/json/extensions.rb +28 -10
 - data/lib/rdf/json/format.rb +5 -2
 - data/lib/rdf/json/reader.rb +57 -16
 - data/lib/rdf/json/version.rb +2 -2
 - data/lib/rdf/json/writer.rb +5 -2
 - metadata +38 -32
 
    
        data/CREDITS
    ADDED
    
    | 
         
            File without changes
         
     | 
    
        data/README
    CHANGED
    
    | 
         @@ -1,8 +1,8 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            RDF/JSON Support for RDF.rb
         
     | 
| 
       2 
2 
     | 
    
         
             
            ===========================
         
     | 
| 
       3 
3 
     | 
    
         | 
| 
       4 
     | 
    
         
            -
            This is an [RDF.rb][] plugin that adds support for parsing/serializing 
     | 
| 
       5 
     | 
    
         
            -
            [RDF/JSON][] serialization format.
         
     | 
| 
      
 4 
     | 
    
         
            +
            This is an [RDF.rb][] plugin that adds support for parsing/serializing
         
     | 
| 
      
 5 
     | 
    
         
            +
            [RDF/JSON][], a simple JSON-based RDF serialization format.
         
     | 
| 
       6 
6 
     | 
    
         | 
| 
       7 
7 
     | 
    
         
             
            * <http://github.com/bendiken/rdf-json>
         
     | 
| 
       8 
8 
     | 
    
         
             
            * <http://blog.datagraph.org/2010/04/parsing-rdf-with-ruby>
         
     | 
| 
         @@ -19,8 +19,8 @@ Documentation 
     | 
|
| 
       19 
19 
     | 
    
         
             
            Dependencies
         
     | 
| 
       20 
20 
     | 
    
         
             
            ------------
         
     | 
| 
       21 
21 
     | 
    
         | 
| 
       22 
     | 
    
         
            -
            * [RDF.rb](http://rubygems.org/gems/rdf) (>= 0. 
     | 
| 
       23 
     | 
    
         
            -
            * [JSON](http://rubygems.org/gems/json_pure) (>= 1.4. 
     | 
| 
      
 22 
     | 
    
         
            +
            * [RDF.rb](http://rubygems.org/gems/rdf) (>= 0.3.0)
         
     | 
| 
      
 23 
     | 
    
         
            +
            * [JSON](http://rubygems.org/gems/json_pure) (>= 1.4.2)
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
       25 
25 
     | 
    
         
             
            Installation
         
     | 
| 
       26 
26 
     | 
    
         
             
            ------------
         
     | 
| 
         @@ -37,21 +37,31 @@ To get a local working copy of the development repository, do: 
     | 
|
| 
       37 
37 
     | 
    
         | 
| 
       38 
38 
     | 
    
         
             
                % git clone git://github.com/bendiken/rdf-json.git
         
     | 
| 
       39 
39 
     | 
    
         | 
| 
       40 
     | 
    
         
            -
            Alternatively,  
     | 
| 
       41 
     | 
    
         
            -
             
     | 
| 
      
 40 
     | 
    
         
            +
            Alternatively, download the latest development version as a tarball as
         
     | 
| 
      
 41 
     | 
    
         
            +
            follows:
         
     | 
| 
       42 
42 
     | 
    
         | 
| 
       43 
43 
     | 
    
         
             
                % wget http://github.com/bendiken/rdf-json/tarball/master
         
     | 
| 
       44 
44 
     | 
    
         | 
| 
      
 45 
     | 
    
         
            +
            Mailing List
         
     | 
| 
      
 46 
     | 
    
         
            +
            ------------
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
            * <http://lists.w3.org/Archives/Public/public-rdf-ruby/>
         
     | 
| 
      
 49 
     | 
    
         
            +
             
     | 
| 
       45 
50 
     | 
    
         
             
            Author
         
     | 
| 
       46 
51 
     | 
    
         
             
            ------
         
     | 
| 
       47 
52 
     | 
    
         | 
| 
       48 
     | 
    
         
            -
            * [Arto Bendiken]( 
     | 
| 
      
 53 
     | 
    
         
            +
            * [Arto Bendiken](http://github.com/bendiken) - <http://ar.to/>
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
            Contributors
         
     | 
| 
      
 56 
     | 
    
         
            +
            ------------
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
      
 58 
     | 
    
         
            +
            Refer to the accompanying {file:CREDITS} file.
         
     | 
| 
       49 
59 
     | 
    
         | 
| 
       50 
60 
     | 
    
         
             
            License
         
     | 
| 
       51 
61 
     | 
    
         
             
            -------
         
     | 
| 
       52 
62 
     | 
    
         | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
       54 
     | 
    
         
            -
             
     | 
| 
      
 63 
     | 
    
         
            +
            This is free and unencumbered public domain software. For more information,
         
     | 
| 
      
 64 
     | 
    
         
            +
            see <http://unlicense.org/> or the accompanying {file:UNLICENSE} file.
         
     | 
| 
       55 
65 
     | 
    
         | 
| 
       56 
66 
     | 
    
         
             
            [RDF.rb]:   http://rdf.rubyforge.org/
         
     | 
| 
       57 
67 
     | 
    
         
             
            [RDF/JSON]: http://n2.talis.com/wiki/RDF_JSON_Specification
         
     | 
    
        data/VERSION
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            0. 
     | 
| 
      
 1 
     | 
    
         
            +
            0.3.0.pre
         
     | 
    
        data/lib/rdf/json.rb
    CHANGED
    
    
    
        data/lib/rdf/json/extensions.rb
    CHANGED
    
    | 
         @@ -51,7 +51,7 @@ module RDF::JSON 
     | 
|
| 
       51 
51 
     | 
    
         
             
                    # Any RDF/JSON-compatible class must implement `#to_rdf_json`:
         
     | 
| 
       52 
52 
     | 
    
         
             
                    to_rdf_json.to_json
         
     | 
| 
       53 
53 
     | 
    
         
             
                  end
         
     | 
| 
       54 
     | 
    
         
            -
                end
         
     | 
| 
      
 54 
     | 
    
         
            +
                end # Value
         
     | 
| 
       55 
55 
     | 
    
         | 
| 
       56 
56 
     | 
    
         
             
                ##
         
     | 
| 
       57 
57 
     | 
    
         
             
                # RDF/JSON extensions for `RDF::Node`.
         
     | 
| 
         @@ -63,7 +63,7 @@ module RDF::JSON 
     | 
|
| 
       63 
63 
     | 
    
         
             
                  def to_rdf_json
         
     | 
| 
       64 
64 
     | 
    
         
             
                    {:type => :bnode, :value => to_s}
         
     | 
| 
       65 
65 
     | 
    
         
             
                  end
         
     | 
| 
       66 
     | 
    
         
            -
                end
         
     | 
| 
      
 66 
     | 
    
         
            +
                end # Node
         
     | 
| 
       67 
67 
     | 
    
         | 
| 
       68 
68 
     | 
    
         
             
                ##
         
     | 
| 
       69 
69 
     | 
    
         
             
                # RDF/JSON extensions for `RDF::URI`.
         
     | 
| 
         @@ -75,7 +75,7 @@ module RDF::JSON 
     | 
|
| 
       75 
75 
     | 
    
         
             
                  def to_rdf_json
         
     | 
| 
       76 
76 
     | 
    
         
             
                    {:type => :uri, :value => to_s}
         
     | 
| 
       77 
77 
     | 
    
         
             
                  end
         
     | 
| 
       78 
     | 
    
         
            -
                end
         
     | 
| 
      
 78 
     | 
    
         
            +
                end # URI
         
     | 
| 
       79 
79 
     | 
    
         | 
| 
       80 
80 
     | 
    
         
             
                ##
         
     | 
| 
       81 
81 
     | 
    
         
             
                # RDF/JSON extensions for `RDF::Literal`.
         
     | 
| 
         @@ -94,7 +94,7 @@ module RDF::JSON 
     | 
|
| 
       94 
94 
     | 
    
         
             
                        {:type => :literal, :value => value.to_s}
         
     | 
| 
       95 
95 
     | 
    
         
             
                    end
         
     | 
| 
       96 
96 
     | 
    
         
             
                  end
         
     | 
| 
       97 
     | 
    
         
            -
                end
         
     | 
| 
      
 97 
     | 
    
         
            +
                end # Literal
         
     | 
| 
       98 
98 
     | 
    
         | 
| 
       99 
99 
     | 
    
         
             
                ##
         
     | 
| 
       100 
100 
     | 
    
         
             
                # RDF/JSON extensions for `RDF::Statement`.
         
     | 
| 
         @@ -106,7 +106,7 @@ module RDF::JSON 
     | 
|
| 
       106 
106 
     | 
    
         
             
                  def to_rdf_json
         
     | 
| 
       107 
107 
     | 
    
         
             
                    {subject.to_s => {predicate.to_s => [object.to_rdf_json]}}
         
     | 
| 
       108 
108 
     | 
    
         
             
                  end
         
     | 
| 
       109 
     | 
    
         
            -
                end
         
     | 
| 
      
 109 
     | 
    
         
            +
                end # Statement
         
     | 
| 
       110 
110 
     | 
    
         | 
| 
       111 
111 
     | 
    
         
             
                ##
         
     | 
| 
       112 
112 
     | 
    
         
             
                # RDF/JSON extensions for `RDF::Enumerable`.
         
     | 
| 
         @@ -135,20 +135,38 @@ module RDF::JSON 
     | 
|
| 
       135 
135 
     | 
    
         
             
                    end
         
     | 
| 
       136 
136 
     | 
    
         
             
                    json
         
     | 
| 
       137 
137 
     | 
    
         
             
                  end
         
     | 
| 
       138 
     | 
    
         
            -
                end
         
     | 
| 
      
 138 
     | 
    
         
            +
                end # Enumerable
         
     | 
| 
       139 
139 
     | 
    
         | 
| 
       140 
140 
     | 
    
         
             
                ##
         
     | 
| 
       141 
141 
     | 
    
         
             
                # RDF/JSON extensions for `RDF::Graph`.
         
     | 
| 
       142 
142 
     | 
    
         
             
                module Graph
         
     | 
| 
       143 
143 
     | 
    
         
             
                  include Enumerable
         
     | 
| 
       144 
     | 
    
         
            -
                end
         
     | 
| 
      
 144 
     | 
    
         
            +
                end # Graph
         
     | 
| 
       145 
145 
     | 
    
         | 
| 
       146 
146 
     | 
    
         
             
                ##
         
     | 
| 
       147 
147 
     | 
    
         
             
                # RDF/JSON extensions for `RDF::Repository`.
         
     | 
| 
       148 
148 
     | 
    
         
             
                module Repository
         
     | 
| 
       149 
149 
     | 
    
         
             
                  include Enumerable
         
     | 
| 
       150 
     | 
    
         
            -
                end
         
     | 
| 
       151 
     | 
    
         
            -
             
     | 
| 
      
 150 
     | 
    
         
            +
                end # Repository
         
     | 
| 
      
 151 
     | 
    
         
            +
             
     | 
| 
      
 152 
     | 
    
         
            +
                ##
         
     | 
| 
      
 153 
     | 
    
         
            +
                # RDF/JSON extensions for `RDF::Transaction`.
         
     | 
| 
      
 154 
     | 
    
         
            +
                module Transaction
         
     | 
| 
      
 155 
     | 
    
         
            +
                  ##
         
     | 
| 
      
 156 
     | 
    
         
            +
                  # Returns the serialized JSON representation of this object.
         
     | 
| 
      
 157 
     | 
    
         
            +
                  #
         
     | 
| 
      
 158 
     | 
    
         
            +
                  # @return [String]
         
     | 
| 
      
 159 
     | 
    
         
            +
                  def to_json
         
     | 
| 
      
 160 
     | 
    
         
            +
                    json = options.dup.to_hash rescue {}
         
     | 
| 
      
 161 
     | 
    
         
            +
                    json.merge!({
         
     | 
| 
      
 162 
     | 
    
         
            +
                      :graph  => graph ? graph.to_uri.to_s : nil,
         
     | 
| 
      
 163 
     | 
    
         
            +
                      :delete => deletes.to_rdf_json,
         
     | 
| 
      
 164 
     | 
    
         
            +
                      :insert => inserts.to_rdf_json,
         
     | 
| 
      
 165 
     | 
    
         
            +
                    })
         
     | 
| 
      
 166 
     | 
    
         
            +
                    json.to_json
         
     | 
| 
      
 167 
     | 
    
         
            +
                  end
         
     | 
| 
      
 168 
     | 
    
         
            +
                end # Transaction
         
     | 
| 
      
 169 
     | 
    
         
            +
              end # Extensions
         
     | 
| 
       152 
170 
     | 
    
         | 
| 
       153 
171 
     | 
    
         
             
              Extensions.install!
         
     | 
| 
       154 
     | 
    
         
            -
            end #  
     | 
| 
      
 172 
     | 
    
         
            +
            end # RDF::JSON
         
     | 
    
        data/lib/rdf/json/format.rb
    CHANGED
    
    | 
         @@ -2,6 +2,9 @@ module RDF::JSON 
     | 
|
| 
       2 
2 
     | 
    
         
             
              ##
         
     | 
| 
       3 
3 
     | 
    
         
             
              # RDF/JSON format specification.
         
     | 
| 
       4 
4 
     | 
    
         
             
              #
         
     | 
| 
      
 5 
     | 
    
         
            +
              # @example Loading RDF/JSON format support
         
     | 
| 
      
 6 
     | 
    
         
            +
              #   require 'rdf/json'
         
     | 
| 
      
 7 
     | 
    
         
            +
              #
         
     | 
| 
       5 
8 
     | 
    
         
             
              # @example Obtaining an RDF/JSON format class
         
     | 
| 
       6 
9 
     | 
    
         
             
              #   RDF::Format.for(:json)         #=> RDF::JSON::Format
         
     | 
| 
       7 
10 
     | 
    
         
             
              #   RDF::Format.for("etc/doap.json")
         
     | 
| 
         @@ -18,5 +21,5 @@ module RDF::JSON 
     | 
|
| 
       18 
21 
     | 
    
         
             
                writer { RDF::JSON::Writer }
         
     | 
| 
       19 
22 
     | 
    
         | 
| 
       20 
23 
     | 
    
         
             
                require 'json'
         
     | 
| 
       21 
     | 
    
         
            -
              end #  
     | 
| 
       22 
     | 
    
         
            -
            end #  
     | 
| 
      
 24 
     | 
    
         
            +
              end # Format
         
     | 
| 
      
 25 
     | 
    
         
            +
            end # RDF::JSON
         
     | 
    
        data/lib/rdf/json/reader.rb
    CHANGED
    
    | 
         @@ -2,6 +2,9 @@ module RDF::JSON 
     | 
|
| 
       2 
2 
     | 
    
         
             
              ##
         
     | 
| 
       3 
3 
     | 
    
         
             
              # RDF/JSON parser.
         
     | 
| 
       4 
4 
     | 
    
         
             
              #
         
     | 
| 
      
 5 
     | 
    
         
            +
              # @example Loading RDF/JSON parsing support
         
     | 
| 
      
 6 
     | 
    
         
            +
              #   require 'rdf/json'
         
     | 
| 
      
 7 
     | 
    
         
            +
              #
         
     | 
| 
       5 
8 
     | 
    
         
             
              # @example Obtaining an RDF/JSON reader class
         
     | 
| 
       6 
9 
     | 
    
         
             
              #   RDF::Reader.for(:json)         #=> RDF::JSON::Reader
         
     | 
| 
       7 
10 
     | 
    
         
             
              #   RDF::Reader.for("etc/doap.json")
         
     | 
| 
         @@ -29,6 +32,8 @@ module RDF::JSON 
     | 
|
| 
       29 
32 
     | 
    
         
             
                format RDF::JSON::Format
         
     | 
| 
       30 
33 
     | 
    
         | 
| 
       31 
34 
     | 
    
         
             
                ##
         
     | 
| 
      
 35 
     | 
    
         
            +
                # The graph constructed when parsing.
         
     | 
| 
      
 36 
     | 
    
         
            +
                #
         
     | 
| 
       32 
37 
     | 
    
         
             
                # @return [RDF::Graph]
         
     | 
| 
       33 
38 
     | 
    
         
             
                attr_reader :graph
         
     | 
| 
       34 
39 
     | 
    
         | 
| 
         @@ -43,7 +48,7 @@ module RDF::JSON 
     | 
|
| 
       43 
48 
     | 
    
         
             
                  super do
         
     | 
| 
       44 
49 
     | 
    
         
             
                    @graph = RDF::Graph.new
         
     | 
| 
       45 
50 
     | 
    
         | 
| 
       46 
     | 
    
         
            -
                    JSON.parse(@input.read).each do |subject, predicates|
         
     | 
| 
      
 51 
     | 
    
         
            +
                    ::JSON.parse(@input.read).each do |subject, predicates|
         
     | 
| 
       47 
52 
     | 
    
         
             
                      subject = parse_subject(subject)
         
     | 
| 
       48 
53 
     | 
    
         
             
                      predicates.each do |predicate, objects|
         
     | 
| 
       49 
54 
     | 
    
         
             
                        predicate = parse_predicate(predicate)
         
     | 
| 
         @@ -65,8 +70,8 @@ module RDF::JSON 
     | 
|
| 
       65 
70 
     | 
    
         
             
                # @return [RDF::Resource]
         
     | 
| 
       66 
71 
     | 
    
         
             
                def parse_subject(subject)
         
     | 
| 
       67 
72 
     | 
    
         
             
                  case subject
         
     | 
| 
       68 
     | 
    
         
            -
                    when /^_:/ then  
     | 
| 
       69 
     | 
    
         
            -
                    else  
     | 
| 
      
 73 
     | 
    
         
            +
                    when /^_:/ then parse_node(subject)
         
     | 
| 
      
 74 
     | 
    
         
            +
                    else parse_uri(subject)
         
     | 
| 
       70 
75 
     | 
    
         
             
                  end
         
     | 
| 
       71 
76 
     | 
    
         
             
                end
         
     | 
| 
       72 
77 
     | 
    
         | 
| 
         @@ -76,8 +81,8 @@ module RDF::JSON 
     | 
|
| 
       76 
81 
     | 
    
         
             
                # @param  [String] predicate
         
     | 
| 
       77 
82 
     | 
    
         
             
                # @return [RDF::URI]
         
     | 
| 
       78 
83 
     | 
    
         
             
                def parse_predicate(predicate)
         
     | 
| 
       79 
     | 
    
         
            -
                  # TODO: optional support for CURIE predicates (issue #1 on GitHub).
         
     | 
| 
       80 
     | 
    
         
            -
                   
     | 
| 
      
 84 
     | 
    
         
            +
                  # TODO: optional support for CURIE predicates? (issue #1 on GitHub).
         
     | 
| 
      
 85 
     | 
    
         
            +
                  parse_uri(predicate, :intern => true)
         
     | 
| 
       81 
86 
     | 
    
         
             
                end
         
     | 
| 
       82 
87 
     | 
    
         | 
| 
       83 
88 
     | 
    
         
             
                ##
         
     | 
| 
         @@ -86,44 +91,80 @@ module RDF::JSON 
     | 
|
| 
       86 
91 
     | 
    
         
             
                # @param  [Hash{String => Object}] object
         
     | 
| 
       87 
92 
     | 
    
         
             
                # @return [RDF::Value]
         
     | 
| 
       88 
93 
     | 
    
         
             
                def parse_object(object)
         
     | 
| 
       89 
     | 
    
         
            -
                  raise RDF::ReaderError 
     | 
| 
       90 
     | 
    
         
            -
                  raise RDF::ReaderError 
     | 
| 
      
 94 
     | 
    
         
            +
                  raise RDF::ReaderError, "missing 'type' key in #{object.inspect}"  unless object.has_key?('type')
         
     | 
| 
      
 95 
     | 
    
         
            +
                  raise RDF::ReaderError, "missing 'value' key in #{object.inspect}" unless object.has_key?('value')
         
     | 
| 
       91 
96 
     | 
    
         | 
| 
       92 
97 
     | 
    
         
             
                  case type = object['type']
         
     | 
| 
       93 
98 
     | 
    
         
             
                    when 'bnode'
         
     | 
| 
       94 
     | 
    
         
            -
                       
     | 
| 
      
 99 
     | 
    
         
            +
                      parse_node(object['value'])
         
     | 
| 
       95 
100 
     | 
    
         
             
                    when 'uri'
         
     | 
| 
       96 
     | 
    
         
            -
                       
     | 
| 
      
 101 
     | 
    
         
            +
                      parse_uri(object['value'])
         
     | 
| 
       97 
102 
     | 
    
         
             
                    when 'literal'
         
     | 
| 
       98 
     | 
    
         
            -
                      RDF::Literal.new(object['value'], {
         
     | 
| 
      
 103 
     | 
    
         
            +
                      literal = RDF::Literal.new(object['value'], {
         
     | 
| 
       99 
104 
     | 
    
         
             
                        :language => object['lang'],
         
     | 
| 
       100 
105 
     | 
    
         
             
                        :datatype => object['datatype'],
         
     | 
| 
       101 
106 
     | 
    
         
             
                      })
         
     | 
| 
      
 107 
     | 
    
         
            +
                      literal.validate!     if validate?
         
     | 
| 
      
 108 
     | 
    
         
            +
                      literal.canonicalize! if canonicalize?
         
     | 
| 
      
 109 
     | 
    
         
            +
                      literal
         
     | 
| 
       102 
110 
     | 
    
         
             
                    else
         
     | 
| 
       103 
111 
     | 
    
         
             
                      raise RDF::ReaderError, "expected 'type' to be 'bnode', 'uri', or 'literal', but got #{type.inspect}"
         
     | 
| 
       104 
112 
     | 
    
         
             
                  end
         
     | 
| 
       105 
113 
     | 
    
         
             
                end
         
     | 
| 
       106 
114 
     | 
    
         | 
| 
      
 115 
     | 
    
         
            +
                ##
         
     | 
| 
      
 116 
     | 
    
         
            +
                # Parses an RDF/JSON blank node string into an `RDF::Node` instance.
         
     | 
| 
      
 117 
     | 
    
         
            +
                #
         
     | 
| 
      
 118 
     | 
    
         
            +
                # @param  [String] string
         
     | 
| 
      
 119 
     | 
    
         
            +
                # @return [RDF::Node]
         
     | 
| 
      
 120 
     | 
    
         
            +
                def parse_node(string)
         
     | 
| 
      
 121 
     | 
    
         
            +
                  RDF::Node.new(string[2..-1]) # strips off the initial '_:'
         
     | 
| 
      
 122 
     | 
    
         
            +
                end
         
     | 
| 
      
 123 
     | 
    
         
            +
                alias_method :parse_bnode, :parse_node
         
     | 
| 
      
 124 
     | 
    
         
            +
             
     | 
| 
      
 125 
     | 
    
         
            +
                ##
         
     | 
| 
      
 126 
     | 
    
         
            +
                # Parses an RDF/JSON URI string into an `RDF::URI` instance.
         
     | 
| 
      
 127 
     | 
    
         
            +
                #
         
     | 
| 
      
 128 
     | 
    
         
            +
                # @param  [String] string
         
     | 
| 
      
 129 
     | 
    
         
            +
                # @param  [Hash{Symbol => Object}] options
         
     | 
| 
      
 130 
     | 
    
         
            +
                # @option options [Boolean] :intern (false)
         
     | 
| 
      
 131 
     | 
    
         
            +
                # @return [RDF::URI]
         
     | 
| 
      
 132 
     | 
    
         
            +
                def parse_uri(string, options = {})
         
     | 
| 
      
 133 
     | 
    
         
            +
                  uri = RDF::URI.send(intern = intern? && options[:intern] ? :intern : :new, string)
         
     | 
| 
      
 134 
     | 
    
         
            +
                  uri.validate!     if validate?
         
     | 
| 
      
 135 
     | 
    
         
            +
                  uri.canonicalize! if canonicalize? && !intern
         
     | 
| 
      
 136 
     | 
    
         
            +
                  uri
         
     | 
| 
      
 137 
     | 
    
         
            +
                end
         
     | 
| 
      
 138 
     | 
    
         
            +
             
     | 
| 
       107 
139 
     | 
    
         
             
                ##
         
     | 
| 
       108 
140 
     | 
    
         
             
                # @private
         
     | 
| 
       109 
141 
     | 
    
         
             
                # @see   RDF::Reader#each_graph
         
     | 
| 
       110 
142 
     | 
    
         
             
                # @since 0.2.0
         
     | 
| 
       111 
143 
     | 
    
         
             
                def each_graph(&block)
         
     | 
| 
       112 
     | 
    
         
            -
                  block_given? 
     | 
| 
      
 144 
     | 
    
         
            +
                  if block_given?
         
     | 
| 
      
 145 
     | 
    
         
            +
                    block.call(@graph)
         
     | 
| 
      
 146 
     | 
    
         
            +
                  end
         
     | 
| 
      
 147 
     | 
    
         
            +
                  enum_graph
         
     | 
| 
       113 
148 
     | 
    
         
             
                end
         
     | 
| 
       114 
149 
     | 
    
         | 
| 
       115 
150 
     | 
    
         
             
                ##
         
     | 
| 
       116 
151 
     | 
    
         
             
                # @private
         
     | 
| 
       117 
152 
     | 
    
         
             
                # @see   RDF::Reader#each_statement
         
     | 
| 
       118 
153 
     | 
    
         
             
                def each_statement(&block)
         
     | 
| 
       119 
     | 
    
         
            -
                  block_given? 
     | 
| 
      
 154 
     | 
    
         
            +
                  if block_given?
         
     | 
| 
      
 155 
     | 
    
         
            +
                    @graph.each_statement(&block)
         
     | 
| 
      
 156 
     | 
    
         
            +
                  end
         
     | 
| 
      
 157 
     | 
    
         
            +
                  enum_statement
         
     | 
| 
       120 
158 
     | 
    
         
             
                end
         
     | 
| 
       121 
159 
     | 
    
         | 
| 
       122 
160 
     | 
    
         
             
                ##
         
     | 
| 
       123 
161 
     | 
    
         
             
                # @private
         
     | 
| 
       124 
     | 
    
         
            -
                # @see   RDF::Reader# 
     | 
| 
      
 162 
     | 
    
         
            +
                # @see   RDF::Reader#each_triple
         
     | 
| 
       125 
163 
     | 
    
         
             
                def each_triple(&block)
         
     | 
| 
       126 
     | 
    
         
            -
                  block_given? 
     | 
| 
      
 164 
     | 
    
         
            +
                  if block_given?
         
     | 
| 
      
 165 
     | 
    
         
            +
                    @graph.each_triple(&block)
         
     | 
| 
      
 166 
     | 
    
         
            +
                  end
         
     | 
| 
      
 167 
     | 
    
         
            +
                  enum_triple
         
     | 
| 
       127 
168 
     | 
    
         
             
                end
         
     | 
| 
       128 
     | 
    
         
            -
              end #  
     | 
| 
       129 
     | 
    
         
            -
            end #  
     | 
| 
      
 169 
     | 
    
         
            +
              end # Reader
         
     | 
| 
      
 170 
     | 
    
         
            +
            end # RDF::JSON
         
     | 
    
        data/lib/rdf/json/version.rb
    CHANGED
    
    
    
        data/lib/rdf/json/writer.rb
    CHANGED
    
    | 
         @@ -2,6 +2,9 @@ module RDF::JSON 
     | 
|
| 
       2 
2 
     | 
    
         
             
              ##
         
     | 
| 
       3 
3 
     | 
    
         
             
              # RDF/JSON serializer.
         
     | 
| 
       4 
4 
     | 
    
         
             
              #
         
     | 
| 
      
 5 
     | 
    
         
            +
              # @example Loading RDF/JSON serialization support
         
     | 
| 
      
 6 
     | 
    
         
            +
              #   require 'rdf/json'
         
     | 
| 
      
 7 
     | 
    
         
            +
              #
         
     | 
| 
       5 
8 
     | 
    
         
             
              # @example Obtaining an RDF/JSON writer class
         
     | 
| 
       6 
9 
     | 
    
         
             
              #   RDF::Writer.for(:json)         #=> RDF::JSON::Writer
         
     | 
| 
       7 
10 
     | 
    
         
             
              #   RDF::Writer.for("etc/test.json")
         
     | 
| 
         @@ -86,5 +89,5 @@ module RDF::JSON 
     | 
|
| 
       86 
89 
     | 
    
         
             
                    else RDF::Literal.new(value).to_json
         
     | 
| 
       87 
90 
     | 
    
         
             
                  end
         
     | 
| 
       88 
91 
     | 
    
         
             
                end
         
     | 
| 
       89 
     | 
    
         
            -
              end #  
     | 
| 
       90 
     | 
    
         
            -
            end #  
     | 
| 
      
 92 
     | 
    
         
            +
              end # Writer
         
     | 
| 
      
 93 
     | 
    
         
            +
            end # RDF::JSON
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,12 +1,13 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification 
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: rdf-json
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version 
         
     | 
| 
       4 
     | 
    
         
            -
              prerelease:  
     | 
| 
      
 4 
     | 
    
         
            +
              prerelease: true
         
     | 
| 
       5 
5 
     | 
    
         
             
              segments: 
         
     | 
| 
       6 
6 
     | 
    
         
             
              - 0
         
     | 
| 
       7 
     | 
    
         
            -
              -  
     | 
| 
      
 7 
     | 
    
         
            +
              - 3
         
     | 
| 
       8 
8 
     | 
    
         
             
              - 0
         
     | 
| 
       9 
     | 
    
         
            -
               
     | 
| 
      
 9 
     | 
    
         
            +
              - pre
         
     | 
| 
      
 10 
     | 
    
         
            +
              version: 0.3.0.pre
         
     | 
| 
       10 
11 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       11 
12 
     | 
    
         
             
            authors: 
         
     | 
| 
       12 
13 
     | 
    
         
             
            - Arto Bendiken
         
     | 
| 
         @@ -14,36 +15,37 @@ autorequire: 
     | 
|
| 
       14 
15 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       15 
16 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       16 
17 
     | 
    
         | 
| 
       17 
     | 
    
         
            -
            date: 2010- 
     | 
| 
      
 18 
     | 
    
         
            +
            date: 2010-11-19 00:00:00 +01:00
         
     | 
| 
       18 
19 
     | 
    
         
             
            default_executable: 
         
     | 
| 
       19 
20 
     | 
    
         
             
            dependencies: 
         
     | 
| 
       20 
21 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
       21 
     | 
    
         
            -
              name:  
     | 
| 
      
 22 
     | 
    
         
            +
              name: json_pure
         
     | 
| 
       22 
23 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       23 
24 
     | 
    
         
             
              requirement: &id001 !ruby/object:Gem::Requirement 
         
     | 
| 
       24 
25 
     | 
    
         
             
                requirements: 
         
     | 
| 
       25 
     | 
    
         
            -
                - -  
     | 
| 
      
 26 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       26 
27 
     | 
    
         
             
                  - !ruby/object:Gem::Version 
         
     | 
| 
       27 
28 
     | 
    
         
             
                    segments: 
         
     | 
| 
       28 
     | 
    
         
            -
                    -  
     | 
| 
      
 29 
     | 
    
         
            +
                    - 1
         
     | 
| 
      
 30 
     | 
    
         
            +
                    - 4
         
     | 
| 
       29 
31 
     | 
    
         
             
                    - 2
         
     | 
| 
       30 
     | 
    
         
            -
                     
     | 
| 
       31 
     | 
    
         
            -
             
     | 
| 
       32 
     | 
    
         
            -
              type: :development
         
     | 
| 
      
 32 
     | 
    
         
            +
                    version: 1.4.2
         
     | 
| 
      
 33 
     | 
    
         
            +
              type: :runtime
         
     | 
| 
       33 
34 
     | 
    
         
             
              version_requirements: *id001
         
     | 
| 
       34 
35 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
       35 
     | 
    
         
            -
              name:  
     | 
| 
      
 36 
     | 
    
         
            +
              name: rdf
         
     | 
| 
       36 
37 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       37 
38 
     | 
    
         
             
              requirement: &id002 !ruby/object:Gem::Requirement 
         
     | 
| 
       38 
39 
     | 
    
         
             
                requirements: 
         
     | 
| 
       39 
     | 
    
         
            -
                - - " 
     | 
| 
      
 40 
     | 
    
         
            +
                - - "="
         
     | 
| 
       40 
41 
     | 
    
         
             
                  - !ruby/object:Gem::Version 
         
     | 
| 
       41 
42 
     | 
    
         
             
                    segments: 
         
     | 
| 
       42 
     | 
    
         
            -
                    -  
     | 
| 
      
 43 
     | 
    
         
            +
                    - 0
         
     | 
| 
       43 
44 
     | 
    
         
             
                    - 3
         
     | 
| 
       44 
45 
     | 
    
         
             
                    - 0
         
     | 
| 
       45 
     | 
    
         
            -
                     
     | 
| 
       46 
     | 
    
         
            -
             
     | 
| 
      
 46 
     | 
    
         
            +
                    - pre
         
     | 
| 
      
 47 
     | 
    
         
            +
                    version: 0.3.0.pre
         
     | 
| 
      
 48 
     | 
    
         
            +
              type: :runtime
         
     | 
| 
       47 
49 
     | 
    
         
             
              version_requirements: *id002
         
     | 
| 
       48 
50 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
       49 
51 
     | 
    
         
             
              name: yard
         
     | 
| 
         @@ -54,38 +56,39 @@ dependencies: 
     | 
|
| 
       54 
56 
     | 
    
         
             
                  - !ruby/object:Gem::Version 
         
     | 
| 
       55 
57 
     | 
    
         
             
                    segments: 
         
     | 
| 
       56 
58 
     | 
    
         
             
                    - 0
         
     | 
| 
       57 
     | 
    
         
            -
                    - 5
         
     | 
| 
       58 
59 
     | 
    
         
             
                    - 6
         
     | 
| 
       59 
     | 
    
         
            -
                     
     | 
| 
      
 60 
     | 
    
         
            +
                    - 0
         
     | 
| 
      
 61 
     | 
    
         
            +
                    version: 0.6.0
         
     | 
| 
       60 
62 
     | 
    
         
             
              type: :development
         
     | 
| 
       61 
63 
     | 
    
         
             
              version_requirements: *id003
         
     | 
| 
       62 
64 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
       63 
     | 
    
         
            -
              name:  
     | 
| 
      
 65 
     | 
    
         
            +
              name: rspec
         
     | 
| 
       64 
66 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       65 
67 
     | 
    
         
             
              requirement: &id004 !ruby/object:Gem::Requirement 
         
     | 
| 
       66 
68 
     | 
    
         
             
                requirements: 
         
     | 
| 
       67 
     | 
    
         
            -
                - -  
     | 
| 
      
 69 
     | 
    
         
            +
                - - ">="
         
     | 
| 
       68 
70 
     | 
    
         
             
                  - !ruby/object:Gem::Version 
         
     | 
| 
       69 
71 
     | 
    
         
             
                    segments: 
         
     | 
| 
      
 72 
     | 
    
         
            +
                    - 1
         
     | 
| 
      
 73 
     | 
    
         
            +
                    - 3
         
     | 
| 
       70 
74 
     | 
    
         
             
                    - 0
         
     | 
| 
       71 
     | 
    
         
            -
                     
     | 
| 
       72 
     | 
    
         
            -
             
     | 
| 
       73 
     | 
    
         
            -
                    version: 0.2.0
         
     | 
| 
       74 
     | 
    
         
            -
              type: :runtime
         
     | 
| 
      
 75 
     | 
    
         
            +
                    version: 1.3.0
         
     | 
| 
      
 76 
     | 
    
         
            +
              type: :development
         
     | 
| 
       75 
77 
     | 
    
         
             
              version_requirements: *id004
         
     | 
| 
       76 
78 
     | 
    
         
             
            - !ruby/object:Gem::Dependency 
         
     | 
| 
       77 
     | 
    
         
            -
              name:  
     | 
| 
      
 79 
     | 
    
         
            +
              name: rdf-spec
         
     | 
| 
       78 
80 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       79 
81 
     | 
    
         
             
              requirement: &id005 !ruby/object:Gem::Requirement 
         
     | 
| 
       80 
82 
     | 
    
         
             
                requirements: 
         
     | 
| 
       81 
     | 
    
         
            -
                - -  
     | 
| 
      
 83 
     | 
    
         
            +
                - - "="
         
     | 
| 
       82 
84 
     | 
    
         
             
                  - !ruby/object:Gem::Version 
         
     | 
| 
       83 
85 
     | 
    
         
             
                    segments: 
         
     | 
| 
       84 
     | 
    
         
            -
                    -  
     | 
| 
       85 
     | 
    
         
            -
                    - 4
         
     | 
| 
      
 86 
     | 
    
         
            +
                    - 0
         
     | 
| 
       86 
87 
     | 
    
         
             
                    - 3
         
     | 
| 
       87 
     | 
    
         
            -
                     
     | 
| 
       88 
     | 
    
         
            -
             
     | 
| 
      
 88 
     | 
    
         
            +
                    - 0
         
     | 
| 
      
 89 
     | 
    
         
            +
                    - pre
         
     | 
| 
      
 90 
     | 
    
         
            +
                    version: 0.3.0.pre
         
     | 
| 
      
 91 
     | 
    
         
            +
              type: :development
         
     | 
| 
       89 
92 
     | 
    
         
             
              version_requirements: *id005
         
     | 
| 
       90 
93 
     | 
    
         
             
            description: RDF.rb plugin for parsing/serializing RDF/JSON data.
         
     | 
| 
       91 
94 
     | 
    
         
             
            email: public-rdf-ruby@w3.org
         
     | 
| 
         @@ -97,6 +100,7 @@ extra_rdoc_files: [] 
     | 
|
| 
       97 
100 
     | 
    
         | 
| 
       98 
101 
     | 
    
         
             
            files: 
         
     | 
| 
       99 
102 
     | 
    
         
             
            - AUTHORS
         
     | 
| 
      
 103 
     | 
    
         
            +
            - CREDITS
         
     | 
| 
       100 
104 
     | 
    
         
             
            - README
         
     | 
| 
       101 
105 
     | 
    
         
             
            - UNLICENSE
         
     | 
| 
       102 
106 
     | 
    
         
             
            - VERSION
         
     | 
| 
         @@ -127,11 +131,13 @@ required_ruby_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       127 
131 
     | 
    
         
             
                  version: 1.8.1
         
     | 
| 
       128 
132 
     | 
    
         
             
            required_rubygems_version: !ruby/object:Gem::Requirement 
         
     | 
| 
       129 
133 
     | 
    
         
             
              requirements: 
         
     | 
| 
       130 
     | 
    
         
            -
              - - " 
     | 
| 
      
 134 
     | 
    
         
            +
              - - ">"
         
     | 
| 
       131 
135 
     | 
    
         
             
                - !ruby/object:Gem::Version 
         
     | 
| 
       132 
136 
     | 
    
         
             
                  segments: 
         
     | 
| 
       133 
     | 
    
         
            -
                  -  
     | 
| 
       134 
     | 
    
         
            -
                   
     | 
| 
      
 137 
     | 
    
         
            +
                  - 1
         
     | 
| 
      
 138 
     | 
    
         
            +
                  - 3
         
     | 
| 
      
 139 
     | 
    
         
            +
                  - 1
         
     | 
| 
      
 140 
     | 
    
         
            +
                  version: 1.3.1
         
     | 
| 
       135 
141 
     | 
    
         
             
            requirements: []
         
     | 
| 
       136 
142 
     | 
    
         | 
| 
       137 
143 
     | 
    
         
             
            rubyforge_project: rdf
         
     |