Skip to content

The OpenAPI specifications implemented by NLP Sandbox Methods.

License

Notifications You must be signed in to change notification settings

boyleconnor/nlp-sandbox-schemas

 
 

Repository files navigation

NLP Sandbox OpenAPI Specifications

GitHub Release GitHub CI GitHub License Discord NLPSandbox.io

OpenAPI specifications of the NLP Sandbox services

Introduction

NLPSandbox.io is an open platform for benchmarking modular natural language processing (NLP) tools on both public and private datasets. Academics, students, and industry professionals are invited to browse the available tasks and participate by developing and submitting an NLP Sandbox tool.

This repository contains the OpenAPI specifications of the NLP Sandbox tools and services. Visit NLPSandbox.io for more information on how to develop and benchmark NLP Sandbox tools.

NLP Sandbox Tools

The OpenAPI specifications of the NLP Sandbox tools listed below are available in JSON and YAML formats. These specifications can be given as input to the OpenAPI Generator to generate tool "stubs". For more information on how to develop and benchmark an NLP Sandbox tool, visit NLPSandbox.io.

PHI Annotation and Deidentification

API Name Type Version
Date Annotator nlpsandbox:date-annotator 1.1.2
Person Name Annotator nlpsandbox:person-name-annotator 1.1.2
Physical Address Annotator nlpsandbox:physical-address-annotator 1.1.2
ID Annotator nlpsandbox:id-annotator 1.1.2
Contact Annotator nlpsandbox:contact-annotator 1.1.2
PHI Deidentifier nlpsandbox:phi-deidentifier 1.1.2

Symptom Annotation

API Name Type Version
COVID Symptom Annotator nlpsandbox:covid-symptom-annotator 1.1.2

NLP Sandbox Services

API Name Type Version
Data Node nlpsandbox:data 1.1.2

Implementations

Example tools

These repositories provide example implementations of each NLP Sandbox tool. These repositories have a CI/CD workflow that automatically tests the tool, and build and publish a Docker image that can then be submitted as-is to NLPSandbox.io, if you wish to benchmark its performance -- just don't expect a high score!

GitHub repository Language
nlpsandbox/date-annotator-example Python
nlpsandbox/date-annotator-example-java Java
nlpsandbox/person-name-annotator-example Python
nlpsandbox/physical-address-annotator-example Python
nlpsandbox/id-annotator-example Python
nlpsandbox/contact-annotator-example Python
nlpsandbox/phi-deidentifier Python
nlpsandbox/covid-symptom-annotation-example Python

Data Node

A Data Node instance enables to store FHIR and annotation resources used to benchmark NLP Sandbox tools.

GitHub repository Language
nlpsandbox/data-node Python

Versioning

GitHub tags

This repository uses [semantic versioning] to track the releases of the NLP Sandbox schemas. This repository uses "non-moving" GitHub tags, that is, a tag will always point to the same git commit once it has been created.

Schemas / GitHub Pages tags

The artifact published by this repository are OpenAPI schemas and documentation published to GitHub Pages. The versions of the schemas are aligned with the GitHub tags of this repository. For example:

The table below describes the schemas tags available.

Tag name Description Moving
latest Latest stable release. Yes
edge Lastest commit made to the default branch. Yes
edge-<sha> Same as above with the reference to the git commit. No
<major> Latest stable major release <major>. Yes
<major>.<minor> Latest stable minor release <major>.<minor>. Yes
<major>.<minor>.<patch> Latest stable patch release <major>.<minor>.<patch>. No
<major>.<minor>.<patch>-<sha> Same as above with the reference to the git commit. No

Contributing

Thinking about contributing to this project? Get started by reading our contribution guidelines.

License

Apache License 2.0

About

The OpenAPI specifications implemented by NLP Sandbox Methods.

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published