Skip to content

smart-spectral-matching/ssm-service-file-converter

Repository files navigation

SSM file converter service

This service helps convert and merge files to different formats.

Converter

Endpoint: /convert

Currently supported:

Input formats Output formats Example
JCAMP-DX SciData JSON-LD curl -X POST -F "upload_file=@tests/data/jcamp/raman_soddyite.jdx" http://localhost:8000/convert/jsonld
RRUFF SciData JSON-LD curl -X POST -F "upload_file=@tests/data/rruff/raman_soddyite.rruff" http://localhost:8000/convert/jsonld
SciData JSON-LD SciData JSON-LD curl -X POST -F "upload_file=@tests/data/scidata-jsonld/raman_soddyite.jsonld" http://localhost:8000/convert/jsonld
SSM JSON (internal use only) SciData JSON-LD curl -X POST -F "upload_file=@tests/data/ssm-json/raman_soddyite.json" http://localhost:8000/convert/jsonld
JCAMP-DX SSM JSON (internal use only) curl -X POST -F "upload_file=@tests/data/jcamp/raman_soddyite.jdx" http://localhost:8000/convert/json
RRUFF SSM JSON (internal use only) curl -X POST -F "upload_file=@tests/data/rruff/raman_soddyite.rruff" http://localhost:8000/convert/json
SciData JSON-LD SSM JSON (internal use only) curl -X POST -F "upload_file=@tests/data/scidata-jsonld/raman_soddyite.jsonld" http://localhost:8000/convert/json

Internally, this service primarily uses SciDataLib for conversions.

Merger

Endpoint: /merge

Currently supported:

Original input format Change set input format Output merged format
SciData JSON-LD SSM JSON (internal use only) SciData JSON-LD

Example:

curl -F "upload_files=@tests/data/scidata-jsonld/raman_soddyite.jsonld" -F "upload_files=@tests/data/ssm-json/raman_soddyite.json" http://localhost:8000/merge/jsonld

Quickstart

Start up the service:

make docker-run

Then, you can use the example commands in the table above to test.