roadforest 0.0.1
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/examples/file-management.rb +98 -0
- data/lib/roadforest/application/dispatcher.rb +54 -0
- data/lib/roadforest/application/parameters.rb +39 -0
- data/lib/roadforest/application/path-provider.rb +18 -0
- data/lib/roadforest/application/route-adapter.rb +24 -0
- data/lib/roadforest/application/services-host.rb +10 -0
- data/lib/roadforest/application.rb +42 -0
- data/lib/roadforest/blob-model.rb +56 -0
- data/lib/roadforest/content-handling/engine.rb +113 -0
- data/lib/roadforest/content-handling/media-type.rb +222 -0
- data/lib/roadforest/content-handling/type-handlers/jsonld.rb +172 -0
- data/lib/roadforest/http/adapters/excon.rb +47 -0
- data/lib/roadforest/http/graph-response.rb +20 -0
- data/lib/roadforest/http/graph-transfer.rb +112 -0
- data/lib/roadforest/http/message.rb +91 -0
- data/lib/roadforest/model.rb +151 -0
- data/lib/roadforest/models.rb +2 -0
- data/lib/roadforest/rdf/context-fascade.rb +25 -0
- data/lib/roadforest/rdf/document.rb +23 -0
- data/lib/roadforest/rdf/focus-list.rb +19 -0
- data/lib/roadforest/rdf/focus-wrapping.rb +30 -0
- data/lib/roadforest/rdf/graph-copier.rb +16 -0
- data/lib/roadforest/rdf/graph-focus.rb +95 -0
- data/lib/roadforest/rdf/graph-reading.rb +145 -0
- data/lib/roadforest/rdf/graph-store.rb +217 -0
- data/lib/roadforest/rdf/investigation.rb +90 -0
- data/lib/roadforest/rdf/normalization.rb +150 -0
- data/lib/roadforest/rdf/parcel.rb +47 -0
- data/lib/roadforest/rdf/post-focus.rb +35 -0
- data/lib/roadforest/rdf/resource-pattern.rb +60 -0
- data/lib/roadforest/rdf/resource-query.rb +58 -0
- data/lib/roadforest/rdf/source-rigor/credence/any.rb +9 -0
- data/lib/roadforest/rdf/source-rigor/credence/none-if-role-absent.rb +19 -0
- data/lib/roadforest/rdf/source-rigor/credence/role-if-available.rb +19 -0
- data/lib/roadforest/rdf/source-rigor/credence-annealer.rb +22 -0
- data/lib/roadforest/rdf/source-rigor/credence.rb +29 -0
- data/lib/roadforest/rdf/source-rigor/http-investigator.rb +20 -0
- data/lib/roadforest/rdf/source-rigor/investigator.rb +17 -0
- data/lib/roadforest/rdf/source-rigor/null-investigator.rb +10 -0
- data/lib/roadforest/rdf/source-rigor.rb +44 -0
- data/lib/roadforest/rdf/update-focus.rb +73 -0
- data/lib/roadforest/rdf/vocabulary.rb +11 -0
- data/lib/roadforest/rdf.rb +6 -0
- data/lib/roadforest/remote-host.rb +96 -0
- data/lib/roadforest/resource/handlers.rb +43 -0
- data/lib/roadforest/resource/http/form-parsing.rb +81 -0
- data/lib/roadforest/resource/rdf/leaf-item.rb +21 -0
- data/lib/roadforest/resource/rdf/list.rb +19 -0
- data/lib/roadforest/resource/rdf/parent-item.rb +26 -0
- data/lib/roadforest/resource/rdf/read-only.rb +100 -0
- data/lib/roadforest/resource/rdf.rb +4 -0
- data/lib/roadforest/resource/role/has-children.rb +22 -0
- data/lib/roadforest/resource/role/writable.rb +43 -0
- data/lib/roadforest/server.rb +3 -0
- data/lib/roadforest/test-support/dispatcher-facade.rb +77 -0
- data/lib/roadforest/test-support/http-client.rb +151 -0
- data/lib/roadforest/test-support/matchers.rb +67 -0
- data/lib/roadforest/test-support/remote-host.rb +23 -0
- data/lib/roadforest/test-support/trace-formatter.rb +140 -0
- data/lib/roadforest/test-support.rb +2 -0
- data/lib/roadforest/utility/class-registry.rb +49 -0
- data/lib/roadforest.rb +2 -0
- data/spec/client.rb +152 -0
- data/spec/credence-annealer.rb +44 -0
- data/spec/graph-copier.rb +87 -0
- data/spec/graph-store.rb +142 -0
- data/spec/media-types.rb +14 -0
- data/spec/rdf-parcel.rb +158 -0
- data/spec/update-focus.rb +117 -0
- data/spec_support/gem_test_suite.rb +0 -0
- metadata +241 -0
data/spec/rdf-parcel.rb
ADDED
@@ -0,0 +1,158 @@
|
|
1
|
+
require 'roadforest/test-support/matchers'
|
2
|
+
require 'roadforest/rdf/parcel'
|
3
|
+
|
4
|
+
describe RoadForest::RDF::Parcel do
|
5
|
+
let :literal do
|
6
|
+
42
|
7
|
+
end
|
8
|
+
|
9
|
+
let :node_a do
|
10
|
+
RDF::URI.intern("http://test.org/a")
|
11
|
+
end
|
12
|
+
|
13
|
+
let :node_b do
|
14
|
+
RDF::URI.intern("http://test.org/b")
|
15
|
+
end
|
16
|
+
|
17
|
+
let :node_c do
|
18
|
+
RDF::URI.intern("http://test.org/c")
|
19
|
+
end
|
20
|
+
|
21
|
+
let :node_a_frag do
|
22
|
+
RDF::URI.intern("http://test.org/a#fragment")
|
23
|
+
end
|
24
|
+
|
25
|
+
let :node_b_frag do
|
26
|
+
RDF::URI.intern("http://test.org/b#fragment")
|
27
|
+
end
|
28
|
+
|
29
|
+
let :node_c_frag do
|
30
|
+
RDF::URI.intern("http://test.org/c#fragment")
|
31
|
+
end
|
32
|
+
|
33
|
+
[:direct_blank_a, :direct_blank_c, :indirect_blank_a, :indirect_blank_c].each do |node|
|
34
|
+
let node do
|
35
|
+
RDF::Node.new
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
let :test_resources do
|
40
|
+
[node_a, node_b, node_c]
|
41
|
+
end
|
42
|
+
|
43
|
+
let :source_graph do
|
44
|
+
pred = RDF::URI.intern("http://generic.com/related_to")
|
45
|
+
::RDF::Graph.new.tap do |graph|
|
46
|
+
graph << [ node_a, pred, literal ]
|
47
|
+
graph << [ node_a, pred, node_b_frag ]
|
48
|
+
graph << [ node_a, pred, node_c ]
|
49
|
+
graph << [ node_a, pred, direct_blank_a ]
|
50
|
+
graph << [ direct_blank_a, pred, indirect_blank_a ]
|
51
|
+
graph << [ node_b, pred, node_a ]
|
52
|
+
graph << [ node_b, pred, literal ]
|
53
|
+
graph << [ node_b_frag, pred, literal ]
|
54
|
+
graph << [ node_b_frag, pred, node_a_frag ]
|
55
|
+
graph << [ node_c_frag, pred, node_c ]
|
56
|
+
graph << [ node_c_frag, pred, indirect_blank_c ]
|
57
|
+
graph << [ indirect_blank_c, pred, node_c_frag ]
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
let :parceller do
|
62
|
+
RoadForest::RDF::Parcel.new.tap do |parceller|
|
63
|
+
parceller.graph = source_graph
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
it "should list all subjects" do
|
68
|
+
parceller.resources.should include(*test_resources)
|
69
|
+
end
|
70
|
+
|
71
|
+
it "should not list any other resource" do
|
72
|
+
(parceller.resources - test_resources).should == []
|
73
|
+
end
|
74
|
+
|
75
|
+
it "should have graphs for each resource" do
|
76
|
+
parceller.resources.each do |resource|
|
77
|
+
graph = parceller.graph_for(resource)
|
78
|
+
|
79
|
+
graph.should_not be_nil
|
80
|
+
graph.should_not be_empty
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
describe "tessellation" do
|
85
|
+
let :graph_a do
|
86
|
+
parceller.graph_for(node_a).to_a.map(&:to_s)
|
87
|
+
end
|
88
|
+
|
89
|
+
let :graph_b do
|
90
|
+
parceller.graph_for(node_b).to_a.map(&:to_s)
|
91
|
+
end
|
92
|
+
|
93
|
+
let :graph_c do
|
94
|
+
parceller.graph_for(node_c).to_a.map(&:to_s)
|
95
|
+
end
|
96
|
+
|
97
|
+
let :original do
|
98
|
+
source_graph.to_a.map(&:to_s)
|
99
|
+
end
|
100
|
+
|
101
|
+
it "should be disjoint" do
|
102
|
+
(graph_a & graph_b).should == []
|
103
|
+
(graph_a & graph_c).should == []
|
104
|
+
(graph_b & graph_a).should == []
|
105
|
+
(graph_b & graph_c).should == []
|
106
|
+
(graph_c & graph_a).should == []
|
107
|
+
(graph_c & graph_b).should == []
|
108
|
+
end
|
109
|
+
|
110
|
+
it "should be complete" do
|
111
|
+
coverage = graph_a + graph_b + graph_c
|
112
|
+
|
113
|
+
(original - coverage).should == []
|
114
|
+
(coverage - original).should == []
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
describe "the graph for resource B" do
|
119
|
+
let :graph do
|
120
|
+
parceller.graph_for(node_b)
|
121
|
+
end
|
122
|
+
|
123
|
+
it "should include statements with the resource as subject" do
|
124
|
+
statements_from_graph(graph).that_match_query(:subject => node_b).should_not be_empty
|
125
|
+
end
|
126
|
+
|
127
|
+
it "should include statements with fragment node" do
|
128
|
+
statements_from_graph(graph).that_match_query(:subject => node_b_frag).should_not be_empty
|
129
|
+
end
|
130
|
+
end
|
131
|
+
|
132
|
+
describe "the graph for resource A" do #needs a much more interesting name
|
133
|
+
let :graph do
|
134
|
+
parceller.graph_for(node_a)
|
135
|
+
end
|
136
|
+
|
137
|
+
it "should include statements with the resource as subject" do
|
138
|
+
statements_from_graph(graph).that_match_query(:subject => node_a).should_not be_empty
|
139
|
+
end
|
140
|
+
|
141
|
+
it "should include statements about blank nodes within the resource's domain" do
|
142
|
+
statements_from_graph(graph).that_match_query(:subject => direct_blank_a).should_not be_empty
|
143
|
+
end
|
144
|
+
|
145
|
+
it "should include statements with outside objects" do
|
146
|
+
statements_from_graph(graph).that_match_query(:object => node_c).should_not be_empty
|
147
|
+
end
|
148
|
+
|
149
|
+
it "should not include statements with b or c as subject" do
|
150
|
+
statements_from_graph(graph).that_match_query(:subject => node_b).should be_empty
|
151
|
+
statements_from_graph(graph).that_match_query(:subject => node_c).should be_empty
|
152
|
+
statements_from_graph(graph).that_match_query(:subject => node_b_frag).should be_empty
|
153
|
+
statements_from_graph(graph).that_match_query(:subject => node_c_frag).should be_empty
|
154
|
+
statements_from_graph(graph).that_match_query(:subject => direct_blank_c).should be_empty
|
155
|
+
statements_from_graph(graph).that_match_query(:subject => indirect_blank_c).should be_empty
|
156
|
+
end
|
157
|
+
end
|
158
|
+
end
|
@@ -0,0 +1,117 @@
|
|
1
|
+
require 'roadforest/rdf/source-rigor'
|
2
|
+
require 'roadforest/rdf/update-focus'
|
3
|
+
require 'roadforest/rdf/graph-store'
|
4
|
+
require 'roadforest/rdf/document'
|
5
|
+
require 'rdf/rdfa'
|
6
|
+
|
7
|
+
describe RoadForest::RDF::UpdateFocus do
|
8
|
+
class Voc < ::RDF::Vocabulary("http:/pred.org/"); end
|
9
|
+
|
10
|
+
let :context_node do
|
11
|
+
::RDF::URI.intern("http://subject.org/a")
|
12
|
+
end
|
13
|
+
|
14
|
+
let :blank_node do
|
15
|
+
::RDF::Node.new
|
16
|
+
end
|
17
|
+
|
18
|
+
let :simple_statement do
|
19
|
+
::RDF::Statement.from [ context_node, Voc[:a], 7 ]
|
20
|
+
end
|
21
|
+
|
22
|
+
let :blank_node_statement do
|
23
|
+
::RDF::Statement.from [ context_node, Voc[:b], blank_node ]
|
24
|
+
end
|
25
|
+
|
26
|
+
let :context_statements do
|
27
|
+
[
|
28
|
+
simple_statement,
|
29
|
+
blank_node_statement
|
30
|
+
]
|
31
|
+
end
|
32
|
+
|
33
|
+
let :body_graph do
|
34
|
+
::RDF::Graph.new.tap do |graph|
|
35
|
+
context_statements.each do |stmt|
|
36
|
+
graph << stmt
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
let :document do
|
42
|
+
RoadForest::RDF::Document.new.tap do |doc|
|
43
|
+
doc.source = context_node.to_s
|
44
|
+
doc.body_string = body_graph.dump(:rdfa)
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
let :source_graph do
|
49
|
+
RoadForest::RDF::GraphStore.new.tap do |graph|
|
50
|
+
graph.insert_document(document)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
let :target_graph do
|
55
|
+
::RDF::Repository.new
|
56
|
+
end
|
57
|
+
|
58
|
+
let :source_rigor do
|
59
|
+
::RoadForest::RDF::SourceRigor.new.tap do |skept|
|
60
|
+
skept.policy_list(:may_subject, :any)
|
61
|
+
skept.investigator_list(:null)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
subject :updater do
|
66
|
+
RoadForest::RDF::UpdateFocus.new.tap do |updater|
|
67
|
+
updater.source_graph = source_graph
|
68
|
+
updater.target_graph = target_graph
|
69
|
+
updater.subject = context_node
|
70
|
+
updater.source_rigor = source_rigor
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
it "should copy entire context when resource is written" do
|
75
|
+
updater[Voc[:a]] = 17
|
76
|
+
|
77
|
+
resource_graph = ::RDF::Graph.new(context_node, :data => target_graph)
|
78
|
+
|
79
|
+
resource_graph.query(:object => RoadForest::RDF::Vocabulary::RF[:Impulse]).should be_empty
|
80
|
+
resource_graph.query(simple_statement).should be_empty
|
81
|
+
|
82
|
+
resource_graph.query(blank_node_statement).should_not be_empty
|
83
|
+
resource_graph.query([context_node, Voc[:a], 17]).should_not be_empty
|
84
|
+
end
|
85
|
+
|
86
|
+
it "should copy entire context when blank node is written to" do
|
87
|
+
updater[Voc[:b]][Voc[:c]] = "jagular" #they drop from trees
|
88
|
+
|
89
|
+
resource_graph = ::RDF::Graph.new(context_node, :data => target_graph)
|
90
|
+
|
91
|
+
resource_graph.query(blank_node_statement).should_not be_empty
|
92
|
+
resource_graph.query(simple_statement).should_not be_empty
|
93
|
+
resource_graph.query([nil, Voc[:c], "jagular", context_node]).should_not be_empty
|
94
|
+
end
|
95
|
+
|
96
|
+
it "should trigger (only one) Store query just by writing" do
|
97
|
+
updater[Voc[:d]] = 14
|
98
|
+
updater[Voc[:e]] = "fourteen"
|
99
|
+
|
100
|
+
resource_graph = ::RDF::Graph.new(context_node, :data => target_graph)
|
101
|
+
|
102
|
+
resource_graph.query(blank_node_statement).should_not be_empty
|
103
|
+
resource_graph.query(simple_statement).should_not be_empty
|
104
|
+
resource_graph.query([context_node, Voc[:d], 14]).should_not be_empty
|
105
|
+
resource_graph.query([context_node, Voc[:e], "fourteen"]).should_not be_empty
|
106
|
+
end
|
107
|
+
|
108
|
+
it "should return statements that have been written" do
|
109
|
+
updater[Voc[:a]] = 17
|
110
|
+
updater[Voc[:a]].should == 17
|
111
|
+
end
|
112
|
+
|
113
|
+
it "should not copy contexts simply because they're read from" do
|
114
|
+
updater[Voc[:a]].should == 7
|
115
|
+
target_graph.should be_empty
|
116
|
+
end
|
117
|
+
end
|
File without changes
|
metadata
ADDED
@@ -0,0 +1,241 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: roadforest
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease:
|
5
|
+
version: 0.0.1
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Judson Lester
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-08-22 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
prerelease: false
|
16
|
+
type: :runtime
|
17
|
+
name: rdf
|
18
|
+
version_requirements: !ruby/object:Gem::Requirement
|
19
|
+
requirements:
|
20
|
+
- - ! '>='
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 1.0.4
|
23
|
+
none: false
|
24
|
+
requirement: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - ! '>='
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: 1.0.4
|
29
|
+
none: false
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
prerelease: false
|
32
|
+
type: :runtime
|
33
|
+
name: json-ld
|
34
|
+
version_requirements: !ruby/object:Gem::Requirement
|
35
|
+
requirements:
|
36
|
+
- - ~>
|
37
|
+
- !ruby/object:Gem::Version
|
38
|
+
version: 1.0.0
|
39
|
+
none: false
|
40
|
+
requirement: !ruby/object:Gem::Requirement
|
41
|
+
requirements:
|
42
|
+
- - ~>
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
version: 1.0.0
|
45
|
+
none: false
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
prerelease: false
|
48
|
+
type: :runtime
|
49
|
+
name: webmachine
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 1.1.0
|
55
|
+
none: false
|
56
|
+
requirement: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - ! '>='
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: 1.1.0
|
61
|
+
none: false
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
prerelease: false
|
64
|
+
type: :runtime
|
65
|
+
name: addressable
|
66
|
+
version_requirements: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - ~>
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: 2.2.8
|
71
|
+
none: false
|
72
|
+
requirement: !ruby/object:Gem::Requirement
|
73
|
+
requirements:
|
74
|
+
- - ~>
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: 2.2.8
|
77
|
+
none: false
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
prerelease: false
|
80
|
+
type: :runtime
|
81
|
+
name: excon
|
82
|
+
version_requirements: !ruby/object:Gem::Requirement
|
83
|
+
requirements:
|
84
|
+
- - ~>
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: '0.25'
|
87
|
+
none: false
|
88
|
+
requirement: !ruby/object:Gem::Requirement
|
89
|
+
requirements:
|
90
|
+
- - ~>
|
91
|
+
- !ruby/object:Gem::Version
|
92
|
+
version: '0.25'
|
93
|
+
none: false
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
prerelease: false
|
96
|
+
type: :runtime
|
97
|
+
name: tilt
|
98
|
+
version_requirements: !ruby/object:Gem::Requirement
|
99
|
+
requirements:
|
100
|
+
- - ! '>='
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: 1.3.6
|
103
|
+
none: false
|
104
|
+
requirement: !ruby/object:Gem::Requirement
|
105
|
+
requirements:
|
106
|
+
- - ! '>='
|
107
|
+
- !ruby/object:Gem::Version
|
108
|
+
version: 1.3.6
|
109
|
+
none: false
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
prerelease: false
|
112
|
+
type: :runtime
|
113
|
+
name: valise
|
114
|
+
version_requirements: !ruby/object:Gem::Requirement
|
115
|
+
requirements:
|
116
|
+
- - ! '>='
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
version: 0.9.1
|
119
|
+
none: false
|
120
|
+
requirement: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ! '>='
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 0.9.1
|
125
|
+
none: false
|
126
|
+
description: ! " RoaD FoReST is a web framework designed to use the Resource Description\n
|
127
|
+
\ Framework to accomplish Representative State Transfer. I'm stoked, even if\n everyone
|
128
|
+
else is rolling their eyes.\n\n This gem represents the Ruby implementation of
|
129
|
+
both client and server. The\n next step will be to set up an adapter for a Javascript
|
130
|
+
framework.\n"
|
131
|
+
email:
|
132
|
+
- nyarly@gmail.com
|
133
|
+
executables: []
|
134
|
+
extensions: []
|
135
|
+
extra_rdoc_files: []
|
136
|
+
files:
|
137
|
+
- lib/roadforest/rdf/graph-store.rb
|
138
|
+
- lib/roadforest/rdf/normalization.rb
|
139
|
+
- lib/roadforest/rdf/focus-list.rb
|
140
|
+
- lib/roadforest/rdf/graph-reading.rb
|
141
|
+
- lib/roadforest/rdf/graph-copier.rb
|
142
|
+
- lib/roadforest/rdf/context-fascade.rb
|
143
|
+
- lib/roadforest/rdf/source-rigor.rb
|
144
|
+
- lib/roadforest/rdf/graph-focus.rb
|
145
|
+
- lib/roadforest/rdf/post-focus.rb
|
146
|
+
- lib/roadforest/rdf/source-rigor/null-investigator.rb
|
147
|
+
- lib/roadforest/rdf/source-rigor/credence.rb
|
148
|
+
- lib/roadforest/rdf/source-rigor/credence/any.rb
|
149
|
+
- lib/roadforest/rdf/source-rigor/credence/role-if-available.rb
|
150
|
+
- lib/roadforest/rdf/source-rigor/credence/none-if-role-absent.rb
|
151
|
+
- lib/roadforest/rdf/source-rigor/http-investigator.rb
|
152
|
+
- lib/roadforest/rdf/source-rigor/investigator.rb
|
153
|
+
- lib/roadforest/rdf/source-rigor/credence-annealer.rb
|
154
|
+
- lib/roadforest/rdf/update-focus.rb
|
155
|
+
- lib/roadforest/rdf/vocabulary.rb
|
156
|
+
- lib/roadforest/rdf/document.rb
|
157
|
+
- lib/roadforest/rdf/focus-wrapping.rb
|
158
|
+
- lib/roadforest/rdf/resource-pattern.rb
|
159
|
+
- lib/roadforest/rdf/parcel.rb
|
160
|
+
- lib/roadforest/rdf/resource-query.rb
|
161
|
+
- lib/roadforest/rdf/investigation.rb
|
162
|
+
- lib/roadforest/http/message.rb
|
163
|
+
- lib/roadforest/http/graph-response.rb
|
164
|
+
- lib/roadforest/http/adapters/excon.rb
|
165
|
+
- lib/roadforest/http/graph-transfer.rb
|
166
|
+
- lib/roadforest/resource/rdf/list.rb
|
167
|
+
- lib/roadforest/resource/rdf/parent-item.rb
|
168
|
+
- lib/roadforest/resource/rdf/read-only.rb
|
169
|
+
- lib/roadforest/resource/rdf/leaf-item.rb
|
170
|
+
- lib/roadforest/resource/http/form-parsing.rb
|
171
|
+
- lib/roadforest/resource/role/writable.rb
|
172
|
+
- lib/roadforest/resource/role/has-children.rb
|
173
|
+
- lib/roadforest/resource/handlers.rb
|
174
|
+
- lib/roadforest/resource/rdf.rb
|
175
|
+
- lib/roadforest/test-support/matchers.rb
|
176
|
+
- lib/roadforest/test-support/remote-host.rb
|
177
|
+
- lib/roadforest/test-support/trace-formatter.rb
|
178
|
+
- lib/roadforest/test-support/dispatcher-facade.rb
|
179
|
+
- lib/roadforest/test-support/http-client.rb
|
180
|
+
- lib/roadforest/server.rb
|
181
|
+
- lib/roadforest/application/services-host.rb
|
182
|
+
- lib/roadforest/application/path-provider.rb
|
183
|
+
- lib/roadforest/application/parameters.rb
|
184
|
+
- lib/roadforest/application/dispatcher.rb
|
185
|
+
- lib/roadforest/application/route-adapter.rb
|
186
|
+
- lib/roadforest/models.rb
|
187
|
+
- lib/roadforest/model.rb
|
188
|
+
- lib/roadforest/blob-model.rb
|
189
|
+
- lib/roadforest/test-support.rb
|
190
|
+
- lib/roadforest/rdf.rb
|
191
|
+
- lib/roadforest/utility/class-registry.rb
|
192
|
+
- lib/roadforest/content-handling/type-handlers/jsonld.rb
|
193
|
+
- lib/roadforest/content-handling/media-type.rb
|
194
|
+
- lib/roadforest/content-handling/engine.rb
|
195
|
+
- lib/roadforest/application.rb
|
196
|
+
- lib/roadforest/remote-host.rb
|
197
|
+
- lib/roadforest.rb
|
198
|
+
- spec/graph-store.rb
|
199
|
+
- spec/graph-copier.rb
|
200
|
+
- spec/rdf-parcel.rb
|
201
|
+
- spec/media-types.rb
|
202
|
+
- spec/update-focus.rb
|
203
|
+
- spec/client.rb
|
204
|
+
- spec/credence-annealer.rb
|
205
|
+
- examples/file-management.rb
|
206
|
+
- spec_support/gem_test_suite.rb
|
207
|
+
homepage: http://nyarly.github.com/roadforest
|
208
|
+
licenses:
|
209
|
+
- MIT
|
210
|
+
post_install_message:
|
211
|
+
rdoc_options:
|
212
|
+
- --inline-source
|
213
|
+
- --main
|
214
|
+
- doc/README
|
215
|
+
- --title
|
216
|
+
- roadforest-0.0.1 Documentation
|
217
|
+
require_paths:
|
218
|
+
- lib/
|
219
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
220
|
+
requirements:
|
221
|
+
- - ! '>='
|
222
|
+
- !ruby/object:Gem::Version
|
223
|
+
segments:
|
224
|
+
- 0
|
225
|
+
hash: -247142993
|
226
|
+
version: '0'
|
227
|
+
none: false
|
228
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
229
|
+
requirements:
|
230
|
+
- - ! '>='
|
231
|
+
- !ruby/object:Gem::Version
|
232
|
+
version: '0'
|
233
|
+
none: false
|
234
|
+
requirements: []
|
235
|
+
rubyforge_project: roadforest
|
236
|
+
rubygems_version: 1.8.24
|
237
|
+
signing_key:
|
238
|
+
specification_version: 3
|
239
|
+
summary: An RDF+ReST web framework
|
240
|
+
test_files:
|
241
|
+
- spec_support/gem_test_suite.rb
|