Skip to content

Files

Latest commit

 

History

History

metaschema

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

OSCAL Metaschema

OSCAL supports XML and JSON-oriented schema validation technologies including XSD and JSON Schema (v7), for the various OSCAL formats now including catalog, profile and others to come (for other uses at higher layers). These and related artifacts are produced and coordinated using a Metaschema vocabulary (and processing) we are developing.

Current features of the Metaschema:

  • XSD and JSON Schema production, coordinated from a unified source
  • Documentation (embedded and web-based)
  • Automated conversion scripts (XSLT transformations) for converting between XML and JSON format(s) conformant to the given metaschema

To see an example of a Metaschema, check out the OSCAL Catalog Metaschema in its current form.

In that directory you will also find some Metaschema documentation and an XSLT for displaying metaschemas in the browser.

The subdirectories under this directory include transformations that create further tooling in the form of schema files (XSD, JSON Schema, Schematron) or XSLT results; when run, these transformations should typically produce those outputs in relevant (other directories), such as:

The lib subdirectory contains the libraries and transformation specifications (stylesheets) providing for these data transformations.

For the most part these transformations require a conformant XSLT 3.0 processor such as SaxonHE, as the script shows. Occasionally an XSLT has been written in version 1.0 to provide for greater availability: they should work in web browsers (with suitable configurations) as well as in any conformant XSLT 1.0 processor.

Operations

Listed here are operations currently supported with the top-level XSLTs for each operation, to be applied to a valid metaschema source document (such as the catalog Metaschema):

XML OSCAL

JSON OSCAL