Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow Metaschema remarks to target one or more formats #424

Closed
4 tasks
david-waltermire opened this issue Jun 14, 2019 · 2 comments
Closed
4 tasks

Allow Metaschema remarks to target one or more formats #424

david-waltermire opened this issue Jun 14, 2019 · 2 comments
Assignees
Labels
closable enhancement Scope: Metaschema Issues targeted at the metaschema pipeline User Story

Comments

@david-waltermire
Copy link
Contributor

david-waltermire commented Jun 14, 2019

User Story:

As an OSCAL model developer, I need to be able to target documentation to a specific resulting data model (e.g., XML, JSON) to discuss data model specific considerations.

Goals:

The Metaschema allows for documentation to be described as part of the a given Metaschema using the remark element.

For example:

<define-field name="title" as="mixed">
  <formal-name>Title</formal-name>
  <description>A title for display and navigation.</description>
  <remarks>
    <p>A title for the containing object as it should appear in a formatted document.</p>
  </remarks>
</define-field>

It would be useful to target a remark to a specific data model format.

For example:

<define-field name="title" as="mixed">
  <formal-name>Title</formal-name>
  <description>A title for display and navigation.</description>
  <remarks format="xml">
    <p>This is an XML remark.</p>
  </remarks>
  <remarks format="json">
    <p>This is a JSON remark.</p>
  </remarks>
  <remarks format="yaml">
    <p>This is a YAML remark.</p>
  </remarks>
</define-field>

The Metaschema schema, and schema and document generation processes needs to be updated to support this.

Dependencies:

This issue will also partially address issue #390, by providing for validation of valid values.

Acceptance Criteria

  • All generated XML and JSON schema include the documentation targeted at them.
  • All generated XML and JSON website documentation include the documentation targeted at them.
  • Documentation on the use of Metaschema is updated to fully document this feature.
  • A single PR is approved that contains the above changes.
@david-waltermire david-waltermire added enhancement User Story Scope: Metaschema Issues targeted at the metaschema pipeline labels Jun 14, 2019
wendellpiez added a commit to wendellpiez/OSCAL that referenced this issue Jul 23, 2019
david-waltermire pushed a commit to david-waltermire/OSCAL that referenced this issue Aug 16, 2019
david-waltermire pushed a commit to david-waltermire/OSCAL that referenced this issue Aug 16, 2019
david-waltermire pushed a commit to david-waltermire/OSCAL that referenced this issue Aug 16, 2019
david-waltermire pushed a commit to david-waltermire/OSCAL that referenced this issue Aug 16, 2019
david-waltermire added a commit that referenced this issue Aug 22, 2019
* Supporting enumerated value lists on flags in XSD and JSON Schema #437
* Metaschema improvements and remodeling flags support (local definitions; moving w/in the model; valid values)
* More Metaschema syntax remodeling: now using max-occurs and min-occurs for cardinality indicators #441
* Updating schemas to current model (transitional); updated docs in resulting XSD per #448; some updates to markdown documentation
* Small updates to authoring CSS.
* Added design notes on JSON schema bindings.
* Including an initial set of unit tests for group-by, some data types, etc.
* Updated to new design (#436): Metaschema schema, Schematron, metaschema update XSLT - will break the build for now
* Work on datatyping #436 including support in XML and JSON Schema
* Addressed #451: parameter insertion syntax in Markdown
* Schema documentation improvements #423 #424 #428
* Addressed feature request #438
* Improving handling of JSON 'key' and 'value-key' settings in docs #428
* Now producing XML and JSON model maps from metaschemas.
* Now escaping {{ for Jekyll
* Updated component metaschema based on design notes
* Fixed schematron assertions to properly work with @ref.
* Refactoring of component and SSP metachema.
* Fixed website side navigation. Added component and SSP metaschema to site generation process.
* Addressed comments in issue #445
* Added site content generation to runall.sh
* Started documenting model changes in release notes. More work is still needed to complete this.
david-waltermire added a commit to david-waltermire/OSCAL that referenced this issue Aug 26, 2019
* Supporting enumerated value lists on flags in XSD and JSON Schema usnistgov#437
* Metaschema improvements and remodeling flags support (local definitions; moving w/in the model; valid values)
* More Metaschema syntax remodeling: now using max-occurs and min-occurs for cardinality indicators usnistgov#441
* Updating schemas to current model (transitional); updated docs in resulting XSD per usnistgov#448; some updates to markdown documentation
* Small updates to authoring CSS.
* Added design notes on JSON schema bindings.
* Including an initial set of unit tests for group-by, some data types, etc.
* Updated to new design (usnistgov#436): Metaschema schema, Schematron, metaschema update XSLT - will break the build for now
* Work on datatyping usnistgov#436 including support in XML and JSON Schema
* Addressed usnistgov#451: parameter insertion syntax in Markdown
* Schema documentation improvements usnistgov#423 usnistgov#424 usnistgov#428
* Addressed feature request usnistgov#438
* Improving handling of JSON 'key' and 'value-key' settings in docs usnistgov#428
* Now producing XML and JSON model maps from metaschemas.
* Now escaping {{ for Jekyll
* Updated component metaschema based on design notes
* Fixed schematron assertions to properly work with @ref.
* Refactoring of component and SSP metachema.
* Fixed website side navigation. Added component and SSP metaschema to site generation process.
* Addressed comments in issue usnistgov#445
* Added site content generation to runall.sh
* Started documenting model changes in release notes. More work is still needed to complete this.
@david-waltermire
Copy link
Contributor Author

@wendellpiez I don't know of a good way to verify that this is working. Any ideas?

@wendellpiez
Copy link
Contributor

The best way to confirm this is to try it out. We could do that in the lab.

One way to approach this would be to tie it to Issue #478, where we are reviewing the current models. There, we could find a use case where we could actually take advantage of this feature.

But we also have to document this. Which raises the larger question of documenting Metaschema in general. Possibly that warrants an entire Issue of its own.

bradh pushed a commit to bradh/OSCAL that referenced this issue Dec 4, 2019
* Supporting enumerated value lists on flags in XSD and JSON Schema usnistgov#437
* Metaschema improvements and remodeling flags support (local definitions; moving w/in the model; valid values)
* More Metaschema syntax remodeling: now using max-occurs and min-occurs for cardinality indicators usnistgov#441
* Updating schemas to current model (transitional); updated docs in resulting XSD per usnistgov#448; some updates to markdown documentation
* Small updates to authoring CSS.
* Added design notes on JSON schema bindings.
* Including an initial set of unit tests for group-by, some data types, etc.
* Updated to new design (usnistgov#436): Metaschema schema, Schematron, metaschema update XSLT - will break the build for now
* Work on datatyping usnistgov#436 including support in XML and JSON Schema
* Addressed usnistgov#451: parameter insertion syntax in Markdown
* Schema documentation improvements usnistgov#423 usnistgov#424 usnistgov#428
* Addressed feature request usnistgov#438
* Improving handling of JSON 'key' and 'value-key' settings in docs usnistgov#428
* Now producing XML and JSON model maps from metaschemas.
* Now escaping {{ for Jekyll
* Updated component metaschema based on design notes
* Fixed schematron assertions to properly work with @ref.
* Refactoring of component and SSP metachema.
* Fixed website side navigation. Added component and SSP metaschema to site generation process.
* Addressed comments in issue usnistgov#445
* Added site content generation to runall.sh
* Started documenting model changes in release notes. More work is still needed to complete this.
aj-stein-nist pushed a commit to aj-stein-nist/OSCAL-forked that referenced this issue Jan 25, 2023
* Supporting enumerated value lists on flags in XSD and JSON Schema usnistgov#437
* Metaschema improvements and remodeling flags support (local definitions; moving w/in the model; valid values)
* More Metaschema syntax remodeling: now using max-occurs and min-occurs for cardinality indicators usnistgov#441
* Updating schemas to current model (transitional); updated docs in resulting XSD per usnistgov#448; some updates to markdown documentation
* Small updates to authoring CSS.
* Added design notes on JSON schema bindings.
* Including an initial set of unit tests for group-by, some data types, etc.
* Updated to new design (usnistgov#436): Metaschema schema, Schematron, metaschema update XSLT - will break the build for now
* Work on datatyping usnistgov#436 including support in XML and JSON Schema
* Addressed usnistgov#451: parameter insertion syntax in Markdown
* Schema documentation improvements usnistgov#423 usnistgov#424 usnistgov#428
* Addressed feature request usnistgov#438
* Improving handling of JSON 'key' and 'value-key' settings in docs usnistgov#428
* Now producing XML and JSON model maps from metaschemas.
* Now escaping {{ for Jekyll
* Updated component metaschema based on design notes
* Fixed schematron assertions to properly work with @ref.
* Refactoring of component and SSP metachema.
* Fixed website side navigation. Added component and SSP metaschema to site generation process.
* Addressed comments in issue usnistgov#445
* Added site content generation to runall.sh
* Started documenting model changes in release notes. More work is still needed to complete this.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
closable enhancement Scope: Metaschema Issues targeted at the metaschema pipeline User Story
Projects
None yet
Development

No branches or pull requests

2 participants