tao_rdfizer 0.9.1 → 0.9.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5e3d5c4f2fea0db166fcd917ed89667233b10cd3
4
- data.tar.gz: 0216a19ec23514d036319e1f9125694d50dfb0e9
3
+ metadata.gz: 7d273692bcd55639734303a562b784a10aa70f33
4
+ data.tar.gz: 52a38df02c8f7281648fa1fa217495678d94df85
5
5
  SHA512:
6
- metadata.gz: 028c6d291dfd986350c641f5265b014231876fa12d7b828df2b468a8fd1b995798ab2fedc2a493482c27aea420293bd8a8c47aa0521cdbd871f539d0483341a0
7
- data.tar.gz: 3bd1f003d591cb8c849db4751ac168176020b395bdd3e4a3712faf83e204020ab1762e74391bfa1c9f0ed2ae6b590a202284ee972d47c52bf133a7a9ff645b0a
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
- # mode = :annotations
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
- template_filename = unless mode.nil?
13
- if mode == :annotations
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
- 'view/tao_ttl.erb'
15
+ ERB_ANNOTATIONS_TTL
22
16
  end
23
- @tao_ttl_erb = ERB.new(File.read(template_filename), nil, '-')
24
- @prefix_ttl_erb = ERB.new(File.read("view/prefixes_ttl.erb"), nil, '-')
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.1
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
@@ -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 -%>
@@ -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 -%>