seq-json-schema
Standardized JSON Schema for authoring multi-mission sequences. You can read the schema definition here.
You can use our validation site to validate a .seq.json document against the latest schema.
Why a Sequence Schema?
Spacecraft are often controlled via sets of time ordered commands called sequences. Although spacecraft are built with a variety of different on-board flight softwares, each of which have different commanding interfaces, there are sufficient commonalities between these interfaces to justify creating a common sequencing specification that works for a number of flight software types.
If organizations must support operating different missions with different flight software, operators can use this common specification (with potential customization) for these different missions. Operators would author and transport the set of commands they want to send to the spacecraft in this common specification and then perform a final translation from this specification to the format required by the flight software for final verification.
Propose a Change
Interested in proposing a change to the schema? Begin by writing a change request issue.
JavaScript or TypeScript
Install
npm install @nasa-jpl/seq-json-schema --save
Basic Usage
import seqSchema from '@nasa-jpl/seq-json-schema/schema.json' assert { type: 'json' };
console.log(seqSchema);
TypeScript Types
This library also ships with automatically generated TypeScript types from the schema. For example:
import type { Command, SeqJson } from '@nasa-jpl/seq-json-schema/types';
const command: Command = {
args: [],
stem: 'SEND_DATA',
time: { type: 'COMMAND_COMPLETE' },
type: 'command',
};
const seqJson: SeqJson = {
id: 'sequence0',
metadata: {},
steps: [command],
};
console.log(seqJson);
Python
Install
pip install seq-json-schema
Basic Usage
import importlib.resources
import json
with importlib.resources.path('seq-json-schema', 'schema.json') as schemaPath:
file = open(schemaPath)
schema = json.load(file)
print(schema)
Note if you are using a Python version lower than 3.7 you will have to import the schema using the importlib-resources library.
Metadata
Release files for seq-json-schema 1.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| seq-json-schema-1.3.1.tar.gz | 8.4 kB | Without provenance | Details for seq-json-schema-1.3.1.tar.gz |
Release files / seq-json-schema-1.3.1.tar.gz
| Download URL | seq-json-schema-1.3.1.tar.gz |
|---|---|
| Size | 8.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6cd9e1e996e0c7a3ecaebc2836a420ea81a94d046c76959b81ebed99b3dd234b
|
|
BLAKE2b-256 checksum How to use checksums |
f5563cba2e81f745637212f6076e7870b39fc9c7f0293eb221773079e470743a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.8
|
Security for seq-json-schema 1.3.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.