UIMA wrapper for SETH with docker container and webservice
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
.gitignore
.travis.yml
Dockerfile
HOW-TO-RELEASE.md
HOW-TO-WRAP-A-SERVICE.md
LICENSE.txt
README.md
THIRD-PARTY.txt
TODO.md
pom.xml

README.md

FIMDA

UIMA wrapper for SETH with docker container and webservice

License Build Status

How to wrap a service explains the necessary steps to create an UIMA CAS compliant wrapper for your Java NLP tool taking FIMDA as example.

How to Release gives instructions to release a new version of this application.

Usage

ATTENTION: Due to OMTD compliance restrictions the REST service was removed. To use the described REST service, take a release <=0.1.1 or checkout the branch spring_rest_service.

This wrapper exposes a REST service that can be queried by sending plain text to the endpoint (see Query the Rest Service).

Start the Rest Service

Via Docker image from Docker Hub

Requires docker. Execute:

docker run -p 8080:8080 erechtheus/fimda:0.1.1

Via Spring Boot

Requires git and maven. Clone this repo and switch into the directory:

git clone https://github.com/Erechtheus/fimda.git && cd fimda

Compile and start the service:

mvn spring-boot:run

Via local docker Image

Requires git, maven and docker. Clone this repo and switch into the directory:

git clone https://github.com/Erechtheus/fimda.git && cd fimda

Compile and create a local docker image (erechtheus/fimda:latest):

mvn package

Start the local docker image:

docker run -p 8080:8080 erechtheus/fimda

Query the Rest Service

Now, a rest service should be available at http://localhost:8080/annotate. It requires the parameter text holding the input.

Call it like: http://localhost:8080/annotate?text=p.A123T%20and%20Val158Met

Note: The input text (in the example above: p.A123T and Val158Met) should be url encoded.

The default output format is UIMA XMI CAS. If the endpoint receives an http Accept header that is compatible to application/json, JSON CAS Serialization is used.

Note: XMI serialization has higher precedence, so ensure that your request does not additionally contain an Accept header that is compatible to application/xml (i.e. */*), if you want to get json back.

License

Copyright 2018 Deutsches Forschungszentrum für Künstliche Intelligenz

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

This project uses 3rd party tools. You can find the list of 3rd party tools including their authors and licenses here.