anystyle-parser 0.4.5 → 0.5.0

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: bc18ecd238c51394c2a34f8ec45c9ece02eaaeeb
4
- data.tar.gz: 7e26461b65683e798ca4a6e166d1691d6ff2db7a
3
+ metadata.gz: e22354031062b2943bdbd73345b0939d25150de7
4
+ data.tar.gz: f447cfc163894cbdf2a2f2664d10f87636e11166
5
5
  SHA512:
6
- metadata.gz: a6afa20d3b20068d49d773c90677a8a4f815e05b86e9cf50c0bf32489a8e51c7b51d7358389ad6bca3d628c81f4d30ab4ab8e7406bef73bc07de26c77d427ac6
7
- data.tar.gz: 6ecaaa31b450b68fdcc5fd04b5d34dbca250604408163a482e783cf6d70061fba9a0cd56220fbb5ebcb8a66befd6cc320385970f4d58bcf0555de622024c9591
6
+ metadata.gz: 83efda123fa863479529d5c8eea1570a0696e2509e755b6d5aa6678e0a0e9f9331de14cced4fd4f9831fcc1755fb4a358caf3d40fd8d67a0bd508bc6cbe2df47
7
+ data.tar.gz: 6eb05bec6da95a1c69fb646f66a57b3b249b700a90fa5a4893a8e09ac7600428f6e73790304c90bd29e9401e67aceef66b42929954330169829bf849ad48aeda
data/HISTORY.md CHANGED
@@ -1,3 +1,7 @@
1
+ 0.5.0 / 2014-03-13
2
+ ==================
3
+ * Add XML output
4
+
1
5
  0.4.4 & 0.4.5 / 2014-03-10
2
6
  ==========================
3
7
  * Mitigate potential vulnerability: open files only if string not tainted
@@ -18,6 +18,7 @@ Gem::Specification.new do |s|
18
18
  s.required_ruby_version = '>= 1.9.3'
19
19
 
20
20
  s.add_runtime_dependency('bibtex-ruby', '~>3.0')
21
+ s.add_runtime_dependency('builder', '~>3.2')
21
22
  s.add_runtime_dependency('wapiti', '~>0.1')
22
23
  s.add_runtime_dependency('namae', '~>0.8')
23
24
 
@@ -2,6 +2,7 @@
2
2
  require 'singleton'
3
3
 
4
4
  require 'bibtex'
5
+ require 'builder'
5
6
  require 'wapiti'
6
7
  require 'namae'
7
8
 
@@ -3,7 +3,7 @@ module Anystyle
3
3
 
4
4
  class Parser
5
5
 
6
- @formats = [:bibtex, :hash, :citeproc, :tags, :raw].freeze
6
+ @formats = [:bibtex, :hash, :citeproc, :xml, :tags, :raw].freeze
7
7
 
8
8
  @defaults = {
9
9
  :model => File.expand_path('../support/anystyle.mod', __FILE__),
@@ -273,6 +273,20 @@ module Anystyle
273
273
  end
274
274
  end
275
275
 
276
+ def format_xml(labels)
277
+ xml = Builder::XmlMarkup.new
278
+ xml.instruct! :xml, encoding: 'UTF-8'
279
+
280
+ xml.references do |rs|
281
+ labels.each do |line|
282
+ rs.reference do |r|
283
+ line.each do |label, segment|
284
+ r.tag! label, segment
285
+ end
286
+ end
287
+ end
288
+ end
289
+ end
276
290
  end
277
291
 
278
292
  end
@@ -1,5 +1,5 @@
1
1
  module Anystyle
2
2
  module Parser
3
- VERSION = '0.4.5'.freeze
3
+ VERSION = '0.5.0'.freeze
4
4
  end
5
5
  end
@@ -124,6 +124,10 @@ module Anystyle::Parser
124
124
  difference = 'Derrida, J. (1967). L’écriture et la différence (1 éd.). Paris: Éditions du Seuil.'
125
125
  subject.parse(difference, :raw)[0].map(&:last).join(' ').should == difference
126
126
  end
127
+
128
+ it 'returns xml document for format "raw"' do
129
+ subject.parse(citation, :xml).should == '<?xml version="1.0" encoding="UTF-8"?><references><reference><author>Perec, Georges.</author><title>A Void.</title><location>London:</location><publisher>The Harvill Press,</publisher><date>1995.</date><pages>p.108.</pages></reference></references>'
130
+ end
127
131
  end
128
132
 
129
133
  describe "#train" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: anystyle-parser
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.5
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sylvester Keil
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-10 00:00:00.000000000 Z
11
+ date: 2014-03-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bibtex-ruby
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: builder
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: '3.2'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: '3.2'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: wapiti
29
43
  requirement: !ruby/object:Gem::Requirement