tao_rdfizer 0.9.1 → 0.9.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/tao_rdfizer +2 -2
- data/lib/tao_rdfizer/tao_rdfizer.rb +49 -11
- metadata +1 -4
- data/view/prefixes_ttl.erb +0 -10
- data/view/tao_annotations_ttl.erb +0 -9
- data/view/tao_spans_ttl.erb +0 -14
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7d273692bcd55639734303a562b784a10aa70f33
|
4
|
+
data.tar.gz: 52a38df02c8f7281648fa1fa217495678d94df85
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 497a10e7db3043f497e9602d204dbbcbb8b11d09261a68d677d6485e98df1a642a772007ab5d877de5de2d8beadce9dd52108c753ddb18568a78bd1f9a55a1b5
|
7
|
+
data.tar.gz: 8dae7f177c792044161dbfce3bc58e5a35bdb2e885d659cf84dec46f2924d67df9c335848e01b71d01d4b51da6ac6687b7bac1d8e28af7847f40dfc416e3706b
|
data/bin/tao_rdfizer
CHANGED
@@ -5,8 +5,8 @@ require 'json'
|
|
5
5
|
begin
|
6
6
|
annotations = JSON.parse File.read(ARGV[0]), :symbolize_names => true
|
7
7
|
annotations = [annotations] unless annotations.class == Array
|
8
|
-
|
9
|
-
mode = :spans
|
8
|
+
mode = :annotations
|
9
|
+
# mode = :spans
|
10
10
|
rdfizer = TAO::RDFizer.new(mode)
|
11
11
|
puts rdfizer.rdfize(annotations)
|
12
12
|
rescue ArgumentError, IOError => e
|
@@ -9,19 +9,14 @@ class TAO::RDFizer
|
|
9
9
|
# if mode == nil then produces both
|
10
10
|
def initialize(mode = nil)
|
11
11
|
@mode = mode
|
12
|
-
|
13
|
-
|
14
|
-
'view/tao_annotations_ttl.erb'
|
15
|
-
elsif mode == :spans
|
16
|
-
'view/tao_spans_ttl.erb'
|
17
|
-
else
|
18
|
-
'view/tao_ttl.erb'
|
19
|
-
end
|
12
|
+
template = if !mode.nil? && mode == :spans
|
13
|
+
ERB_SPANS_TTL
|
20
14
|
else
|
21
|
-
|
15
|
+
ERB_ANNOTATIONS_TTL
|
22
16
|
end
|
23
|
-
|
24
|
-
@
|
17
|
+
|
18
|
+
@tao_ttl_erb = ERB.new(template, nil, '-')
|
19
|
+
@prefix_ttl_erb = ERB.new(ERB_PREFIXES_TTL, nil, '-')
|
25
20
|
end
|
26
21
|
|
27
22
|
def rdfize(annotations_col)
|
@@ -151,6 +146,8 @@ class TAO::RDFizer
|
|
151
146
|
ttl = @prefix_ttl_erb.result(binding) + @tao_ttl_erb.result(binding)
|
152
147
|
end
|
153
148
|
|
149
|
+
private
|
150
|
+
|
154
151
|
def include_parent?(spans, span)
|
155
152
|
# spans.each{|s| return true if (s[:begin] <= span[:begin] && s[:end] > span[:end]) || (s[:begin] < span[:begin] && s[:end] >= span[:end])}
|
156
153
|
spans.each{|s| return true if s[:begin] <= span[:begin] && s[:end] >= span[:end]}
|
@@ -180,4 +177,45 @@ class TAO::RDFizer
|
|
180
177
|
namespaces.has_key?('_base') ? "<#{clabel}>" : "prj:#{clabel}"
|
181
178
|
end
|
182
179
|
end
|
180
|
+
|
181
|
+
ERB_ANNOTATIONS_TTL = <<~HEREDOC
|
182
|
+
<% denotations.each do |d| -%>
|
183
|
+
<%= d[:obj_uri] %> tao:denoted_by <%= d[:span_uri] %> ;
|
184
|
+
rdf:type <%= d[:cls_uri] %> .
|
185
|
+
<% end -%>
|
186
|
+
<%# relations -%>
|
187
|
+
<% relations.each do |r| -%>
|
188
|
+
<%= r[:subj_uri] %> <%= r[:pred_uri] %> <%= r[:obj_uri] %> .
|
189
|
+
<% end -%>
|
190
|
+
HEREDOC
|
191
|
+
|
192
|
+
ERB_SPANS_TTL = <<~HEREDOC
|
193
|
+
<% spans.each do |s| -%>
|
194
|
+
<%= s[:span_uri] %> rdf:type tao:Text_span ;
|
195
|
+
tao:belongs_to <<%= s[:source_uri] %>> ;
|
196
|
+
tao:begins_at <%= s[:begin] %> ;
|
197
|
+
tao:ends_at <%= s[:end] %> ;
|
198
|
+
<% s[:precedings].each do |s| -%>
|
199
|
+
tao:follows <%= s[:span_uri] %> ;
|
200
|
+
<% end -%>
|
201
|
+
<% s[:children].each do |s| -%>
|
202
|
+
tao:contains <%= s[:span_uri] %> ;
|
203
|
+
<% end -%>
|
204
|
+
tao:has_text "<%= s[:text] %>" .
|
205
|
+
<% end -%>
|
206
|
+
HEREDOC
|
207
|
+
|
208
|
+
ERB_PREFIXES_TTL = <<~HEREDOC
|
209
|
+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
210
|
+
@prefix tao: <http://pubannotation.org/ontology/tao.owl#> .
|
211
|
+
<%# namespaces -%>
|
212
|
+
<% namespaces.each_key do |p| -%>
|
213
|
+
<% if p == '_base' -%>
|
214
|
+
@base <<%= namespaces[p] %>> .
|
215
|
+
<% else -%>
|
216
|
+
@prefix <%= p %>: <<%= namespaces[p] %>> .
|
217
|
+
<% end -%>
|
218
|
+
<% end -%>
|
219
|
+
HEREDOC
|
220
|
+
|
183
221
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tao_rdfizer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jin-Dong Kim
|
@@ -21,9 +21,6 @@ files:
|
|
21
21
|
- bin/tao_rdfizer
|
22
22
|
- lib/tao_rdfizer.rb
|
23
23
|
- lib/tao_rdfizer/tao_rdfizer.rb
|
24
|
-
- view/prefixes_ttl.erb
|
25
|
-
- view/tao_annotations_ttl.erb
|
26
|
-
- view/tao_spans_ttl.erb
|
27
24
|
homepage: https://github.com/pubannotation/tao_rdfizer
|
28
25
|
licenses:
|
29
26
|
- MIT
|
data/view/prefixes_ttl.erb
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
2
|
-
@prefix tao: <http://pubannotation.org/ontology/tao.owl#> .
|
3
|
-
<%# namespaces -%>
|
4
|
-
<% namespaces.each_key do |p| -%>
|
5
|
-
<% if p == '_base' -%>
|
6
|
-
@base <%= "<#{namespaces[p]}>" %> .
|
7
|
-
<% else -%>
|
8
|
-
@prefix <%= p %>: <%= "<#{namespaces[p]}>" %> .
|
9
|
-
<% end -%>
|
10
|
-
<% end -%>
|
@@ -1,9 +0,0 @@
|
|
1
|
-
<%# denotations -%>
|
2
|
-
<% denotations.each do |d| -%>
|
3
|
-
<%= d[:obj_uri] %> tao:denoted_by <%= d[:span_uri] %> ;
|
4
|
-
rdf:type <%= d[:cls_uri] %> .
|
5
|
-
<% end -%>
|
6
|
-
<%# relations -%>
|
7
|
-
<% relations.each do |r| -%>
|
8
|
-
<%= r[:subj_uri] %> <%= r[:pred_uri] %> <%= r[:obj_uri] %> .
|
9
|
-
<% end -%>
|
data/view/tao_spans_ttl.erb
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
<%# spans -%>
|
2
|
-
<% spans.each do |s| -%>
|
3
|
-
<%= s[:span_uri] %> rdf:type tao:Text_span ;
|
4
|
-
tao:belongs_to <%= "<#{s[:source_uri]}>" %> ;
|
5
|
-
tao:begins_at <%= s[:begin] %> ;
|
6
|
-
tao:ends_at <%= s[:end] %> ;
|
7
|
-
<% s[:precedings].each do |s| -%>
|
8
|
-
tao:follows <%= s[:span_uri] %> ;
|
9
|
-
<% end -%>
|
10
|
-
<% s[:children].each do |s| -%>
|
11
|
-
tao:contains <%= s[:span_uri] %> ;
|
12
|
-
<% end -%>
|
13
|
-
tao:has_text "<%= s[:text] %>" .
|
14
|
-
<% end -%>
|