-
Notifications
You must be signed in to change notification settings - Fork 23
Revamp project to work with latest OSCAL #88
Revamp project to work with latest OSCAL #88
Commits on Feb 4, 2020
-
Fix metaschema generation capabilities
Some file locations changed in the latest OSCAL repo. Addressing: $ go generate 2019/12/16 14:03:57 open OSCAL/schema/metaschema/oscal-catalog-metaschema.xml: no such file or directory exit status 1 metaschema.go:9: running "go": exit status 1
Configuration menu - View commit details
-
Copy full SHA for 09190f0 - Browse repository at this point
Copy the full SHA 09190f0View commit details -
When generating go out of xml schema errors are likely to occur. It is handy to see generated file along the errors as that's exactly what's needed for diagnosis.
Configuration menu - View commit details
-
Copy full SHA for 67d76da - Browse repository at this point
Copy the full SHA 67d76daView commit details -
Allow multiple import elements in metaschema XML
Latest OSCAL content uses multiple imports.
Configuration menu - View commit details
-
Copy full SHA for 09a858f - Browse repository at this point
Copy the full SHA 09a858fView commit details -
Allow multiple import in Metaschema struct
and process them correctly.
Configuration menu - View commit details
-
Copy full SHA for d992881 - Browse repository at this point
Copy the full SHA d992881View commit details -
Configuration menu - View commit details
-
Copy full SHA for 84a169a - Browse repository at this point
Copy the full SHA 84a169aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2a6614e - Browse repository at this point
Copy the full SHA 2a6614eView commit details -
Parse @ref attribute from field
Newest oscal repo contains references to field definitions instead of direct fields. For instance see: <field ref="description"/> <field ref="remarks" in-xml="WITH_WRAPPER"/> <field ref="party-id"/>
Configuration menu - View commit details
-
Copy full SHA for e5a5981 - Browse repository at this point
Copy the full SHA e5a5981View commit details -
Implement indirection from field to define-field
Some types may be defined using <field ref="x"/> element. In that case, we have to find relevant <define-field name="x"> element and fetch definition from there.
Configuration menu - View commit details
-
Copy full SHA for 69dcbc0 - Browse repository at this point
Copy the full SHA 69dcbc0View commit details -
Remove Assemblies metaschema element
Assemblies no longer appear in the OSCAL metaschema
Configuration menu - View commit details
-
Copy full SHA for 71c49b8 - Browse repository at this point
Copy the full SHA 71c49b8View commit details -
Parse @ref attribute from assembly
Newest oscal repo contains references to assembly definitions instead of direct assembly. For instance see: <assembly ref="metadata"/> <assembly ref="back-matter"/>
Configuration menu - View commit details
-
Copy full SHA for aac0300 - Browse repository at this point
Copy the full SHA aac0300View commit details -
Refactor: Use existing method instead of expanding it
This will one day allow us to work well with multiple inherited metaschemas.
Configuration menu - View commit details
-
Copy full SHA for b2a8bc1 - Browse repository at this point
Copy the full SHA b2a8bc1View commit details -
Implement indirection from assembly to define-assembly
Some types may be defined using <assembly ref="x"/> element. In that case, we have to find relevant <define-assembly name="x"> element and fetch definition from there.
Configuration menu - View commit details
-
Copy full SHA for ebb1e54 - Browse repository at this point
Copy the full SHA ebb1e54View commit details -
Implement plural of assemblies
If some assembly is allowed to repeat we have to implement it as slice not as pointer. Example may be: <assembly ref="responsible-party" max-occurs="unbounded"> <group-as name="responsible-parties" in-json="BY_KEY"/> </assembly>
Configuration menu - View commit details
-
Copy full SHA for 2b57abb - Browse repository at this point
Copy the full SHA 2b57abbView commit details -
Configuration menu - View commit details
-
Copy full SHA for d4592a6 - Browse repository at this point
Copy the full SHA d4592a6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 70b63d3 - Browse repository at this point
Copy the full SHA 70b63d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for b3ea5a7 - Browse repository at this point
Copy the full SHA b3ea5a7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 337c1d3 - Browse repository at this point
Copy the full SHA 337c1d3View commit details -
Implement plural of define-fields
If some field is allowed to repeat we have to implement it as a slice not as a pointer. Example may be: <field ref="doc-id" max-occurs="unbounded"> <group-as name="document-ids"/> </field>
Configuration menu - View commit details
-
Copy full SHA for 1ad7f08 - Browse repository at this point
Copy the full SHA 1ad7f08View commit details -
Remove support for <fields> elements in OSCAL schema
These are no longer used.
Configuration menu - View commit details
-
Copy full SHA for 19ec205 - Browse repository at this point
Copy the full SHA 19ec205View commit details -
Refactor: Pass whole metaschema to the helper method
instead of list of define-flags. This will later allow us to clean-up a bit.
Configuration menu - View commit details
-
Copy full SHA for 0b474ab - Browse repository at this point
Copy the full SHA 0b474abView commit details -
Configuration menu - View commit details
-
Copy full SHA for 425cdd8 - Browse repository at this point
Copy the full SHA 425cdd8View commit details -
Fill in metaschema model tree with references to the particular eleme…
…nt definitions This will surely end-up less tedious than getting Def in template.
Configuration menu - View commit details
-
Copy full SHA for bfd0453 - Browse repository at this point
Copy the full SHA bfd0453View commit details -
Fix broken comments for flag values
Previously, for some reason, this was not returning any comments on latest OSCAL
Configuration menu - View commit details
-
Copy full SHA for def7ed2 - Browse repository at this point
Copy the full SHA def7ed2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7643bb4 - Browse repository at this point
Copy the full SHA 7643bb4View commit details -
Configuration menu - View commit details
-
Copy full SHA for a83d9d3 - Browse repository at this point
Copy the full SHA a83d9d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for df0cacc - Browse repository at this point
Copy the full SHA df0caccView commit details -
Configuration menu - View commit details
-
Copy full SHA for b236af2 - Browse repository at this point
Copy the full SHA b236af2View commit details -
Configuration menu - View commit details
-
Copy full SHA for a227c8e - Browse repository at this point
Copy the full SHA a227c8eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 12e1ae8 - Browse repository at this point
Copy the full SHA 12e1ae8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 83b6eaa - Browse repository at this point
Copy the full SHA 83b6eaaView commit details -
Configuration menu - View commit details
-
Copy full SHA for b74fb7a - Browse repository at this point
Copy the full SHA b74fb7aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 54a373e - Browse repository at this point
Copy the full SHA 54a373eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0ce377d - Browse repository at this point
Copy the full SHA 0ce377dView commit details -
Configuration menu - View commit details
-
Copy full SHA for dc398b8 - Browse repository at this point
Copy the full SHA dc398b8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 55ea4bd - Browse repository at this point
Copy the full SHA 55ea4bdView commit details -
Configuration menu - View commit details
-
Copy full SHA for a5bdb66 - Browse repository at this point
Copy the full SHA a5bdb66View commit details -
Make PackageName resolution more robust
To work well with multiple imports at the same time.
Configuration menu - View commit details
-
Copy full SHA for 0c051fd - Browse repository at this point
Copy the full SHA 0c051fdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 917b56b - Browse repository at this point
Copy the full SHA 917b56bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 613a6fb - Browse repository at this point
Copy the full SHA 613a6fbView commit details -
Learn how to handle special characters consistently, instead.
Configuration menu - View commit details
-
Copy full SHA for 2489e95 - Browse repository at this point
Copy the full SHA 2489e95View commit details -
Configuration menu - View commit details
-
Copy full SHA for b0a71f7 - Browse repository at this point
Copy the full SHA b0a71f7View commit details -
Configuration menu - View commit details
-
Copy full SHA for fa035b2 - Browse repository at this point
Copy the full SHA fa035b2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9486666 - Browse repository at this point
Copy the full SHA 9486666View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4e24577 - Browse repository at this point
Copy the full SHA 4e24577View commit details -
Configuration menu - View commit details
-
Copy full SHA for c826450 - Browse repository at this point
Copy the full SHA c826450View commit details -
Previously, it was generated by different name.
Configuration menu - View commit details
-
Copy full SHA for 8afa5f7 - Browse repository at this point
Copy the full SHA 8afa5f7View commit details -
Always use original xml name to name struct items in go
This will not only allow us to have naming consistent, further it will make all slices to be named in plural form.
Configuration menu - View commit details
-
Copy full SHA for f69d6c9 - Browse repository at this point
Copy the full SHA f69d6c9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 86fffa4 - Browse repository at this point
Copy the full SHA 86fffa4View commit details -
Configuration menu - View commit details
-
Copy full SHA for efe2a9c - Browse repository at this point
Copy the full SHA efe2a9cView commit details -
Configuration menu - View commit details
-
Copy full SHA for f871cf9 - Browse repository at this point
Copy the full SHA f871cf9View commit details -
Import types to catalog, profile, and SSP files
That way users do not need to remember where a particular item is defined and users do not need to import nominal_catalog package and validation_root package, hence these become internal implementation detail.
Configuration menu - View commit details
-
Copy full SHA for 63e02e1 - Browse repository at this point
Copy the full SHA 63e02e1View commit details -
OSCAL standard went from Controls having Subcontrols to have recursive relationship between Controls and hence each Control may have child Controls.
Configuration menu - View commit details
-
Copy full SHA for 2e474c9 - Browse repository at this point
Copy the full SHA 2e474c9View commit details -
Latest OSCAL metaschema does not contain <prose> element as first class citizen.
Configuration menu - View commit details
-
Copy full SHA for 138fbfd - Browse repository at this point
Copy the full SHA 138fbfdView commit details -
Replace <as> element with @as-type attribute on define-field
This is what they did in usnistgov/OSCAL repo as well. Also update the constraints to the latest list of as-types that appear in there.
Configuration menu - View commit details
-
Copy full SHA for ba7a7e4 - Browse repository at this point
Copy the full SHA ba7a7e4View commit details -
Prose should be Markup instead of simple string
as it may contain xhtml markup.
Configuration menu - View commit details
-
Copy full SHA for 483a3a3 - Browse repository at this point
Copy the full SHA 483a3a3View commit details -
Fix compilation issues around Prose handling
We will have to re-implement Prose manipulation later on. Project will be better served if we just remove the current implementation and re-implement once the project compiles with the latest oscal.
Configuration menu - View commit details
-
Copy full SHA for 8f4f307 - Browse repository at this point
Copy the full SHA 8f4f307View commit details -
Markup field has to be referred to by pointer
Even though it is just a string for now. We will later need to have struct built around the string.
Configuration menu - View commit details
-
Copy full SHA for 8d6164e - Browse repository at this point
Copy the full SHA 8d6164eView commit details -
Fix compilation - SetParam has been renamed to Param
in master OSCAL repo.
Configuration menu - View commit details
-
Copy full SHA for 62816f7 - Browse repository at this point
Copy the full SHA 62816f7View commit details -
Fix compilation - Href is no longer struct
It feels we don't need to over complicate this. Also, refactor ValidateHref to proper public instance method.
Configuration menu - View commit details
-
Copy full SHA for 82b52e5 - Browse repository at this point
Copy the full SHA 82b52e5View commit details -
Configuration menu - View commit details
-
Copy full SHA for ba40798 - Browse repository at this point
Copy the full SHA ba40798View commit details -
Configuration menu - View commit details
-
Copy full SHA for 456a679 - Browse repository at this point
Copy the full SHA 456a679View commit details -
Configuration menu - View commit details
-
Copy full SHA for dd92442 - Browse repository at this point
Copy the full SHA dd92442View commit details -
Remove hard-coded over abundant items
Not sure why these were added, but they certainly are no longer needed. Addressing: oscal generate catalogs --profile profile.xml
Configuration menu - View commit details
-
Copy full SHA for 3a60dfa - Browse repository at this point
Copy the full SHA 3a60dfaView commit details -
Provide initial
oscalkit info
commandWith growing number of formats/components, users will be surely confused at start. Let's provide them with info command.
Configuration menu - View commit details
-
Copy full SHA for 52b8ce9 - Browse repository at this point
Copy the full SHA 52b8ce9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 512f550 - Browse repository at this point
Copy the full SHA 512f550View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0d63e6a - Browse repository at this point
Copy the full SHA 0d63e6aView commit details -
Configuration menu - View commit details
-
Copy full SHA for b765050 - Browse repository at this point
Copy the full SHA b765050View commit details -
Configuration menu - View commit details
-
Copy full SHA for dc18037 - Browse repository at this point
Copy the full SHA dc18037View commit details -
Configuration menu - View commit details
-
Copy full SHA for d56c6c5 - Browse repository at this point
Copy the full SHA d56c6c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for d049c32 - Browse repository at this point
Copy the full SHA d049c32View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5074661 - Browse repository at this point
Copy the full SHA 5074661View commit details -
Configuration menu - View commit details
-
Copy full SHA for 466ffe2 - Browse repository at this point
Copy the full SHA 466ffe2View commit details -
Do not pluralize names of the XML elements
OSCAL XML elements remain in singular form like <responsible-party .../> while on the other hand, JSON contains pluralized items, like responsible-parties: [ ... ],
Configuration menu - View commit details
-
Copy full SHA for f48dc7d - Browse repository at this point
Copy the full SHA f48dc7dView commit details -
Co-Authored-By: anweiss <2326106+anweiss@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for 9d80bd3 - Browse repository at this point
Copy the full SHA 9d80bd3View commit details -
Refactor: Extract method DocumentType()
With growing number of document types in OSCAL standard, we will need to recognize the document type more often than not.
Configuration menu - View commit details
-
Copy full SHA for 84b265a - Browse repository at this point
Copy the full SHA 84b265aView commit details -
to covert oscal file to human readable html
Configuration menu - View commit details
-
Copy full SHA for 7815d74 - Browse repository at this point
Copy the full SHA 7815d74View commit details -
Remove bundled FedRAMP profiles
These files are already dated and none of them conform to the latest oscal.
Configuration menu - View commit details
-
Copy full SHA for dd0e05e - Browse repository at this point
Copy the full SHA dd0e05eView commit details -
These files are already dated and none of them conform to the latest oscal.
Configuration menu - View commit details
-
Copy full SHA for 67d3d3d - Browse repository at this point
Copy the full SHA 67d3d3dView commit details -
This file is already dated and it does not conform to the latest oscal.
Configuration menu - View commit details
-
Copy full SHA for e2c58b1 - Browse repository at this point
Copy the full SHA e2c58b1View commit details -
Configuration menu - View commit details
-
Copy full SHA for c1d0dc1 - Browse repository at this point
Copy the full SHA c1d0dc1View commit details -
Handle the validation errors more diligently
This will result in more quality output in cases like xmllint missing.
Configuration menu - View commit details
-
Copy full SHA for b1a1510 - Browse repository at this point
Copy the full SHA b1a1510View commit details -
Do not check file existence before validation
Firstly, with improved error handling, we will get nice error anyway (in case the file does not exist). Secondly, cli/cmd/validate already checks the file existence.
Configuration menu - View commit details
-
Copy full SHA for 32258f3 - Browse repository at this point
Copy the full SHA 32258f3View commit details -
It is no longer needed, with the latest oscal json schema.
Configuration menu - View commit details
-
Copy full SHA for 16caf97 - Browse repository at this point
Copy the full SHA 16caf97View commit details -
Configuration menu - View commit details
-
Copy full SHA for 68033c7 - Browse repository at this point
Copy the full SHA 68033c7View commit details -
OscalSource should be able to tell format of the given resource
Although, getting the file format out file extension is rather lame, it is what other parts of the code so far do. I envision, we will have to rewrite the format heuristic with look ahead parser one day. However, at this early stage it is good enough.
Configuration menu - View commit details
-
Copy full SHA for 2391a0e - Browse repository at this point
Copy the full SHA 2391a0eView commit details -
Configuration menu - View commit details
-
Copy full SHA for a919816 - Browse repository at this point
Copy the full SHA a919816View commit details -
Configuration menu - View commit details
-
Copy full SHA for afce7d0 - Browse repository at this point
Copy the full SHA afce7d0View commit details -
Improve
oscalkit validate
to automatically select relevant OSCAL sc……hema This will highly improve usability of the tool and thus increase chances that people will validate their own files. Further, validating file automatically shall turn out beneficial to the tool itself, once we start validating file oscalkit itself produces.
Configuration menu - View commit details
-
Copy full SHA for 436c745 - Browse repository at this point
Copy the full SHA 436c745View commit details -
Configuration menu - View commit details
-
Copy full SHA for fdc40ac - Browse repository at this point
Copy the full SHA fdc40acView commit details -
Do not hardcode "validation_common_root" package to be skipped
Even though it is not used in SSP and shall not be imported. It may be used by other metaschemas (like component) and thus we should reason about the need of importing it. As a side effect this re-shuffles some of the existing imports.
Configuration menu - View commit details
-
Copy full SHA for 3998c70 - Browse repository at this point
Copy the full SHA 3998c70View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a0e853 - Browse repository at this point
Copy the full SHA 1a0e853View commit details -
Configuration menu - View commit details
-
Copy full SHA for 134ef80 - Browse repository at this point
Copy the full SHA 134ef80View commit details -
Configuration menu - View commit details
-
Copy full SHA for f1e498f - Browse repository at this point
Copy the full SHA f1e498fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 885f07a - Browse repository at this point
Copy the full SHA 885f07aView commit details -
Configuration menu - View commit details
-
Copy full SHA for dcee3d4 - Browse repository at this point
Copy the full SHA dcee3d4View commit details -
This is skeleton for converting opencontrols. It will be completed in following commits.
Configuration menu - View commit details
-
Copy full SHA for efa43df - Browse repository at this point
Copy the full SHA efa43dfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 82a5a36 - Browse repository at this point
Copy the full SHA 82a5a36View commit details -
More metadata for the oscal:ssp generated out of opencontrol
This completes the required metadata in oscal:ssp. Next step is to actually convert each control one by one.
Configuration menu - View commit details
-
Copy full SHA for 088a963 - Browse repository at this point
Copy the full SHA 088a963View commit details -
Spill out proper <implemented-requirement/> elements
for each open control on the input
Configuration menu - View commit details
-
Copy full SHA for 4b614d5 - Browse repository at this point
Copy the full SHA 4b614d5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1283ae8 - Browse repository at this point
Copy the full SHA 1283ae8View commit details -
Notify user of which filename is actually malformed
This is especially useful when processing multiple files at once by `oscalkit validate`.
Configuration menu - View commit details
-
Copy full SHA for 5ea6957 - Browse repository at this point
Copy the full SHA 5ea6957View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9f15df5 - Browse repository at this point
Copy the full SHA 9f15df5View commit details -
Configuration menu - View commit details
-
Copy full SHA for e12fdd8 - Browse repository at this point
Copy the full SHA e12fdd8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7cb53d0 - Browse repository at this point
Copy the full SHA 7cb53d0View commit details -
Co-Authored-By: anweiss <2326106+anweiss@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for bd69de9 - Browse repository at this point
Copy the full SHA bd69de9View commit details
Commits on Feb 5, 2020
-
Force use golang 1.13 container instead of golang 1.11 container
As @anweiss suggested. Thanks!
Configuration menu - View commit details
-
Copy full SHA for f7163f0 - Browse repository at this point
Copy the full SHA f7163f0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c1cade - Browse repository at this point
Copy the full SHA 5c1cadeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 41bf562 - Browse repository at this point
Copy the full SHA 41bf562View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6699b3c - Browse repository at this point
Copy the full SHA 6699b3cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 97c7ad1 - Browse repository at this point
Copy the full SHA 97c7ad1View commit details