Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/usnistgov/metaschema-java
Java tools and libraries providing a Metaschema toolchain
https://github.com/usnistgov/metaschema-java
code-generation data-binding java json maven maven-plugin metaschema modeling parser-library xml yaml
Last synced: 26 days ago
JSON representation
Java tools and libraries providing a Metaschema toolchain
- Host: GitHub
- URL: https://github.com/usnistgov/metaschema-java
- Owner: usnistgov
- License: other
- Created: 2020-02-27T02:38:33.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-07-28T14:53:53.000Z (3 months ago)
- Last Synced: 2024-09-28T10:03:10.181Z (about 1 month ago)
- Topics: code-generation, data-binding, java, json, maven, maven-plugin, metaschema, modeling, parser-library, xml, yaml
- Language: Java
- Homepage: https://pages.nist.gov/metaschema-java/
- Size: 43.8 MB
- Stars: 11
- Watchers: 7
- Forks: 12
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
# Metaschema Java Tools and Libraries
This open-source, Metaschema Java framework offers a set of Java libraries providing a programatic means to work with models defined by the [Metaschema modeling language](https://github.com/usnistgov/metaschema). This framework also supports programatically creating, modifying, parsing, and writing XML, JSON, and YAML instance data that conforms to a given Metaschema model. This work is intended to make it easier for Java software developers to incorporate Metaschema-based capabilities into their applications.
This is an effort by the National Institute of Standards and Technology (NIST) Metaschema Project.
The Metaschema Java framework provides:
- Java objects for loading and working with XML-based Metaschema constructs. This functionality is provided by the [Metaschema XML model](metaschema-model/).
- Java bean code generation based on one or more Metaschema using Maven. This functionality is provided by the [Metaschema Maven plugin](metaschema-maven-plugin/).
- A Java parser for reading and writing XML, JSON, or YAML into Java beans generated by this framework. This functionality is provided by the [Metaschema Java Binding Parser](metaschema-java-binding/).
- XML and JSON schema generation based on a Metaschema provided by [Netaschema Schema Generator](metaschema-schema-generator/).## License
See the [project license](LICENSE.md) in this repository.
This project is in the worldwide [public domain](LICENSE.md). As stated in [CONTRIBUTING.md](CONTRIBUTING.md).
## Contributing to this code base
Thank you for interest in contributing to the Metaschema Java framework. For complete instructions on how to contribute code, please read through our [CONTRIBUTING.md](CONTRIBUTING.md) documentation.
## Using as a Maven dependency
This project's modules are published to [Maven Central](https://search.maven.org/search?q=g:gov.nist.secauto.metaschema).
You can include these artifacts in your Maven POM as a dependency.
## Building
This project can be built with [Apache Maven](https://maven.apache.org/) version 3.9.0 or greater.
The following instructions can be used to clone and build this project.
1. Clone the GitHub repository.
```bash
git clone --recurse-submodules https://github.com/usnistgov/metaschema-java.git
```2. Build the project with Maven
```bash
mvn install
```## Contact us
Maintainer: [David Waltermire](https://www.nist.gov/people/david-waltermire) - [@david-waltermire-nist](https://github.com/david-waltermire-nist), [NIST](https://www.nist.gov/) [Information Technology Labratory](https://www.nist.gov/itl), [Computer Security Division](https://www.nist.gov/itl/csd), [Security Components and Mechanisms Group](https://www.nist.gov/itl/csd/security-components-and-mechanisms)
Email us: [[email protected]](mailto:[email protected])
Chat with us: [Gitter OSCAL/metaschema](https://gitter.im/usnistgov-OSCAL/metaschema)