lapps / schemata

JSON Schemata for JSON objects exchanged by LAPPS web services

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LAPPS Schemata

JSON Schemata for JSON objects exchanged by LAPPS web services

These schema use the LAPPS Alternate Syntax (LAX), a simplified syntax for JSON schema, and must be compiled with the schema compiler.

Schemata may also be compiled with the online JSON compiler service.

curl -H "Content-type: text/plain" --data-binary @lif.schema https://api.lappsgrid.org/json-compiler

Note When using curl to POST the schema file the --data-binary option MUST be used as -d or --data strips newline characters.

Schema files

  1. data.schema
    a LAPPS Data object.
  2. lif.schema
    the LAPPS Interchange Format for objects exchanged by LAPPS web services. Available on the vocabulary website at http://vocab.lappsgrid.org/schema/lif-schema.
  3. metadata.schema
    the metadata returned by LAPPS SOAP services.
  4. datasource.schema
    the metdadata returned by LAPPS DataSource services.

Building

Use the Makefile to build one or more of the JSON schema files. The output files will be written to the schemata directory.

Make goals

  • all
    builds all the JSON Schema files. This is the default goal.
  • lif
    data
    metadata
    datasource
    builds one of the schema files
  • upload
    uploads the generated schema files to the http://vocab.lappsgrid.org web site.
  • clean
    deletes all build artifacts
$> make clean
$> make
S> make upload

NOTE
For the make upload goal to succeed the $USER must have an account on the anc.org server with their ssh key installed to allow a passwordless SSH connection.

Compile script

Use the compile script to compile a single schema files. The compile script will use the https://api.lappsgrid.org/json-compile service if the jsonc command can not be found on the $PATH.

$> ./compile lif.schema

About

JSON Schemata for JSON objects exchanged by LAPPS web services

License:Apache License 2.0


Languages

Language:Shell 58.8%Language:Makefile 41.2%