# Usage of the enhanced STA Profile After explaining the additional attributes of our enhanced STA-Profile, we would like to present an actual use-case and how we can actually apply our profile. In the repository, you can find the two folders `schemas` and `examples`. The first contains the actual JSON-Schemas with detailed definitions, encodings, types and some controlled vocabulatires for all additional attributes. These can be seen as *rulebooks* or *templates* for our enhanced STA-profile against which I can validate a specific STA-ressource. The latter holds examples for each entity, that fulfull exactly these guidelines. ## Infer an empty template or schema from an example If you start from scratch and just want an empty JSON-file that is consistent with our enhanced STAMPLATE-profile, simply run ```BASH npx generate-schema -j examples/thing_properties.json > example_thing_properties.schema.json ``` This takes a pre-filled example, extracts the schema from this JSON and writes the extracted schema to a new file. This can then manually filled! ## Validate a STA-entity against our enhanced profile Usually, a STA-ressource is available via an STA-Endpoint (e.g., ). Here is a simple workflow for validating such an entity against our JSON-Schemas: 1. Download the entity ```BASH curl -fsSL "https://sta.gfz.de/v1.1/Things(1)" -o thing.json ``` 2. Extract the properties ```BASH jq '.properties' thing.json > thing_properties.json ``` 3. Validate the extracted and normalized properties against our Schema: ```BASH npm run validate -- -s schemas/thing_properties.schema.json -d thing_properties.json ``` All other entities can be validated in a similar way - just replace the respective Schema and URL!