iq_rdf 0.2.1 → 0.2.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
  SHA256:
3
- metadata.gz: 9f313c7708172c922302cba2d2ec8caa343cfe7ba07d078dcee031de7b9e25ab
4
- data.tar.gz: e5925b16b8963590832b483ca13e8a719bb9e67d4884223d9eabfff97c515fc7
3
+ metadata.gz: e9b8113dea4da94252393b4f5d662fb83e20dd201b82f8d350d51ea13cf616a6
4
+ data.tar.gz: a3c5e7299288526e0e8c042b37cfb6b3d20a500e9e361b464fd6667e07ca94f8
5
5
  SHA512:
6
- metadata.gz: 2f3f7b87b9d4e1dd6bddf67d6c9875006a0445eb9e7a7061813505325986a9531af85c8a87781a36093e7593237d94faede47948efa9a17588cdde0abb820e0b
7
- data.tar.gz: a87157efcd5ce3c9cdc69c09d2a073ae7b631aad7e046040b0ec387f198720c58665fe14880f69b457c8c218813a6327e66d86e5bf5791f505c9e6e648617642
6
+ metadata.gz: aef36d79a240d34c0f3f35ce6dc431f02bfc84e836a5b6050714c86cbac1c5a4e138f43be74f3169a8750b4a730989a0c26fbeb1e53cad9520e80330360b7dcd
7
+ data.tar.gz: d6844c6e75ca177e5707eb8e87ce181a0a3232c754ad288cb086a2608f9feb13c45bcc2fe138be613c465b9c4f032bac50c10c8a543c82da16307a2bdee15c65
@@ -15,6 +15,14 @@
15
15
  module IqRdf
16
16
  class Literal
17
17
 
18
+ NTRIPLES_ESCAPE_MAP = {
19
+ "\\" => "\\\\",
20
+ '"' => '\\"',
21
+ "\n" => "\\n",
22
+ "\r" => "\\r",
23
+ "\t" => "\\t"
24
+ }.freeze
25
+
18
26
  def initialize(obj, lang = nil, datatype = nil)
19
27
  raise "#{datatype.inspect} is not an URI" unless datatype.nil? || datatype.is_a?(::URI) || datatype.is_a?(IqRdf::Uri)
20
28
  @obj = obj
@@ -50,7 +58,6 @@ module IqRdf
50
58
  end
51
59
 
52
60
  def to_ntriples(parent_lang = nil)
53
- quote = @obj.to_s.include?("\n") ? '"""' : '"'
54
61
  suffix = if @datatype.is_a?(::URI)
55
62
  "^^<#{@datatype.to_s}>"
56
63
  elsif @datatype.is_a?(IqRdf::Uri)
@@ -60,7 +67,7 @@ module IqRdf
60
67
  (lang && lang != :none) ? "@#{lang}" : ""
61
68
  end
62
69
 
63
- "#{quote}#{@obj.to_s.gsub("\\", "\\\\\\\\").gsub(/"/, "\\\"")}#{quote}#{suffix}"
70
+ "\"#{@obj.to_s.gsub(/[\\"\n\r\t]/, NTRIPLES_ESCAPE_MAP)}\"#{suffix}"
64
71
  end
65
72
 
66
73
  def build_xml(xml, &block)
@@ -13,5 +13,5 @@
13
13
  # limitations under the License.
14
14
 
15
15
  module IqRdf
16
- VERSION = "0.2.1"
16
+ VERSION = "0.2.2"
17
17
  end
@@ -202,8 +202,7 @@ _:b2 <http://www.umweltprobenbank.de/title> "blubb"@de .
202
202
  <http://www.test.de/testemann> <http://www.test.de/complex> "A very complex type"^^<http://this.com/is#complex> .
203
203
  <http://www.test.de/testemann> <http://www.test.de/complex2> "Shorter form"^^<http://www.test.de/myDatatype> .
204
204
  <http://www.test.de/testemann> <http://www.test.de/quotes> "\\"I'm \\\\quoted\\""@de .
205
- <http://www.test.de/testemann> <http://www.test.de/line_breaks> """I'm written
206
- over two lines"""@de .
205
+ <http://www.test.de/testemann> <http://www.test.de/line_breaks> "I'm written\\nover two lines"@de .
207
206
  <http://www.test.de/testemann> <http://www.test.de/some_literal> "text"@de .
208
207
  rdf
209
208
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iq_rdf
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Till Schulte-Coerne
@@ -117,7 +117,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
117
117
  - !ruby/object:Gem::Version
118
118
  version: '0'
119
119
  requirements: []
120
- rubygems_version: 4.0.3
120
+ rubygems_version: 4.0.16
121
121
  specification_version: 4
122
122
  summary: IqRdf - A builder like rdf library for ruby and rails
123
123
  test_files: