Skip to content

Commit

Permalink
updated README.md and updated to latest jar/validator.jar
Browse files Browse the repository at this point in the history
  • Loading branch information
DrSnowbird authored and DrSnowbird committed Apr 3, 2023
1 parent f5f3005 commit 2b3c371
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 13 deletions.
50 changes: 37 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,41 @@
# UCO or Any SHACL RDF Graph Validator Docker
* A SHACL Validator customized for UCO Ontology validation
# SHACL-based RDF Graph Validator Docker
* A SHACL Validator customized for [UCO](https://github.com/ucoProject/UCO) Ontology validation as the default configuration.
* `Important!` This SHACL validator is actually generic for `any` SHACL ontology (use Web UI to change) -- it is not specific to UCO though the default configurations including a few of UCO ontology family (including extensions from [UCO](https://github.com/ucoProject/UCO) ontology)
```
If [ you are looking for such a requirement as a Container ]:
Then [ this one may be for you ]
```

# UCO Versions
* UCO v1.2.0
* UCO v1.1.0
# SHACL Shapes Ontology Configured
* You can modify the configurations to add (or remove) your local domain specific SHACL ontologies to change the default.
* Whenver you update the configuration file, you need to `restart` the docker services (using `make down` and `make up`)
1. [UCO](https://github.com/ucoProject/UCO) (v1.2.0 as latest)
2. [CASE Ontology](https://github.com/casework/CASE) (v1.2.0 as latest)
3. [Adversary Engagement Ontology (University of New Heaven)](https://github.com/UNHSAILLab/Adversary-Engagement-Ontology) (version using latest in github)

# Build
* Due to Docker Hub not allowing free hosting services of pre-built images, you have to make local build to use in your environment
# Built & Run with Dependent Docker
1. Build [DrSnowbird/python-nonroot-docker](https://github.com/DrSnowbird/python-nonroot-docker)
```
mkdir -p ~/shacl-project
cd ~/shacl-project
git clone https://github.com/DrSnowbird/python-nonroot-docker
cd python-nonroot-docker
make build
```
2. Build & Run [DrSnwobird/uco-shacl-validator-docker](https://github.com/DrSnowbird/uco-shacl-validator-docker)
* Assuming you want to use default configuration to run.
```
mkdir -p ~/shacl-project
cd ~/shacl-project
git clone https://github.com/DrSnowbird/uco-shacl-validator-docker
cd uco-shacl-validator-docker
make build
make up
```

# Run (recommended for easy-start)
* Simply,
* If you follow the above default build and run, you can ignore this step.
* Simply, (if you modify configuration)
```
bin/auto-config-all.sh
./run.sh
Expand All @@ -31,12 +50,12 @@ If [ you are looking for such a requirement as a Container ]:
http://0.0.0.0:58088/shacl/UCO/upload
* URI Base Validation:
* Content to validatet: choose [ URI ] and use the sample URI: [device.json](https://raw.githubusercontent.com/casework/CASE-Examples/master/examples/illustrations/device/device.json) -- right-click and copy-and-paste the entire URL into Validator input field
* Validate as: choose [ uco, case, ae, uco-all ]
* Validate as: choose `case` from the dropdown list [ uco, case, ae, uco-all ]
* Content syntax choose [JSON-LD] (for the above device.json)

* File Base Validation:
* Content to validatet: choose [ File ] and click "Select File" to provide local JSON-LD file
* Validate as: choose [ uco, case, ae, uco-all ]
* Validate as: choose `case` from the dropdown list [ uco, case, ae, uco-all ]
* Content syntax choose [JSON-LD] (for the above device.json)

# Stop Running
Expand All @@ -55,22 +74,27 @@ If [ you are looking for such a requirement as a Container ]:
* shell.sh - shell into the container
* stop.sh - stop the container


# SHACL Validator Upstream Artifacts
* This project use the artifacts from:
* [ISAITB ITB commons](https://github.com/ISAITB/itb-commons)
* [ISAITB shacl-validator](https://github.com/ISAITB/shacl-validator)

# Ontology Resources
* [UCO Ontology](https://github.com/ucoProject/UCO)
* [Adversary Engagement Ontology Foundation by University of New Heaven](https://adversaryengagementontology.org/)
* [Adversary Engagement Ontology (University of New Heaven)](https://github.com/UNHSAILLab/Adversary-Engagement-Ontology)
* [CASE Onotlogy](https://github.com/casework)
* [Casework-Examples Github](https://github.com/casework/CASE-Examples)
* [Casework-Examples Illustration](https://github.com/casework/CASE-Examples/tree/master/examples/illustrations)
* [UCO App Docker (SHACL validation + RDF Store + GraphQL (Ultra GraphQL automation)](https://github.com/DrSnowbird/uco-app-docker)
* Integrated automation as the end-to-end pipeline:
* Integrated automation as the end-to-end pipeline: (`to be released soon for public access usage!`)
* User upload UCO-based ontologies, then
* This docker will call SHACL-validator REST Service, if the compliance (v1.1.0 as latest) is successful,
* Then, the automation will continue to upload / convert the users's RDF/JSON-LD ontologies into RDF Store, i.e., Jena-Fuseki-Docker
* Then, the automation will continue to automatically feed the just-loaded UCO-compliant ontology to UltraGraphQL-docker to automatically convert input into GraphQL schema,
* Then, UltraGraphQL-docker will automatically use the auto-generated GraphQL schema to publish the ```live``` GraphQL Web REST API service + Web UI for either users or other client applications to start using 'GraphQL' API to query the user's UCO-compliant ontologies.
* QED of the entire End-to-End automation!


# RDF + GraphQL Resources
* RDF Stores:
* [Jena-fuseki-docker](https://github.com/DrSnowbird/jena-fuseki-docker)
Expand Down
Binary file modified jar/validator.jar
Binary file not shown.

0 comments on commit 2b3c371

Please sign in to comment.