opener-pos-tagger-it 1.0.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 +7 -0
- data/README.md +67 -0
- data/bin/pos-tagger-it +4 -0
- data/core/target/synthema-pos-tagger_it-1.1.jar +0 -0
- data/lib/opener/pos_taggers/it.rb +67 -0
- data/lib/opener/pos_taggers/it/version.rb +7 -0
- data/opener-pos-tagger-it.gemspec +28 -0
- metadata +120 -0
checksums.yaml
ADDED
@@ -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
|
data/README.md
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
[](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.
|
data/bin/pos-tagger-it
ADDED
Binary file
|
@@ -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,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
|