opener-pos-tagger-it 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2a1625f4855617e68ace785a3cd3759cc764d31a
4
+ data.tar.gz: 8d7bbd23ce6aa0c22bf79a5a3836f5f841d1fe2c
5
+ SHA512:
6
+ metadata.gz: c24643df1570dd7b96f5eac3f78ee7e5175e969bcdf9a78da31f9b9599b32c70e8bfb4b0a9e000aea382b815f3d3d613047cf14350db2f7598573b0ad4ffe274
7
+ data.tar.gz: 71df3190132943c5e6ef544e728de40114e794a9d6195acf574cceb9c3e89f4c972974e7e850beea833bc74db22ae1e482314bdcb00117d23bed9434010c3d21
@@ -0,0 +1,67 @@
1
+ [![Build Status](https://drone.io/github.com/opener-project/pos-tagger-it/status.png)](https://drone.io/github.com/opener-project/pos-tagger-it/latest)
2
+
3
+ # Italian POS Tagger
4
+
5
+ This repository contains the source code for the Italian POS tagger of the
6
+ OpeNER project.
7
+
8
+ ## Requirements
9
+
10
+ * Java 1.7 or newer
11
+ * Ruby 1.9.2 or newer
12
+ * Maven
13
+ * Bundler
14
+
15
+ ## Installation
16
+
17
+ Using RubyGems:
18
+
19
+ gem install opener-pos-tagger-it
20
+
21
+ Using Bundler:
22
+
23
+ gem 'opener-pos-tagger-it',
24
+ :git => 'git@github.com/opener-project/pos-tagger-it.git',
25
+ :branch => 'master'
26
+
27
+ Using specific install:
28
+
29
+ gem install specific_install
30
+ gem specific_install opener-pos-tagger-it \
31
+ -l https://github.com/opener-project/pos-tagger-it.git
32
+
33
+ ## Usage
34
+
35
+ cat some_input_file.kaf | pos-tagger-it
36
+
37
+ ## Contributing
38
+
39
+ First make sure all the required dependencies are installed:
40
+
41
+ bundle install
42
+
43
+ Then compile the required Java code:
44
+
45
+ bundle exec rake java:compile
46
+
47
+ For this you'll need to have Java 1.7 and Maven installed. These requirements
48
+ are verified for you before the Rake task calls Maven.
49
+
50
+ ## Testing
51
+
52
+ To run the tests (which are powered by Cucumber), simply run the following:
53
+
54
+ bundle exec rake
55
+
56
+ This will take care of verifying the requirements, installing the required Java
57
+ packages and running the tests.
58
+
59
+ For more information on the available Rake tasks run the following:
60
+
61
+ bundle exec rake -T
62
+
63
+ ## Structure
64
+
65
+ This repository comes in two parts: a collection of Java source files and Ruby
66
+ source files. The Java code can be found in the `core/` directory, everything
67
+ else will be Ruby source code.
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env ruby
2
+ require_relative '../lib/opener/pos_taggers/it'
3
+ kernel = Opener::POSTaggers::IT.new(:args => ARGV)
4
+ puts kernel.run(STDIN)
@@ -0,0 +1,67 @@
1
+ require 'open3'
2
+ require 'stringio'
3
+ require 'java'
4
+
5
+ require File.expand_path('../../../../core/target/synthema-pos-tagger_it-1.1.jar', __FILE__)
6
+
7
+ import 'eu.openerproject.kaf.layers.KafMetadata'
8
+ import 'eu.openerproject.kaf.layers.KafTarget'
9
+ import 'eu.openerproject.kaf.layers.KafTerm'
10
+ import 'eu.openerproject.kaf.layers.KafWordForm'
11
+ import 'eu.openerproject.kaf.reader.KafSaxParser'
12
+
13
+ require_relative 'it/version'
14
+
15
+ module Opener
16
+ module POSTaggers
17
+ ##
18
+ # The POS tagger that supports Italian.
19
+ #
20
+ # @!attribute [r] args
21
+ # @return [Array]
22
+ # @!attribute [r] options
23
+ # @return [Hash]
24
+ #
25
+ class IT
26
+ attr_reader :args, :options
27
+
28
+ ##
29
+ # @param [Hash] options
30
+ #
31
+ # @option options [Array] :args The commandline arguments to pass to the
32
+ # underlying Python script.
33
+ #
34
+ def initialize(options = {})
35
+ @args = options.delete(:args) || []
36
+ @options = options
37
+ end
38
+
39
+ ##
40
+ # Runs the command and returns the output of STDOUT, STDERR and the
41
+ # process information.
42
+ #
43
+ # @param [String] input The input to tag.
44
+ # @return [Array]
45
+ #
46
+ def run(input)
47
+ input = StringIO.new(input) unless input.kind_of?(IO)
48
+ cli = Java::it.synthema.opener.postagger.it.CLI.new
49
+ result = cli.process_to_string(input.to_inputstream, test_mode?)
50
+
51
+ return result
52
+ end
53
+
54
+ protected
55
+
56
+ def test_mode?
57
+ return options.fetch(:test, false) || args.include?("-t")
58
+ end
59
+
60
+ def lang
61
+ 'it'
62
+ end
63
+
64
+ end # IT
65
+ end # POSTaggers
66
+ end # Opener
67
+
@@ -0,0 +1,7 @@
1
+ module Opener
2
+ module POSTaggers
3
+ class IT
4
+ VERSION = "1.0.0"
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,28 @@
1
+ require File.expand_path('../lib/opener/pos_taggers/it/version', __FILE__)
2
+
3
+ Gem::Specification.new do |gem|
4
+ gem.name = "opener-pos-tagger-it"
5
+ gem.version = Opener::POSTaggers::IT::VERSION
6
+ gem.authors = ["development@olery.com"]
7
+ gem.summary = "POS tagging for italian"
8
+ gem.description = gem.summary
9
+ gem.homepage = "http://opener-project.github.com/"
10
+ gem.has_rdoc = "yard"
11
+ gem.required_ruby_version = ">= 1.9.2"
12
+
13
+ gem.files = Dir.glob([
14
+ 'core/target/synthema-pos-tagger_it-*.jar',
15
+ 'lib/**/*',
16
+ '*.gemspec',
17
+ 'README.md'
18
+ ]).select { |file| File.file?(file) }
19
+
20
+ gem.executables = Dir.glob('bin/*').map { |file| File.basename(file) }
21
+
22
+ gem.add_dependency 'opener-build-tools'
23
+
24
+ gem.add_development_dependency 'rspec'
25
+ gem.add_development_dependency 'cucumber'
26
+ gem.add_development_dependency 'rake'
27
+ gem.add_development_dependency 'pry'
28
+ end
metadata ADDED
@@ -0,0 +1,120 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: opener-pos-tagger-it
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - development@olery.com
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-05-20 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: opener-build-tools
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: cucumber
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rake
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: pry
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ description: POS tagging for italian
84
+ email:
85
+ executables:
86
+ - pos-tagger-it
87
+ extensions: []
88
+ extra_rdoc_files: []
89
+ files:
90
+ - README.md
91
+ - bin/pos-tagger-it
92
+ - core/target/synthema-pos-tagger_it-1.1.jar
93
+ - lib/opener/pos_taggers/it.rb
94
+ - lib/opener/pos_taggers/it/version.rb
95
+ - opener-pos-tagger-it.gemspec
96
+ homepage: http://opener-project.github.com/
97
+ licenses: []
98
+ metadata: {}
99
+ post_install_message:
100
+ rdoc_options: []
101
+ require_paths:
102
+ - lib
103
+ required_ruby_version: !ruby/object:Gem::Requirement
104
+ requirements:
105
+ - - ">="
106
+ - !ruby/object:Gem::Version
107
+ version: 1.9.2
108
+ required_rubygems_version: !ruby/object:Gem::Requirement
109
+ requirements:
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ version: '0'
113
+ requirements: []
114
+ rubyforge_project:
115
+ rubygems_version: 2.2.2
116
+ signing_key:
117
+ specification_version: 4
118
+ summary: POS tagging for italian
119
+ test_files: []
120
+ has_rdoc: yard