tao_rdfizer 0.9.9 → 0.9.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +5 -5
  2. data/lib/tao_rdfizer/tao_rdfizer.rb +24 -19
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 0254770e5fbff5ef2071765b19a324af5ad1a3cd
4
- data.tar.gz: 639d52929cfe8123766b540cc4f2a92ccf616f36
2
+ SHA256:
3
+ metadata.gz: 839f30915cc8896477342a8cfdb87d8d4f23d8ffbbc133b9b0b087939050befe
4
+ data.tar.gz: bfa3efcbae03859f8a778afbf81f37daffec3467b537671cf5282c0905ed1d5f
5
5
  SHA512:
6
- metadata.gz: c9feeec71d327a4781036d16d5d2773f1fd77678ef23ae2f01b627bdb41f2ab04bf401c57204fdd96c27d237c65c8a9ec9da3060fd2206c4d43d7ca1cad4da50
7
- data.tar.gz: 67cd10929f38deb58b0e988547f7bde80fb8dd88e3c771fc034274ef374233bfbe13a5d72c8fd26127a1e8cf5c18c34d158493e11c16d718310b5ca40f37651b
6
+ metadata.gz: 2a9744b372d7a9774774262a17771c43533b44c3a95ad19cd7e60add25d6135afb3c85ecad8d6933ffdff61b39632be0386ecf9d85340f1f0bea1efc9176e8d5
7
+ data.tar.gz: 77f1d13bf567b6e5ed28668034da90e0810520358e2aa2d27dc747ce78f090316b1519be8f1b2a30050fce5a20408b46a932887c955979a217304c4a53cd709e
@@ -4,11 +4,11 @@ require 'erb'
4
4
  module TAO; end unless defined? TAO
5
5
 
6
6
  class TAO::RDFizer
7
- # if mode == :spans then produces span descriptions
8
- # if mode == :annotations then produces annotation descriptions
9
- # if mode == nil then produces both
10
- def initialize(mode = nil)
11
- @mode = mode
7
+ # if mode == :spans then produces span descriptions
8
+ # if mode == :annotations then produces annotation descriptions
9
+ # if mode == nil then produces both
10
+ def initialize(mode = nil)
11
+ @mode = mode
12
12
  template = if !mode.nil? && mode == :spans
13
13
  ERB_SPANS_TTL
14
14
  else
@@ -17,7 +17,7 @@ class TAO::RDFizer
17
17
 
18
18
  @tao_ttl_erb = ERB.new(template, nil, '-')
19
19
  @prefix_ttl_erb = ERB.new(ERB_PREFIXES_TTL, nil, '-')
20
- end
20
+ end
21
21
 
22
22
  def rdfize(annotations_col)
23
23
  # namespaces
@@ -57,19 +57,23 @@ class TAO::RDFizer
57
57
  end
58
58
  end
59
59
 
60
- # denotations preprocessing
61
- _denotations.each do |d|
62
- span_uri = "<#{text_uri}/spans/#{d[:span][:begin]}-#{d[:span][:end]}>"
63
- d[:span_uri] = span_uri
64
- d[:obj_uri] = "#{prefix_for_this}:#{text_id}-#{d[:id]}"
65
- d[:cls_uri] = find_uri(d[:obj], namespaces, prefix_for_this)
66
- end
60
+ begin
61
+ # denotations preprocessing
62
+ _denotations.each do |d|
63
+ span_uri = "<#{text_uri}/spans/#{d[:span][:begin]}-#{d[:span][:end]}>"
64
+ d[:span_uri] = span_uri
65
+ d[:obj_uri] = "#{prefix_for_this}:#{text_id}-#{d[:id]}"
66
+ d[:cls_uri] = find_uri(d[:obj], namespaces, prefix_for_this)
67
+ end
67
68
 
68
- # relations preprocessing
69
- _relations.each do |r|
70
- r[:subj_uri] = "#{prefix_for_this}:#{text_id}-#{r[:subj]}"
71
- r[:obj_uri] = "#{prefix_for_this}:#{text_id}-#{r[:obj]}"
72
- r[:pred_uri] = find_uri(r[:pred], namespaces, prefix_for_this)
69
+ # relations preprocessing
70
+ _relations.each do |r|
71
+ r[:subj_uri] = "#{prefix_for_this}:#{text_id}-#{r[:subj]}"
72
+ r[:obj_uri] = "#{prefix_for_this}:#{text_id}-#{r[:obj]}"
73
+ r[:pred_uri] = find_uri(r[:pred], namespaces, prefix_for_this)
74
+ end
75
+ rescue ArgumentError => e
76
+ raise ArgumentError, "[#{sourcedb}-#{sourceid}] " + e
73
77
  end
74
78
 
75
79
  unless @mode == :annotations
@@ -158,6 +162,7 @@ class TAO::RDFizer
158
162
  end
159
163
 
160
164
  def find_uri (label, namespaces, prefix_for_this)
165
+ raise ArgumentError, "A label including a whitespace character found: #{label}." if label.match(/\s/)
161
166
  delimiter_position = label.index(':')
162
167
  if !delimiter_position.nil? && namespaces.keys.include?(label[0...delimiter_position])
163
168
  label
@@ -193,7 +198,7 @@ class TAO::RDFizer
193
198
  <% s[:children].each do |s| -%>
194
199
  tao:contains <%= s[:span_uri] %> ;
195
200
  <% end -%>
196
- tao:has_text <%= s[:text].dump %> ;
201
+ tao:has_text <%= s[:text].inspect %> ;
197
202
  tao:belongs_to <<%= s[:source_uri] %>> ;
198
203
  tao:begins_at <%= s[:begin] %> ;
199
204
  tao:ends_at <%= s[:end] %> .
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tao_rdfizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.9
4
+ version: 0.9.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jin-Dong Kim
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-24 00:00:00.000000000 Z
11
+ date: 2019-07-11 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: It uses TAO (text annotation ontology) for representation of annotations
14
14
  to text.
@@ -41,7 +41,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
41
41
  version: '0'
42
42
  requirements: []
43
43
  rubyforge_project:
44
- rubygems_version: 2.6.11
44
+ rubygems_version: 2.7.9
45
45
  signing_key:
46
46
  specification_version: 4
47
47
  summary: A RDF statement generator for annotations in the PubAnnotation JSON format.