diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index a5c29fe..cf459af 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,30 +1,30 @@ -## Description - -Closes: #XXXX - - - ---- - -### Author Checklist - -*All items are required. Please add a note to the item if the item is not applicable and -please add links to any relevant follow up issues.* - -I have... - -- [ ] provided a link to the relevant issue or specification -- [ ] reviewed "Files changed" and left comments if necessary - -### Reviewers Checklist - -*All items are required. Please add a note if the item is not applicable and please **add -your handle next to the items reviewed if you only reviewed selected items**.* - -I have... - -- [ ] confirmed all author checklist items have been addressed -- [ ] reviewed code correctness and readability -- [ ] reviewed documentation is accurate +## Description + +Closes: #XXXX + + + +--- + +### Author Checklist + +*All items are required. Please add a note to the item if the item is not applicable and +please add links to any relevant follow up issues.* + +I have... + +- [ ] provided a link to the relevant issue or specification +- [ ] reviewed "Files changed" and left comments if necessary + +### Reviewers Checklist + +*All items are required. Please add a note if the item is not applicable and please **add +your handle next to the items reviewed if you only reviewed selected items**.* + +I have... + +- [ ] confirmed all author checklist items have been addressed +- [ ] reviewed code correctness and readability +- [ ] reviewed documentation is accurate - [ ] manually tested (if applicable) \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE/default.md b/.github/PULL_REQUEST_TEMPLATE/default.md index a5c29fe..cf459af 100644 --- a/.github/PULL_REQUEST_TEMPLATE/default.md +++ b/.github/PULL_REQUEST_TEMPLATE/default.md @@ -1,30 +1,30 @@ -## Description - -Closes: #XXXX - - - ---- - -### Author Checklist - -*All items are required. Please add a note to the item if the item is not applicable and -please add links to any relevant follow up issues.* - -I have... - -- [ ] provided a link to the relevant issue or specification -- [ ] reviewed "Files changed" and left comments if necessary - -### Reviewers Checklist - -*All items are required. Please add a note if the item is not applicable and please **add -your handle next to the items reviewed if you only reviewed selected items**.* - -I have... - -- [ ] confirmed all author checklist items have been addressed -- [ ] reviewed code correctness and readability -- [ ] reviewed documentation is accurate +## Description + +Closes: #XXXX + + + +--- + +### Author Checklist + +*All items are required. Please add a note to the item if the item is not applicable and +please add links to any relevant follow up issues.* + +I have... + +- [ ] provided a link to the relevant issue or specification +- [ ] reviewed "Files changed" and left comments if necessary + +### Reviewers Checklist + +*All items are required. Please add a note if the item is not applicable and please **add +your handle next to the items reviewed if you only reviewed selected items**.* + +I have... + +- [ ] confirmed all author checklist items have been addressed +- [ ] reviewed code correctness and readability +- [ ] reviewed documentation is accurate - [ ] manually tested (if applicable) \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE/docs.md b/.github/PULL_REQUEST_TEMPLATE/docs.md index d872e47..280cfa8 100644 --- a/.github/PULL_REQUEST_TEMPLATE/docs.md +++ b/.github/PULL_REQUEST_TEMPLATE/docs.md @@ -1,32 +1,32 @@ -## Description - -Closes: #XXXX - - - ---- - -### Author Checklist - -*All items are required. Please add a note to the item if the item is not applicable and -please add links to any relevant follow up issues.* - -I have... - -- [ ] provided a link to the relevant issue or specification -- [ ] reviewed "Files changed" and left comments if necessary - -### Reviewers Checklist - -*All items are required. Please add a note if the item is not applicable and please **add -your handle next to the items reviewed if you only reviewed selected items**.* - -I have... - -- [ ] confirmed all author checklist items have been addressed -- [ ] confirmed that this PR only changes documentation -- [ ] reviewed content for consistency -- [ ] reviewed content for thoroughness -- [ ] reviewed content for spelling and grammar -- [ ] tested instructions (if applicable) +## Description + +Closes: #XXXX + + + +--- + +### Author Checklist + +*All items are required. Please add a note to the item if the item is not applicable and +please add links to any relevant follow up issues.* + +I have... + +- [ ] provided a link to the relevant issue or specification +- [ ] reviewed "Files changed" and left comments if necessary + +### Reviewers Checklist + +*All items are required. Please add a note if the item is not applicable and please **add +your handle next to the items reviewed if you only reviewed selected items**.* + +I have... + +- [ ] confirmed all author checklist items have been addressed +- [ ] confirmed that this PR only changes documentation +- [ ] reviewed content for consistency +- [ ] reviewed content for thoroughness +- [ ] reviewed content for spelling and grammar +- [ ] tested instructions (if applicable) diff --git a/.github/workflows/action.yml b/.github/workflows/action.yml index 0abeac7..32ff5e2 100644 --- a/.github/workflows/action.yml +++ b/.github/workflows/action.yml @@ -1,11 +1,11 @@ -name: 'SHACL Validation CI Check' -on: [push] -jobs: - build: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Build the Docker image - run: docker build -t standards . - - name: Run the SHACL script - run: docker run standards:latest +name: 'SHACL Validation CI Check' +on: [push] +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Build the Docker image + run: docker build -t standards . + - name: Run the SHACL script + run: docker run standards:latest diff --git a/.gitignore b/.gitignore index d65ac53..211f4cc 100644 --- a/.gitignore +++ b/.gitignore @@ -1,120 +1,120 @@ -venv - -regen-registry-schema.ttl -regenWebContext.jsonld -apache-jena* - - -.vscode/* -!.vscode/settings.json -!.vscode/tasks.json -!.vscode/launch.json -!.vscode/extensions.json -!.vscode/*.code-snippets - -# Local History for Visual Studio Code -.history/ - -# Built Visual Studio Code Extensions -*.vsix - -# Swap -[._]*.s[a-v][a-z] -!*.svg # comment out if you don't need vector files -[._]*.sw[a-p] -[._]s[a-rt-v][a-z] -[._]ss[a-gi-z] -[._]sw[a-p] - -# Session -Session.vim -Sessionx.vim - -# Temporary -.netrwhist -*~ -# Auto-generated tag files -tags -# Persistent undo -[._]*.un~ - -# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider -# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 - -# User-specific stuff -.idea/**/workspace.xml -.idea/**/tasks.xml -.idea/**/usage.statistics.xml -.idea/**/dictionaries -.idea/**/shelf - -# AWS User-specific -.idea/**/aws.xml - -# Generated files -.idea/**/contentModel.xml - -# Sensitive or high-churn files -.idea/**/dataSources/ -.idea/**/dataSources.ids -.idea/**/dataSources.local.xml -.idea/**/sqlDataSources.xml -.idea/**/dynamic.xml -.idea/**/uiDesigner.xml -.idea/**/dbnavigator.xml - -# Gradle -.idea/**/gradle.xml -.idea/**/libraries - -# Gradle and Maven with auto-import -# When using Gradle or Maven with auto-import, you should exclude module files, -# since they will be recreated, and may cause churn. Uncomment if using -# auto-import. -# .idea/artifacts -# .idea/compiler.xml -# .idea/jarRepositories.xml -# .idea/modules.xml -# .idea/*.iml -# .idea/modules -# *.iml -# *.ipr - -# CMake -cmake-build-*/ - -# Mongo Explorer plugin -.idea/**/mongoSettings.xml - -# File-based project format -*.iws - -# IntelliJ -out/ - -# mpeltonen/sbt-idea plugin -.idea_modules/ - -# JIRA plugin -atlassian-ide-plugin.xml - -# Cursive Clojure plugin -.idea/replstate.xml - -# SonarLint plugin -.idea/sonarlint/ - -# Crashlytics plugin (for Android Studio and IntelliJ) -com_crashlytics_export_strings.xml -crashlytics.properties -crashlytics-build.properties -fabric.properties - -# Editor-based Rest Client -.idea/httpRequests - -# Android studio 3.1+ serialized cache file -.idea/caches/build_file_checksums.ser - -.DS_Store -.idea +venv + +regen-registry-schema.ttl +regenWebContext.jsonld +apache-jena* + + +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/*.code-snippets + +# Local History for Visual Studio Code +.history/ + +# Built Visual Studio Code Extensions +*.vsix + +# Swap +[._]*.s[a-v][a-z] +!*.svg # comment out if you don't need vector files +[._]*.sw[a-p] +[._]s[a-rt-v][a-z] +[._]ss[a-gi-z] +[._]sw[a-p] + +# Session +Session.vim +Sessionx.vim + +# Temporary +.netrwhist +*~ +# Auto-generated tag files +tags +# Persistent undo +[._]*.un~ + +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# AWS User-specific +.idea/**/aws.xml + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/artifacts +# .idea/compiler.xml +# .idea/jarRepositories.xml +# .idea/modules.xml +# .idea/*.iml +# .idea/modules +# *.iml +# *.ipr + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# SonarLint plugin +.idea/sonarlint/ + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +# Android studio 3.1+ serialized cache file +.idea/caches/build_file_checksums.ser + +.DS_Store +.idea diff --git a/Dockerfile b/Dockerfile index 0b20175..0d3b7da 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,10 @@ -FROM debian:bullseye -RUN apt-get update -y && apt-get upgrade -yy -RUN apt-get install -yy wget openjdk-11-jre python3 -WORKDIR /app -COPY verify_jena.sh . -RUN ./verify_jena.sh -ENV PATH="${PATH}:/app/apache-jena/bin/" -ENV PYTHONUNBUFFERED=1 -COPY . . +FROM debian:bullseye +RUN apt-get update -y && apt-get upgrade -yy +RUN apt-get install -yy wget openjdk-11-jre python3 +WORKDIR /app +COPY verify_jena.sh . +RUN ./verify_jena.sh +ENV PATH="${PATH}:/app/apache-jena/bin/" +ENV PYTHONUNBUFFERED=1 +COPY . . ENTRYPOINT ["/app/shacl_validate.py"] \ No newline at end of file diff --git a/README.md b/README.md index 09b12e2..1e46791 100644 --- a/README.md +++ b/README.md @@ -1,59 +1,59 @@ -# Regen Registry Standards - -This repository contains: - -- Source schema for Regen Network ontology (TODO) -- [SHACL][6] schemas for: - - Registry projects and dMRV form validation - - Methodology, credit class, project, credit vintage and retirement metadata - validation - -## SHACL Graphs - -The `shacl` folder contains SHACL schemas for validating data (for example, -project related data), using [Turtle][4] or -[JSON-LD][5]. - -## JSON-LD Examples - -The `jsonld` folder contains examples of JSON-LD data that can be directly -copied/pasted and filled in (filling in empty strings and replacing `0` with -appropriate numbers). Corresponding SHACL graphs can be found in the `shacl` -folder. - -## Live metadata - -The `ops` folder contains the metadata for all projects, credit classes and -credit batches live on Regen Ledger. These can be validated with the SHACL -graphs in this repository. See the "Validation" section below. - -## Validation - -Dependencies: - -1. The [Apache Jena SHACL CLI][1] (`brew install jena` or use your package - manager or [official install][2]) -2. A working `python3` installation (`brew install python` or use your package - manager or [official install][3]) - -Running validations: - -``` -$ ./shacl_validate.py -``` - -## Update project pages - -``` -$ python3 -m venv venv -$ . venv/bin/activate -(venv) $ pip install sqlalchemy psycopg2-binary -(venv) $ DB_URL='postgresql+psycopg2://postgres:postgres@localhost:5432/regen_registry' ./update_project_pages.py -``` - -[1]: https://jena.apache.org/documentation/shacl/index.html -[2]: https://jena.apache.org/download/index.cgi -[3]: https://www.python.org/downloads/ -[4]: https://www.w3.org/TR/turtle/ -[5]: https://json-ld.org/ -[6]: https://www.w3.org/TR/shacl/ +# Regen Registry Standards + +This repository contains: + +- Source schema for Regen Network ontology (TODO) +- [SHACL][6] schemas for: + - Registry projects and dMRV form validation + - Methodology, credit class, project, credit vintage and retirement metadata + validation + +## SHACL Graphs + +The `shacl` folder contains SHACL schemas for validating data (for example, +project related data), using [Turtle][4] or +[JSON-LD][5]. + +## JSON-LD Examples + +The `jsonld` folder contains examples of JSON-LD data that can be directly +copied/pasted and filled in (filling in empty strings and replacing `0` with +appropriate numbers). Corresponding SHACL graphs can be found in the `shacl` +folder. + +## Live metadata + +The `ops` folder contains the metadata for all projects, credit classes and +credit batches live on Regen Ledger. These can be validated with the SHACL +graphs in this repository. See the "Validation" section below. + +## Validation + +Dependencies: + +1. The [Apache Jena SHACL CLI][1] (`brew install jena` or use your package + manager or [official install][2]) +2. A working `python3` installation (`brew install python` or use your package + manager or [official install][3]) + +Running validations: + +``` +$ ./shacl_validate.py +``` + +## Update project pages + +``` +$ python3 -m venv venv +$ . venv/bin/activate +(venv) $ pip install sqlalchemy psycopg2-binary +(venv) $ DB_URL='postgresql+psycopg2://postgres:postgres@localhost:5432/regen_registry' ./update_project_pages.py +``` + +[1]: https://jena.apache.org/documentation/shacl/index.html +[2]: https://jena.apache.org/download/index.cgi +[3]: https://www.python.org/downloads/ +[4]: https://www.w3.org/TR/turtle/ +[5]: https://json-ld.org/ +[6]: https://www.w3.org/TR/shacl/ diff --git a/fetch_C03_projects.py b/fetch_C03_projects.py index 7875c16..b43d8d2 100755 --- a/fetch_C03_projects.py +++ b/fetch_C03_projects.py @@ -1,65 +1,65 @@ -#!/usr/bin/env python -import glob -import json -import requests - -# API docs for mainnet: -# http://mainnet.regen.network:1317/swagger/#/Query/ProjectsByClass -# -# API docs for registry-server: -# https://api.registry.regen.network/api-docs/ - - -def projects_currently_in_ops(): - return sorted([x for x in glob.glob("ops/C03/project-metadata/*.jsonld")]) - - -def on_chain_projects(): - class_id = "C03" - resp = requests.get( - f"http://mainnet.regen.network:1317/regen/ecocredit/v1/projects-by-class/{class_id}" - ) - resp.raise_for_status() - projects = resp.json()["projects"] - return projects - - -def off_chain_metadata(iri): - resp = requests.get(f"https://api.registry.regen.network/metadata-graph/{iri}") - resp.raise_for_status() - metadata = resp.json() - return metadata - - -if __name__ == "__main__": - current_projects = projects_currently_in_ops() - tasks = [] - for p in on_chain_projects(): - metadata = off_chain_metadata(p["metadata"]) - project_metadata = f'ops/C03/project-metadata/{p["id"]}-project.jsonld' - if project_metadata not in current_projects: - print( - f"this script will add project metadata into ops: filename={project_metadata} iri={p['metadata']}" - ) - tasks.append({"filename": project_metadata, "metadata": metadata}) - project_page_metadata = ( - f'ops/C03/project-metadata/{p["id"]}-project-page.jsonld' - ) - if project_page_metadata not in current_projects: - print( - f"this script will create an empty project page: filename={project_page_metadata}" - ) - tasks.append( - { - "filename": project_page_metadata, - "metadata": {}, - } - ) - if tasks: - proceed = input("proceed? [y/n] ").lower().strip() - if proceed == "y": - for task in tasks: - with open(task["filename"], "w") as fp: - json.dump(task["metadata"], fp) - else: - print("there are no C03 projects to sync at this time") +#!/usr/bin/env python +import glob +import json +import requests + +# API docs for mainnet: +# http://mainnet.regen.network:1317/swagger/#/Query/ProjectsByClass +# +# API docs for registry-server: +# https://api.registry.regen.network/api-docs/ + + +def projects_currently_in_ops(): + return sorted([x for x in glob.glob("ops/C03/project-metadata/*.jsonld")]) + + +def on_chain_projects(): + class_id = "C03" + resp = requests.get( + f"http://mainnet.regen.network:1317/regen/ecocredit/v1/projects-by-class/{class_id}" + ) + resp.raise_for_status() + projects = resp.json()["projects"] + return projects + + +def off_chain_metadata(iri): + resp = requests.get(f"https://api.registry.regen.network/metadata-graph/{iri}") + resp.raise_for_status() + metadata = resp.json() + return metadata + + +if __name__ == "__main__": + current_projects = projects_currently_in_ops() + tasks = [] + for p in on_chain_projects(): + metadata = off_chain_metadata(p["metadata"]) + project_metadata = f'ops/C03/project-metadata/{p["id"]}-project.jsonld' + if project_metadata not in current_projects: + print( + f"this script will add project metadata into ops: filename={project_metadata} iri={p['metadata']}" + ) + tasks.append({"filename": project_metadata, "metadata": metadata}) + project_page_metadata = ( + f'ops/C03/project-metadata/{p["id"]}-project-page.jsonld' + ) + if project_page_metadata not in current_projects: + print( + f"this script will create an empty project page: filename={project_page_metadata}" + ) + tasks.append( + { + "filename": project_page_metadata, + "metadata": {}, + } + ) + if tasks: + proceed = input("proceed? [y/n] ").lower().strip() + if proceed == "y": + for task in tasks: + with open(task["filename"], "w") as fp: + json.dump(task["metadata"], fp) + else: + print("there are no C03 projects to sync at this time") diff --git a/formatter.sh b/formatter.sh index 673d11a..7f2f9c2 100755 --- a/formatter.sh +++ b/formatter.sh @@ -1,11 +1,11 @@ -#!/usr/bin/env bash -set -o errexit -set -o nounset -set -o pipefail -#set -x xtrace - -if which find > /dev/null ; then - find . -name "*.jsonld" -exec sh -c "jq . {} > {}.tmp && mv {}.tmp {} && echo {}" \; -else - echo "error: the find command is required to run this script" -fi +#!/usr/bin/env bash +set -o errexit +set -o nounset +set -o pipefail +#set -x xtrace + +if which find > /dev/null ; then + find . -name "*.jsonld" -exec sh -c "jq . {} > {}.tmp && mv {}.tmp {} && echo {}" \; +else + echo "error: the find command is required to run this script" +fi diff --git a/jsonld/C03/credit-batch-metadata/C03-batch-full-example.jsonld b/jsonld/C03/credit-batch-metadata/C03-batch-full-example.jsonld index 9a70c0a..218634a 100644 --- a/jsonld/C03/credit-batch-metadata/C03-batch-full-example.jsonld +++ b/jsonld/C03/credit-batch-metadata/C03-batch-full-example.jsonld @@ -1,8 +1,8 @@ -{ - "@context": { - "regen": "https://schema.regen.network#" - }, - "@type": "regen:C03-CreditBatch", - "regen:toucanVintageTokenId": 123, - "regen:toucanURI": "http://toucan.earth/vintages/123" -} +{ + "@context": { + "regen": "https://schema.regen.network#" + }, + "@type": "regen:C03-CreditBatch", + "regen:toucanVintageTokenId": 123, + "regen:toucanURI": "http://toucan.earth/vintages/123" +} diff --git a/jsonld/C03/credit-batch-metadata/C03-batch-minimal-example.jsonld b/jsonld/C03/credit-batch-metadata/C03-batch-minimal-example.jsonld index c733540..d883e23 100644 --- a/jsonld/C03/credit-batch-metadata/C03-batch-minimal-example.jsonld +++ b/jsonld/C03/credit-batch-metadata/C03-batch-minimal-example.jsonld @@ -1,7 +1,7 @@ -{ - "@context": { - "regen": "https://schema.regen.network#" - }, - "@type": "regen:C03-CreditBatch", - "regen:toucanVintageTokenId": 123 -} +{ + "@context": { + "regen": "https://schema.regen.network#" + }, + "@type": "regen:C03-CreditBatch", + "regen:toucanVintageTokenId": 123 +} diff --git a/jsonld/C03/project-metadata/C03-project-full-example.jsonld b/jsonld/C03/project-metadata/C03-project-full-example.jsonld index 3e5442e..752abf9 100644 --- a/jsonld/C03/project-metadata/C03-project-full-example.jsonld +++ b/jsonld/C03/project-metadata/C03-project-full-example.jsonld @@ -1,78 +1,78 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "@type": "regen:C03-Project", - "regen:toucanProjectTokenId": 123, - "schema:name": "VCS-123", - "regen:vcsProjectId": 123, - "regen:toucanURI": "http://toucan.earth/projects/123", - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "Preservation Protocol - 40 years", - "schema:identifier": "PP40", - "schema:url": "https://pp.org/PP40", - "schema:version": "0.0.0" - } - ] - }, - "regen:projectActivity": { - "schema:name": "Tree Preservation" - }, - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:offsetGenerationMethod": [ - "Avoided Emissions" - ], - "regen:projectStartDate": "2022-10-26", - "regen:projectEndDate": "2023-10-26", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "Some place name", - "geometry": { - "type": "Point", - "coordinates": [ - 0, - 0 - ] - } - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "AAA", - "schema:url": "https://bezerocarbon.com/123" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "@type": "regen:C03-Project", + "regen:toucanProjectTokenId": 123, + "schema:name": "VCS-123", + "regen:vcsProjectId": 123, + "regen:toucanURI": "http://toucan.earth/projects/123", + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "Preservation Protocol - 40 years", + "schema:identifier": "PP40", + "schema:url": "https://pp.org/PP40", + "schema:version": "0.0.0" + } + ] + }, + "regen:projectActivity": { + "schema:name": "Tree Preservation" + }, + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:offsetGenerationMethod": [ + "Avoided Emissions" + ], + "regen:projectStartDate": "2022-10-26", + "regen:projectEndDate": "2023-10-26", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "Some place name", + "geometry": { + "type": "Point", + "coordinates": [ + 0, + 0 + ] + } + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "AAA", + "schema:url": "https://bezerocarbon.com/123" + } + ] +} diff --git a/jsonld/C03/project-metadata/C03-project-minimal-example.jsonld b/jsonld/C03/project-metadata/C03-project-minimal-example.jsonld index ad93990..9654a5c 100644 --- a/jsonld/C03/project-metadata/C03-project-minimal-example.jsonld +++ b/jsonld/C03/project-metadata/C03-project-minimal-example.jsonld @@ -1,43 +1,43 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "schema:itemListElement": { - "@container": "@list" - } - }, - "@type": "regen:C03-Project", - "regen:toucanProjectTokenId": 123, - "schema:name": "VCS-123", - "regen:vcsProjectId": 123, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "AMS-I.C.", - "schema:identifier": "AMS-I.C." - } - ] - }, - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "Some place name", - "geometry": { - "type": "Point", - "coordinates": [ - 0, - 0 - ] - } - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "schema:itemListElement": { + "@container": "@list" + } + }, + "@type": "regen:C03-Project", + "regen:toucanProjectTokenId": 123, + "schema:name": "VCS-123", + "regen:vcsProjectId": 123, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "AMS-I.C.", + "schema:identifier": "AMS-I.C." + } + ] + }, + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "Some place name", + "geometry": { + "type": "Point", + "coordinates": [ + 0, + 0 + ] + } + } +} diff --git a/jsonld/README.md b/jsonld/README.md index 180ec82..7b6613a 100644 --- a/jsonld/README.md +++ b/jsonld/README.md @@ -1,27 +1,27 @@ -# The `jsonld` folder - -## Layout - -### Empty templates - -We maintain a list of empty templates for JSON-LD. -These folders contain the empty templates. - -- `credit-batches` -- `credit-classes` -- `projects` - -### Example data for validation purposes - -We maintain some folders that contain data for validation. -Typically validation checks are run against the data in the `ops` folder. -However, for some cases like C03 (Toucan) we need to maintain separate data graphs for validation. -These folders contain data graphs for validation. - -- `C03` - -For C03 metadata, this metadata is created dynamically by the toucan-bridge-service. -Unlike C01/C02 metadata, we cannot easily track this data in version control. - -See the `shacl_validate.py` script for more info. -I.e. how the data graphs are loaded and validated in this repo. +# The `jsonld` folder + +## Layout + +### Empty templates + +We maintain a list of empty templates for JSON-LD. +These folders contain the empty templates. + +- `credit-batches` +- `credit-classes` +- `projects` + +### Example data for validation purposes + +We maintain some folders that contain data for validation. +Typically validation checks are run against the data in the `ops` folder. +However, for some cases like C03 (Toucan) we need to maintain separate data graphs for validation. +These folders contain data graphs for validation. + +- `C03` + +For C03 metadata, this metadata is created dynamically by the toucan-bridge-service. +Unlike C01/C02 metadata, we cannot easily track this data in version control. + +See the `shacl_validate.py` script for more info. +I.e. how the data graphs are loaded and validated in this repo. diff --git a/jsonld/credit-batches/C01-verified-carbon-standard-batch.jsonld b/jsonld/credit-batches/C01-verified-carbon-standard-batch.jsonld index b9012d7..d3ad40f 100644 --- a/jsonld/credit-batches/C01-verified-carbon-standard-batch.jsonld +++ b/jsonld/credit-batches/C01-verified-carbon-standard-batch.jsonld @@ -1,25 +1,25 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:additionalCertifications": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:C01-CreditBatch", - "regen:vcsRetirementSerialNumber": "", - "regen:vcsProjectId": "", - "regen:additionalCertifications": [ - { - "schema:name": "", - "schema:url": "" - }, - { - "schema:name": "", - "schema:url": "" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:additionalCertifications": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:C01-CreditBatch", + "regen:vcsRetirementSerialNumber": "", + "regen:vcsProjectId": "", + "regen:additionalCertifications": [ + { + "schema:name": "", + "schema:url": "" + }, + { + "schema:name": "", + "schema:url": "" + } + ] +} diff --git a/jsonld/credit-batches/C02-batch.jsonld b/jsonld/credit-batches/C02-batch.jsonld index 80e878f..e10a784 100644 --- a/jsonld/credit-batches/C02-batch.jsonld +++ b/jsonld/credit-batches/C02-batch.jsonld @@ -1,33 +1,33 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcVintageYear": { - "@type": "xsd:gYear" - }, - "regen:cfcCreditSerialNumbers": { - "@container": "@list" - }, - "regen:verificationReports": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:C02-CreditBatch", - "regen:cfcCreditSerialNumbers": [ - "" - ], - "regen:cfcVintageYear": 0, - "regen:verificationReports": [ - { - "schema:url": "" - } - ], - "regen:projectVerifier": { - "schema:name": "", - "schema:url": "" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcVintageYear": { + "@type": "xsd:gYear" + }, + "regen:cfcCreditSerialNumbers": { + "@container": "@list" + }, + "regen:verificationReports": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:C02-CreditBatch", + "regen:cfcCreditSerialNumbers": [ + "" + ], + "regen:cfcVintageYear": 0, + "regen:verificationReports": [ + { + "schema:url": "" + } + ], + "regen:projectVerifier": { + "schema:name": "", + "schema:url": "" + } +} diff --git a/jsonld/credit-batches/C03-toucan-verified-carbon-standard-batch.jsonld b/jsonld/credit-batches/C03-toucan-verified-carbon-standard-batch.jsonld index 947e77a..65f0771 100644 --- a/jsonld/credit-batches/C03-toucan-verified-carbon-standard-batch.jsonld +++ b/jsonld/credit-batches/C03-toucan-verified-carbon-standard-batch.jsonld @@ -1,8 +1,8 @@ -{ - "@context": { - "regen": "https://schema.regen.network#" - }, - "@type": "regen:C03-CreditBatch", - "regen:toucanVintageTokenId": 0, - "regen:toucanURI": "" -} +{ + "@context": { + "regen": "https://schema.regen.network#" + }, + "@type": "regen:C03-CreditBatch", + "regen:toucanVintageTokenId": 0, + "regen:toucanURI": "" +} diff --git a/jsonld/credit-classes/credit-class.jsonld b/jsonld/credit-classes/credit-class.jsonld index 967525b..83dc006 100644 --- a/jsonld/credit-classes/credit-class.jsonld +++ b/jsonld/credit-classes/credit-class.jsonld @@ -1,108 +1,108 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:itemListElement": { - "@container": "@list" - }, - "regen:sectoralScope": { - "@container": "@list" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - }, - "regen:projectActivities": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "schema:image": { - "@type": "schema:URL" - }, - "regen:certifications": { - "@container": "@list" - }, - "regen:coBenefits": { - "@container": "@list" - }, - "regen:SDGs": { - "@container": "@list" - } - }, - "@type": "regen:XXX-CreditClass", - "schema:description": "", - "schema:name": "", - "schema:url": "", - "schema:image": "", - "regen:sourceRegistry": { - "schema:name": "", - "schema:url": "" - }, - "regen:sectoralScope": [ - "" - ], - "regen:offsetGenerationMethod": [ - "" - ], - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "", - "schema:url": "", - "schema:identifier": "", - "schema:version": "" - }, - { - "schema:name": "", - "schema:url": "", - "schema:identifier": "", - "schema:version": "" - } - ], - "schema:url": "" - }, - "regen:verificationMethod": "", - "regen:projectActivities": [ - "" - ], - "regen:certifications": [ - { - "schema:name": "", - "schema:url": "" - } - ], - "regen:primaryImpact": { - "@id": "", - "schema:name": "", - "regen:SDGs": [ - { - "@id": "" - } - ] - }, - "regen:coBenefits": [ - { - "@id": "", - "@type": "regen:MeasuredCoBenefit", - "schema:name": "", - "regen:SDGs": [ - { - "@id": "" - } - ] - }, - { - "@id": "", - "@type": "regen:ProjectBenefit", - "schema:name": "", - "regen:SDGs": [ - { - "@id": "" - } - ] - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:itemListElement": { + "@container": "@list" + }, + "regen:sectoralScope": { + "@container": "@list" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + }, + "regen:projectActivities": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "schema:image": { + "@type": "schema:URL" + }, + "regen:certifications": { + "@container": "@list" + }, + "regen:coBenefits": { + "@container": "@list" + }, + "regen:SDGs": { + "@container": "@list" + } + }, + "@type": "regen:XXX-CreditClass", + "schema:description": "", + "schema:name": "", + "schema:url": "", + "schema:image": "", + "regen:sourceRegistry": { + "schema:name": "", + "schema:url": "" + }, + "regen:sectoralScope": [ + "" + ], + "regen:offsetGenerationMethod": [ + "" + ], + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "", + "schema:url": "", + "schema:identifier": "", + "schema:version": "" + }, + { + "schema:name": "", + "schema:url": "", + "schema:identifier": "", + "schema:version": "" + } + ], + "schema:url": "" + }, + "regen:verificationMethod": "", + "regen:projectActivities": [ + "" + ], + "regen:certifications": [ + { + "schema:name": "", + "schema:url": "" + } + ], + "regen:primaryImpact": { + "@id": "", + "schema:name": "", + "regen:SDGs": [ + { + "@id": "" + } + ] + }, + "regen:coBenefits": [ + { + "@id": "", + "@type": "regen:MeasuredCoBenefit", + "schema:name": "", + "regen:SDGs": [ + { + "@id": "" + } + ] + }, + { + "@id": "", + "@type": "regen:ProjectBenefit", + "schema:name": "", + "regen:SDGs": [ + { + "@id": "" + } + ] + } + ] +} diff --git a/jsonld/projects/C01-project.jsonld b/jsonld/projects/C01-project.jsonld index 72db57f..e681c06 100644 --- a/jsonld/projects/C01-project.jsonld +++ b/jsonld/projects/C01-project.jsonld @@ -1,74 +1,74 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:vcsProjectPage": { - "@type": "schema:URL" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C01-Project", - "@id": "http://app.regen.network/project/", - "schema:name": "", - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "", - "schema:url": "", - "schema:description": "", - "regen:address": "", - "regen:showOnProjectPage": true - }, - "regen:projectType": "", - "regen:projectActivity": { - "schema:name": "", - "schema:url": "" - }, - "regen:offsetGenerationMethod": [ - "" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 0 - }, - "regen:projectStartDate": "", - "regen:projectEndDate": "", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature" - }, - "regen:vcsProjectId": 0, - "regen:vcsProjectPage": "", - "regen:vcsMethodology": { - "schema:name": "", - "schema:url": "" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:vcsProjectPage": { + "@type": "schema:URL" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C01-Project", + "@id": "http://app.regen.network/project/", + "schema:name": "", + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "", + "schema:url": "", + "schema:description": "", + "regen:address": "", + "regen:showOnProjectPage": true + }, + "regen:projectType": "", + "regen:projectActivity": { + "schema:name": "", + "schema:url": "" + }, + "regen:offsetGenerationMethod": [ + "" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 0 + }, + "regen:projectStartDate": "", + "regen:projectEndDate": "", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature" + }, + "regen:vcsProjectId": 0, + "regen:vcsProjectPage": "", + "regen:vcsMethodology": { + "schema:name": "", + "schema:url": "" + } +} diff --git a/jsonld/projects/C02-project.jsonld b/jsonld/projects/C02-project.jsonld index f622009..4f2e859 100644 --- a/jsonld/projects/C02-project.jsonld +++ b/jsonld/projects/C02-project.jsonld @@ -1,82 +1,82 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcProjectPage": { - "@type": "schema:URL" - }, - "regen:projectDesignDocument": { - "@type": "schema:URL" - }, - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C02-Project", - "@id": "http://app.regen.network/project/", - "schema:name": "", - "regen:cfcProjectId": "", - "regen:cfcProjectPage": "", - "regen:projectDesignDocument": "", - "regen:projectDeveloper": { - "schema:name": "", - "schema:url": "" - }, - "regen:projectType": "", - "regen:projectActivity": { - "schema:name": "" - }, - "regen:offsetGenerationMethod": [ - "" - ], - "regen:projectSize": { - "qudt:unit": "", - "qudt:numericValue": 0 - }, - "regen:projectStartDate": "", - "regen:projectEndDate": "", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "", - "geometry": { - "type": "Point", - "coordinates": [ - 0, - 0 - ] - } - }, - "regen:offsetProtocol": { - "schema:name": "", - "schema:url": "", - "schema:version": "" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcProjectPage": { + "@type": "schema:URL" + }, + "regen:projectDesignDocument": { + "@type": "schema:URL" + }, + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C02-Project", + "@id": "http://app.regen.network/project/", + "schema:name": "", + "regen:cfcProjectId": "", + "regen:cfcProjectPage": "", + "regen:projectDesignDocument": "", + "regen:projectDeveloper": { + "schema:name": "", + "schema:url": "" + }, + "regen:projectType": "", + "regen:projectActivity": { + "schema:name": "" + }, + "regen:offsetGenerationMethod": [ + "" + ], + "regen:projectSize": { + "qudt:unit": "", + "qudt:numericValue": 0 + }, + "regen:projectStartDate": "", + "regen:projectEndDate": "", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "", + "geometry": { + "type": "Point", + "coordinates": [ + 0, + 0 + ] + } + }, + "regen:offsetProtocol": { + "schema:name": "", + "schema:url": "", + "schema:version": "" + } +} diff --git a/jsonld/projects/C03-project.jsonld b/jsonld/projects/C03-project.jsonld index 23da662..edb136f 100644 --- a/jsonld/projects/C03-project.jsonld +++ b/jsonld/projects/C03-project.jsonld @@ -1,75 +1,75 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C03-Project", - "regen:toucanProjectTokenId": 0, - "schema:name": "", - "regen:vcsProjectId": 0, - "regen:toucanURI": "", - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "", - "schema:identifier": "", - "schema:url": "", - "schema:version": "" - } - ] - }, - "regen:projectActivity": { - "schema:name": "" - }, - "regen:projectType": "", - "regen:offsetGenerationMethod": [ - "" - ], - "regen:projectStartDate": "", - "regen:projectEndDate": "", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "", - "geometry": { - "type": "Point", - "coordinates": [ - 0, - 0 - ] - } - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "", - "schema:url": "" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C03-Project", + "regen:toucanProjectTokenId": 0, + "schema:name": "", + "regen:vcsProjectId": 0, + "regen:toucanURI": "", + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "", + "schema:identifier": "", + "schema:url": "", + "schema:version": "" + } + ] + }, + "regen:projectActivity": { + "schema:name": "" + }, + "regen:projectType": "", + "regen:offsetGenerationMethod": [ + "" + ], + "regen:projectStartDate": "", + "regen:projectEndDate": "", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "", + "geometry": { + "type": "Point", + "coordinates": [ + 0, + 0 + ] + } + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "", + "schema:url": "" + } + ] +} diff --git a/jsonld/projects/project-page.jsonld b/jsonld/projects/project-page.jsonld index 9eb0988..51bd53c 100644 --- a/jsonld/projects/project-page.jsonld +++ b/jsonld/projects/project-page.jsonld @@ -1,33 +1,33 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/", - "regen:creditClassId": "", - "schema:description": "", - "regen:previewPhoto": { - "schema:url": "", - "schema:creditText": "" - }, - "regen:galleryPhotos": [ - { - "schema:url": "", - "schema:creditText": "", - "schema:caption": "" - } - ], - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "" - }, - "regen:story": "", - "regen:storyTitle": "" -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/", + "regen:creditClassId": "", + "schema:description": "", + "regen:previewPhoto": { + "schema:url": "", + "schema:creditText": "" + }, + "regen:galleryPhotos": [ + { + "schema:url": "", + "schema:creditText": "", + "schema:caption": "" + } + ], + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "" + }, + "regen:story": "", + "regen:storyTitle": "" +} diff --git a/jsonld/projects/project.jsonld b/jsonld/projects/project.jsonld index 59b6118..50c4cd8 100644 --- a/jsonld/projects/project.jsonld +++ b/jsonld/projects/project.jsonld @@ -1,94 +1,94 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - }, - "regen:ratings": { - "@container": "@list" - }, - "regen:coBenefits": { - "@container": "@list" - } - }, - "@type": "regen:XXX-Project", - "@id": "http://app.regen.network/project/", - "schema:name": "", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature" - }, - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 0 - }, - "regen:projectActivity": { - "schema:name": "", - "schema:url": "" - }, - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "", - "schema:url": "", - "schema:description": "", - "regen:address": "" - }, - "regen:projectVerifier": { - "@type": "regen:Organization", - "schema:name": "", - "schema:url": "", - "schema:description": "", - "regen:address": "" - }, - "regen:offsetGenerationMethod": [ - "" - ], - "regen:projectType": "", - "regen:projectStartDate": "", - "regen:projectEndDate": "", - "regen:ratings": [ - { - "schema:name": "", - "schema:ratingValue": "", - "schema:url": "" - } - ], - "regen:primaryImpact": { - "@id": "", - "schema:description": "" - }, - "regen:coBenefits": [ - { - "@id": "", - "schema:description": "" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + }, + "regen:ratings": { + "@container": "@list" + }, + "regen:coBenefits": { + "@container": "@list" + } + }, + "@type": "regen:XXX-Project", + "@id": "http://app.regen.network/project/", + "schema:name": "", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature" + }, + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 0 + }, + "regen:projectActivity": { + "schema:name": "", + "schema:url": "" + }, + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "", + "schema:url": "", + "schema:description": "", + "regen:address": "" + }, + "regen:projectVerifier": { + "@type": "regen:Organization", + "schema:name": "", + "schema:url": "", + "schema:description": "", + "regen:address": "" + }, + "regen:offsetGenerationMethod": [ + "" + ], + "regen:projectType": "", + "regen:projectStartDate": "", + "regen:projectEndDate": "", + "regen:ratings": [ + { + "schema:name": "", + "schema:ratingValue": "", + "schema:url": "" + } + ], + "regen:primaryImpact": { + "@id": "", + "schema:description": "" + }, + "regen:coBenefits": [ + { + "@id": "", + "schema:description": "" + } + ] +} diff --git a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-001.jsonld b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-001.jsonld index 2d19b66..f4ea182 100644 --- a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-001.jsonld +++ b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-001.jsonld @@ -1,21 +1,21 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "@type": "regen:C01-CreditBatch", - "regen:vcsRetirementSerialNumber": "5531-243019420-243019439-VCU-048-MER-CD-14-934-01012015-31122015-1", - "regen:vcsProjectId": 934, - "regen:additionalCertifications": [ - { - "schema:name": "CCB-Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "@type": "regen:C01-CreditBatch", + "regen:vcsRetirementSerialNumber": "5531-243019420-243019439-VCU-048-MER-CD-14-934-01012015-31122015-1", + "regen:vcsProjectId": 934, + "regen:additionalCertifications": [ + { + "schema:name": "CCB-Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + } + ] +} diff --git a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-002.jsonld b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-002.jsonld index 9d6c2d1..630a186 100644 --- a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-002.jsonld +++ b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-002.jsonld @@ -1,21 +1,21 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "@type": "regen:C01-CreditBatch", - "regen:vcsRetirementSerialNumber": "5531-243019440-243022964-VCU-048-MER-CD-14-934-01012015-31122015-1", - "regen:vcsProjectId": 934, - "regen:additionalCertifications": [ - { - "schema:name": "CCB-Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "@type": "regen:C01-CreditBatch", + "regen:vcsRetirementSerialNumber": "5531-243019440-243022964-VCU-048-MER-CD-14-934-01012015-31122015-1", + "regen:vcsProjectId": 934, + "regen:additionalCertifications": [ + { + "schema:name": "CCB-Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + } + ] +} diff --git a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-003.jsonld b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-003.jsonld index 1d4502f..aaeafe0 100644 --- a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-003.jsonld +++ b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-003.jsonld @@ -1,21 +1,21 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "@type": "regen:C01-CreditBatch", - "regen:vcsRetirementSerialNumber": "5531-243022965-243022980-VCU-048-MER-CD-14-934-01012015-31122015-1", - "regen:vcsProjectId": 934, - "regen:additionalCertifications": [ - { - "schema:name": "CCB-Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "@type": "regen:C01-CreditBatch", + "regen:vcsRetirementSerialNumber": "5531-243022965-243022980-VCU-048-MER-CD-14-934-01012015-31122015-1", + "regen:vcsProjectId": 934, + "regen:additionalCertifications": [ + { + "schema:name": "CCB-Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + } + ] +} diff --git a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-004.jsonld b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-004.jsonld index 4de8834..9d84015 100644 --- a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-004.jsonld +++ b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-004.jsonld @@ -1,21 +1,21 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "@type": "regen:C01-CreditBatch", - "regen:vcsRetirementSerialNumber": "5531-243022981-243023031-VCU-048-MER-CD-14-934-01012015-31122015-1", - "regen:vcsProjectId": 934, - "regen:additionalCertifications": [ - { - "schema:name": "CCB-Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "@type": "regen:C01-CreditBatch", + "regen:vcsRetirementSerialNumber": "5531-243022981-243023031-VCU-048-MER-CD-14-934-01012015-31122015-1", + "regen:vcsProjectId": 934, + "regen:additionalCertifications": [ + { + "schema:name": "CCB-Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + } + ] +} diff --git a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-005.jsonld b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-005.jsonld index 723a49e..fca03b5 100644 --- a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-005.jsonld +++ b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-005.jsonld @@ -1,21 +1,21 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "@type": "regen:C01-CreditBatch", - "regen:vcsRetirementSerialNumber": "5531-243023032-243023543-VCU-048-MER-CD-14-934-01012015-31122015-1", - "regen:vcsProjectId": 934, - "regen:additionalCertifications": [ - { - "schema:name": "CCB-Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "@type": "regen:C01-CreditBatch", + "regen:vcsRetirementSerialNumber": "5531-243023032-243023543-VCU-048-MER-CD-14-934-01012015-31122015-1", + "regen:vcsProjectId": 934, + "regen:additionalCertifications": [ + { + "schema:name": "CCB-Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + } + ] +} diff --git a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-006.jsonld b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-006.jsonld index 28cf711..83679e6 100644 --- a/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-006.jsonld +++ b/ops/C01/credit-batch-metadata/C01-001-20150101-20151231-006.jsonld @@ -1,21 +1,21 @@ -{ - "@type": "regen:C01-CreditBatch", - "@context": { - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "regen:vcsProjectId": 934, - "regen:additionalCertifications": [ - { - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/programs/ccbs/" - }, - "schema:name": "CCB Gold" - } - ], - "regen:vcsRetirementSerialNumber": "5531-243023544-243023608-VCU-048-MER-CD-14-934-01012015-31122015-1" -} +{ + "@type": "regen:C01-CreditBatch", + "@context": { + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "regen:vcsProjectId": 934, + "regen:additionalCertifications": [ + { + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/programs/ccbs/" + }, + "schema:name": "CCB Gold" + } + ], + "regen:vcsRetirementSerialNumber": "5531-243023544-243023608-VCU-048-MER-CD-14-934-01012015-31122015-1" +} diff --git a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-001.jsonld b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-001.jsonld index a0e0629..9986f91 100644 --- a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-001.jsonld +++ b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-001.jsonld @@ -1,28 +1,28 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "@type": "regen:C01-CreditBatch", - "regen:vcsRetirementSerialNumber": "9381-93664647-93664707-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1", - "regen:vcsProjectId": 612, - "regen:additionalCertifications": [ - { - "schema:name": "CCB-Biodiversity Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - }, - { - "schema:name": "CCB-Climate Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "@type": "regen:C01-CreditBatch", + "regen:vcsRetirementSerialNumber": "9381-93664647-93664707-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1", + "regen:vcsProjectId": 612, + "regen:additionalCertifications": [ + { + "schema:name": "CCB-Biodiversity Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + }, + { + "schema:name": "CCB-Climate Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + } + ] +} diff --git a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-002.jsonld b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-002.jsonld index 1bfbe1e..3a9a6c4 100644 --- a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-002.jsonld +++ b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-002.jsonld @@ -1,28 +1,28 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "@type": "regen:C01-CreditBatch", - "regen:vcsRetirementSerialNumber": "9381-93664708-93664743-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1", - "regen:vcsProjectId": 612, - "regen:additionalCertifications": [ - { - "schema:name": "CCB-Biodiversity Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - }, - { - "schema:name": "CCB-Climate Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "@type": "regen:C01-CreditBatch", + "regen:vcsRetirementSerialNumber": "9381-93664708-93664743-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1", + "regen:vcsProjectId": 612, + "regen:additionalCertifications": [ + { + "schema:name": "CCB-Biodiversity Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + }, + { + "schema:name": "CCB-Climate Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + } + ] +} diff --git a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-003.jsonld b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-003.jsonld index a4894c9..0b5e465 100644 --- a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-003.jsonld +++ b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-003.jsonld @@ -1,28 +1,28 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "@type": "regen:C01-CreditBatch", - "regen:vcsRetirementSerialNumber": "9381-93664744-93664774-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1", - "regen:vcsProjectId": 612, - "regen:additionalCertifications": [ - { - "schema:name": "CCB-Biodiversity Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - }, - { - "schema:name": "CCB-Climate Gold", - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - } - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "@type": "regen:C01-CreditBatch", + "regen:vcsRetirementSerialNumber": "9381-93664744-93664774-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1", + "regen:vcsProjectId": 612, + "regen:additionalCertifications": [ + { + "schema:name": "CCB-Biodiversity Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + }, + { + "schema:name": "CCB-Climate Gold", + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + } + } + ] +} diff --git a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-004.jsonld b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-004.jsonld index a05c4ff..ebd29b5 100644 --- a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-004.jsonld +++ b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-004.jsonld @@ -1,28 +1,28 @@ -{ - "@type": "regen:C01-CreditBatch", - "@context": { - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "regen:vcsProjectId": 612, - "regen:additionalCertifications": [ - { - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - }, - "schema:name": "CCB-Biodiversity Gold" - }, - { - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - }, - "schema:name": "CCB-Climate Gold" - } - ], - "regen:vcsRetirementSerialNumber": "9381-93664775-93664806-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1" -} +{ + "@type": "regen:C01-CreditBatch", + "@context": { + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "regen:vcsProjectId": 612, + "regen:additionalCertifications": [ + { + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + }, + "schema:name": "CCB-Biodiversity Gold" + }, + { + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + }, + "schema:name": "CCB-Climate Gold" + } + ], + "regen:vcsRetirementSerialNumber": "9381-93664775-93664806-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1" +} diff --git a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-005.jsonld b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-005.jsonld index ade0072..5d75f71 100644 --- a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-005.jsonld +++ b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-005.jsonld @@ -1,28 +1,28 @@ -{ - "@type": "regen:C01-CreditBatch", - "@context": { - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "regen:vcsProjectId": 612, - "regen:additionalCertifications": [ - { - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/programs/ccbs/" - }, - "schema:name": "CCB Biodiversity Gold" - }, - { - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/programs/ccbs/" - }, - "schema:name": "CCB Climate Gold" - } - ], - "regen:vcsRetirementSerialNumber": "9381-93664807-93664871-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1" -} +{ + "@type": "regen:C01-CreditBatch", + "@context": { + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "regen:vcsProjectId": 612, + "regen:additionalCertifications": [ + { + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/programs/ccbs/" + }, + "schema:name": "CCB Biodiversity Gold" + }, + { + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/programs/ccbs/" + }, + "schema:name": "CCB Climate Gold" + } + ], + "regen:vcsRetirementSerialNumber": "9381-93664807-93664871-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1" +} diff --git a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-006.jsonld b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-006.jsonld index b69fdd9..8e876a6 100644 --- a/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-006.jsonld +++ b/ops/C01/credit-batch-metadata/C01-002-20190101-20191231-006.jsonld @@ -1,28 +1,28 @@ -{ - "@type": "regen:C01-CreditBatch", - "@context": { - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "regen:vcsProjectId": 612, - "regen:additionalCertifications": [ - { - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/programs/ccbs/" - }, - "schema:name": "CCB Biodiversity Gold" - }, - { - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/programs/ccbs/" - }, - "schema:name": "CCB Climate Gold" - } - ], - "regen:vcsRetirementSerialNumber": "9381-93664872-93664946-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1" -} +{ + "@type": "regen:C01-CreditBatch", + "@context": { + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "regen:vcsProjectId": 612, + "regen:additionalCertifications": [ + { + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/programs/ccbs/" + }, + "schema:name": "CCB Biodiversity Gold" + }, + { + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/programs/ccbs/" + }, + "schema:name": "CCB Climate Gold" + } + ], + "regen:vcsRetirementSerialNumber": "9381-93664872-93664946-VCS-VCU-259-VER-KE-14-612-01012019-31122019-1" +} diff --git a/ops/C01/credit-batch-metadata/C01-003-20150701-20160630-001.jsonld b/ops/C01/credit-batch-metadata/C01-003-20150701-20160630-001.jsonld index 9a5bdb4..aac9081 100644 --- a/ops/C01/credit-batch-metadata/C01-003-20150701-20160630-001.jsonld +++ b/ops/C01/credit-batch-metadata/C01-003-20150701-20160630-001.jsonld @@ -1,28 +1,28 @@ -{ - "@type": "regen:C01-CreditBatch", - "@context": { - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "regen:additionalCertifications": { - "@container": "@list" - } - }, - "regen:vcsProjectId": 1218, - "regen:additionalCertifications": [ - { - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - }, - "schema:name": "CCB-Biodiversity Gold" - }, - { - "schema:url": { - "@type": "schema:URL", - "@value": "https://verra.org/project/ccb-program/" - }, - "schema:name": "CCB-Climate Gold" - } - ], - "regen:vcsRetirementSerialNumber": "11339-320607281-320607330-VCS-VCU-576-VER-PE-14-1218-01072015-30062016-1" -} +{ + "@type": "regen:C01-CreditBatch", + "@context": { + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "regen:additionalCertifications": { + "@container": "@list" + } + }, + "regen:vcsProjectId": 1218, + "regen:additionalCertifications": [ + { + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + }, + "schema:name": "CCB-Biodiversity Gold" + }, + { + "schema:url": { + "@type": "schema:URL", + "@value": "https://verra.org/project/ccb-program/" + }, + "schema:name": "CCB-Climate Gold" + } + ], + "regen:vcsRetirementSerialNumber": "11339-320607281-320607330-VCS-VCU-576-VER-PE-14-1218-01072015-30062016-1" +} diff --git a/ops/C01/credit-batch-metadata/credit_batch_iris.md b/ops/C01/credit-batch-metadata/credit_batch_iris.md index 33d6152..109f7ca 100644 --- a/ops/C01/credit-batch-metadata/credit_batch_iris.md +++ b/ops/C01/credit-batch-metadata/credit_batch_iris.md @@ -1,23 +1,23 @@ -# Credit Class & Credit Batch IRIs - -## Verified Carbon Standard Credit Class (C01) - -### Credit Class Metadata - -| Metadata JSON-LD File | IRI | Base64 encoded IRI -|:--------------------- |:------|:-------- -| **[C01-verified-carbon-standard-credit-class.json](https://github.com/regen-network/regen-registry-ops/blob/main/C01/credit-class-metadata/C01-verified-carbon-standard-credit-class.json)** | regen:13toVgo5CCmQkPJDwLegtf4U1esW5rrtWpwqE6nSdp1ha9W88Rfuf5M.rdf | cmVnZW46MTN0b1ZnbzVDQ21Ra1BKRHdMZWd0ZjRVMWVzVzVycnRXcHdxRTZuU2RwMWhhOVc4OFJmdWY1TS5yZGY= - - -### Credit Batch Metadata - -| Credit Batch | IRI | IRI Hash | -|:------------ |:--- |:------- -| **C01-20190101-20191231-001** | regen:13toVgF84kQwSX11DdhDasYtMFU1Yb6qQwQvtv1rvH8pf5E8UTyajCX.rdf | cmVnZW46MTN0b1ZnRjg0a1F3U1gxMURkaERhc1l0TUZVMVliNnFRd1F2dHYxcnZIOHBmNUU4VVR5YWpDWC5yZGY= | -| **C01-20190101-20191231-002** | regen:13toVgR8xL6Nuyrotjaik7bqmkuWRnMvit8ka1fSBLnebzP7zUVbMJ3.rdf | cmVnZW46MTN0b1ZnUjh4TDZOdXlyb3RqYWlrN2JxbWt1V1JuTXZpdDhrYTFmU0JMbmVielA3elVWYk1KMy5yZGY= | -| **C01-20150101-20151231-003** | regen:13toVgyewRosPA4FVy4wWJgk7JGYc5K7TtE1nHaaHQJgvb6bBLtBBTC.rdf | cmVnZW46MTN0b1ZneWV3Um9zUEE0RlZ5NHdXSmdrN0pHWWM1SzdUdEUxbkhhYUhRSmd2YjZiQkx0QkJUQy5yZGY= | -| **C01-20150101-20151231-004** | regen:13toVgbuejJuARiL27Js3Ek3bw3cFrpCN89agNL7pPksUjwQdLWnJRC.rdf | cmVnZW46MTN0b1ZnYnVlakp1QVJpTDI3SnMzRWszYnczY0ZycENOODlhZ05MN3BQa3NVandRZExXbkpSQy5yZGY= | -| **C01-20150101-20151231-005** | regen:13toVgfKEu7dmUCsf6pfXKeWdNEaCAn8rhYB45gpJzoazQ1jEpRyapb.rdf | cmVnZW46MTN0b1ZnZktFdTdkbVVDc2Y2cGZYS2VXZE5FYUNBbjhyaFlCNDVncEp6b2F6UTFqRXBSeWFwYi5yZGY= | -| **C01-20190101-20191231-006** | regen:13toVhAQCbMc2LJm44AV1enaqi27mRMkRjPJmVGdW11C4qcKuhrnGPA.rdf | cmVnZW46MTN0b1ZoQVFDYk1jMkxKbTQ0QVYxZW5hcWkyN21STWtSalBKbVZHZFcxMUM0cWNLdWhybkdQQS5yZGY= | -| **C01-20150101-20151231-007** | regen:13toVhazYXg2LyQ7TXzEkBDsYi3wEyUzi56ZB6DgmbHGyLj9gUvfWHn.rdf | cmVnZW46MTN0b1ZoYXpZWGcyTHlRN1RYekVrQkRzWWkzd0V5VXppNTZaQjZEZ21iSEd5TGo5Z1V2ZldIbi5yZGY= | -| **C01-20150101-20151231-008** | regen:13toVgs8XiE5McGxNhf4hb4F6pxiRzQKXXwNNbbCs2VSDm8BWi94dQB.rdf | cmVnZW46MTN0b1ZnczhYaUU1TWNHeE5oZjRoYjRGNnB4aVJ6UUtYWHdOTmJiQ3MyVlNEbThCV2k5NGRRQi5yZGY= | +# Credit Class & Credit Batch IRIs + +## Verified Carbon Standard Credit Class (C01) + +### Credit Class Metadata + +| Metadata JSON-LD File | IRI | Base64 encoded IRI +|:--------------------- |:------|:-------- +| **[C01-verified-carbon-standard-credit-class.json](https://github.com/regen-network/regen-registry-ops/blob/main/C01/credit-class-metadata/C01-verified-carbon-standard-credit-class.json)** | regen:13toVgo5CCmQkPJDwLegtf4U1esW5rrtWpwqE6nSdp1ha9W88Rfuf5M.rdf | cmVnZW46MTN0b1ZnbzVDQ21Ra1BKRHdMZWd0ZjRVMWVzVzVycnRXcHdxRTZuU2RwMWhhOVc4OFJmdWY1TS5yZGY= + + +### Credit Batch Metadata + +| Credit Batch | IRI | IRI Hash | +|:------------ |:--- |:------- +| **C01-20190101-20191231-001** | regen:13toVgF84kQwSX11DdhDasYtMFU1Yb6qQwQvtv1rvH8pf5E8UTyajCX.rdf | cmVnZW46MTN0b1ZnRjg0a1F3U1gxMURkaERhc1l0TUZVMVliNnFRd1F2dHYxcnZIOHBmNUU4VVR5YWpDWC5yZGY= | +| **C01-20190101-20191231-002** | regen:13toVgR8xL6Nuyrotjaik7bqmkuWRnMvit8ka1fSBLnebzP7zUVbMJ3.rdf | cmVnZW46MTN0b1ZnUjh4TDZOdXlyb3RqYWlrN2JxbWt1V1JuTXZpdDhrYTFmU0JMbmVielA3elVWYk1KMy5yZGY= | +| **C01-20150101-20151231-003** | regen:13toVgyewRosPA4FVy4wWJgk7JGYc5K7TtE1nHaaHQJgvb6bBLtBBTC.rdf | cmVnZW46MTN0b1ZneWV3Um9zUEE0RlZ5NHdXSmdrN0pHWWM1SzdUdEUxbkhhYUhRSmd2YjZiQkx0QkJUQy5yZGY= | +| **C01-20150101-20151231-004** | regen:13toVgbuejJuARiL27Js3Ek3bw3cFrpCN89agNL7pPksUjwQdLWnJRC.rdf | cmVnZW46MTN0b1ZnYnVlakp1QVJpTDI3SnMzRWszYnczY0ZycENOODlhZ05MN3BQa3NVandRZExXbkpSQy5yZGY= | +| **C01-20150101-20151231-005** | regen:13toVgfKEu7dmUCsf6pfXKeWdNEaCAn8rhYB45gpJzoazQ1jEpRyapb.rdf | cmVnZW46MTN0b1ZnZktFdTdkbVVDc2Y2cGZYS2VXZE5FYUNBbjhyaFlCNDVncEp6b2F6UTFqRXBSeWFwYi5yZGY= | +| **C01-20190101-20191231-006** | regen:13toVhAQCbMc2LJm44AV1enaqi27mRMkRjPJmVGdW11C4qcKuhrnGPA.rdf | cmVnZW46MTN0b1ZoQVFDYk1jMkxKbTQ0QVYxZW5hcWkyN21STWtSalBKbVZHZFcxMUM0cWNLdWhybkdQQS5yZGY= | +| **C01-20150101-20151231-007** | regen:13toVhazYXg2LyQ7TXzEkBDsYi3wEyUzi56ZB6DgmbHGyLj9gUvfWHn.rdf | cmVnZW46MTN0b1ZoYXpZWGcyTHlRN1RYekVrQkRzWWkzd0V5VXppNTZaQjZEZ21iSEd5TGo5Z1V2ZldIbi5yZGY= | +| **C01-20150101-20151231-008** | regen:13toVgs8XiE5McGxNhf4hb4F6pxiRzQKXXwNNbbCs2VSDm8BWi94dQB.rdf | cmVnZW46MTN0b1ZnczhYaUU1TWNHeE5oZjRoYjRGNnB4aVJ6UUtYWHdOTmJiQ3MyVlNEbThCV2k5NGRRQi5yZGY= | diff --git a/ops/C01/credit-class-metadata/C01-verified-carbon-standard-credit-class.jsonld b/ops/C01/credit-class-metadata/C01-verified-carbon-standard-credit-class.jsonld index 02412f3..bab4225 100644 --- a/ops/C01/credit-class-metadata/C01-verified-carbon-standard-credit-class.jsonld +++ b/ops/C01/credit-class-metadata/C01-verified-carbon-standard-credit-class.jsonld @@ -1,333 +1,333 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:sectoralScope": { - "@container": "@list" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - }, - "regen:certifications": { - "@container": "@list" - } - }, - "@type": "regen:C01-CreditClass", - "schema:name": "Verified Carbon Standard", - "schema:description": "This credit class provides a vehicle for nature based Verified Carbon Units (VCUs) to enter the blockchain space via issuance on Regen Ledger. It can be used by project developers, credit brokers, and other stakeholders interested in digitizing carbon credits issued by the VCS program to make them available in the emerging world of decentralized finance.", - "schema:url": "https://library.regen.network/v/regen-registry-credit-classes/credits-from-other-registries/verified-carbon-standard-credit-class", - "regen:sourceRegistry": { - "schema:name": "Verra", - "schema:url": "https://verra.org/" - }, - "regen:sectoralScope": [ - "Agriculture Forestry and Other Land Use (AFOLU)", - "Livestock and Manure Management" - ], - "regen:offsetGenerationMethod": [ - "Emission Reductions", - "Carbon Removals" - ], - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "Afforestation and reforestation of degraded land", - "schema:identifier": "AR-ACM0001", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/X4VOLW3Y7IJCH9WXSBXBC2Q0JKG9UZ", - "schema:version": "5.2.0" - }, - { - "schema:name": "Afforestation or reforestation of degraded land without displacement of pre-project activities", - "schema:identifier": "AR-ACM0002", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/OOH5AKLQDUYW6N3STD3LDH7EL9THD1", - "schema:version": "1.1.0" - }, - { - "schema:name": "Reforestation of degraded land", - "schema:identifier": "AR-AM0001", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/3Z9ZV3YE2H4ITY66HR7WDLV6D9QMD5", - "schema:version": "3.0" - }, - { - "schema:name": "Restoration of degraded lands through afforestation/reforestation", - "schema:identifier": "AR-AM0002", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/6ZZXJUKK49WKLID7ZH8FG3BS9WTCCH", - "schema:version": "3.0" - }, - { - "schema:name": "Afforestation and reforestation of degraded land through tree planting assisted natural regeneration and control of animal grazing", - "schema:identifier": "AR-AM0003", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/U3WW9YEC2X333WW8CPVQ6CGVY6IBPJ", - "schema:version": "4.0" - }, - { - "schema:name": "Reforestation or afforestation of land currently under agricultural use", - "schema:identifier": "AR-AM0004", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/S2OMSUTOWYOMLW75MPR0CG6SAKNG4Y", - "schema:version": "4.0" - }, - { - "schema:name": "Afforestation and reforestation project activities implemented for industrial and/or commercial uses", - "schema:identifier": "AR-AM0005", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/QAM97WQWX94URIJXOJMTJFIS8KSE28", - "schema:version": "4.0" - }, - { - "schema:name": "Afforestation/Reforestation with Trees Supported by Shrubs on Degraded Land", - "schema:identifier": "AR-AM0006", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/BHNYWRDFHU75CI2GSCETNYRBFWBMBS", - "schema:version": "3.1.1" - }, - { - "schema:name": "Afforestation and Reforestation of Land Currently Under Agricultural or Pastoral Use", - "schema:identifier": "AR-AM0007", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/M8JRU26ZZJAN7DKGE2EP6UBN9OYBDJ", - "schema:version": "5.0" - }, - { - "schema:name": "Afforestation or reforestation on degraded land for sustainable wood production", - "schema:identifier": "AR-AM0008", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/SVW9LIW0F9AQ50KW7J338I8UD4Z231", - "schema:version": "3.0" - }, - { - "schema:name": "Afforestation or reforestation on degraded land allowing for silvopastoral activities", - "schema:identifier": "AR-AM0009", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/HQ3U8IFDTG5N8987T3LR9D3Z76UB8O", - "schema:version": "4.0" - }, - { - "schema:name": "Afforestation and reforestation project activities implemented on unmanaged grassland in reserve/protected areas", - "schema:identifier": "AR-AM0010", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/H70FNNSTOOBRQV0GTWHDX0WECCWZZC", - "schema:version": "4.0" - }, - { - "schema:name": "Afforestation and reforestation of land subject to polyculture farming", - "schema:identifier": "AR-AM0011", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/21ACLYAP601F8L2WCBJV0PTM7GXYQ3", - "schema:version": "1.0.1" - }, - { - "schema:name": "Afforestation or reforestation of degraded or abandoned agricultural lands", - "schema:identifier": "AR-AM0012", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/57VGMUM1NWCQDQ4BQ2KP4VXFHF95ZI", - "schema:version": "1.0.1" - }, - { - "schema:name": "Afforestation and reforestation of lands other than wetlands", - "schema:identifier": "AR-AM0013", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/LAC5URLIAYJ8ETRT2W1A4IFHBPSNWN", - "schema:version": "1.0.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodologies for small-scale A/R CDM project activities implemented on grasslands or croplands with limited displacement of pre-project activities", - "schema:identifier": "AR-AMS0001", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/91OLF4XK2MEDIRIWUQ22X3ZQAOPBWY", - "schema:version": "6.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodologies for small-scale afforestation and reforestation project activities under the CDM implemented on settlements", - "schema:identifier": "AR-AMS0002", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/XNOATYWKHK5ZM5ZVZZQ4G5OXIDVZJK", - "schema:version": "2.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodology for small-scale agroforestry - afforestation and reforestation project activities under the clean development mechanism", - "schema:identifier": "AR-AMS0004", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/7O930NO6FCXTRZI6WIVTF54TTWJM6I", - "schema:version": "2.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodology for small-scale afforestation and reforestation project activities under the clean development mechanism implemented on lands having low inherent potential to support living biomass", - "schema:identifier": "AR-AMS0005", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/KO69QWJ8DYW631DD4PZN6C37XL3P1E", - "schema:version": "2.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodology for small-scale silvopastoral - afforestation and reforestation project activities under the clean development mechanism", - "schema:identifier": "AR-AMS0006", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/MDKSSZCV62M6V0K49Y0L5H9YD7WLR5", - "schema:version": "1.0" - }, - { - "schema:name": "Afforestation and reforestation of lands except wetlands", - "schema:identifier": "AR-ACM0003", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/C9QS5G3CS8FW04MYYXDFOQDPXWM4OE", - "schema:version": "2.0" - }, - { - "schema:name": "Afforestation and reforestation of degraded mangrove habitats", - "schema:identifier": "AR-AM0014", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/KMH6O8T6RL3P5XKNBQE2N359QG7KOE", - "schema:version": "3.0" - }, - { - "schema:name": "Afforestation and reforestation project activities implemented on wetlands", - "schema:identifier": "AR-AMS0003", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/808WOYH6FWAXP3CQR4PXOLORGZBVRG", - "schema:version": "3.0" - }, - { - "schema:name": "Afforestation and reforestation project activities implemented on lands other than wetlands", - "schema:identifier": "AR-AMS0007", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/J6ZHLX1C3AEMSZ52PWIII6D2AOJZUB", - "schema:version": "3.1" - }, - { - "schema:name": "Methodology for Improved Forest Management through Extension of Rotation Age", - "schema:identifier": "VM003", - "schema:url": "https://verra.org/methodology/vm0003-methodology-for-improved-forest-management-through-extension-of-rotation-age-v1-2/", - "schema:version": "1.2" - }, - { - "schema:name": "Methodology for Conservation Projects that Avoid Planned Land Use Conversion in Peat Swamp Forests", - "schema:identifier": "VM004", - "schema:url": "https://verra.org/methodology/vm0004-methodology-for-conservation-projects-that-avoid-planned-land-use-conversion-in-peat-swamp-forests-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Conversion of Low-productive Forest to High-productive Forest", - "schema:identifier": "VM005", - "schema:url": "https://verra.org/methodology/vm0005-methodology-for-conversion-of-low-productive-forest-to-high-productive-forest-v1-2/", - "schema:version": "1.2" - }, - { - "schema:name": "Methodology for Carbon Accounting for Mosaic and Landscape-scale REDD Projects", - "schema:identifier": "VM006", - "schema:url": "https://verra.org/methodology/vm0006-methodology-for-carbon-accounting-for-mosaic-and-landscape-scale-redd-projects-v2-2/", - "schema:version": "2.2" - }, - { - "schema:name": "REDD+ Methodology Framework (REDD+MF)", - "schema:identifier": "VM007", - "schema:url": "https://verra.org/methodology/vm0007-redd-methodology-framework-redd-mf-v1-6/", - "schema:version": "1.6" - }, - { - "schema:name": "Methodology for Avoided Ecosystem Conversion", - "schema:identifier": "VM009", - "schema:url": "https://verra.org/methodology/vm0009-methodology-for-avoided-ecosystem-conversion-v3-0/", - "schema:version": "3.0" - }, - { - "schema:name": "Methodology for Improved Forest Management: Conversion from Logged to Protected Forest", - "schema:identifier": "VM010", - "schema:url": "https://verra.org/methodology/vm0010-methodology-for-improved-forest-management-conversion-from-logged-to-protected-forest-v1-3/", - "schema:version": "1.3" - }, - { - "schema:name": "Methodology for Calculating GHG Benefits from Preventing Planned Degradation", - "schema:identifier": "VM011", - "schema:url": "https://verra.org/methodology/vm0011-methodology-for-calculating-ghg-benefits-from-preventing-planned-degradation-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Improved Forest Management in Temperate and Boreal Forests (LtPF)", - "schema:identifier": "VM012", - "schema:url": "https://verra.org/methodology/vm0012-improved-forest-management-in-temperate-and-boreal-forests-ltpf-v1-2/", - "schema:version": "1.2" - }, - { - "schema:name": "Methodology for Avoided Unplanned Deforestation", - "schema:identifier": "VM015", - "schema:url": "https://verra.org/methodology/vm0015-methodology-for-avoided-unplanned-deforestation-v1-1/", - "schema:version": "1.1" - }, - { - "schema:name": "Adoption of Sustainable Agricultural Land Management", - "schema:identifier": "VM017", - "schema:url": "https://verra.org/methodology/vm0017-adoption-of-sustainable-agricultural-land-management-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Soil Carbon Quantification Methodology", - "schema:identifier": "VM021", - "schema:url": "https://verra.org/methodology/vm0021-soil-carbon-quantification-methodology-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Coastal Wetland Creation", - "schema:identifier": "VM024", - "schema:url": "https://verra.org/methodology/vm0024-methodology-for-coastal-wetland-creation-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Sustainable Grassland Management (SGM)", - "schema:identifier": "VM026", - "schema:url": "https://verra.org/methodology/vm0026-methodology-for-sustainable-grassland-management-sgm-v1-0/", - "schema:version": "1.1" - }, - { - "schema:name": "Methodology for Rewetting Drained Tropical Peatlands", - "schema:identifier": "VM027", - "schema:url": "https://verra.org/methodology/vm0027-methodology-for-rewetting-drained-tropical-peatlands-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Avoided Forest Degradation through Fire Management", - "schema:identifier": "VM029", - "schema:url": "https://verra.org/methodology/vm0029-methodology-for-avoided-forest-degradation-through-fire-management-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for the Adoption of Sustainable Grasslands through Adjustment of Fire and Grazing", - "schema:identifier": "VM032", - "schema:url": "https://verra.org/methodology/vm0032-methodology-for-the-adoption-of-sustainable-grasslands-through-adjustment-of-fire-and-grazing-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Tidal Wetland and Seagrass Restoration", - "schema:identifier": "VM033", - "schema:url": "https://verra.org/methodology/vm0033-methodology-for-tidal-wetland-and-seagrass-restoration-v2-0/", - "schema:version": "2.0" - }, - { - "schema:name": "British Columbia Forest Carbon Offset Methodology", - "schema:identifier": "VM034", - "schema:url": "https://verra.org/methodology/vm0034-canadian-forest-carbon-offset-methodology-v2-0-2/", - "schema:version": "2.0" - }, - { - "schema:name": "Methodology for Improved Forest Management through Reduced Impact Logging", - "schema:identifier": "VM035", - "schema:url": "https://verra.org/methodology/vm0035-methodology-for-improved-forest-management-through-reduced-impact-logging-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Rewetting Drained Temperate Peatlands", - "schema:identifier": "VM036", - "schema:url": "https://verra.org/methodology/vm0036-methodology-for-rewetting-drained-temperate-peatlands-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Implementation of REDD+ Activities in Landscapes Affected by Mosaic Deforestation and Degradation", - "schema:identifier": "VM037", - "schema:url": "https://verra.org/methodology/vm0037-methodology-implementation-redd-activities-landscapes-affected-mosaic-deforestation-degradation-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Improved Agricultural Land Management", - "schema:identifier": "VM042", - "schema:url": "https://verra.org/methodology/vm0042-methodology-for-improved-agricultural-land-management-v1-0/", - "schema:version": "1.0" - } - ], - "schema:url": "https://library.regen.network/v/regen-registry-credit-classes/credits-from-other-registries/verified-carbon-standard-credit-class/approved-methodologies" - }, - "regen:verificationMethod": "Third-party verified", - "regen:certifications": [ - { - "schema:name": "ICROA approved", - "schema:url": "https://icroa.org/" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:sectoralScope": { + "@container": "@list" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + }, + "regen:certifications": { + "@container": "@list" + } + }, + "@type": "regen:C01-CreditClass", + "schema:name": "Verified Carbon Standard", + "schema:description": "This credit class provides a vehicle for nature based Verified Carbon Units (VCUs) to enter the blockchain space via issuance on Regen Ledger. It can be used by project developers, credit brokers, and other stakeholders interested in digitizing carbon credits issued by the VCS program to make them available in the emerging world of decentralized finance.", + "schema:url": "https://library.regen.network/v/regen-registry-credit-classes/credits-from-other-registries/verified-carbon-standard-credit-class", + "regen:sourceRegistry": { + "schema:name": "Verra", + "schema:url": "https://verra.org/" + }, + "regen:sectoralScope": [ + "Agriculture Forestry and Other Land Use (AFOLU)", + "Livestock and Manure Management" + ], + "regen:offsetGenerationMethod": [ + "Emission Reductions", + "Carbon Removals" + ], + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "Afforestation and reforestation of degraded land", + "schema:identifier": "AR-ACM0001", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/X4VOLW3Y7IJCH9WXSBXBC2Q0JKG9UZ", + "schema:version": "5.2.0" + }, + { + "schema:name": "Afforestation or reforestation of degraded land without displacement of pre-project activities", + "schema:identifier": "AR-ACM0002", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/OOH5AKLQDUYW6N3STD3LDH7EL9THD1", + "schema:version": "1.1.0" + }, + { + "schema:name": "Reforestation of degraded land", + "schema:identifier": "AR-AM0001", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/3Z9ZV3YE2H4ITY66HR7WDLV6D9QMD5", + "schema:version": "3.0" + }, + { + "schema:name": "Restoration of degraded lands through afforestation/reforestation", + "schema:identifier": "AR-AM0002", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/6ZZXJUKK49WKLID7ZH8FG3BS9WTCCH", + "schema:version": "3.0" + }, + { + "schema:name": "Afforestation and reforestation of degraded land through tree planting assisted natural regeneration and control of animal grazing", + "schema:identifier": "AR-AM0003", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/U3WW9YEC2X333WW8CPVQ6CGVY6IBPJ", + "schema:version": "4.0" + }, + { + "schema:name": "Reforestation or afforestation of land currently under agricultural use", + "schema:identifier": "AR-AM0004", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/S2OMSUTOWYOMLW75MPR0CG6SAKNG4Y", + "schema:version": "4.0" + }, + { + "schema:name": "Afforestation and reforestation project activities implemented for industrial and/or commercial uses", + "schema:identifier": "AR-AM0005", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/QAM97WQWX94URIJXOJMTJFIS8KSE28", + "schema:version": "4.0" + }, + { + "schema:name": "Afforestation/Reforestation with Trees Supported by Shrubs on Degraded Land", + "schema:identifier": "AR-AM0006", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/BHNYWRDFHU75CI2GSCETNYRBFWBMBS", + "schema:version": "3.1.1" + }, + { + "schema:name": "Afforestation and Reforestation of Land Currently Under Agricultural or Pastoral Use", + "schema:identifier": "AR-AM0007", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/M8JRU26ZZJAN7DKGE2EP6UBN9OYBDJ", + "schema:version": "5.0" + }, + { + "schema:name": "Afforestation or reforestation on degraded land for sustainable wood production", + "schema:identifier": "AR-AM0008", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/SVW9LIW0F9AQ50KW7J338I8UD4Z231", + "schema:version": "3.0" + }, + { + "schema:name": "Afforestation or reforestation on degraded land allowing for silvopastoral activities", + "schema:identifier": "AR-AM0009", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/HQ3U8IFDTG5N8987T3LR9D3Z76UB8O", + "schema:version": "4.0" + }, + { + "schema:name": "Afforestation and reforestation project activities implemented on unmanaged grassland in reserve/protected areas", + "schema:identifier": "AR-AM0010", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/H70FNNSTOOBRQV0GTWHDX0WECCWZZC", + "schema:version": "4.0" + }, + { + "schema:name": "Afforestation and reforestation of land subject to polyculture farming", + "schema:identifier": "AR-AM0011", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/21ACLYAP601F8L2WCBJV0PTM7GXYQ3", + "schema:version": "1.0.1" + }, + { + "schema:name": "Afforestation or reforestation of degraded or abandoned agricultural lands", + "schema:identifier": "AR-AM0012", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/57VGMUM1NWCQDQ4BQ2KP4VXFHF95ZI", + "schema:version": "1.0.1" + }, + { + "schema:name": "Afforestation and reforestation of lands other than wetlands", + "schema:identifier": "AR-AM0013", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/LAC5URLIAYJ8ETRT2W1A4IFHBPSNWN", + "schema:version": "1.0.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodologies for small-scale A/R CDM project activities implemented on grasslands or croplands with limited displacement of pre-project activities", + "schema:identifier": "AR-AMS0001", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/91OLF4XK2MEDIRIWUQ22X3ZQAOPBWY", + "schema:version": "6.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodologies for small-scale afforestation and reforestation project activities under the CDM implemented on settlements", + "schema:identifier": "AR-AMS0002", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/XNOATYWKHK5ZM5ZVZZQ4G5OXIDVZJK", + "schema:version": "2.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodology for small-scale agroforestry - afforestation and reforestation project activities under the clean development mechanism", + "schema:identifier": "AR-AMS0004", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/7O930NO6FCXTRZI6WIVTF54TTWJM6I", + "schema:version": "2.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodology for small-scale afforestation and reforestation project activities under the clean development mechanism implemented on lands having low inherent potential to support living biomass", + "schema:identifier": "AR-AMS0005", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/KO69QWJ8DYW631DD4PZN6C37XL3P1E", + "schema:version": "2.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodology for small-scale silvopastoral - afforestation and reforestation project activities under the clean development mechanism", + "schema:identifier": "AR-AMS0006", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/MDKSSZCV62M6V0K49Y0L5H9YD7WLR5", + "schema:version": "1.0" + }, + { + "schema:name": "Afforestation and reforestation of lands except wetlands", + "schema:identifier": "AR-ACM0003", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/C9QS5G3CS8FW04MYYXDFOQDPXWM4OE", + "schema:version": "2.0" + }, + { + "schema:name": "Afforestation and reforestation of degraded mangrove habitats", + "schema:identifier": "AR-AM0014", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/KMH6O8T6RL3P5XKNBQE2N359QG7KOE", + "schema:version": "3.0" + }, + { + "schema:name": "Afforestation and reforestation project activities implemented on wetlands", + "schema:identifier": "AR-AMS0003", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/808WOYH6FWAXP3CQR4PXOLORGZBVRG", + "schema:version": "3.0" + }, + { + "schema:name": "Afforestation and reforestation project activities implemented on lands other than wetlands", + "schema:identifier": "AR-AMS0007", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/J6ZHLX1C3AEMSZ52PWIII6D2AOJZUB", + "schema:version": "3.1" + }, + { + "schema:name": "Methodology for Improved Forest Management through Extension of Rotation Age", + "schema:identifier": "VM003", + "schema:url": "https://verra.org/methodology/vm0003-methodology-for-improved-forest-management-through-extension-of-rotation-age-v1-2/", + "schema:version": "1.2" + }, + { + "schema:name": "Methodology for Conservation Projects that Avoid Planned Land Use Conversion in Peat Swamp Forests", + "schema:identifier": "VM004", + "schema:url": "https://verra.org/methodology/vm0004-methodology-for-conservation-projects-that-avoid-planned-land-use-conversion-in-peat-swamp-forests-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Conversion of Low-productive Forest to High-productive Forest", + "schema:identifier": "VM005", + "schema:url": "https://verra.org/methodology/vm0005-methodology-for-conversion-of-low-productive-forest-to-high-productive-forest-v1-2/", + "schema:version": "1.2" + }, + { + "schema:name": "Methodology for Carbon Accounting for Mosaic and Landscape-scale REDD Projects", + "schema:identifier": "VM006", + "schema:url": "https://verra.org/methodology/vm0006-methodology-for-carbon-accounting-for-mosaic-and-landscape-scale-redd-projects-v2-2/", + "schema:version": "2.2" + }, + { + "schema:name": "REDD+ Methodology Framework (REDD+MF)", + "schema:identifier": "VM007", + "schema:url": "https://verra.org/methodology/vm0007-redd-methodology-framework-redd-mf-v1-6/", + "schema:version": "1.6" + }, + { + "schema:name": "Methodology for Avoided Ecosystem Conversion", + "schema:identifier": "VM009", + "schema:url": "https://verra.org/methodology/vm0009-methodology-for-avoided-ecosystem-conversion-v3-0/", + "schema:version": "3.0" + }, + { + "schema:name": "Methodology for Improved Forest Management: Conversion from Logged to Protected Forest", + "schema:identifier": "VM010", + "schema:url": "https://verra.org/methodology/vm0010-methodology-for-improved-forest-management-conversion-from-logged-to-protected-forest-v1-3/", + "schema:version": "1.3" + }, + { + "schema:name": "Methodology for Calculating GHG Benefits from Preventing Planned Degradation", + "schema:identifier": "VM011", + "schema:url": "https://verra.org/methodology/vm0011-methodology-for-calculating-ghg-benefits-from-preventing-planned-degradation-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Improved Forest Management in Temperate and Boreal Forests (LtPF)", + "schema:identifier": "VM012", + "schema:url": "https://verra.org/methodology/vm0012-improved-forest-management-in-temperate-and-boreal-forests-ltpf-v1-2/", + "schema:version": "1.2" + }, + { + "schema:name": "Methodology for Avoided Unplanned Deforestation", + "schema:identifier": "VM015", + "schema:url": "https://verra.org/methodology/vm0015-methodology-for-avoided-unplanned-deforestation-v1-1/", + "schema:version": "1.1" + }, + { + "schema:name": "Adoption of Sustainable Agricultural Land Management", + "schema:identifier": "VM017", + "schema:url": "https://verra.org/methodology/vm0017-adoption-of-sustainable-agricultural-land-management-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Soil Carbon Quantification Methodology", + "schema:identifier": "VM021", + "schema:url": "https://verra.org/methodology/vm0021-soil-carbon-quantification-methodology-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Coastal Wetland Creation", + "schema:identifier": "VM024", + "schema:url": "https://verra.org/methodology/vm0024-methodology-for-coastal-wetland-creation-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Sustainable Grassland Management (SGM)", + "schema:identifier": "VM026", + "schema:url": "https://verra.org/methodology/vm0026-methodology-for-sustainable-grassland-management-sgm-v1-0/", + "schema:version": "1.1" + }, + { + "schema:name": "Methodology for Rewetting Drained Tropical Peatlands", + "schema:identifier": "VM027", + "schema:url": "https://verra.org/methodology/vm0027-methodology-for-rewetting-drained-tropical-peatlands-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Avoided Forest Degradation through Fire Management", + "schema:identifier": "VM029", + "schema:url": "https://verra.org/methodology/vm0029-methodology-for-avoided-forest-degradation-through-fire-management-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for the Adoption of Sustainable Grasslands through Adjustment of Fire and Grazing", + "schema:identifier": "VM032", + "schema:url": "https://verra.org/methodology/vm0032-methodology-for-the-adoption-of-sustainable-grasslands-through-adjustment-of-fire-and-grazing-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Tidal Wetland and Seagrass Restoration", + "schema:identifier": "VM033", + "schema:url": "https://verra.org/methodology/vm0033-methodology-for-tidal-wetland-and-seagrass-restoration-v2-0/", + "schema:version": "2.0" + }, + { + "schema:name": "British Columbia Forest Carbon Offset Methodology", + "schema:identifier": "VM034", + "schema:url": "https://verra.org/methodology/vm0034-canadian-forest-carbon-offset-methodology-v2-0-2/", + "schema:version": "2.0" + }, + { + "schema:name": "Methodology for Improved Forest Management through Reduced Impact Logging", + "schema:identifier": "VM035", + "schema:url": "https://verra.org/methodology/vm0035-methodology-for-improved-forest-management-through-reduced-impact-logging-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Rewetting Drained Temperate Peatlands", + "schema:identifier": "VM036", + "schema:url": "https://verra.org/methodology/vm0036-methodology-for-rewetting-drained-temperate-peatlands-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Implementation of REDD+ Activities in Landscapes Affected by Mosaic Deforestation and Degradation", + "schema:identifier": "VM037", + "schema:url": "https://verra.org/methodology/vm0037-methodology-implementation-redd-activities-landscapes-affected-mosaic-deforestation-degradation-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Improved Agricultural Land Management", + "schema:identifier": "VM042", + "schema:url": "https://verra.org/methodology/vm0042-methodology-for-improved-agricultural-land-management-v1-0/", + "schema:version": "1.0" + } + ], + "schema:url": "https://library.regen.network/v/regen-registry-credit-classes/credits-from-other-registries/verified-carbon-standard-credit-class/approved-methodologies" + }, + "regen:verificationMethod": "Third-party verified", + "regen:certifications": [ + { + "schema:name": "ICROA approved", + "schema:url": "https://icroa.org/" + } + ] +} diff --git a/ops/C01/project-metadata/C01-001-project-page.jsonld b/ops/C01/project-metadata/C01-001-project-page.jsonld index 71f608e..35eea0b 100644 --- a/ops/C01/project-metadata/C01-001-project-page.jsonld +++ b/ops/C01/project-metadata/C01-001-project-page.jsonld @@ -1,38 +1,38 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "https://app.regen.network/project/C01-001", - "regen:creditClassId": "C01", - "schema:description": "The Mai Ndombe REDD+ Project protects over 300,000 hectares of critical bonobo and forest elephant habitat within the world’s second-largest intact rainforest and some of the most important wetlands on the planet, the Congo Basin. This project reduces the principal drivers of forest and biodiversity loss and is charting a new pathway for community prosperity through comprehensive investments into the surrounding local communities.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/preview-photo.jpg", - "schema:creditText": "Photography of Mai Ndombe by Filip Agoo" - }, - "regen:galleryPhotos": [ - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/image-1.png" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/image-2.jpg" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/image-3.jpg" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/image-4.png" - } - ], - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "https://www.youtube.com/embed/_4wHY99fm-w" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "https://app.regen.network/project/C01-001", + "regen:creditClassId": "C01", + "schema:description": "The Mai Ndombe REDD+ Project protects over 300,000 hectares of critical bonobo and forest elephant habitat within the world’s second-largest intact rainforest and some of the most important wetlands on the planet, the Congo Basin. This project reduces the principal drivers of forest and biodiversity loss and is charting a new pathway for community prosperity through comprehensive investments into the surrounding local communities.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/preview-photo.jpg", + "schema:creditText": "Photography of Mai Ndombe by Filip Agoo" + }, + "regen:galleryPhotos": [ + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/image-1.png" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/image-2.jpg" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/image-3.jpg" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/mai-ndombe/image-4.png" + } + ], + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "https://www.youtube.com/embed/_4wHY99fm-w" + } +} diff --git a/ops/C01/project-metadata/C01-001-project.jsonld b/ops/C01/project-metadata/C01-001-project.jsonld index 4e82db1..59faa76 100644 --- a/ops/C01/project-metadata/C01-001-project.jsonld +++ b/ops/C01/project-metadata/C01-001-project.jsonld @@ -1,80 +1,80 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:vcsProjectPage": { - "@type": "schema:URL" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C01-Project", - "@id": "https://app.regen.network/project/C01-001", - "schema:name": "The Mai Ndombe REDD+ Project", - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:projectActivity": { - "schema:name": "REDD", - "schema:url": "https://redd.unfccc.int/" - }, - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "Wildlife Works Carbon LLC", - "schema:description": "Wildlife Works is the world's leading REDD+ program development and management company.y", - "regen:showOnProjectPage": true - }, - "regen:offsetGenerationMethod": [ - "Emission Reduction" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 299640 - }, - "regen:projectStartDate": "2011-03-04", - "regen:projectEndDate": "2041-03-13", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "Mai Ndombe, Democratic Republic of the Congo, Africa", - "geometry": { - "type": "Point", - "coordinates": [ - 18.044855, - -1.958494 - ] - } - }, - "regen:vcsProjectId": 934, - "regen:vcsProjectPage": "https://registry.verra.org/app/projectDetail/VCS/934", - "regen:vcsMethodology": { - "schema:name": "Methodology for Avoided Ecosystem Conversion", - "schema:url": "https://verra.org/methodology/vm0009-methodology-for-avoided-ecosystem-conversion-v3-0/" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:vcsProjectPage": { + "@type": "schema:URL" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C01-Project", + "@id": "https://app.regen.network/project/C01-001", + "schema:name": "The Mai Ndombe REDD+ Project", + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:projectActivity": { + "schema:name": "REDD", + "schema:url": "https://redd.unfccc.int/" + }, + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "Wildlife Works Carbon LLC", + "schema:description": "Wildlife Works is the world's leading REDD+ program development and management company.y", + "regen:showOnProjectPage": true + }, + "regen:offsetGenerationMethod": [ + "Emission Reduction" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 299640 + }, + "regen:projectStartDate": "2011-03-04", + "regen:projectEndDate": "2041-03-13", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "Mai Ndombe, Democratic Republic of the Congo, Africa", + "geometry": { + "type": "Point", + "coordinates": [ + 18.044855, + -1.958494 + ] + } + }, + "regen:vcsProjectId": 934, + "regen:vcsProjectPage": "https://registry.verra.org/app/projectDetail/VCS/934", + "regen:vcsMethodology": { + "schema:name": "Methodology for Avoided Ecosystem Conversion", + "schema:url": "https://verra.org/methodology/vm0009-methodology-for-avoided-ecosystem-conversion-v3-0/" + } +} diff --git a/ops/C01/project-metadata/C01-002-project-page.jsonld b/ops/C01/project-metadata/C01-002-project-page.jsonld index fb82869..ff08090 100644 --- a/ops/C01/project-metadata/C01-002-project-page.jsonld +++ b/ops/C01/project-metadata/C01-002-project-page.jsonld @@ -1,40 +1,40 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "https://app.regen.network/project/C01-002", - "regen:creditClassId": "C01", - "schema:description": "For years, the land between Tsavo East and Tsavo West National parks in Kenya served both as home to a slowly failing cattle ranch and as the main migration corridor for local wildlife moving between the two National Parks. When we first encountered Rukinga, the community and the wildlife were at odds. Rukinga was a bruised, balding land, barren of wildlife. Cattle had grazed the fields into dust, poachers slipped on and off the ranch with ease, and trees were being clear cut along the area’s critical rainwater basin.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/kasigau.png", - "regen:creditText": "Photography of Kasigau by Filip Agoo" - }, - "regen:galleryPhotos": [ - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/image1.png" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/image2.png" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/image3.png" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/image4.png" - } - ], - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "https://player.vimeo.com/video/238682641" - }, - "regen:story": "In 1998, the local community supported our plan to establish the Rukinga Wildlife Sanctuary that covers 80,000 acres of forest. We established a community works project so local residents had an alternative income stream in place of poaching and clear cutting​. We brought on locally hired rangers and trained them to be wilderness guardians. We convinced the owners of the cattle to remove the cattle from the land to reduce conflict over resources.", - "regen:storyTitle": "The project is home to over 50 species of large mammals including elephants, zebras, lions, cheetahs and leopards." -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "https://app.regen.network/project/C01-002", + "regen:creditClassId": "C01", + "schema:description": "For years, the land between Tsavo East and Tsavo West National parks in Kenya served both as home to a slowly failing cattle ranch and as the main migration corridor for local wildlife moving between the two National Parks. When we first encountered Rukinga, the community and the wildlife were at odds. Rukinga was a bruised, balding land, barren of wildlife. Cattle had grazed the fields into dust, poachers slipped on and off the ranch with ease, and trees were being clear cut along the area’s critical rainwater basin.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/kasigau.png", + "regen:creditText": "Photography of Kasigau by Filip Agoo" + }, + "regen:galleryPhotos": [ + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/image1.png" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/image2.png" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/image3.png" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/kasigau/image4.png" + } + ], + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "https://player.vimeo.com/video/238682641" + }, + "regen:story": "In 1998, the local community supported our plan to establish the Rukinga Wildlife Sanctuary that covers 80,000 acres of forest. We established a community works project so local residents had an alternative income stream in place of poaching and clear cutting​. We brought on locally hired rangers and trained them to be wilderness guardians. We convinced the owners of the cattle to remove the cattle from the land to reduce conflict over resources.", + "regen:storyTitle": "The project is home to over 50 species of large mammals including elephants, zebras, lions, cheetahs and leopards." +} diff --git a/ops/C01/project-metadata/C01-002-project.jsonld b/ops/C01/project-metadata/C01-002-project.jsonld index f38ce50..4be0281 100644 --- a/ops/C01/project-metadata/C01-002-project.jsonld +++ b/ops/C01/project-metadata/C01-002-project.jsonld @@ -1,80 +1,80 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:vcsProjectPage": { - "@type": "schema:URL" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C01-Project", - "@id": "https://app.regen.network/project/C01-002", - "schema:name": "The Kasigau Corridor REDD Project - Phase II The Community Ranches", - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:projectActivity": { - "schema:name": "REDD", - "schema:url": "https://redd.unfccc.int/" - }, - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "Wildlife Works Carbon LLC", - "schema:description": "Wildlife Works is the world''s leading REDD+ program development and management company.", - "regen:showOnProjectPage": true - }, - "regen:offsetGenerationMethod": [ - "Emission Reduction" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 169741 - }, - "regen:projectStartDate": "2010-01-01", - "regen:projectEndDate": "2039-12-31", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "Taita–Taveta, Kenya", - "geometry": { - "type": "Point", - "coordinates": [ - 38.802647, - -3.910022 - ] - } - }, - "regen:vcsProjectId": 612, - "regen:vcsProjectPage": "https://registry.verra.org/app/projectDetail/VCS/612", - "regen:vcsMethodology": { - "schema:name": "Methodology for Avoided Ecosystem Conversion", - "schema:url": "https://verra.org/methodology/vm0009-methodology-for-avoided-ecosystem-conversion-v3-0/" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:vcsProjectPage": { + "@type": "schema:URL" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C01-Project", + "@id": "https://app.regen.network/project/C01-002", + "schema:name": "The Kasigau Corridor REDD Project - Phase II The Community Ranches", + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:projectActivity": { + "schema:name": "REDD", + "schema:url": "https://redd.unfccc.int/" + }, + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "Wildlife Works Carbon LLC", + "schema:description": "Wildlife Works is the world''s leading REDD+ program development and management company.", + "regen:showOnProjectPage": true + }, + "regen:offsetGenerationMethod": [ + "Emission Reduction" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 169741 + }, + "regen:projectStartDate": "2010-01-01", + "regen:projectEndDate": "2039-12-31", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "Taita–Taveta, Kenya", + "geometry": { + "type": "Point", + "coordinates": [ + 38.802647, + -3.910022 + ] + } + }, + "regen:vcsProjectId": 612, + "regen:vcsProjectPage": "https://registry.verra.org/app/projectDetail/VCS/612", + "regen:vcsMethodology": { + "schema:name": "Methodology for Avoided Ecosystem Conversion", + "schema:url": "https://verra.org/methodology/vm0009-methodology-for-avoided-ecosystem-conversion-v3-0/" + } +} diff --git a/ops/C01/project-metadata/C01-003-project-page.jsonld b/ops/C01/project-metadata/C01-003-project-page.jsonld index 7b512d9..301bc15 100644 --- a/ops/C01/project-metadata/C01-003-project-page.jsonld +++ b/ops/C01/project-metadata/C01-003-project-page.jsonld @@ -1,10 +1,10 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#" - }, - "@type": "regen:Project-Page", - "@id": "https://app.regen.network/project/C01-003", - "regen:creditClassId": "C01", - "schema:description": "Madre de Dios is the Amazon region with the highest levels of biodiversity in the country, that’s why it earned the title of Biodiversity Capital of Peru in 1994. Currently, Madre de Dios faces an abrupt change in land use and accelerated forest degradation. The purpose of the project is to conserve community forests and their concession, against de rapidly increase of deforestation through the promotion of sustainable economic activities, forest governance and the establishment of conservation agreements." -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#" + }, + "@type": "regen:Project-Page", + "@id": "https://app.regen.network/project/C01-003", + "regen:creditClassId": "C01", + "schema:description": "Madre de Dios is the Amazon region with the highest levels of biodiversity in the country, that’s why it earned the title of Biodiversity Capital of Peru in 1994. Currently, Madre de Dios faces an abrupt change in land use and accelerated forest degradation. The purpose of the project is to conserve community forests and their concession, against de rapidly increase of deforestation through the promotion of sustainable economic activities, forest governance and the establishment of conservation agreements." +} diff --git a/ops/C01/project-metadata/C01-003-project.jsonld b/ops/C01/project-metadata/C01-003-project.jsonld index 287b356..bb51325 100644 --- a/ops/C01/project-metadata/C01-003-project.jsonld +++ b/ops/C01/project-metadata/C01-003-project.jsonld @@ -1,80 +1,80 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:vcsProjectPage": { - "@type": "schema:URL" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C01-Project", - "@id": "https://app.regen.network/project/C01-003", - "schema:name": "Evio Kuiñaji Ese´eja Cuana", - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:projectActivity": { - "schema:name": "REDD", - "schema:url": "https://redd.unfccc.int/" - }, - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "Ese´Eja Infierno Native Community", - "schema:description": "Forest owners committed to work to protect and manage the forest under a REDD+ project.", - "regen:showOnProjectPage": true - }, - "regen:offsetGenerationMethod": [ - "Emission Reduction" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 7653 - }, - "regen:projectStartDate": "2011-07-01", - "regen:projectEndDate": "2030-06-30", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "Puerto Maldonado, Madre de Dios, Peru", - "geometry": { - "type": "Point", - "coordinates": [ - -69.314155, - -12.82265 - ] - } - }, - "regen:vcsProjectId": 1218, - "regen:vcsProjectPage": "https://registry.verra.org/app/projectDetail/VCS/1218", - "regen:vcsMethodology": { - "schema:name": "VM0007 REDD+ Methodology Framework", - "schema:url": "https://verra.org/methodology/vm0007-redd-methodology-framework-redd-mf-v1-6/" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:vcsProjectPage": { + "@type": "schema:URL" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C01-Project", + "@id": "https://app.regen.network/project/C01-003", + "schema:name": "Evio Kuiñaji Ese´eja Cuana", + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:projectActivity": { + "schema:name": "REDD", + "schema:url": "https://redd.unfccc.int/" + }, + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "Ese´Eja Infierno Native Community", + "schema:description": "Forest owners committed to work to protect and manage the forest under a REDD+ project.", + "regen:showOnProjectPage": true + }, + "regen:offsetGenerationMethod": [ + "Emission Reduction" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 7653 + }, + "regen:projectStartDate": "2011-07-01", + "regen:projectEndDate": "2030-06-30", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "Puerto Maldonado, Madre de Dios, Peru", + "geometry": { + "type": "Point", + "coordinates": [ + -69.314155, + -12.82265 + ] + } + }, + "regen:vcsProjectId": 1218, + "regen:vcsProjectPage": "https://registry.verra.org/app/projectDetail/VCS/1218", + "regen:vcsMethodology": { + "schema:name": "VM0007 REDD+ Methodology Framework", + "schema:url": "https://verra.org/methodology/vm0007-redd-methodology-framework-redd-mf-v1-6/" + } +} diff --git a/ops/C02/credit-batch-metadata/C02-001-20180101-20181231-001.jsonld b/ops/C02/credit-batch-metadata/C02-001-20180101-20181231-001.jsonld index 50cf68a..43aa3ef 100644 --- a/ops/C02/credit-batch-metadata/C02-001-20180101-20181231-001.jsonld +++ b/ops/C02/credit-batch-metadata/C02-001-20180101-20181231-001.jsonld @@ -1,34 +1,34 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcVintageYear": { - "@type": "xsd:gYear" - }, - "regen:cfcCreditSerialNumbers": { - "@container": "@list" - }, - "regen:verificationReports": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:C02-CreditBatch", - "regen:cfcCreditSerialNumbers": [ - "6477 - 6576", - "6677 - 6841" - ], - "regen:cfcVintageYear": 2019, - "regen:verificationReports": [ - { - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2018/04/King-County-Verification-Report.pdf" - } - ], - "regen:projectVerifier": { - "schema:name": "Ecofor LLC", - "schema:url": "https://www.ecofor.ca/" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcVintageYear": { + "@type": "xsd:gYear" + }, + "regen:cfcCreditSerialNumbers": { + "@container": "@list" + }, + "regen:verificationReports": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:C02-CreditBatch", + "regen:cfcCreditSerialNumbers": [ + "6477 - 6576", + "6677 - 6841" + ], + "regen:cfcVintageYear": 2019, + "regen:verificationReports": [ + { + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2018/04/King-County-Verification-Report.pdf" + } + ], + "regen:projectVerifier": { + "schema:name": "Ecofor LLC", + "schema:url": "https://www.ecofor.ca/" + } +} diff --git a/ops/C02/credit-batch-metadata/C02-002-2020-batch.jsonld b/ops/C02/credit-batch-metadata/C02-002-2020-batch.jsonld index 1c00f8b..fd92697 100644 --- a/ops/C02/credit-batch-metadata/C02-002-2020-batch.jsonld +++ b/ops/C02/credit-batch-metadata/C02-002-2020-batch.jsonld @@ -1,29 +1,29 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcVintageYear": { - "@type": "xsd:gYear" - }, - "regen:cfcCreditSerialNumbers": { - "@container": "@list" - }, - "regen:verificationReports": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:C02-CreditBatch", - "regen:cfcCreditSerialNumbers": [ - "20465 - 21964" - ], - "regen:cfcVintageYear": 2020, - "regen:verificationReports": [ - { - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2019/10/Evergreen-Verification-Report.pdf" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcVintageYear": { + "@type": "xsd:gYear" + }, + "regen:cfcCreditSerialNumbers": { + "@container": "@list" + }, + "regen:verificationReports": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:C02-CreditBatch", + "regen:cfcCreditSerialNumbers": [ + "20465 - 21964" + ], + "regen:cfcVintageYear": 2020, + "regen:verificationReports": [ + { + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2019/10/Evergreen-Verification-Report.pdf" + } + ] +} diff --git a/ops/C02/credit-batch-metadata/C02-002-20211012-20241013-001.jsonld b/ops/C02/credit-batch-metadata/C02-002-20211012-20241013-001.jsonld index b4cc826..439cc3f 100644 --- a/ops/C02/credit-batch-metadata/C02-002-20211012-20241013-001.jsonld +++ b/ops/C02/credit-batch-metadata/C02-002-20211012-20241013-001.jsonld @@ -1,33 +1,33 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcVintageYear": { - "@type": "xsd:gYear" - }, - "regen:cfcCreditSerialNumbers": { - "@container": "@list" - }, - "regen:verificationReports": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:C02-CreditBatch", - "regen:cfcCreditSerialNumbers": [ - "68978 - 75474" - ], - "regen:cfcVintageYear": 2022, - "regen:verificationReports": [ - { - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2021/07/Sandy-Cross-Forest-Verification-Report-Final.pdf" - } - ], - "regen:projectVerifier": { - "schema:name": "Ecofor LLC", - "schema:url": "https://www.ecofor.ca/" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcVintageYear": { + "@type": "xsd:gYear" + }, + "regen:cfcCreditSerialNumbers": { + "@container": "@list" + }, + "regen:verificationReports": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:C02-CreditBatch", + "regen:cfcCreditSerialNumbers": [ + "68978 - 75474" + ], + "regen:cfcVintageYear": 2022, + "regen:verificationReports": [ + { + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2021/07/Sandy-Cross-Forest-Verification-Report-Final.pdf" + } + ], + "regen:projectVerifier": { + "schema:name": "Ecofor LLC", + "schema:url": "https://www.ecofor.ca/" + } +} diff --git a/ops/C02/credit-batch-metadata/C02-003-20200630-20220629-001.jsonld b/ops/C02/credit-batch-metadata/C02-003-20200630-20220629-001.jsonld index d730c81..671d921 100644 --- a/ops/C02/credit-batch-metadata/C02-003-20200630-20220629-001.jsonld +++ b/ops/C02/credit-batch-metadata/C02-003-20200630-20220629-001.jsonld @@ -1,35 +1,35 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcVintageYear": { - "@type": "xsd:gYear" - }, - "regen:cfcCreditSerialNumbers": { - "@container": "@list" - }, - "regen:verificationReports": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:C02-CreditBatch", - "regen:cfcCreditSerialNumbers": [ - "1 - 5635", - "7545 - 9444", - "12256 - 12429" - ], - "regen:cfcVintageYear": 2022, - "regen:verificationReports": [ - { - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2020/02/Buena-Vista-Heights-Project-Verification-Report.pdf" - } - ], - "regen:projectVerifier": { - "schema:name": "Ecofor LLC", - "schema:url": "https://www.ecofor.ca/" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcVintageYear": { + "@type": "xsd:gYear" + }, + "regen:cfcCreditSerialNumbers": { + "@container": "@list" + }, + "regen:verificationReports": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:C02-CreditBatch", + "regen:cfcCreditSerialNumbers": [ + "1 - 5635", + "7545 - 9444", + "12256 - 12429" + ], + "regen:cfcVintageYear": 2022, + "regen:verificationReports": [ + { + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2020/02/Buena-Vista-Heights-Project-Verification-Report.pdf" + } + ], + "regen:projectVerifier": { + "schema:name": "Ecofor LLC", + "schema:url": "https://www.ecofor.ca/" + } +} diff --git a/ops/C02/credit-batch-metadata/C02-003-2021-batch.jsonld b/ops/C02/credit-batch-metadata/C02-003-2021-batch.jsonld index 1994583..a452ffa 100644 --- a/ops/C02/credit-batch-metadata/C02-003-2021-batch.jsonld +++ b/ops/C02/credit-batch-metadata/C02-003-2021-batch.jsonld @@ -1,29 +1,29 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcVintageYear": { - "@type": "xsd:gYear" - }, - "regen:cfcCreditSerialNumbers": { - "@container": "@list" - }, - "regen:verificationReports": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:C02-CreditBatch", - "regen:cfcCreditSerialNumbers": [ - "32524 - 41238" - ], - "regen:cfcVintageYear": 2021, - "regen:verificationReports": [ - { - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2020/10/St-Elmo-Trail-Verification-Report.pdf" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcVintageYear": { + "@type": "xsd:gYear" + }, + "regen:cfcCreditSerialNumbers": { + "@container": "@list" + }, + "regen:verificationReports": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:C02-CreditBatch", + "regen:cfcCreditSerialNumbers": [ + "32524 - 41238" + ], + "regen:cfcVintageYear": 2021, + "regen:verificationReports": [ + { + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2020/10/St-Elmo-Trail-Verification-Report.pdf" + } + ] +} diff --git a/ops/C02/credit-batch-metadata/C02-004-2021-batch.jsonld b/ops/C02/credit-batch-metadata/C02-004-2021-batch.jsonld index 1363b0b..1dc5997 100644 --- a/ops/C02/credit-batch-metadata/C02-004-2021-batch.jsonld +++ b/ops/C02/credit-batch-metadata/C02-004-2021-batch.jsonld @@ -1,29 +1,29 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcVintageYear": { - "@type": "xsd:gYear" - }, - "regen:cfcCreditSerialNumbers": { - "@container": "@list" - }, - "regen:verificationReports": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:C02-CreditBatch", - "regen:cfcCreditSerialNumbers": [ - "43432 - 47570" - ], - "regen:cfcVintageYear": 2021, - "regen:verificationReports": [ - { - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2020/10/Bainbridge-Forest-Verification-Report.pdf" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcVintageYear": { + "@type": "xsd:gYear" + }, + "regen:cfcCreditSerialNumbers": { + "@container": "@list" + }, + "regen:verificationReports": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:C02-CreditBatch", + "regen:cfcCreditSerialNumbers": [ + "43432 - 47570" + ], + "regen:cfcVintageYear": 2021, + "regen:verificationReports": [ + { + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2020/10/Bainbridge-Forest-Verification-Report.pdf" + } + ] +} diff --git a/ops/C02/credit-batch-metadata/C02-004-20210102-20211207-001.jsonld b/ops/C02/credit-batch-metadata/C02-004-20210102-20211207-001.jsonld index 4ace029..401ef0b 100644 --- a/ops/C02/credit-batch-metadata/C02-004-20210102-20211207-001.jsonld +++ b/ops/C02/credit-batch-metadata/C02-004-20210102-20211207-001.jsonld @@ -1,33 +1,33 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcVintageYear": { - "@type": "xsd:gYear" - }, - "regen:cfcCreditSerialNumbers": { - "@container": "@list" - }, - "regen:verificationReports": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:C02-CreditBatch", - "regen:cfcCreditSerialNumbers": [ - "78240 - 84648" - ], - "regen:cfcVintageYear": 2022, - "regen:verificationReports": [ - { - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2021/10/Harvey-Manning-Verification-Report-Final.pdf" - } - ], - "regen:projectVerifier": { - "schema:name": "Ecofor LLC", - "schema:url": "https://www.ecofor.ca/" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcVintageYear": { + "@type": "xsd:gYear" + }, + "regen:cfcCreditSerialNumbers": { + "@container": "@list" + }, + "regen:verificationReports": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:C02-CreditBatch", + "regen:cfcCreditSerialNumbers": [ + "78240 - 84648" + ], + "regen:cfcVintageYear": 2022, + "regen:verificationReports": [ + { + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2021/10/Harvey-Manning-Verification-Report-Final.pdf" + } + ], + "regen:projectVerifier": { + "schema:name": "Ecofor LLC", + "schema:url": "https://www.ecofor.ca/" + } +} diff --git a/ops/C02/credit-class-metadata/C02-city-forest-credits-credit-class.jsonld b/ops/C02/credit-class-metadata/C02-city-forest-credits-credit-class.jsonld index 5f7991b..b3ea521 100644 --- a/ops/C02/credit-class-metadata/C02-city-forest-credits-credit-class.jsonld +++ b/ops/C02/credit-class-metadata/C02-city-forest-credits-credit-class.jsonld @@ -1,73 +1,73 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:sectoralScope": { - "@container": "@list" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - }, - "regen:projectActivities": { - "@container": "@list" - }, - "regen:ecosystemType": { - "@container": "@list" - }, - "regen:certifications": { - "@container": "@list" - } - }, - "@type": "regen:C02-CreditClass", - "schema:name": "Urban Forest Carbon Credit Class", - "schema:description": "City Forest Credits is the national standard for greenhouse gas emission reduction and removal for tree projects in cities and towns. Developed by leading scientists, industry, and urban forest professionals, the Standard and Protocols define the set of rules and requirements that tree preservation projects must follow in order to earn third-party verified carbon credits.\n\nCFC has a 40-year and a 100-year Tree Preservation Protocol, modeled after avoided conversion or avoided emissions protocols in forestry. The 40-year Protocol was designed for the voluntary market and the 100-year Protocol for the compliance market in the state of California.", - "schema:url": "https://www.cityforestcredits.org/", - "regen:sourceRegistry": { - "schema:name": "City Forest Credits", - "schema:url": "https://www.cityforestcredits.org/" - }, - "regen:sectoralScope": ["Agriculture Forestry and Other Land Use (AFOLU)"], - "regen:offsetGenerationMethod": ["Avoided Emissions"], - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "Preservation Protocol — 40 years", - "schema:identifier": "", - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-40-Years-V11.40.pdf", - "schema:version": "11.40" - }, - { - "schema:name": "Preservation Protocol — 100 years", - "schema:identifier": "", - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-100-Years-V11.100.pdf", - "schema:version": "11.100" - } - ], - "schema:url": "https://www.cityforestcredits.org/carbon-credits/carbon-protocols/" - }, - "regen:ecosystemType": [ - "Urban Forest" - ], - "regen:verificationMethod": "Third-party verified", - "regen:projectActivities": [ - "Tree Preservation" - ], - "regen:carbonOffsetStandard": { - "schema:name": "City Forest Credits Standard", - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/03/City-Forest-Credits-Standard-V2.pdf" - }, - "regen:certifications": [ - { - "schema:name": "ICROA approved", - "schema:url": "https://icroa.org/" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:sectoralScope": { + "@container": "@list" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + }, + "regen:projectActivities": { + "@container": "@list" + }, + "regen:ecosystemType": { + "@container": "@list" + }, + "regen:certifications": { + "@container": "@list" + } + }, + "@type": "regen:C02-CreditClass", + "schema:name": "Urban Forest Carbon Credit Class", + "schema:description": "City Forest Credits is the national standard for greenhouse gas emission reduction and removal for tree projects in cities and towns. Developed by leading scientists, industry, and urban forest professionals, the Standard and Protocols define the set of rules and requirements that tree preservation projects must follow in order to earn third-party verified carbon credits.\n\nCFC has a 40-year and a 100-year Tree Preservation Protocol, modeled after avoided conversion or avoided emissions protocols in forestry. The 40-year Protocol was designed for the voluntary market and the 100-year Protocol for the compliance market in the state of California.", + "schema:url": "https://www.cityforestcredits.org/", + "regen:sourceRegistry": { + "schema:name": "City Forest Credits", + "schema:url": "https://www.cityforestcredits.org/" + }, + "regen:sectoralScope": ["Agriculture Forestry and Other Land Use (AFOLU)"], + "regen:offsetGenerationMethod": ["Avoided Emissions"], + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "Preservation Protocol — 40 years", + "schema:identifier": "", + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-40-Years-V11.40.pdf", + "schema:version": "11.40" + }, + { + "schema:name": "Preservation Protocol — 100 years", + "schema:identifier": "", + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-100-Years-V11.100.pdf", + "schema:version": "11.100" + } + ], + "schema:url": "https://www.cityforestcredits.org/carbon-credits/carbon-protocols/" + }, + "regen:ecosystemType": [ + "Urban Forest" + ], + "regen:verificationMethod": "Third-party verified", + "regen:projectActivities": [ + "Tree Preservation" + ], + "regen:carbonOffsetStandard": { + "schema:name": "City Forest Credits Standard", + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/03/City-Forest-Credits-Standard-V2.pdf" + }, + "regen:certifications": [ + { + "schema:name": "ICROA approved", + "schema:url": "https://icroa.org/" + } + ] +} diff --git a/ops/C02/project-metadata/C02-001-project-page.jsonld b/ops/C02/project-metadata/C02-001-project-page.jsonld index 45cf145..1a7c4c2 100644 --- a/ops/C02/project-metadata/C02-001-project-page.jsonld +++ b/ops/C02/project-metadata/C02-001-project-page.jsonld @@ -1,21 +1,21 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "https://app.regen.network/project/C02-001", - "regen:creditClassId": "C02", - "schema:description": "King County’s Forest Carbon Project is a component of the Land Conservation Initiative, a 30-year vision to protect 65,000 acres of important high-value urban forest in the Seattle metro region, which is growing rapidly. King County municipality is preserving 1,500 acres and acquiring remaining natural lands and urban green spaces for preservation. The first acquisition in 2019 was a 15-acre addition to Soaring Eagle Regional Park near Sammamish, WA. The project confronts local climate change by keeping regional forests intact, so residents can explore and enjoy protected outdoor spaces.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/kings-county.jpg" - }, - "regen:storyTitle": "Community-driven conservation in the Puget Sound region", - "regen:story": "King County Urban Forest Carbon Project is a tree preservation project that protects and preserves 15 acres of high value conservation lands in urban areas and urban separators at Soaring Eagle Regional Park in King County, near Sammamish, Washington. King County’s Forest Carbon Project confronts climate change by offering local companies the opportunity to offset their carbon emissions, keeping forests intact in the region and making it possible for their employees and their families to explore and enjoy the protected outdoor spaces.\nThe Puget Sound region, including the Seattle metro area, is growing rapidly. The Forest Carbon Project is a component of the Land Conservation Initiative, a 30-year vision to protect 65,000 acres of the most important remaining natural lands and urban green spaces for residents of the region. King County has identified 1,500 acres of high-value urban forest to be preserved and will be acquiring lands with its city partners throughout the coming years. The first acquisition in 2019 was a 15-acre addition to Soaring Eagle Regional Park near Sammamish, WA. King County is a local government in Washington State; the 2018 Urban Forest Carbon Project is part of the County's Forest Carbon Program, which is a component of the Land Conservation Initiative, a 30-year vision to protect 65,000 acres of the most important remaining natural lands and urban green spaces for residents of the region. \nThis project provides a cleaner urban environment by improving urban air quality and enhancing water quality in surrounding rivers, lakes, and the Puget Sound. It provides critical salmon habitat and preserves corridors for elk, bears, and other wildlife in an increasingly fragmented, paved-over landscape. It also provides communities with the diverse physical and mental health benefits of green space, with access to spaces to gather, relieve stress, relax, play, and learn outdoors." -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "https://app.regen.network/project/C02-001", + "regen:creditClassId": "C02", + "schema:description": "King County’s Forest Carbon Project is a component of the Land Conservation Initiative, a 30-year vision to protect 65,000 acres of important high-value urban forest in the Seattle metro region, which is growing rapidly. King County municipality is preserving 1,500 acres and acquiring remaining natural lands and urban green spaces for preservation. The first acquisition in 2019 was a 15-acre addition to Soaring Eagle Regional Park near Sammamish, WA. The project confronts local climate change by keeping regional forests intact, so residents can explore and enjoy protected outdoor spaces.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/kings-county.jpg" + }, + "regen:storyTitle": "Community-driven conservation in the Puget Sound region", + "regen:story": "King County Urban Forest Carbon Project is a tree preservation project that protects and preserves 15 acres of high value conservation lands in urban areas and urban separators at Soaring Eagle Regional Park in King County, near Sammamish, Washington. King County’s Forest Carbon Project confronts climate change by offering local companies the opportunity to offset their carbon emissions, keeping forests intact in the region and making it possible for their employees and their families to explore and enjoy the protected outdoor spaces.\nThe Puget Sound region, including the Seattle metro area, is growing rapidly. The Forest Carbon Project is a component of the Land Conservation Initiative, a 30-year vision to protect 65,000 acres of the most important remaining natural lands and urban green spaces for residents of the region. King County has identified 1,500 acres of high-value urban forest to be preserved and will be acquiring lands with its city partners throughout the coming years. The first acquisition in 2019 was a 15-acre addition to Soaring Eagle Regional Park near Sammamish, WA. King County is a local government in Washington State; the 2018 Urban Forest Carbon Project is part of the County's Forest Carbon Program, which is a component of the Land Conservation Initiative, a 30-year vision to protect 65,000 acres of the most important remaining natural lands and urban green spaces for residents of the region. \nThis project provides a cleaner urban environment by improving urban air quality and enhancing water quality in surrounding rivers, lakes, and the Puget Sound. It provides critical salmon habitat and preserves corridors for elk, bears, and other wildlife in an increasingly fragmented, paved-over landscape. It also provides communities with the diverse physical and mental health benefits of green space, with access to spaces to gather, relieve stress, relax, play, and learn outdoors." +} diff --git a/ops/C02/project-metadata/C02-001-project.jsonld b/ops/C02/project-metadata/C02-001-project.jsonld index 571a25a..b5f52af 100644 --- a/ops/C02/project-metadata/C02-001-project.jsonld +++ b/ops/C02/project-metadata/C02-001-project.jsonld @@ -1,84 +1,84 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcProjectPage": { - "@type": "schema:URL" - }, - "regen:projectDesignDocument": { - "@type": "schema:URL" - }, - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C02-Project", - "@id": "https://app.regen.network/project/C02-001", - "schema:name": "King County Urban Forest Carbon Project", - "regen:cfcProjectId": "1.2018", - "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/king-county-forest-carbon-offsets/", - "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2018/04/King-County-Project-Design-Document.pdf", - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "King County Department of Natural Resources & Parks", - "schema:url": "https://www.kingcounty.gov/depts/dnrp.aspx", - "regen:showOnProjectPage": true - }, - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:projectActivity": { - "schema:name": "Tree Preservation" - }, - "regen:offsetGenerationMethod": [ - "Avoided Emissions" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 6.07 - }, - "regen:projectStartDate": "2018-12-14", - "regen:projectEndDate": "2118-12-14", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "King County, Washington, USA, North America", - "geometry": { - "type": "Point", - "coordinates": [ - -121.992165, - 47.610332 - ] - } - }, - "regen:offsetProtocol": { - "schema:name": "Preservation Protocol — 100 years", - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-100-Years-V11.100.pdf", - "schema:version": "6.100" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcProjectPage": { + "@type": "schema:URL" + }, + "regen:projectDesignDocument": { + "@type": "schema:URL" + }, + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C02-Project", + "@id": "https://app.regen.network/project/C02-001", + "schema:name": "King County Urban Forest Carbon Project", + "regen:cfcProjectId": "1.2018", + "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/king-county-forest-carbon-offsets/", + "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2018/04/King-County-Project-Design-Document.pdf", + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "King County Department of Natural Resources & Parks", + "schema:url": "https://www.kingcounty.gov/depts/dnrp.aspx", + "regen:showOnProjectPage": true + }, + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:projectActivity": { + "schema:name": "Tree Preservation" + }, + "regen:offsetGenerationMethod": [ + "Avoided Emissions" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 6.07 + }, + "regen:projectStartDate": "2018-12-14", + "regen:projectEndDate": "2118-12-14", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "King County, Washington, USA, North America", + "geometry": { + "type": "Point", + "coordinates": [ + -121.992165, + 47.610332 + ] + } + }, + "regen:offsetProtocol": { + "schema:name": "Preservation Protocol — 100 years", + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-100-Years-V11.100.pdf", + "schema:version": "6.100" + } +} diff --git a/ops/C02/project-metadata/C02-002-project-page.jsonld b/ops/C02/project-metadata/C02-002-project-page.jsonld index a315f74..a4cc2fe 100644 --- a/ops/C02/project-metadata/C02-002-project-page.jsonld +++ b/ops/C02/project-metadata/C02-002-project-page.jsonld @@ -1,22 +1,22 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list", - "@type": "schema:URL" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "https://app.regen.network/project/C02-002", - "regen:creditClassId": "C02", - "schema:description": "The Sandy Cross Forest Preservation Project preserves a 132-acre forest on a 214-acre property, containing a diverse, 85-year forest with yellow poplar, sugar maple, oak, black cherry, and pin trees. Western Reserve Land Conservancy's forest conservation creates community benefits including carbon sequestration, wildlife habitat, and open space protection. Preservation of the large, diverse intact forest is increasingly rare in Richland County due to rapid agricultural development and continued threat of urban expansion from the adjacent Village of Lexington.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/sandy-cross.jpg" - }, - "regen:storyTitle": "Preserving urban wildlife habitat and benefiting local community", - "regen:story": "The Sandy Cross Forest Preservation Project protects a 132-acre forest on a 214-acre property in the Mansfield, Ohio metro area. The forest contains a diverse, mature tree population (~85 years old) with species including: American beech, sugar maple, red oak, white oak and tulip poplar. The project sequesters carbon and protects wildlife habitat and open space.  Preservation of the Sandy Cross Forest is crucial as intact forests of this size are becoming increasingly rare in Richland County, Ohio due to agricultural development and urban expansion. Surrounding forested land is being rapidly converted into agricultural land and is facing a continued threat of urban expansion from an adjacent village. \nThe goal of the project is to protect the forest in perpetuity through a conservation easement. The property will be monitored annually to ensure its natural resources (including mature forest) are upheld to standards identified in the conservation restrictions. Layers of legal protection and stewardship monitoring granted through the easement terms will ensure continued provision of conservation benefits for generations to come.\nThe project offers locals a variety of community and conservation benefits. Too often, disadvantaged communities like Richland County are subject to industrial development. The area’s forest helps mitigate flooding and significantly impacts air quality, with both of these benefits increasing over time as the forest matures. The preservation of the project’s mature forests will prevent development and ensure air quality, water quality and viewshed benefits remain.\nAdditionally, the project’s forested habitat provides essential stopover habitat for migratory birds that rely on large, intact stands of deciduous trees in Northeast Ohio along their migration route. Surveys conducted on the project also confirmed the presence of red-backed salamanders, a pollutant intolerant species that signifies the high-quality nature of the project area." -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list", + "@type": "schema:URL" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "https://app.regen.network/project/C02-002", + "regen:creditClassId": "C02", + "schema:description": "The Sandy Cross Forest Preservation Project preserves a 132-acre forest on a 214-acre property, containing a diverse, 85-year forest with yellow poplar, sugar maple, oak, black cherry, and pin trees. Western Reserve Land Conservancy's forest conservation creates community benefits including carbon sequestration, wildlife habitat, and open space protection. Preservation of the large, diverse intact forest is increasingly rare in Richland County due to rapid agricultural development and continued threat of urban expansion from the adjacent Village of Lexington.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/sandy-cross.jpg" + }, + "regen:storyTitle": "Preserving urban wildlife habitat and benefiting local community", + "regen:story": "The Sandy Cross Forest Preservation Project protects a 132-acre forest on a 214-acre property in the Mansfield, Ohio metro area. The forest contains a diverse, mature tree population (~85 years old) with species including: American beech, sugar maple, red oak, white oak and tulip poplar. The project sequesters carbon and protects wildlife habitat and open space.  Preservation of the Sandy Cross Forest is crucial as intact forests of this size are becoming increasingly rare in Richland County, Ohio due to agricultural development and urban expansion. Surrounding forested land is being rapidly converted into agricultural land and is facing a continued threat of urban expansion from an adjacent village. \nThe goal of the project is to protect the forest in perpetuity through a conservation easement. The property will be monitored annually to ensure its natural resources (including mature forest) are upheld to standards identified in the conservation restrictions. Layers of legal protection and stewardship monitoring granted through the easement terms will ensure continued provision of conservation benefits for generations to come.\nThe project offers locals a variety of community and conservation benefits. Too often, disadvantaged communities like Richland County are subject to industrial development. The area’s forest helps mitigate flooding and significantly impacts air quality, with both of these benefits increasing over time as the forest matures. The preservation of the project’s mature forests will prevent development and ensure air quality, water quality and viewshed benefits remain.\nAdditionally, the project’s forested habitat provides essential stopover habitat for migratory birds that rely on large, intact stands of deciduous trees in Northeast Ohio along their migration route. Surveys conducted on the project also confirmed the presence of red-backed salamanders, a pollutant intolerant species that signifies the high-quality nature of the project area." +} diff --git a/ops/C02/project-metadata/C02-002-project.jsonld b/ops/C02/project-metadata/C02-002-project.jsonld index 5e19186..3512099 100644 --- a/ops/C02/project-metadata/C02-002-project.jsonld +++ b/ops/C02/project-metadata/C02-002-project.jsonld @@ -1,84 +1,84 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcProjectPage": { - "@type": "schema:URL" - }, - "regen:projectDesignDocument": { - "@type": "schema:URL" - }, - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C02-Project", - "@id": "https://app.regen.network/project/C02-002", - "schema:name": "Sandy Cross Forest Preservation Project", - "regen:cfcProjectId": "18", - "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/mansfield-forest-carbon-offsets/", - "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2021/07/Sandy-Cross-Project-Design-Document-1.pdf", - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "Western Reserve Land Conservancy", - "schema:url": "https://www.wrlandconservancy.org/", - "regen:showOnProjectPage": true - }, - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:projectActivity": { - "schema:name": "Tree Preservation" - }, - "regen:offsetGenerationMethod": [ - "Avoided Emissions" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 53.4 - }, - "regen:projectStartDate": "2021-10-14", - "regen:projectEndDate": "2061-10-14", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "Lexington, Ohio, United States of America, North America", - "geometry": { - "type": "Point", - "coordinates": [ - -82.614459, - 40.68348 - ] - } - }, - "regen:offsetProtocol": { - "schema:name": "Preservation Protocol - 40 years", - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-40-Years-V11.40.pdf", - "schema:version": "v10.40" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcProjectPage": { + "@type": "schema:URL" + }, + "regen:projectDesignDocument": { + "@type": "schema:URL" + }, + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C02-Project", + "@id": "https://app.regen.network/project/C02-002", + "schema:name": "Sandy Cross Forest Preservation Project", + "regen:cfcProjectId": "18", + "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/mansfield-forest-carbon-offsets/", + "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2021/07/Sandy-Cross-Project-Design-Document-1.pdf", + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "Western Reserve Land Conservancy", + "schema:url": "https://www.wrlandconservancy.org/", + "regen:showOnProjectPage": true + }, + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:projectActivity": { + "schema:name": "Tree Preservation" + }, + "regen:offsetGenerationMethod": [ + "Avoided Emissions" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 53.4 + }, + "regen:projectStartDate": "2021-10-14", + "regen:projectEndDate": "2061-10-14", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "Lexington, Ohio, United States of America, North America", + "geometry": { + "type": "Point", + "coordinates": [ + -82.614459, + 40.68348 + ] + } + }, + "regen:offsetProtocol": { + "schema:name": "Preservation Protocol - 40 years", + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-40-Years-V11.40.pdf", + "schema:version": "v10.40" + } +} diff --git a/ops/C02/project-metadata/C02-003-project-page.jsonld b/ops/C02/project-metadata/C02-003-project-page.jsonld index 6c9aa6d..454acf7 100644 --- a/ops/C02/project-metadata/C02-003-project-page.jsonld +++ b/ops/C02/project-metadata/C02-003-project-page.jsonld @@ -1,21 +1,21 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "https://app.regen.network/project/C02-003", - "regen:creditClassId": "C02", - "schema:description": "Allegheny Land Trust protected 124 acres of woodlands from rapid encroaching residential development in Allegheny County. The 40 year old maple, cherry and oak-hickory forest provides habitat for deer, turkey, and birds, used by local hikers, birders, and mountain bikers. Located within the Youghiogheny River Watershed, this protected forest is five miles upstream from the Monongahela River, contributing to maintaining clean drinking water for the Pittsburgh region’s residents. Revenue from carbon credits is put towards acquisition costs, land stewardship, and expansion of conservation lands.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/buena-vista-01.jpg" - }, - "regen:storyTitle": "Protecting woodlands and water resources in Allegheny County, Pennsylvania", - "regen:story": "Outside Pittsburgh, Pennsylvania, Allegheny Land Trust has protected 124 acres of woodlands from rapidly encroaching residential development in southeastern Allegheny County. The 40-year-old maple, cherry and oak-hickory forest provides habitat for deer, turkey, and many species of birds. Hikers, birders, and mountain bikers are able to explore the area, and possibly catch a glimpse of a majestic 200-year-old oak tree. \nIn addition to providing recreational and aesthetic benefits, Buena Vista Heights Conservation Area contributes as part of the solution to many pressing issues the Pittsburgh region is grappling with today as a result of our industrial past: aging infrastructure, challenging topography and landslides, and climate change-induced rain events causing flood damage. Protection of this forest also contributes to maintaining clean drinking water for the Pittsburgh region’s residents. Located within the lower Youghiogheny River Watershed, the property is five miles upstream from the Monongahela River.\nAllegheny Land Trust (ALT) is a 501(c)(3) non-profit organization helping local people save local land in the Pittsburgh Region. Together with local communities, they’ve protected more than 3,500 acres of scenic landscape, biodiversity hotspots, and forests, improving water quality across 36 different municipalities in Allegheny and Washington Counties. In addition to their preservation work, they improve the quality of life for current and future generations by offering recreational and educational opportunities. Revenue generated from the sale of carbon credits will be put towards land acquisition costs, land stewardship, and future expansion of this and other conservation lands." -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "https://app.regen.network/project/C02-003", + "regen:creditClassId": "C02", + "schema:description": "Allegheny Land Trust protected 124 acres of woodlands from rapid encroaching residential development in Allegheny County. The 40 year old maple, cherry and oak-hickory forest provides habitat for deer, turkey, and birds, used by local hikers, birders, and mountain bikers. Located within the Youghiogheny River Watershed, this protected forest is five miles upstream from the Monongahela River, contributing to maintaining clean drinking water for the Pittsburgh region’s residents. Revenue from carbon credits is put towards acquisition costs, land stewardship, and expansion of conservation lands.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/buena-vista-01.jpg" + }, + "regen:storyTitle": "Protecting woodlands and water resources in Allegheny County, Pennsylvania", + "regen:story": "Outside Pittsburgh, Pennsylvania, Allegheny Land Trust has protected 124 acres of woodlands from rapidly encroaching residential development in southeastern Allegheny County. The 40-year-old maple, cherry and oak-hickory forest provides habitat for deer, turkey, and many species of birds. Hikers, birders, and mountain bikers are able to explore the area, and possibly catch a glimpse of a majestic 200-year-old oak tree. \nIn addition to providing recreational and aesthetic benefits, Buena Vista Heights Conservation Area contributes as part of the solution to many pressing issues the Pittsburgh region is grappling with today as a result of our industrial past: aging infrastructure, challenging topography and landslides, and climate change-induced rain events causing flood damage. Protection of this forest also contributes to maintaining clean drinking water for the Pittsburgh region’s residents. Located within the lower Youghiogheny River Watershed, the property is five miles upstream from the Monongahela River.\nAllegheny Land Trust (ALT) is a 501(c)(3) non-profit organization helping local people save local land in the Pittsburgh Region. Together with local communities, they’ve protected more than 3,500 acres of scenic landscape, biodiversity hotspots, and forests, improving water quality across 36 different municipalities in Allegheny and Washington Counties. In addition to their preservation work, they improve the quality of life for current and future generations by offering recreational and educational opportunities. Revenue generated from the sale of carbon credits will be put towards land acquisition costs, land stewardship, and future expansion of this and other conservation lands." +} diff --git a/ops/C02/project-metadata/C02-003-project.jsonld b/ops/C02/project-metadata/C02-003-project.jsonld index b37528f..b0c6d9f 100644 --- a/ops/C02/project-metadata/C02-003-project.jsonld +++ b/ops/C02/project-metadata/C02-003-project.jsonld @@ -1,94 +1,94 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcProjectPage": { - "@type": "schema:URL" - }, - "regen:projectDesignDocument": { - "@type": "schema:URL" - }, - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "@type": "regen:C02-Project", - "@id": "https://app.regen.network/project/C02-003", - "schema:name": "Buena Vista Heights Conservation Area", - "regen:cfcProjectId": "9", - "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/pittsburgh-forest-carbon-offsets/", - "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2020/02/Buena-Vista-Heights-Project-Design-Document-1.pdf", - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "Allegheny Land Trust", - "schema:url": "https://alleghenylandtrust.org/", - "regen:showOnProjectPage": true - }, - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:projectActivity": { - "schema:name": "Tree Preservation" - }, - "regen:offsetGenerationMethod": [ - "Avoided Emissions" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 50.14 - }, - "regen:projectStartDate": "2020-06-30", - "regen:projectEndDate": "2060-06-30", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "Elizabeth Township, Pennsylvania, United States, North America", - "geometry": { - "type": "Point", - "coordinates": [ - -79.899246, - 40.263906 - ] - } - }, - "regen:offsetProtocol": { - "schema:name": "Preservation Protocol - 40 years", - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-40-Years-V11.40.pdf", - "schema:version": "v8.40" - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "A", - "schema:url": "https://bezerocarbon.com/listings/?filter=buena+vista+heights" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcProjectPage": { + "@type": "schema:URL" + }, + "regen:projectDesignDocument": { + "@type": "schema:URL" + }, + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "@type": "regen:C02-Project", + "@id": "https://app.regen.network/project/C02-003", + "schema:name": "Buena Vista Heights Conservation Area", + "regen:cfcProjectId": "9", + "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/pittsburgh-forest-carbon-offsets/", + "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2020/02/Buena-Vista-Heights-Project-Design-Document-1.pdf", + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "Allegheny Land Trust", + "schema:url": "https://alleghenylandtrust.org/", + "regen:showOnProjectPage": true + }, + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:projectActivity": { + "schema:name": "Tree Preservation" + }, + "regen:offsetGenerationMethod": [ + "Avoided Emissions" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 50.14 + }, + "regen:projectStartDate": "2020-06-30", + "regen:projectEndDate": "2060-06-30", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "Elizabeth Township, Pennsylvania, United States, North America", + "geometry": { + "type": "Point", + "coordinates": [ + -79.899246, + 40.263906 + ] + } + }, + "regen:offsetProtocol": { + "schema:name": "Preservation Protocol - 40 years", + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-40-Years-V11.40.pdf", + "schema:version": "v8.40" + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "A", + "schema:url": "https://bezerocarbon.com/listings/?filter=buena+vista+heights" + } + ] +} diff --git a/ops/C02/project-metadata/C02-004-project-page.jsonld b/ops/C02/project-metadata/C02-004-project-page.jsonld index 45a7bbd..6901c86 100644 --- a/ops/C02/project-metadata/C02-004-project-page.jsonld +++ b/ops/C02/project-metadata/C02-004-project-page.jsonld @@ -1,42 +1,42 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "https://app.regen.network/project/C02-004", - "regen:creditClassId": "C02", - "schema:description": "The 15.14 acre Harvey Manning Park Expansion project is part of 33 acres in the “Issaquah Alps” comprised of Tiger, Squak, and Cougar Mountains, above Lake Sammamish. Within Issaquah city limits and the Mountains to Sound Greenway National Heritage Area corridor, the 100+ year old forest includes riparian and wetland habitat that supports wildlife corridors on Cougar Mountain and protects cool freshwater streams that feed Tibbetts Creek, a salmon-bearing tributary to Lake Sammamish. The City of Issaquah worked with community, King County, and the Trust for Public Land to protect this site.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/harvey-manning-01.jpg" - }, - "regen:galleryPhotos": [ - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-01.jpg" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-02.jpg" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-03.jpg" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-04.jpg" - }, - { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-05.jpg" - } - ], - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "https://www.youtube.com/watch?v=sK_OmGiYZnE" - }, - "regen:storyTitle": "Preserving the forested heart of Issaquah", - "regen:story": "The Harvey Manning Park Expansion Preservation Project’s 15.14-acre site is part of a 33-acre property in the forested “Issaquah Alps” comprising the Tiger, Squak, and Cougar Mountains that rise above Lake Sammamish and connect to other public lands. \nThe City of Issaqua has worked with community members, King County, and the Trust for Public Land for several years to protect this site. These ecocredits allow for the protection of the 100+ year old forest, consisting of mature mixed conifer and deciduous trees including Douglas Fir and Big Leaf Maples. Preservation of this native forest will store carbon, provide stormwater benefits, and contribute to the City’s 51% tree canopy coverage. The forest structure provides diverse habitat and pollinator plants that provide food and shelter for wildlife. The site also includes riparian and wetland habitat that supports wildlife corridors on Cougar Mountain and protects cool freshwater streams that feed Tibbetts Creek, a salmon-bearing waterway and tributary to Lake Sammamish.\nThe site is uniquely positioned within Issaquah city limits, the region’s urban growth boundary and the Mountains to Sound Greenway National Heritage Area corridor. The site preserves critical habitat connection to other publicly held lands on Cougar Mountain, and protects the forested hillside on Cougar Mountain from development and retains it as protected open space." -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "https://app.regen.network/project/C02-004", + "regen:creditClassId": "C02", + "schema:description": "The 15.14 acre Harvey Manning Park Expansion project is part of 33 acres in the “Issaquah Alps” comprised of Tiger, Squak, and Cougar Mountains, above Lake Sammamish. Within Issaquah city limits and the Mountains to Sound Greenway National Heritage Area corridor, the 100+ year old forest includes riparian and wetland habitat that supports wildlife corridors on Cougar Mountain and protects cool freshwater streams that feed Tibbetts Creek, a salmon-bearing tributary to Lake Sammamish. The City of Issaquah worked with community, King County, and the Trust for Public Land to protect this site.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/harvey-manning-01.jpg" + }, + "regen:galleryPhotos": [ + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-01.jpg" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-02.jpg" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-03.jpg" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-04.jpg" + }, + { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C02/C02-005-gallery-05.jpg" + } + ], + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "https://www.youtube.com/watch?v=sK_OmGiYZnE" + }, + "regen:storyTitle": "Preserving the forested heart of Issaquah", + "regen:story": "The Harvey Manning Park Expansion Preservation Project’s 15.14-acre site is part of a 33-acre property in the forested “Issaquah Alps” comprising the Tiger, Squak, and Cougar Mountains that rise above Lake Sammamish and connect to other public lands. \nThe City of Issaqua has worked with community members, King County, and the Trust for Public Land for several years to protect this site. These ecocredits allow for the protection of the 100+ year old forest, consisting of mature mixed conifer and deciduous trees including Douglas Fir and Big Leaf Maples. Preservation of this native forest will store carbon, provide stormwater benefits, and contribute to the City’s 51% tree canopy coverage. The forest structure provides diverse habitat and pollinator plants that provide food and shelter for wildlife. The site also includes riparian and wetland habitat that supports wildlife corridors on Cougar Mountain and protects cool freshwater streams that feed Tibbetts Creek, a salmon-bearing waterway and tributary to Lake Sammamish.\nThe site is uniquely positioned within Issaquah city limits, the region’s urban growth boundary and the Mountains to Sound Greenway National Heritage Area corridor. The site preserves critical habitat connection to other publicly held lands on Cougar Mountain, and protects the forested hillside on Cougar Mountain from development and retains it as protected open space." +} diff --git a/ops/C02/project-metadata/C02-004-project.jsonld b/ops/C02/project-metadata/C02-004-project.jsonld index 5a4ad84..b08f400 100644 --- a/ops/C02/project-metadata/C02-004-project.jsonld +++ b/ops/C02/project-metadata/C02-004-project.jsonld @@ -1,84 +1,84 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcProjectPage": { - "@type": "schema:URL" - }, - "regen:projectDesignDocument": { - "@type": "schema:URL" - }, - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C02-Project", - "@id": "https://app.regen.network/project/C02-004", - "schema:name": "Harvey Manning Park Expansion", - "regen:cfcProjectId": "15", - "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/issaquah-forest-carbon-offsets/", - "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2021/10/Harvey_Manning_Park_Project_Design_Document_20211213_Final.pdf", - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "City of Issaquah", - "schema:url": "https://www.issaquahwa.gov/", - "regen:showOnProjectPage": true - }, - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:projectActivity": { - "schema:name": "Tree Preservation" - }, - "regen:offsetGenerationMethod": [ - "Avoided Emissions" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 6.13 - }, - "regen:projectStartDate": "2021-12-06", - "regen:projectEndDate": "2061-12-06", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "Issaquah, Washington", - "geometry": { - "type": "Point", - "coordinates": [ - -122.09555, - 47.5401 - ] - } - }, - "regen:offsetProtocol": { - "schema:name": "Preservation Protocol - 40 years", - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-40-Years-V11.40.pdf", - "schema:version": "v10.40" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcProjectPage": { + "@type": "schema:URL" + }, + "regen:projectDesignDocument": { + "@type": "schema:URL" + }, + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C02-Project", + "@id": "https://app.regen.network/project/C02-004", + "schema:name": "Harvey Manning Park Expansion", + "regen:cfcProjectId": "15", + "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/issaquah-forest-carbon-offsets/", + "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2021/10/Harvey_Manning_Park_Project_Design_Document_20211213_Final.pdf", + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "City of Issaquah", + "schema:url": "https://www.issaquahwa.gov/", + "regen:showOnProjectPage": true + }, + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:projectActivity": { + "schema:name": "Tree Preservation" + }, + "regen:offsetGenerationMethod": [ + "Avoided Emissions" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 6.13 + }, + "regen:projectStartDate": "2021-12-06", + "regen:projectEndDate": "2061-12-06", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "Issaquah, Washington", + "geometry": { + "type": "Point", + "coordinates": [ + -122.09555, + 47.5401 + ] + } + }, + "regen:offsetProtocol": { + "schema:name": "Preservation Protocol - 40 years", + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2022/07/City-Forest-Preservation-Protocol-40-Years-V11.40.pdf", + "schema:version": "v10.40" + } +} diff --git a/ops/C02/project-metadata/C02-005-project.jsonld b/ops/C02/project-metadata/C02-005-project.jsonld index c6a3d26..148c8bf 100644 --- a/ops/C02/project-metadata/C02-005-project.jsonld +++ b/ops/C02/project-metadata/C02-005-project.jsonld @@ -1,84 +1,84 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcProjectPage": { - "@type": "schema:URL" - }, - "regen:projectDesignDocument": { - "@type": "schema:URL" - }, - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C02-Project", - "@id": "https://app.regen.network/project/C02-005", - "schema:name": "Evergreen & East Preservation Project", - "regen:cfcProjectId": "006", - "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/richmond-forest-carbon-offsets/", - "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2019/10/Evergreen-Project-Design-Document-1.pdf", - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "Enrichmond Foundation", - "schema:url": "", - "regen:showOnProjectPage": true - }, - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:projectActivity": { - "schema:name": "Tree Preservation" - }, - "regen:offsetGenerationMethod": [ - "Avoided Emissions" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 30.481 - }, - "regen:projectStartDate": "2019-11-06", - "regen:projectEndDate": "2059-11-06", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "Richmond, Virginia", - "geometry": { - "type": "Point", - "coordinates": [ - -77.388361, - 37.532868 - ] - } - }, - "regen:offsetProtocol": { - "schema:name": "Preservation Protocol - 40 years", - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2023/02/City-Forest-Preservation-Protocol-40-Years-V12.40.pdf", - "schema:version": "v7.40" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcProjectPage": { + "@type": "schema:URL" + }, + "regen:projectDesignDocument": { + "@type": "schema:URL" + }, + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C02-Project", + "@id": "https://app.regen.network/project/C02-005", + "schema:name": "Evergreen & East Preservation Project", + "regen:cfcProjectId": "006", + "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/richmond-forest-carbon-offsets/", + "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2019/10/Evergreen-Project-Design-Document-1.pdf", + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "Enrichmond Foundation", + "schema:url": "", + "regen:showOnProjectPage": true + }, + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:projectActivity": { + "schema:name": "Tree Preservation" + }, + "regen:offsetGenerationMethod": [ + "Avoided Emissions" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 30.481 + }, + "regen:projectStartDate": "2019-11-06", + "regen:projectEndDate": "2059-11-06", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "Richmond, Virginia", + "geometry": { + "type": "Point", + "coordinates": [ + -77.388361, + 37.532868 + ] + } + }, + "regen:offsetProtocol": { + "schema:name": "Preservation Protocol - 40 years", + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2023/02/City-Forest-Preservation-Protocol-40-Years-V12.40.pdf", + "schema:version": "v7.40" + } +} diff --git a/ops/C02/project-metadata/C02-006-project.jsonld b/ops/C02/project-metadata/C02-006-project.jsonld index 7ab1fb5..6160607 100644 --- a/ops/C02/project-metadata/C02-006-project.jsonld +++ b/ops/C02/project-metadata/C02-006-project.jsonld @@ -1,83 +1,83 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "qudt": "http://qudt.org/schema/qudt/", - "unit": "http://qudt.org/vocab/unit/", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen:cfcProjectPage": { - "@type": "schema:URL" - }, - "regen:projectDesignDocument": { - "@type": "schema:URL" - }, - "schema:url": { - "@type": "schema:URL" - }, - "qudt:unit": { - "@type": "qudt:Unit" - }, - "qudt:numericValue": { - "@type": "xsd:double" - }, - "regen:projectStartDate": { - "@type": "xsd:date" - }, - "regen:projectEndDate": { - "@type": "xsd:date" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - } - }, - "@type": "regen:C02-Project", - "@id": "http://app.regen.network/project/C02-006", - "schema:name": "St. Elmo Preservation Project", - "regen:cfcProjectId": "012", - "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/chattanooga-forest-carbon-offsets/", - "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2020/10/St-Elmo-Trail-Project-Design-Document-2.pdf", - "regen:projectDeveloper": { - "@type": "regen:Organization", - "schema:name": "Lookout Mountain Conservancy", - "schema:url": "https://lookoutmountainconservancy.org" - }, - "regen:projectType": "Agriculture Forestry and Other Land Use", - "regen:projectActivity": { - "schema:name": "Tree Preservation" - }, - "regen:offsetGenerationMethod": [ - "Avoided Emissions" - ], - "regen:projectSize": { - "qudt:unit": "unit:HA", - "qudt:numericValue": 58.14 - }, - "regen:projectStartDate": "2021-02-16", - "regen:projectEndDate": "2061-02-16", - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "place_name": "", - "geometry": { - "type": "Point", - "coordinates": [ - -85.333587, - 34.998047 - ] - } - }, - "regen:offsetProtocol": { - "schema:name": "Preservation Protocol - 40 years", - "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2023/02/City-Forest-Preservation-Protocol-40-Years-V12.40.pdf", - "schema:version": "v9.40" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "qudt": "http://qudt.org/schema/qudt/", + "unit": "http://qudt.org/vocab/unit/", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen:cfcProjectPage": { + "@type": "schema:URL" + }, + "regen:projectDesignDocument": { + "@type": "schema:URL" + }, + "schema:url": { + "@type": "schema:URL" + }, + "qudt:unit": { + "@type": "qudt:Unit" + }, + "qudt:numericValue": { + "@type": "xsd:double" + }, + "regen:projectStartDate": { + "@type": "xsd:date" + }, + "regen:projectEndDate": { + "@type": "xsd:date" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + } + }, + "@type": "regen:C02-Project", + "@id": "http://app.regen.network/project/C02-006", + "schema:name": "St. Elmo Preservation Project", + "regen:cfcProjectId": "012", + "regen:cfcProjectPage": "https://www.cityforestcredits.org/carbon-credits/carbon-registry/chattanooga-forest-carbon-offsets/", + "regen:projectDesignDocument": "https://www.cityforestcredits.org/wp-content/uploads/2020/10/St-Elmo-Trail-Project-Design-Document-2.pdf", + "regen:projectDeveloper": { + "@type": "regen:Organization", + "schema:name": "Lookout Mountain Conservancy", + "schema:url": "https://lookoutmountainconservancy.org" + }, + "regen:projectType": "Agriculture Forestry and Other Land Use", + "regen:projectActivity": { + "schema:name": "Tree Preservation" + }, + "regen:offsetGenerationMethod": [ + "Avoided Emissions" + ], + "regen:projectSize": { + "qudt:unit": "unit:HA", + "qudt:numericValue": 58.14 + }, + "regen:projectStartDate": "2021-02-16", + "regen:projectEndDate": "2061-02-16", + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "place_name": "", + "geometry": { + "type": "Point", + "coordinates": [ + -85.333587, + 34.998047 + ] + } + }, + "regen:offsetProtocol": { + "schema:name": "Preservation Protocol - 40 years", + "schema:url": "https://www.cityforestcredits.org/wp-content/uploads/2023/02/City-Forest-Preservation-Protocol-40-Years-V12.40.pdf", + "schema:version": "v9.40" + } +} diff --git a/ops/C03/credit-class-metadata/C03-Toucan-TCO2-class.jsonld b/ops/C03/credit-class-metadata/C03-Toucan-TCO2-class.jsonld index db731b0..7659b70 100644 --- a/ops/C03/credit-class-metadata/C03-Toucan-TCO2-class.jsonld +++ b/ops/C03/credit-class-metadata/C03-Toucan-TCO2-class.jsonld @@ -1,345 +1,345 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "xsd": "http://www.w3.org/2001/XMLSchema#", - "schema:itemListElement": { - "@container": "@list" - }, - "regen:sectoralScope": { - "@container": "@list" - }, - "regen:offsetGenerationMethod": { - "@container": "@list" - }, - "regen:projectActivities": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:certifications": { - "@container": "@list" - } - }, - "@type": "regen:C03-CreditClass", - "schema:description": "This credit class provides a vehicle for Toucan Protocol Toucan Carbon Tokens (TCO2s) to enter the Cosmos ecosystem via issuance on Regen Ledger. Each TCO2 represents a unique carbon offset brought on-chain from the Verra registry using the Toucan Carbon Bridge. Currently, only TCO2 credits that fall under the NCT criteria are eligible to be issued under this credit class. Eligible credits can be bridged directly from Polygon using the Regen Network <> Toucan Bridge.", - "schema:name": "TCO2: Toucan Carbon Tokens Credit Class", - "schema:url": "https://docs.toucan.earth/toucan/bridge/tco2-toucan-carbon-tokens", - "regen:sourceRegistry": { - "schema:name": "Verra", - "schema:url": "https://verra.org" - }, - "regen:sectoralScope": [ - "Agriculture Forestry and Other Land Use (AFOLU)", - "Livestock and Manure Management" - ], - "regen:offsetGenerationMethod": [ - "Emission Reductions", - "Carbon Removals" - ], - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "Afforestation and reforestation of degraded land", - "schema:identifier": "AR-ACM0001", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/X4VOLW3Y7IJCH9WXSBXBC2Q0JKG9UZ", - "schema:version": "5.2.0" - }, - { - "schema:name": "Afforestation or reforestation of degraded land without displacement of pre-project activities", - "schema:identifier": "AR-ACM0002", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/OOH5AKLQDUYW6N3STD3LDH7EL9THD1", - "schema:version": "1.1.0" - }, - { - "schema:name": "Reforestation of degraded land", - "schema:identifier": "AR-AM0001", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/3Z9ZV3YE2H4ITY66HR7WDLV6D9QMD5", - "schema:version": "3.0" - }, - { - "schema:name": "Restoration of degraded lands through afforestation/reforestation", - "schema:identifier": "AR-AM0002", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/6ZZXJUKK49WKLID7ZH8FG3BS9WTCCH", - "schema:version": "3.0" - }, - { - "schema:name": "Afforestation and reforestation of degraded land through tree planting assisted natural regeneration and control of animal grazing", - "schema:identifier": "AR-AM0003", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/U3WW9YEC2X333WW8CPVQ6CGVY6IBPJ", - "schema:version": "4.0" - }, - { - "schema:name": "Reforestation or afforestation of land currently under agricultural use", - "schema:identifier": "AR-AM0004", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/S2OMSUTOWYOMLW75MPR0CG6SAKNG4Y", - "schema:version": "4.0" - }, - { - "schema:name": "Afforestation and reforestation project activities implemented for industrial and/or commercial uses", - "schema:identifier": "AR-AM0005", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/QAM97WQWX94URIJXOJMTJFIS8KSE28", - "schema:version": "4.0" - }, - { - "schema:name": "Afforestation/Reforestation with Trees Supported by Shrubs on Degraded Land", - "schema:identifier": "AR-AM0006", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/BHNYWRDFHU75CI2GSCETNYRBFWBMBS", - "schema:version": "3.1.1" - }, - { - "schema:name": "Afforestation and Reforestation of Land Currently Under Agricultural or Pastoral Use", - "schema:identifier": "AR-AM0007", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/M8JRU26ZZJAN7DKGE2EP6UBN9OYBDJ", - "schema:version": "5.0" - }, - { - "schema:name": "Afforestation or reforestation on degraded land for sustainable wood production", - "schema:identifier": "AR-AM0008", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/SVW9LIW0F9AQ50KW7J338I8UD4Z231", - "schema:version": "3.0" - }, - { - "schema:name": "Afforestation or reforestation on degraded land allowing for silvopastoral activities", - "schema:identifier": "AR-AM0009", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/HQ3U8IFDTG5N8987T3LR9D3Z76UB8O", - "schema:version": "4.0" - }, - { - "schema:name": "Afforestation and reforestation project activities implemented on unmanaged grassland in reserve/protected areas", - "schema:identifier": "AR-AM0010", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/H70FNNSTOOBRQV0GTWHDX0WECCWZZC", - "schema:version": "4.0" - }, - { - "schema:name": "Afforestation and reforestation of land subject to polyculture farming", - "schema:identifier": "AR-AM0011", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/21ACLYAP601F8L2WCBJV0PTM7GXYQ3", - "schema:version": "1.0.1" - }, - { - "schema:name": "Afforestation or reforestation of degraded or abandoned agricultural lands", - "schema:identifier": "AR-AM0012", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/57VGMUM1NWCQDQ4BQ2KP4VXFHF95ZI", - "schema:version": "1.0.1" - }, - { - "schema:name": "Afforestation and reforestation of lands other than wetlands", - "schema:identifier": "AR-AM0013", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/LAC5URLIAYJ8ETRT2W1A4IFHBPSNWN", - "schema:version": "1.0.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodologies for small-scale A/R CDM project activities implemented on grasslands or croplands with limited displacement of pre-project activities", - "schema:identifier": "AR-AMS0001", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/91OLF4XK2MEDIRIWUQ22X3ZQAOPBWY", - "schema:version": "6.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodologies for small-scale afforestation and reforestation project activities under the CDM implemented on settlements", - "schema:identifier": "AR-AMS0002", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/XNOATYWKHK5ZM5ZVZZQ4G5OXIDVZJK", - "schema:version": "2.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodology for small-scale agroforestry - afforestation and reforestation project activities under the clean development mechanism", - "schema:identifier": "AR-AMS0004", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/7O930NO6FCXTRZI6WIVTF54TTWJM6I", - "schema:version": "2.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodology for small-scale afforestation and reforestation project activities under the clean development mechanism implemented on lands having low inherent potential to support living biomass", - "schema:identifier": "AR-AMS0005", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/KO69QWJ8DYW631DD4PZN6C37XL3P1E", - "schema:version": "2.0" - }, - { - "schema:name": "Simplified baseline and monitoring methodology for small-scale silvopastoral - afforestation and reforestation project activities under the clean development mechanism", - "schema:identifier": "AR-AMS0006", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/MDKSSZCV62M6V0K49Y0L5H9YD7WLR5", - "schema:version": "1.0" - }, - { - "schema:name": "Afforestation and reforestation of lands except wetlands", - "schema:identifier": "AR-ACM0003", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/C9QS5G3CS8FW04MYYXDFOQDPXWM4OE", - "schema:version": "2.0" - }, - { - "schema:name": "Afforestation and reforestation of degraded mangrove habitats", - "schema:identifier": "AR-AM0014", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/KMH6O8T6RL3P5XKNBQE2N359QG7KOE", - "schema:version": "3.0" - }, - { - "schema:name": "Afforestation and reforestation project activities implemented on wetlands", - "schema:identifier": "AR-AMS0003", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/808WOYH6FWAXP3CQR4PXOLORGZBVRG", - "schema:version": "3.0" - }, - { - "schema:name": "Afforestation and reforestation project activities implemented on lands other than wetlands", - "schema:identifier": "AR-AMS0007", - "schema:url": "https://cdm.unfccc.int/methodologies/DB/J6ZHLX1C3AEMSZ52PWIII6D2AOJZUB", - "schema:version": "3.1" - }, - { - "schema:name": "Methodology for Improved Forest Management through Extension of Rotation Age", - "schema:identifier": "VM003", - "schema:url": "https://verra.org/methodology/vm0003-methodology-for-improved-forest-management-through-extension-of-rotation-age-v1-2/", - "schema:version": "1.2" - }, - { - "schema:name": "Methodology for Conservation Projects that Avoid Planned Land Use Conversion in Peat Swamp Forests", - "schema:identifier": "VM004", - "schema:url": "https://verra.org/methodology/vm0004-methodology-for-conservation-projects-that-avoid-planned-land-use-conversion-in-peat-swamp-forests-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Conversion of Low-productive Forest to High-productive Forest", - "schema:identifier": "VM005", - "schema:url": "https://verra.org/methodology/vm0005-methodology-for-conversion-of-low-productive-forest-to-high-productive-forest-v1-2/", - "schema:version": "1.2" - }, - { - "schema:name": "Methodology for Carbon Accounting for Mosaic and Landscape-scale REDD Projects", - "schema:identifier": "VM006", - "schema:url": "https://verra.org/methodology/vm0006-methodology-for-carbon-accounting-for-mosaic-and-landscape-scale-redd-projects-v2-2/", - "schema:version": "2.2" - }, - { - "schema:name": "REDD+ Methodology Framework (REDD+MF)", - "schema:identifier": "VM007", - "schema:url": "https://verra.org/methodology/vm0007-redd-methodology-framework-redd-mf-v1-6/", - "schema:version": "1.6" - }, - { - "schema:name": "Methodology for Avoided Ecosystem Conversion", - "schema:identifier": "VM009", - "schema:url": "https://verra.org/methodology/vm0009-methodology-for-avoided-ecosystem-conversion-v3-0/", - "schema:version": "3.0" - }, - { - "schema:name": "Methodology for Improved Forest Management: Conversion from Logged to Protected Forest", - "schema:identifier": "VM0010", - "schema:url": "https://verra.org/methodology/vm0010-methodology-for-improved-forest-management-conversion-from-logged-to-protected-forest-v1-3/", - "schema:version": "1.3" - }, - { - "schema:name": "Methodology for Calculating GHG Benefits from Preventing Planned Degradation", - "schema:identifier": "VM0011", - "schema:url": "https://verra.org/methodology/vm0011-methodology-for-calculating-ghg-benefits-from-preventing-planned-degradation-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Improved Forest Management in Temperate and Boreal Forests (LtPF)", - "schema:identifier": "VM0012", - "schema:url": "https://verra.org/methodology/vm0012-improved-forest-management-in-temperate-and-boreal-forests-ltpf-v1-2/", - "schema:version": "1.2" - }, - { - "schema:name": "Methodology for Avoided Unplanned Deforestation", - "schema:identifier": "VM0015", - "schema:url": "https://verra.org/methodology/vm0015-methodology-for-avoided-unplanned-deforestation-v1-1/", - "schema:version": "1.1" - }, - { - "schema:name": "Adoption of Sustainable Agricultural Land Management", - "schema:identifier": "VM0017", - "schema:url": "https://verra.org/methodology/vm0017-adoption-of-sustainable-agricultural-land-management-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Soil Carbon Quantification Methodology", - "schema:identifier": "VM0021", - "schema:url": "https://verra.org/methodology/vm0021-soil-carbon-quantification-methodology-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Coastal Wetland Creation", - "schema:identifier": "VM0024", - "schema:url": "https://verra.org/methodology/vm0024-methodology-for-coastal-wetland-creation-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Sustainable Grassland Management (SGM)", - "schema:identifier": "VM0026", - "schema:url": "https://verra.org/methodology/vm0026-methodology-for-sustainable-grassland-management-sgm-v1-0/", - "schema:version": "1.1" - }, - { - "schema:name": "Methodology for Rewetting Drained Tropical Peatlands", - "schema:identifier": "VM0027", - "schema:url": "https://verra.org/methodology/vm0027-methodology-for-rewetting-drained-tropical-peatlands-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Avoided Forest Degradation through Fire Management", - "schema:identifier": "VM0029", - "schema:url": "https://verra.org/methodology/vm0029-methodology-for-avoided-forest-degradation-through-fire-management-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for the Adoption of Sustainable Grasslands through Adjustment of Fire and Grazing", - "schema:identifier": "VM0032", - "schema:url": "https://verra.org/methodology/vm0032-methodology-for-the-adoption-of-sustainable-grasslands-through-adjustment-of-fire-and-grazing-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Tidal Wetland and Seagrass Restoration", - "schema:identifier": "VM0033", - "schema:url": "https://verra.org/methodology/vm0033-methodology-for-tidal-wetland-and-seagrass-restoration-v2-0/", - "schema:version": "2.0" - }, - { - "schema:name": "British Columbia Forest Carbon Offset Methodology", - "schema:identifier": "VM0034", - "schema:url": "https://verra.org/methodology/vm0034-canadian-forest-carbon-offset-methodology-v2-0-2/", - "schema:version": "2.0" - }, - { - "schema:name": "Methodology for Improved Forest Management through Reduced Impact Logging", - "schema:identifier": "VM0035", - "schema:url": "https://verra.org/methodology/vm0035-methodology-for-improved-forest-management-through-reduced-impact-logging-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Rewetting Drained Temperate Peatlands", - "schema:identifier": "VM0036", - "schema:url": "https://verra.org/methodology/vm0036-methodology-for-rewetting-drained-temperate-peatlands-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Implementation of REDD+ Activities in Landscapes Affected by Mosaic Deforestation and Degradation", - "schema:identifier": "VM0037", - "schema:url": "https://verra.org/methodology/vm0037-methodology-implementation-redd-activities-landscapes-affected-mosaic-deforestation-degradation-v1-0/", - "schema:version": "1.0" - }, - { - "schema:name": "Methodology for Improved Agricultural Land Management", - "schema:identifier": "VM0042", - "schema:url": "https://verra.org/methodology/vm0042-methodology-for-improved-agricultural-land-management-v1-0/", - "schema:version": "1.0" - } - ], - "schema:url": "https://library.regen.network/v/regen-registry-credit-classes/credits-from-other-registries/verified-carbon-standard-credit-class/approved-methodologies" - }, - "regen:verificationMethod": "Third-Party Verified", - "regen:projectActivities": [ - "Afforestation, Reforestation, & Revegetation (ARR)", - "Agricultural Land Management (ALM)", - "Improved Forest Management (IFM)", - "Reduced Emissions from Deforestation and Degradation (REDD)", - "Avoided Conversion of Grasslands and Shrublands (ACoGS)", - "Wetlands Restoration and Conservation (WRC)" - ], - "regen:tokenizationSource": "Toucan", - "regen:certifications": [ - { - "schema:name": "ICROA approved", - "schema:url": "https://icroa.org/" - } - ] -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:itemListElement": { + "@container": "@list" + }, + "regen:sectoralScope": { + "@container": "@list" + }, + "regen:offsetGenerationMethod": { + "@container": "@list" + }, + "regen:projectActivities": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:certifications": { + "@container": "@list" + } + }, + "@type": "regen:C03-CreditClass", + "schema:description": "This credit class provides a vehicle for Toucan Protocol Toucan Carbon Tokens (TCO2s) to enter the Cosmos ecosystem via issuance on Regen Ledger. Each TCO2 represents a unique carbon offset brought on-chain from the Verra registry using the Toucan Carbon Bridge. Currently, only TCO2 credits that fall under the NCT criteria are eligible to be issued under this credit class. Eligible credits can be bridged directly from Polygon using the Regen Network <> Toucan Bridge.", + "schema:name": "TCO2: Toucan Carbon Tokens Credit Class", + "schema:url": "https://docs.toucan.earth/toucan/bridge/tco2-toucan-carbon-tokens", + "regen:sourceRegistry": { + "schema:name": "Verra", + "schema:url": "https://verra.org" + }, + "regen:sectoralScope": [ + "Agriculture Forestry and Other Land Use (AFOLU)", + "Livestock and Manure Management" + ], + "regen:offsetGenerationMethod": [ + "Emission Reductions", + "Carbon Removals" + ], + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "Afforestation and reforestation of degraded land", + "schema:identifier": "AR-ACM0001", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/X4VOLW3Y7IJCH9WXSBXBC2Q0JKG9UZ", + "schema:version": "5.2.0" + }, + { + "schema:name": "Afforestation or reforestation of degraded land without displacement of pre-project activities", + "schema:identifier": "AR-ACM0002", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/OOH5AKLQDUYW6N3STD3LDH7EL9THD1", + "schema:version": "1.1.0" + }, + { + "schema:name": "Reforestation of degraded land", + "schema:identifier": "AR-AM0001", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/3Z9ZV3YE2H4ITY66HR7WDLV6D9QMD5", + "schema:version": "3.0" + }, + { + "schema:name": "Restoration of degraded lands through afforestation/reforestation", + "schema:identifier": "AR-AM0002", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/6ZZXJUKK49WKLID7ZH8FG3BS9WTCCH", + "schema:version": "3.0" + }, + { + "schema:name": "Afforestation and reforestation of degraded land through tree planting assisted natural regeneration and control of animal grazing", + "schema:identifier": "AR-AM0003", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/U3WW9YEC2X333WW8CPVQ6CGVY6IBPJ", + "schema:version": "4.0" + }, + { + "schema:name": "Reforestation or afforestation of land currently under agricultural use", + "schema:identifier": "AR-AM0004", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/S2OMSUTOWYOMLW75MPR0CG6SAKNG4Y", + "schema:version": "4.0" + }, + { + "schema:name": "Afforestation and reforestation project activities implemented for industrial and/or commercial uses", + "schema:identifier": "AR-AM0005", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/QAM97WQWX94URIJXOJMTJFIS8KSE28", + "schema:version": "4.0" + }, + { + "schema:name": "Afforestation/Reforestation with Trees Supported by Shrubs on Degraded Land", + "schema:identifier": "AR-AM0006", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/BHNYWRDFHU75CI2GSCETNYRBFWBMBS", + "schema:version": "3.1.1" + }, + { + "schema:name": "Afforestation and Reforestation of Land Currently Under Agricultural or Pastoral Use", + "schema:identifier": "AR-AM0007", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/M8JRU26ZZJAN7DKGE2EP6UBN9OYBDJ", + "schema:version": "5.0" + }, + { + "schema:name": "Afforestation or reforestation on degraded land for sustainable wood production", + "schema:identifier": "AR-AM0008", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/SVW9LIW0F9AQ50KW7J338I8UD4Z231", + "schema:version": "3.0" + }, + { + "schema:name": "Afforestation or reforestation on degraded land allowing for silvopastoral activities", + "schema:identifier": "AR-AM0009", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/HQ3U8IFDTG5N8987T3LR9D3Z76UB8O", + "schema:version": "4.0" + }, + { + "schema:name": "Afforestation and reforestation project activities implemented on unmanaged grassland in reserve/protected areas", + "schema:identifier": "AR-AM0010", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/H70FNNSTOOBRQV0GTWHDX0WECCWZZC", + "schema:version": "4.0" + }, + { + "schema:name": "Afforestation and reforestation of land subject to polyculture farming", + "schema:identifier": "AR-AM0011", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/21ACLYAP601F8L2WCBJV0PTM7GXYQ3", + "schema:version": "1.0.1" + }, + { + "schema:name": "Afforestation or reforestation of degraded or abandoned agricultural lands", + "schema:identifier": "AR-AM0012", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/57VGMUM1NWCQDQ4BQ2KP4VXFHF95ZI", + "schema:version": "1.0.1" + }, + { + "schema:name": "Afforestation and reforestation of lands other than wetlands", + "schema:identifier": "AR-AM0013", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/LAC5URLIAYJ8ETRT2W1A4IFHBPSNWN", + "schema:version": "1.0.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodologies for small-scale A/R CDM project activities implemented on grasslands or croplands with limited displacement of pre-project activities", + "schema:identifier": "AR-AMS0001", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/91OLF4XK2MEDIRIWUQ22X3ZQAOPBWY", + "schema:version": "6.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodologies for small-scale afforestation and reforestation project activities under the CDM implemented on settlements", + "schema:identifier": "AR-AMS0002", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/XNOATYWKHK5ZM5ZVZZQ4G5OXIDVZJK", + "schema:version": "2.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodology for small-scale agroforestry - afforestation and reforestation project activities under the clean development mechanism", + "schema:identifier": "AR-AMS0004", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/7O930NO6FCXTRZI6WIVTF54TTWJM6I", + "schema:version": "2.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodology for small-scale afforestation and reforestation project activities under the clean development mechanism implemented on lands having low inherent potential to support living biomass", + "schema:identifier": "AR-AMS0005", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/KO69QWJ8DYW631DD4PZN6C37XL3P1E", + "schema:version": "2.0" + }, + { + "schema:name": "Simplified baseline and monitoring methodology for small-scale silvopastoral - afforestation and reforestation project activities under the clean development mechanism", + "schema:identifier": "AR-AMS0006", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/MDKSSZCV62M6V0K49Y0L5H9YD7WLR5", + "schema:version": "1.0" + }, + { + "schema:name": "Afforestation and reforestation of lands except wetlands", + "schema:identifier": "AR-ACM0003", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/C9QS5G3CS8FW04MYYXDFOQDPXWM4OE", + "schema:version": "2.0" + }, + { + "schema:name": "Afforestation and reforestation of degraded mangrove habitats", + "schema:identifier": "AR-AM0014", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/KMH6O8T6RL3P5XKNBQE2N359QG7KOE", + "schema:version": "3.0" + }, + { + "schema:name": "Afforestation and reforestation project activities implemented on wetlands", + "schema:identifier": "AR-AMS0003", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/808WOYH6FWAXP3CQR4PXOLORGZBVRG", + "schema:version": "3.0" + }, + { + "schema:name": "Afforestation and reforestation project activities implemented on lands other than wetlands", + "schema:identifier": "AR-AMS0007", + "schema:url": "https://cdm.unfccc.int/methodologies/DB/J6ZHLX1C3AEMSZ52PWIII6D2AOJZUB", + "schema:version": "3.1" + }, + { + "schema:name": "Methodology for Improved Forest Management through Extension of Rotation Age", + "schema:identifier": "VM003", + "schema:url": "https://verra.org/methodology/vm0003-methodology-for-improved-forest-management-through-extension-of-rotation-age-v1-2/", + "schema:version": "1.2" + }, + { + "schema:name": "Methodology for Conservation Projects that Avoid Planned Land Use Conversion in Peat Swamp Forests", + "schema:identifier": "VM004", + "schema:url": "https://verra.org/methodology/vm0004-methodology-for-conservation-projects-that-avoid-planned-land-use-conversion-in-peat-swamp-forests-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Conversion of Low-productive Forest to High-productive Forest", + "schema:identifier": "VM005", + "schema:url": "https://verra.org/methodology/vm0005-methodology-for-conversion-of-low-productive-forest-to-high-productive-forest-v1-2/", + "schema:version": "1.2" + }, + { + "schema:name": "Methodology for Carbon Accounting for Mosaic and Landscape-scale REDD Projects", + "schema:identifier": "VM006", + "schema:url": "https://verra.org/methodology/vm0006-methodology-for-carbon-accounting-for-mosaic-and-landscape-scale-redd-projects-v2-2/", + "schema:version": "2.2" + }, + { + "schema:name": "REDD+ Methodology Framework (REDD+MF)", + "schema:identifier": "VM007", + "schema:url": "https://verra.org/methodology/vm0007-redd-methodology-framework-redd-mf-v1-6/", + "schema:version": "1.6" + }, + { + "schema:name": "Methodology for Avoided Ecosystem Conversion", + "schema:identifier": "VM009", + "schema:url": "https://verra.org/methodology/vm0009-methodology-for-avoided-ecosystem-conversion-v3-0/", + "schema:version": "3.0" + }, + { + "schema:name": "Methodology for Improved Forest Management: Conversion from Logged to Protected Forest", + "schema:identifier": "VM0010", + "schema:url": "https://verra.org/methodology/vm0010-methodology-for-improved-forest-management-conversion-from-logged-to-protected-forest-v1-3/", + "schema:version": "1.3" + }, + { + "schema:name": "Methodology for Calculating GHG Benefits from Preventing Planned Degradation", + "schema:identifier": "VM0011", + "schema:url": "https://verra.org/methodology/vm0011-methodology-for-calculating-ghg-benefits-from-preventing-planned-degradation-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Improved Forest Management in Temperate and Boreal Forests (LtPF)", + "schema:identifier": "VM0012", + "schema:url": "https://verra.org/methodology/vm0012-improved-forest-management-in-temperate-and-boreal-forests-ltpf-v1-2/", + "schema:version": "1.2" + }, + { + "schema:name": "Methodology for Avoided Unplanned Deforestation", + "schema:identifier": "VM0015", + "schema:url": "https://verra.org/methodology/vm0015-methodology-for-avoided-unplanned-deforestation-v1-1/", + "schema:version": "1.1" + }, + { + "schema:name": "Adoption of Sustainable Agricultural Land Management", + "schema:identifier": "VM0017", + "schema:url": "https://verra.org/methodology/vm0017-adoption-of-sustainable-agricultural-land-management-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Soil Carbon Quantification Methodology", + "schema:identifier": "VM0021", + "schema:url": "https://verra.org/methodology/vm0021-soil-carbon-quantification-methodology-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Coastal Wetland Creation", + "schema:identifier": "VM0024", + "schema:url": "https://verra.org/methodology/vm0024-methodology-for-coastal-wetland-creation-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Sustainable Grassland Management (SGM)", + "schema:identifier": "VM0026", + "schema:url": "https://verra.org/methodology/vm0026-methodology-for-sustainable-grassland-management-sgm-v1-0/", + "schema:version": "1.1" + }, + { + "schema:name": "Methodology for Rewetting Drained Tropical Peatlands", + "schema:identifier": "VM0027", + "schema:url": "https://verra.org/methodology/vm0027-methodology-for-rewetting-drained-tropical-peatlands-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Avoided Forest Degradation through Fire Management", + "schema:identifier": "VM0029", + "schema:url": "https://verra.org/methodology/vm0029-methodology-for-avoided-forest-degradation-through-fire-management-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for the Adoption of Sustainable Grasslands through Adjustment of Fire and Grazing", + "schema:identifier": "VM0032", + "schema:url": "https://verra.org/methodology/vm0032-methodology-for-the-adoption-of-sustainable-grasslands-through-adjustment-of-fire-and-grazing-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Tidal Wetland and Seagrass Restoration", + "schema:identifier": "VM0033", + "schema:url": "https://verra.org/methodology/vm0033-methodology-for-tidal-wetland-and-seagrass-restoration-v2-0/", + "schema:version": "2.0" + }, + { + "schema:name": "British Columbia Forest Carbon Offset Methodology", + "schema:identifier": "VM0034", + "schema:url": "https://verra.org/methodology/vm0034-canadian-forest-carbon-offset-methodology-v2-0-2/", + "schema:version": "2.0" + }, + { + "schema:name": "Methodology for Improved Forest Management through Reduced Impact Logging", + "schema:identifier": "VM0035", + "schema:url": "https://verra.org/methodology/vm0035-methodology-for-improved-forest-management-through-reduced-impact-logging-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Rewetting Drained Temperate Peatlands", + "schema:identifier": "VM0036", + "schema:url": "https://verra.org/methodology/vm0036-methodology-for-rewetting-drained-temperate-peatlands-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Implementation of REDD+ Activities in Landscapes Affected by Mosaic Deforestation and Degradation", + "schema:identifier": "VM0037", + "schema:url": "https://verra.org/methodology/vm0037-methodology-implementation-redd-activities-landscapes-affected-mosaic-deforestation-degradation-v1-0/", + "schema:version": "1.0" + }, + { + "schema:name": "Methodology for Improved Agricultural Land Management", + "schema:identifier": "VM0042", + "schema:url": "https://verra.org/methodology/vm0042-methodology-for-improved-agricultural-land-management-v1-0/", + "schema:version": "1.0" + } + ], + "schema:url": "https://library.regen.network/v/regen-registry-credit-classes/credits-from-other-registries/verified-carbon-standard-credit-class/approved-methodologies" + }, + "regen:verificationMethod": "Third-Party Verified", + "regen:projectActivities": [ + "Afforestation, Reforestation, & Revegetation (ARR)", + "Agricultural Land Management (ALM)", + "Improved Forest Management (IFM)", + "Reduced Emissions from Deforestation and Degradation (REDD)", + "Avoided Conversion of Grasslands and Shrublands (ACoGS)", + "Wetlands Restoration and Conservation (WRC)" + ], + "regen:tokenizationSource": "Toucan", + "regen:certifications": [ + { + "schema:name": "ICROA approved", + "schema:url": "https://icroa.org/" + } + ] +} diff --git a/ops/C03/project-metadata/C03-001-project-page.jsonld b/ops/C03/project-metadata/C03-001-project-page.jsonld index 3e3796a..701edea 100644 --- a/ops/C03/project-metadata/C03-001-project-page.jsonld +++ b/ops/C03/project-metadata/C03-001-project-page.jsonld @@ -1,23 +1,23 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-001", - "regen:creditClassId": "C03", - "schema:description": "This project protects 47,237 hectares of uninhabited peat swamp forest on the southern coast of Borneo, Central Kalimantan. Despite only covering about 3% of our planet’s land, peatlands store twice as much carbon as all the world’s forests. Under threat of being logged, drained and burned by palm oil plantations, this project protects the land, which is home to an orangutan sanctuary and 50 other endangered species.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fadb9eb4-d214-11ed-8158-0a6e1e09fcad/01.jpeg" - }, - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "https://www.youtube.com/watch?v=vbT35a4wVCU" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-001", + "regen:creditClassId": "C03", + "schema:description": "This project protects 47,237 hectares of uninhabited peat swamp forest on the southern coast of Borneo, Central Kalimantan. Despite only covering about 3% of our planet’s land, peatlands store twice as much carbon as all the world’s forests. Under threat of being logged, drained and burned by palm oil plantations, this project protects the land, which is home to an orangutan sanctuary and 50 other endangered species.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fadb9eb4-d214-11ed-8158-0a6e1e09fcad/01.jpeg" + }, + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "https://www.youtube.com/watch?v=vbT35a4wVCU" + } +} diff --git a/ops/C03/project-metadata/C03-001-project.jsonld b/ops/C03/project-metadata/C03-001-project.jsonld index d9b17d5..5231649 100644 --- a/ops/C03/project-metadata/C03-001-project.jsonld +++ b/ops/C03/project-metadata/C03-001-project.jsonld @@ -1,75 +1,75 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "Rimba Raya Biodiversity Reserve Project", - "regen:vcsProjectId": 674, - "regen:toucanProjectTokenId": 5, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0004", - "schema:identifier": "VM0004" - } - ] - }, - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "id": "region.148583", - "place_type": [ - "region" - ], - "properties": { - "short_code": "ID-KT", - "wikidata": "Q3891", - "mapbox_id": "dXJuOm1ieHBsYzpBa1Ju" - }, - "text": "Central Kalimantan", - "place_name": "Central Kalimantan, Indonesia", - "bbox": [110.7315467, -3.6301373, 115.849232, 0.792219], - "center": [113.9164372, -2.2072919], - "geometry": { - "type": "Point", - "coordinates": [113.9164372,-2.2072919] - }, - "context": [ - { - "id": "country.8807", - "short_code": "id", - "wikidata": "Q252", - "mapbox_id": "dXJuOm1ieHBsYzpJbWM", - "text": "Indonesia" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "AAA", - "schema:url": "https://bezerocarbon.com/listings/?filter=rimba+raya" - } - ] +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "Rimba Raya Biodiversity Reserve Project", + "regen:vcsProjectId": 674, + "regen:toucanProjectTokenId": 5, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0004", + "schema:identifier": "VM0004" + } + ] + }, + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "id": "region.148583", + "place_type": [ + "region" + ], + "properties": { + "short_code": "ID-KT", + "wikidata": "Q3891", + "mapbox_id": "dXJuOm1ieHBsYzpBa1Ju" + }, + "text": "Central Kalimantan", + "place_name": "Central Kalimantan, Indonesia", + "bbox": [110.7315467, -3.6301373, 115.849232, 0.792219], + "center": [113.9164372, -2.2072919], + "geometry": { + "type": "Point", + "coordinates": [113.9164372,-2.2072919] + }, + "context": [ + { + "id": "country.8807", + "short_code": "id", + "wikidata": "Q252", + "mapbox_id": "dXJuOm1ieHBsYzpJbWM", + "text": "Indonesia" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "AAA", + "schema:url": "https://bezerocarbon.com/listings/?filter=rimba+raya" + } + ] } \ No newline at end of file diff --git a/ops/C03/project-metadata/C03-002-project-page.jsonld b/ops/C03/project-metadata/C03-002-project-page.jsonld index 8a4a406..0a02a77 100644 --- a/ops/C03/project-metadata/C03-002-project-page.jsonld +++ b/ops/C03/project-metadata/C03-002-project-page.jsonld @@ -1,23 +1,23 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-002", - "regen:creditClassId": "C03", - "schema:description": "REDD+ Project Resguardo Indígena Unificado–Selva de Mataven (REDD+ RIU-SM) represents the fourth largest indigenous reservation in Columbia and protects 1.15M hectares of natural forests from deforestation. This project safeguards biodiversity and provides education, healthcare, sanitation, food security, and other co-benefits for 15K indigenous people. The protection of this area also serves as a gatekeeper for deforestation threats moving from the Orinoco Savannahs to the Amazon.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/faebcc4e-d214-11ed-8159-0a6e1e09fcad/01.jpeg" - }, - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "https://www.youtube.com/watch?v=ggetXgiA3Zk" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-002", + "regen:creditClassId": "C03", + "schema:description": "REDD+ Project Resguardo Indígena Unificado–Selva de Mataven (REDD+ RIU-SM) represents the fourth largest indigenous reservation in Columbia and protects 1.15M hectares of natural forests from deforestation. This project safeguards biodiversity and provides education, healthcare, sanitation, food security, and other co-benefits for 15K indigenous people. The protection of this area also serves as a gatekeeper for deforestation threats moving from the Orinoco Savannahs to the Amazon.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/faebcc4e-d214-11ed-8159-0a6e1e09fcad/01.jpeg" + }, + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "https://www.youtube.com/watch?v=ggetXgiA3Zk" + } +} diff --git a/ops/C03/project-metadata/C03-002-project.jsonld b/ops/C03/project-metadata/C03-002-project.jsonld index de8db96..1e3b5f0 100644 --- a/ops/C03/project-metadata/C03-002-project.jsonld +++ b/ops/C03/project-metadata/C03-002-project.jsonld @@ -1,71 +1,71 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "REDD+ Project Resguardo Indigena Unificado Selva de Mataven (RIU SM)", - "regen:vcsProjectId": 1566, - "regen:toucanProjectTokenId": 9, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0007", - "schema:identifier": "VM0007" - } - ] - }, - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "id": "region.238642", - "place_type": ["region"], - "properties": { - "short_code": "CO-VID", - "wikidata": "Q268729", - "mapbox_id": "dXJuOm1ieHBsYzpBNlF5" - }, - "text": "Vichada", - "place_name": "Vichada, Colombia", - "matching_place_name": "Vichada, Columbia", - "bbox": [-71.077931, 2.737109, -67.407419, 6.327272], - "center": [-67.4894667, 6.1879711], - "geometry": {"type": "Point", "coordinates": [-67.4894667, 6.1879711]}, - "context": [ - { - "id": "country.8754", - "short_code": "co", - "wikidata": "Q739", - "mapbox_id": "dXJuOm1ieHBsYzpJakk", - "text": "Colombia" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "B", - "schema:url": "https://bezerocarbon.com/listings/?filter=RIU+sm" - } - ] +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "REDD+ Project Resguardo Indigena Unificado Selva de Mataven (RIU SM)", + "regen:vcsProjectId": 1566, + "regen:toucanProjectTokenId": 9, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0007", + "schema:identifier": "VM0007" + } + ] + }, + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "id": "region.238642", + "place_type": ["region"], + "properties": { + "short_code": "CO-VID", + "wikidata": "Q268729", + "mapbox_id": "dXJuOm1ieHBsYzpBNlF5" + }, + "text": "Vichada", + "place_name": "Vichada, Colombia", + "matching_place_name": "Vichada, Columbia", + "bbox": [-71.077931, 2.737109, -67.407419, 6.327272], + "center": [-67.4894667, 6.1879711], + "geometry": {"type": "Point", "coordinates": [-67.4894667, 6.1879711]}, + "context": [ + { + "id": "country.8754", + "short_code": "co", + "wikidata": "Q739", + "mapbox_id": "dXJuOm1ieHBsYzpJakk", + "text": "Colombia" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "B", + "schema:url": "https://bezerocarbon.com/listings/?filter=RIU+sm" + } + ] } \ No newline at end of file diff --git a/ops/C03/project-metadata/C03-003-project-page.jsonld b/ops/C03/project-metadata/C03-003-project-page.jsonld index e273a1c..a64176f 100644 --- a/ops/C03/project-metadata/C03-003-project-page.jsonld +++ b/ops/C03/project-metadata/C03-003-project-page.jsonld @@ -1,23 +1,23 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-003", - "regen:creditClassId": "C03", - "schema:description": "Keo Seima Wildlife Sanctuary (KSWS) comprises 167K hectares of protected dense forest and a 297K hectare buffer zone. This land is the ancestral and contemporary home of the indigenous Bunong: 13K people living across 20 villages. It is also habitat to the critically endangered primates, Black-Shanked Douc and Yellow-Cheeked Crested Gibbon, and one of the largest remaining populations of Asian Elephants in the Lower Mekong. This project has played a critical role in demonstrating REDD+ success in conserving high biodiversity value landscapes.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fafbd9b8-d214-11ed-815a-0a6e1e09fcad/Ape-530759.jpeg" - }, - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "https://www.youtube.com/watch?v=79WFZn-hACY" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-003", + "regen:creditClassId": "C03", + "schema:description": "Keo Seima Wildlife Sanctuary (KSWS) comprises 167K hectares of protected dense forest and a 297K hectare buffer zone. This land is the ancestral and contemporary home of the indigenous Bunong: 13K people living across 20 villages. It is also habitat to the critically endangered primates, Black-Shanked Douc and Yellow-Cheeked Crested Gibbon, and one of the largest remaining populations of Asian Elephants in the Lower Mekong. This project has played a critical role in demonstrating REDD+ success in conserving high biodiversity value landscapes.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fafbd9b8-d214-11ed-815a-0a6e1e09fcad/Ape-530759.jpeg" + }, + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "https://www.youtube.com/watch?v=79WFZn-hACY" + } +} diff --git a/ops/C03/project-metadata/C03-003-project.jsonld b/ops/C03/project-metadata/C03-003-project.jsonld index a36dc8e..0ea292e 100644 --- a/ops/C03/project-metadata/C03-003-project.jsonld +++ b/ops/C03/project-metadata/C03-003-project.jsonld @@ -1,70 +1,70 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "Reduced Emissions from Deforestation and Degradation in Keo Seima Wildlife Sanctuary", - "regen:vcsProjectId": 1650, - "regen:toucanProjectTokenId": 20, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0015", - "schema:identifier": "VM0015" - } - ] - }, - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "id": "region.115831", - "place_type": ["region"], - "properties": { - "short_code": "KH-11", - "wikidata": "Q652830", - "mapbox_id": "dXJuOm1ieHBsYzpBY1Iz" - }, - "text": "Mondulkiri", - "place_name": "Mondulkiri, Cambodia", - "bbox": [106.33854, 12.062167, 107.60628, 13.417403], - "center": [107.1865184, 12.4568561], - "geometry": {"type": "Point", "coordinates": [107.1865184, 12.4568561]}, - "context": [ - { - "id": "country.8823", - "short_code": "kh", - "wikidata": "Q424", - "mapbox_id": "dXJuOm1ieHBsYzpJbmM", - "text": "Cambodia" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "AAA-", - "schema:url": "https://bezerocarbon.com/listings/?filter=keo+seima" - } - ] +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "Reduced Emissions from Deforestation and Degradation in Keo Seima Wildlife Sanctuary", + "regen:vcsProjectId": 1650, + "regen:toucanProjectTokenId": 20, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0015", + "schema:identifier": "VM0015" + } + ] + }, + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "id": "region.115831", + "place_type": ["region"], + "properties": { + "short_code": "KH-11", + "wikidata": "Q652830", + "mapbox_id": "dXJuOm1ieHBsYzpBY1Iz" + }, + "text": "Mondulkiri", + "place_name": "Mondulkiri, Cambodia", + "bbox": [106.33854, 12.062167, 107.60628, 13.417403], + "center": [107.1865184, 12.4568561], + "geometry": {"type": "Point", "coordinates": [107.1865184, 12.4568561]}, + "context": [ + { + "id": "country.8823", + "short_code": "kh", + "wikidata": "Q424", + "mapbox_id": "dXJuOm1ieHBsYzpJbmM", + "text": "Cambodia" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "AAA-", + "schema:url": "https://bezerocarbon.com/listings/?filter=keo+seima" + } + ] } \ No newline at end of file diff --git a/ops/C03/project-metadata/C03-004-project-page.jsonld b/ops/C03/project-metadata/C03-004-project-page.jsonld index 5ccf3c7..9e08358 100644 --- a/ops/C03/project-metadata/C03-004-project-page.jsonld +++ b/ops/C03/project-metadata/C03-004-project-page.jsonld @@ -1,23 +1,23 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-004", - "regen:creditClassId": "C03", - "schema:description": "For years, the land between Tsavo East and Tsavo West National parks in Kenya served two purposes: home to a slowly failing cattle ranch and the main migration corridor for local wildlife. These dueling purposes caused strife in the area until the local community established the Rukinga Wildlife Sanctuary in 1998: protecting 80,000 acres of forest and more than 50 species of large mammals, providing income opportunities alternative to poaching and clear cutting, and relocating cattle herds to reduce conflict over resources.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fb0c18fa-d214-11ed-815b-0a6e1e09fcad/01.jpg" - }, - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "https://www.youtube.com/watch?v=XkyhhdaV_KM" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-004", + "regen:creditClassId": "C03", + "schema:description": "For years, the land between Tsavo East and Tsavo West National parks in Kenya served two purposes: home to a slowly failing cattle ranch and the main migration corridor for local wildlife. These dueling purposes caused strife in the area until the local community established the Rukinga Wildlife Sanctuary in 1998: protecting 80,000 acres of forest and more than 50 species of large mammals, providing income opportunities alternative to poaching and clear cutting, and relocating cattle herds to reduce conflict over resources.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fb0c18fa-d214-11ed-815b-0a6e1e09fcad/01.jpg" + }, + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "https://www.youtube.com/watch?v=XkyhhdaV_KM" + } +} diff --git a/ops/C03/project-metadata/C03-004-project.jsonld b/ops/C03/project-metadata/C03-004-project.jsonld index 5b99014..71816d2 100644 --- a/ops/C03/project-metadata/C03-004-project.jsonld +++ b/ops/C03/project-metadata/C03-004-project.jsonld @@ -1,70 +1,70 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "The Kasigau Corridor REDD Project - Phase II The Community Ranches", - "regen:vcsProjectId": 612, - "regen:toucanProjectTokenId": 32, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0009", - "schema:identifier": "VM0009" - } - ] - }, - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "id": "region.353397", - "place_type": ["region"], - "properties": { - "short_code": "KE-39", - "wikidata": "Q7193788", - "mapbox_id": "dXJuOm1ieHBsYzpCV1Ix" - }, - "text": "Taita–Taveta", - "place_name": "Taita–Taveta, Kenya", - "bbox": [37.589548, -4.140209, 39.220308, -2.681714], - "center": [38.3795406, -3.5028625], - "geometry": {"type": "Point", "coordinates": [38.3795406, -3.5028625]}, - "context": [ - { - "id": "country.8821", - "short_code": "ke", - "wikidata": "Q114", - "mapbox_id": "dXJuOm1ieHBsYzpJblU", - "text": "Kenya" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "BBB", - "schema:url": "https://bezerocarbon.com/listings/?filter=kasigau" - } - ] +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "The Kasigau Corridor REDD Project - Phase II The Community Ranches", + "regen:vcsProjectId": 612, + "regen:toucanProjectTokenId": 32, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0009", + "schema:identifier": "VM0009" + } + ] + }, + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "id": "region.353397", + "place_type": ["region"], + "properties": { + "short_code": "KE-39", + "wikidata": "Q7193788", + "mapbox_id": "dXJuOm1ieHBsYzpCV1Ix" + }, + "text": "Taita–Taveta", + "place_name": "Taita–Taveta, Kenya", + "bbox": [37.589548, -4.140209, 39.220308, -2.681714], + "center": [38.3795406, -3.5028625], + "geometry": {"type": "Point", "coordinates": [38.3795406, -3.5028625]}, + "context": [ + { + "id": "country.8821", + "short_code": "ke", + "wikidata": "Q114", + "mapbox_id": "dXJuOm1ieHBsYzpJblU", + "text": "Kenya" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "BBB", + "schema:url": "https://bezerocarbon.com/listings/?filter=kasigau" + } + ] } \ No newline at end of file diff --git a/ops/C03/project-metadata/C03-005-project-page.jsonld b/ops/C03/project-metadata/C03-005-project-page.jsonld index a72a8e8..648be9f 100644 --- a/ops/C03/project-metadata/C03-005-project-page.jsonld +++ b/ops/C03/project-metadata/C03-005-project-page.jsonld @@ -1,23 +1,23 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-005", - "regen:creditClassId": "C03", - "schema:description": "The Florestal Santa Maria REDD+ Project is the world’s largest remaining rainforest situated in the Amazon, Brazil. Home to 10% of the world’s species, this project protects their habitats from deforestation through regular satellite monitoring and on-site surveillance, as well as incentivizes the restoration of degraded areas. The long term goals of this project are to hand operations over the local community, a goal being achieved through the establishment of a technical school and community forest management courses.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fb1c2c5e-d214-11ed-815c-0a6e1e09fcad/nathalia-segato-8fLSrccoox0-unsplash.jpg" - }, - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "https://www.youtube.com/watch?v=AaQL-aMhhoo" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-005", + "regen:creditClassId": "C03", + "schema:description": "The Florestal Santa Maria REDD+ Project is the world’s largest remaining rainforest situated in the Amazon, Brazil. Home to 10% of the world’s species, this project protects their habitats from deforestation through regular satellite monitoring and on-site surveillance, as well as incentivizes the restoration of degraded areas. The long term goals of this project are to hand operations over the local community, a goal being achieved through the establishment of a technical school and community forest management courses.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fb1c2c5e-d214-11ed-815c-0a6e1e09fcad/nathalia-segato-8fLSrccoox0-unsplash.jpg" + }, + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "https://www.youtube.com/watch?v=AaQL-aMhhoo" + } +} diff --git a/ops/C03/project-metadata/C03-005-project.jsonld b/ops/C03/project-metadata/C03-005-project.jsonld index 06e5419..072191b 100644 --- a/ops/C03/project-metadata/C03-005-project.jsonld +++ b/ops/C03/project-metadata/C03-005-project.jsonld @@ -1,63 +1,63 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "schema:name": "Florestal Santa Maria Project", - "regen:vcsProjectId": 875, - "regen:toucanProjectTokenId": 72, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0007", - "schema:identifier": "VM0007" - } - ] - }, - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "id": "region.173088", - "place_type": ["region"], - "properties": { - "short_code": "BR-MT", - "wikidata": "Q42824", - "mapbox_id": "dXJuOm1ieHBsYzpBcVFn" - }, - "text": "Mato Grosso", - "place_name": "Mato Grosso, Brazil", - "bbox": [-61.633312, -18.041561, -50.20914, -7.348088], - "center": [-55.9809851947356, -13.6862877932155], - "geometry": { - "type": "Point", - "coordinates": [-55.9809851947356, -13.6862877932155] - }, - "context": [ - { - "id": "country.8736", - "short_code": "br", - "wikidata": "Q155", - "mapbox_id": "dXJuOm1ieHBsYzpJaUE", - "text": "Brazil" - } - ] - } +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "schema:name": "Florestal Santa Maria Project", + "regen:vcsProjectId": 875, + "regen:toucanProjectTokenId": 72, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0007", + "schema:identifier": "VM0007" + } + ] + }, + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "id": "region.173088", + "place_type": ["region"], + "properties": { + "short_code": "BR-MT", + "wikidata": "Q42824", + "mapbox_id": "dXJuOm1ieHBsYzpBcVFn" + }, + "text": "Mato Grosso", + "place_name": "Mato Grosso, Brazil", + "bbox": [-61.633312, -18.041561, -50.20914, -7.348088], + "center": [-55.9809851947356, -13.6862877932155], + "geometry": { + "type": "Point", + "coordinates": [-55.9809851947356, -13.6862877932155] + }, + "context": [ + { + "id": "country.8736", + "short_code": "br", + "wikidata": "Q155", + "mapbox_id": "dXJuOm1ieHBsYzpJaUE", + "text": "Brazil" + } + ] + } } \ No newline at end of file diff --git a/ops/C03/project-metadata/C03-006-project-page.jsonld b/ops/C03/project-metadata/C03-006-project-page.jsonld index ad494a1..add9b8b 100644 --- a/ops/C03/project-metadata/C03-006-project-page.jsonld +++ b/ops/C03/project-metadata/C03-006-project-page.jsonld @@ -1,23 +1,23 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-006", - "regen:creditClassId": "C03", - "schema:description": "The Mai Ndombe REDD+ Project protects over 300,000 hectares of critical bonobo and forest elephant habitat within the world’s second-largest intact rainforest, as well as some of the most important wetlands on the planet, the Congo Basin. This project reduces the principal drivers of forest and biodiversity loss and is charting a new pathway for community prosperity through comprehensive investments into the surrounding local communities.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fb2c63c6-d214-11ed-815d-0a6e1e09fcad/01.jpeg" - }, - "regen:storyMedia": { - "@type": "schema:VideoObject", - "schema:url": "https://www.youtube.com/watch?v=_4wHY99fm-w" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-006", + "regen:creditClassId": "C03", + "schema:description": "The Mai Ndombe REDD+ Project protects over 300,000 hectares of critical bonobo and forest elephant habitat within the world’s second-largest intact rainforest, as well as some of the most important wetlands on the planet, the Congo Basin. This project reduces the principal drivers of forest and biodiversity loss and is charting a new pathway for community prosperity through comprehensive investments into the surrounding local communities.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fb2c63c6-d214-11ed-815d-0a6e1e09fcad/01.jpeg" + }, + "regen:storyMedia": { + "@type": "schema:VideoObject", + "schema:url": "https://www.youtube.com/watch?v=_4wHY99fm-w" + } +} diff --git a/ops/C03/project-metadata/C03-006-project.jsonld b/ops/C03/project-metadata/C03-006-project.jsonld index d39ec84..56771ab 100644 --- a/ops/C03/project-metadata/C03-006-project.jsonld +++ b/ops/C03/project-metadata/C03-006-project.jsonld @@ -1,70 +1,70 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "The Mai Ndombe REDD+ Project", - "regen:vcsProjectId": 934, - "regen:toucanProjectTokenId": 6, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0009", - "schema:identifier": "VM0009" - } - ] - }, - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "id": "region.25641", - "place_type": ["region"], - "properties": { - "short_code": "CD-MN", - "wikidata": "Q1163429", - "mapbox_id": "dXJuOm1ieHBsYzpaQ2s" - }, - "text": "Mai-Ndombe", - "place_name": "Mai-Ndombe, Democratic Republic of the Congo", - "bbox": [15.89597, -4.381682, 21.021617, -0.740736], - "center": [18.2863998, -1.9253353], - "geometry": {"type": "Point", "coordinates": [18.2863998, -1.9253353]}, - "context": [ - { - "id": "country.8745", - "short_code": "cd", - "wikidata": "Q974", - "mapbox_id": "dXJuOm1ieHBsYzpJaWs", - "text": "Democratic Republic of the Congo" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "AA-", - "schema:url": "https://bezerocarbon.com/listings/?filter=mai+ndombe" - } - ] +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "The Mai Ndombe REDD+ Project", + "regen:vcsProjectId": 934, + "regen:toucanProjectTokenId": 6, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0009", + "schema:identifier": "VM0009" + } + ] + }, + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "id": "region.25641", + "place_type": ["region"], + "properties": { + "short_code": "CD-MN", + "wikidata": "Q1163429", + "mapbox_id": "dXJuOm1ieHBsYzpaQ2s" + }, + "text": "Mai-Ndombe", + "place_name": "Mai-Ndombe, Democratic Republic of the Congo", + "bbox": [15.89597, -4.381682, 21.021617, -0.740736], + "center": [18.2863998, -1.9253353], + "geometry": {"type": "Point", "coordinates": [18.2863998, -1.9253353]}, + "context": [ + { + "id": "country.8745", + "short_code": "cd", + "wikidata": "Q974", + "mapbox_id": "dXJuOm1ieHBsYzpJaWs", + "text": "Democratic Republic of the Congo" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "AA-", + "schema:url": "https://bezerocarbon.com/listings/?filter=mai+ndombe" + } + ] } \ No newline at end of file diff --git a/ops/C03/project-metadata/C03-007-project-page.jsonld b/ops/C03/project-metadata/C03-007-project-page.jsonld index 0b9f0e0..2ffbd52 100644 --- a/ops/C03/project-metadata/C03-007-project-page.jsonld +++ b/ops/C03/project-metadata/C03-007-project-page.jsonld @@ -1,19 +1,19 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-007", - "regen:creditClassId": "C03", - "schema:description": "The Pacajai REDD+ project is working to provide legal land-use permits that will result in official land titles for villages that actively participate in forest protection. Pacajai protects land from deforestation and focuses on the regeneration of areas affected by deforestation. Local villagers participate in training on biodiversity identification to aid in project monitoring. Pacajai also improves local food security through capacity building on agroforestry techniques. 56K hectares of land will be divided amongst local families.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fedc22ae-d214-11ed-815e-0a6e1e09fcad/01.jpeg" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-007", + "regen:creditClassId": "C03", + "schema:description": "The Pacajai REDD+ project is working to provide legal land-use permits that will result in official land titles for villages that actively participate in forest protection. Pacajai protects land from deforestation and focuses on the regeneration of areas affected by deforestation. Local villagers participate in training on biodiversity identification to aid in project monitoring. Pacajai also improves local food security through capacity building on agroforestry techniques. 56K hectares of land will be divided amongst local families.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/fedc22ae-d214-11ed-815e-0a6e1e09fcad/01.jpeg" + } +} diff --git a/ops/C03/project-metadata/C03-007-project.jsonld b/ops/C03/project-metadata/C03-007-project.jsonld index cac1478..938b995 100644 --- a/ops/C03/project-metadata/C03-007-project.jsonld +++ b/ops/C03/project-metadata/C03-007-project.jsonld @@ -1,73 +1,73 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "Pacajai REDD+ Project", - "regen:vcsProjectId": 981, - "regen:toucanProjectTokenId": 7, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0015", - "schema:identifier": "VM0015" - } - ] - }, - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "type": "Feature", - "id": "region.50208", - "place_type": ["region"], - "properties": { - "short_code": "BR-PA", - "wikidata": "Q39517", - "mapbox_id": "dXJuOm1ieHBsYzp4Q0E" - }, - "text": "Pará", - "place_name": "Pará, Brazil", - "bbox": [-58.895623, -9.844625, -46.0546875, 2.632346], - "center": [-53.1382861008915, -4.04612783594293], - "geometry": { - "type": "Point", - "coordinates": [-53.1382861008915, -4.04612783594293] - }, - "context": [ - { - "id": "country.8736", - "short_code": "br", - "wikidata": "Q155", - "mapbox_id": "dXJuOm1ieHBsYzpJaUE", - "text": "Brazil" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "C", - "schema:url": "https://bezerocarbon.com/listings/?filter=pacajai" - } - ] +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "Pacajai REDD+ Project", + "regen:vcsProjectId": 981, + "regen:toucanProjectTokenId": 7, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0015", + "schema:identifier": "VM0015" + } + ] + }, + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "type": "Feature", + "id": "region.50208", + "place_type": ["region"], + "properties": { + "short_code": "BR-PA", + "wikidata": "Q39517", + "mapbox_id": "dXJuOm1ieHBsYzp4Q0E" + }, + "text": "Pará", + "place_name": "Pará, Brazil", + "bbox": [-58.895623, -9.844625, -46.0546875, 2.632346], + "center": [-53.1382861008915, -4.04612783594293], + "geometry": { + "type": "Point", + "coordinates": [-53.1382861008915, -4.04612783594293] + }, + "context": [ + { + "id": "country.8736", + "short_code": "br", + "wikidata": "Q155", + "mapbox_id": "dXJuOm1ieHBsYzpJaUE", + "text": "Brazil" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "C", + "schema:url": "https://bezerocarbon.com/listings/?filter=pacajai" + } + ] } \ No newline at end of file diff --git a/ops/C03/project-metadata/C03-008-project-page.jsonld b/ops/C03/project-metadata/C03-008-project-page.jsonld index d2368f2..f6e4841 100644 --- a/ops/C03/project-metadata/C03-008-project-page.jsonld +++ b/ops/C03/project-metadata/C03-008-project-page.jsonld @@ -1,19 +1,19 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-008", - "regen:creditClassId": "C03", - "schema:description": "The Inner Mongolia Chao’er Forest Industry IFM Project is located in the Inner Mongolia Autonomous Region of China at the site of a longstanding commercial forest. The project took a 60 year lease to protect the forest ecosystem, improve the ecological environment, increase carbon sinks, reduce GHG emission reductions and slow down climate change. The project currently employs over 2K locals as forestry workers and 200 new jobs are added each year. It is also home diverse habitat of plants and animals, including 70 protected animal species.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-008-preview-photo.jpeg" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-008", + "regen:creditClassId": "C03", + "schema:description": "The Inner Mongolia Chao’er Forest Industry IFM Project is located in the Inner Mongolia Autonomous Region of China at the site of a longstanding commercial forest. The project took a 60 year lease to protect the forest ecosystem, improve the ecological environment, increase carbon sinks, reduce GHG emission reductions and slow down climate change. The project currently employs over 2K locals as forestry workers and 200 new jobs are added each year. It is also home diverse habitat of plants and animals, including 70 protected animal species.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-008-preview-photo.jpeg" + } +} diff --git a/ops/C03/project-metadata/C03-008-project.jsonld b/ops/C03/project-metadata/C03-008-project.jsonld index 783d812..f44a31f 100644 --- a/ops/C03/project-metadata/C03-008-project.jsonld +++ b/ops/C03/project-metadata/C03-008-project.jsonld @@ -1,87 +1,87 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "Inner Mongolia Chao’er Improved Forest Management Project", - "regen:vcsProjectId": 1529, - "regen:toucanProjectTokenId": 84, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0010", - "schema:identifier": "VM0010" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "BB", - "schema:url": "https://bezerocarbon.com/listings/?filter=INNER+MONGOLIA+CHAO%E2%80%99ER+IMPROVED+FOREST+MANAGEMENT+PROJECT" - } - ], - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "id": "region.115761", - "type": "Feature", - "place_type": [ - "region" - ], - "relevance": 1, - "properties": { - "short_code": "CN-NM", - "wikidata": "Q41079", - "mapbox_id": "dXJuOm1ieHBsYzpBY1F4" - }, - "text": "Inner Mongolia", - "place_name": "Inner Mongolia, China", - "bbox": [ - 97.16984, - 37.405941, - 126.06919, - 53.333188 - ], - "center": [ - 117.037291928367, - 43.9300126765674 - ], - "geometry": { - "type": "Point", - "coordinates": [ - 117.037291928367, - 43.9300126765674 - ] - }, - "context": [ - { - "id": "country.8753", - "short_code": "cn", - "wikidata": "Q148", - "mapbox_id": "dXJuOm1ieHBsYzpJakU", - "text": "China" - } - ] - } -} +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "Inner Mongolia Chao’er Improved Forest Management Project", + "regen:vcsProjectId": 1529, + "regen:toucanProjectTokenId": 84, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0010", + "schema:identifier": "VM0010" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "BB", + "schema:url": "https://bezerocarbon.com/listings/?filter=INNER+MONGOLIA+CHAO%E2%80%99ER+IMPROVED+FOREST+MANAGEMENT+PROJECT" + } + ], + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "id": "region.115761", + "type": "Feature", + "place_type": [ + "region" + ], + "relevance": 1, + "properties": { + "short_code": "CN-NM", + "wikidata": "Q41079", + "mapbox_id": "dXJuOm1ieHBsYzpBY1F4" + }, + "text": "Inner Mongolia", + "place_name": "Inner Mongolia, China", + "bbox": [ + 97.16984, + 37.405941, + 126.06919, + 53.333188 + ], + "center": [ + 117.037291928367, + 43.9300126765674 + ], + "geometry": { + "type": "Point", + "coordinates": [ + 117.037291928367, + 43.9300126765674 + ] + }, + "context": [ + { + "id": "country.8753", + "short_code": "cn", + "wikidata": "Q148", + "mapbox_id": "dXJuOm1ieHBsYzpJakU", + "text": "China" + } + ] + } +} diff --git a/ops/C03/project-metadata/C03-009-project-page.jsonld b/ops/C03/project-metadata/C03-009-project-page.jsonld index 27a5646..7f1357a 100644 --- a/ops/C03/project-metadata/C03-009-project-page.jsonld +++ b/ops/C03/project-metadata/C03-009-project-page.jsonld @@ -1,19 +1,19 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-009", - "regen:creditClassId": "C03", - "schema:description": "This project is implemented in the commercial forest of Yong’an city, where the primary business is forest industry. The existing commercial forest comprises Chinese Fir, Masson Pine and Broad-leaf tree, all the tree species are native to the area. The project aims to improve the forest coverage rate, protect the local ecological environment, reduce carbon emissions and boost carbon sequestration by enhancing forest management. From 2011, the project has strictly canceled the once annual commercial timber harvest and only allowed tending and managing.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-009-preview-photo.jpg" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-009", + "regen:creditClassId": "C03", + "schema:description": "This project is implemented in the commercial forest of Yong’an city, where the primary business is forest industry. The existing commercial forest comprises Chinese Fir, Masson Pine and Broad-leaf tree, all the tree species are native to the area. The project aims to improve the forest coverage rate, protect the local ecological environment, reduce carbon emissions and boost carbon sequestration by enhancing forest management. From 2011, the project has strictly canceled the once annual commercial timber harvest and only allowed tending and managing.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-009-preview-photo.jpg" + } +} diff --git a/ops/C03/project-metadata/C03-009-project.jsonld b/ops/C03/project-metadata/C03-009-project.jsonld index 88bb3ac..a7ca8c8 100644 --- a/ops/C03/project-metadata/C03-009-project.jsonld +++ b/ops/C03/project-metadata/C03-009-project.jsonld @@ -1,87 +1,87 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "Fujian Yong’an Improved Forest Management Project", - "regen:vcsProjectId": 1577, - "regen:toucanProjectTokenId": 17, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0010", - "schema:identifier": "VM0010" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "BB", - "schema:url": "https://bezerocarbon.com/listings/?filter=1577" - } - ], - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "id": "region.123953", - "type": "Feature", - "place_type": [ - "region" - ], - "relevance": 1, - "properties": { - "short_code": "CN-FJ", - "wikidata": "Q41705", - "mapbox_id": "dXJuOm1ieHBsYzpBZVF4" - }, - "text": "Fujian", - "place_name": "Fujian, China", - "bbox": [ - 115.848311, - 23.4692003, - 120.8188524, - 28.316788 - ], - "center": [ - 118.002348291308, - 26.100720341211 - ], - "geometry": { - "type": "Point", - "coordinates": [ - 118.002348291308, - 26.100720341211 - ] - }, - "context": [ - { - "id": "country.8753", - "short_code": "cn", - "wikidata": "Q148", - "mapbox_id": "dXJuOm1ieHBsYzpJakU", - "text": "China" - } - ] - } -} +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "Fujian Yong’an Improved Forest Management Project", + "regen:vcsProjectId": 1577, + "regen:toucanProjectTokenId": 17, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0010", + "schema:identifier": "VM0010" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "BB", + "schema:url": "https://bezerocarbon.com/listings/?filter=1577" + } + ], + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "id": "region.123953", + "type": "Feature", + "place_type": [ + "region" + ], + "relevance": 1, + "properties": { + "short_code": "CN-FJ", + "wikidata": "Q41705", + "mapbox_id": "dXJuOm1ieHBsYzpBZVF4" + }, + "text": "Fujian", + "place_name": "Fujian, China", + "bbox": [ + 115.848311, + 23.4692003, + 120.8188524, + 28.316788 + ], + "center": [ + 118.002348291308, + 26.100720341211 + ], + "geometry": { + "type": "Point", + "coordinates": [ + 118.002348291308, + 26.100720341211 + ] + }, + "context": [ + { + "id": "country.8753", + "short_code": "cn", + "wikidata": "Q148", + "mapbox_id": "dXJuOm1ieHBsYzpJakU", + "text": "China" + } + ] + } +} diff --git a/ops/C03/project-metadata/C03-010-project-page.jsonld b/ops/C03/project-metadata/C03-010-project-page.jsonld index cdb0adf..2d8950e 100644 --- a/ops/C03/project-metadata/C03-010-project-page.jsonld +++ b/ops/C03/project-metadata/C03-010-project-page.jsonld @@ -1,19 +1,19 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-010", - "regen:creditClassId": "C03", - "schema:description": "Yunnan Kunming Liangqu Improved Forest Management Project comprises 6,879hectares of commercial forest, belonging to Lianhe Township and Zhuanlong Town. The project area was designed and planted as a commercial forest. The main objective of the project is to improve the forest coverage rate, protect the local ecological environment, reduce carbon emissions and boost carbon sequestration by enhancing forestry management level. The implementation of the project will result in significant carbon sequestration and improve the sustainable development of the ecological system.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-010-preview-photo.webp" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-010", + "regen:creditClassId": "C03", + "schema:description": "Yunnan Kunming Liangqu Improved Forest Management Project comprises 6,879hectares of commercial forest, belonging to Lianhe Township and Zhuanlong Town. The project area was designed and planted as a commercial forest. The main objective of the project is to improve the forest coverage rate, protect the local ecological environment, reduce carbon emissions and boost carbon sequestration by enhancing forestry management level. The implementation of the project will result in significant carbon sequestration and improve the sustainable development of the ecological system.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-010-preview-photo.webp" + } +} diff --git a/ops/C03/project-metadata/C03-010-project.jsonld b/ops/C03/project-metadata/C03-010-project.jsonld index c01a4af..54e8bf2 100644 --- a/ops/C03/project-metadata/C03-010-project.jsonld +++ b/ops/C03/project-metadata/C03-010-project.jsonld @@ -1,87 +1,87 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "Yunnan Kunming Liangqu Improved Forest Management Project", - "regen:vcsProjectId": 1542, - "regen:toucanProjectTokenId": 18, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0010", - "schema:identifier": "VM0010" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "B", - "schema:url": "https://bezerocarbon.com/listings/?filter=1542" - } - ], - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "id": "region.148529", - "type": "Feature", - "place_type": [ - "region" - ], - "relevance": 1, - "properties": { - "short_code": "CN-YN", - "wikidata": "Q43194", - "mapbox_id": "dXJuOm1ieHBsYzpBa1F4" - }, - "text": "Yunnan", - "place_name": "Yunnan, China", - "bbox": [ - 97.527927, - 21.142391, - 106.19602, - 29.251044 - ], - "center": [ - 101.270076099305, - 24.2915322252249 - ], - "geometry": { - "type": "Point", - "coordinates": [ - 101.270076099305, - 24.2915322252249 - ] - }, - "context": [ - { - "id": "country.8753", - "short_code": "cn", - "wikidata": "Q148", - "mapbox_id": "dXJuOm1ieHBsYzpJakU", - "text": "China" - } - ] - } -} +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "Yunnan Kunming Liangqu Improved Forest Management Project", + "regen:vcsProjectId": 1542, + "regen:toucanProjectTokenId": 18, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0010", + "schema:identifier": "VM0010" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "B", + "schema:url": "https://bezerocarbon.com/listings/?filter=1542" + } + ], + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "id": "region.148529", + "type": "Feature", + "place_type": [ + "region" + ], + "relevance": 1, + "properties": { + "short_code": "CN-YN", + "wikidata": "Q43194", + "mapbox_id": "dXJuOm1ieHBsYzpBa1F4" + }, + "text": "Yunnan", + "place_name": "Yunnan, China", + "bbox": [ + 97.527927, + 21.142391, + 106.19602, + 29.251044 + ], + "center": [ + 101.270076099305, + 24.2915322252249 + ], + "geometry": { + "type": "Point", + "coordinates": [ + 101.270076099305, + 24.2915322252249 + ] + }, + "context": [ + { + "id": "country.8753", + "short_code": "cn", + "wikidata": "Q148", + "mapbox_id": "dXJuOm1ieHBsYzpJakU", + "text": "China" + } + ] + } +} diff --git a/ops/C03/project-metadata/C03-011-project-page.jsonld b/ops/C03/project-metadata/C03-011-project-page.jsonld index 3cee43f..bfa3200 100644 --- a/ops/C03/project-metadata/C03-011-project-page.jsonld +++ b/ops/C03/project-metadata/C03-011-project-page.jsonld @@ -1,19 +1,19 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-011", - "regen:creditClassId": "C03", - "schema:description": "Jiangxi Province Le'an County Forest Farm Carbon Sink Project aims to convert logged forest into a conservation forest and to enhance carbon stocks. The forestry management conversion includes 7,746.7 hectares of logged to protected forest. From the project’s start date of January 1, 2006, all the protected, non-commercial forestry will reduce GHG emissions (as anthropogenic GHG removals by sinks) by approximately 2,877,745 tCO2e in 30 years.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-011-preview-photo.jpeg" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-011", + "regen:creditClassId": "C03", + "schema:description": "Jiangxi Province Le'an County Forest Farm Carbon Sink Project aims to convert logged forest into a conservation forest and to enhance carbon stocks. The forestry management conversion includes 7,746.7 hectares of logged to protected forest. From the project’s start date of January 1, 2006, all the protected, non-commercial forestry will reduce GHG emissions (as anthropogenic GHG removals by sinks) by approximately 2,877,745 tCO2e in 30 years.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-011-preview-photo.jpeg" + } +} diff --git a/ops/C03/project-metadata/C03-011-project.jsonld b/ops/C03/project-metadata/C03-011-project.jsonld index e2cc9d7..31186be 100644 --- a/ops/C03/project-metadata/C03-011-project.jsonld +++ b/ops/C03/project-metadata/C03-011-project.jsonld @@ -1,87 +1,87 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - }, - "regen:ratings": { - "@container": "@list" - } - }, - "schema:name": "Jiangxi Province Le'an County Forest Farm Carbon Sink Project", - "regen:vcsProjectId": 1162, - "regen:toucanProjectTokenId": 22, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0010", - "schema:identifier": "VM0010" - } - ] - }, - "regen:ratings": [ - { - "schema:name": "BeZero Carbon", - "schema:ratingValue": "BBB", - "schema:url": "https://bezerocarbon.com/listings/?filter=1162" - } - ], - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "id": "region.238641", - "type": "Feature", - "place_type": [ - "region" - ], - "relevance": 1, - "properties": { - "short_code": "CN-JX", - "wikidata": "Q57052", - "mapbox_id": "dXJuOm1ieHBsYzpBNlF4" - }, - "text": "Jiangxi", - "place_name": "Jiangxi, China", - "bbox": [ - 113.57497, - 24.488552, - 118.481191, - 30.07944 - ], - "center": [ - 115.572350255125, - 27.5011983595466 - ], - "geometry": { - "type": "Point", - "coordinates": [ - 115.572350255125, - 27.5011983595466 - ] - }, - "context": [ - { - "id": "country.8753", - "short_code": "cn", - "wikidata": "Q148", - "mapbox_id": "dXJuOm1ieHBsYzpJakU", - "text": "China" - } - ] - } -} +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:ratings": { + "@container": "@list" + } + }, + "schema:name": "Jiangxi Province Le'an County Forest Farm Carbon Sink Project", + "regen:vcsProjectId": 1162, + "regen:toucanProjectTokenId": 22, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0010", + "schema:identifier": "VM0010" + } + ] + }, + "regen:ratings": [ + { + "schema:name": "BeZero Carbon", + "schema:ratingValue": "BBB", + "schema:url": "https://bezerocarbon.com/listings/?filter=1162" + } + ], + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "id": "region.238641", + "type": "Feature", + "place_type": [ + "region" + ], + "relevance": 1, + "properties": { + "short_code": "CN-JX", + "wikidata": "Q57052", + "mapbox_id": "dXJuOm1ieHBsYzpBNlF4" + }, + "text": "Jiangxi", + "place_name": "Jiangxi, China", + "bbox": [ + 113.57497, + 24.488552, + 118.481191, + 30.07944 + ], + "center": [ + 115.572350255125, + 27.5011983595466 + ], + "geometry": { + "type": "Point", + "coordinates": [ + 115.572350255125, + 27.5011983595466 + ] + }, + "context": [ + { + "id": "country.8753", + "short_code": "cn", + "wikidata": "Q148", + "mapbox_id": "dXJuOm1ieHBsYzpJakU", + "text": "China" + } + ] + } +} diff --git a/ops/C03/project-metadata/C03-012-project-page.jsonld b/ops/C03/project-metadata/C03-012-project-page.jsonld index 2b3074c..43ab3df 100644 --- a/ops/C03/project-metadata/C03-012-project-page.jsonld +++ b/ops/C03/project-metadata/C03-012-project-page.jsonld @@ -1,19 +1,19 @@ -{ - "@context": { - "schema": "http://schema.org/", - "regen": "https://schema.regen.network#", - "regen:galleryPhotos": { - "@container": "@list" - }, - "schema:url": { - "@type": "schema:URL" - } - }, - "@type": "regen:Project-Page", - "@id": "http://app.regen.network/project/C03-012", - "regen:creditClassId": "C03", - "schema:description": "The North Pikounda REDD+ Project is reducing emission from deforestation and degradation as well as advancing conservation and sustainable forestry practices in 92,530 hectares of unlogged native Congolese forest, legally designated as a selective logging concession. The project halts planned degradation and deforestation activities and instead protects the forest area, while also maintaining and protecting local biodiversity.", - "regen:previewPhoto": { - "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-012-preview-photo.jpg" - } -} +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "regen:galleryPhotos": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + } + }, + "@type": "regen:Project-Page", + "@id": "http://app.regen.network/project/C03-012", + "regen:creditClassId": "C03", + "schema:description": "The North Pikounda REDD+ Project is reducing emission from deforestation and degradation as well as advancing conservation and sustainable forestry practices in 92,530 hectares of unlogged native Congolese forest, legally designated as a selective logging concession. The project halts planned degradation and deforestation activities and instead protects the forest area, while also maintaining and protecting local biodiversity.", + "regen:previewPhoto": { + "schema:url": "https://regen-registry.s3.amazonaws.com/projects/C03/C03-012-preview-photo.jpg" + } +} diff --git a/ops/C03/project-metadata/C03-012-project.jsonld b/ops/C03/project-metadata/C03-012-project.jsonld index a06d70c..e577e7e 100644 --- a/ops/C03/project-metadata/C03-012-project.jsonld +++ b/ops/C03/project-metadata/C03-012-project.jsonld @@ -1,74 +1,74 @@ -{ - "@type": "regen:C03-Project", - "@context": { - "xsd": "http://www.w3.org/2001/XMLSchema#", - "regen": "https://schema.regen.network#", - "schema": "http://schema.org/", - "schema:itemListElement": { - "@container": "@list" - } - }, - "schema:name": "North Pikounda REDD+", - "regen:vcsProjectId": 1052, - "regen:toucanProjectTokenId": 54, - "regen:approvedMethodologies": { - "@type": "schema:ItemList", - "schema:itemListElement": [ - { - "schema:name": "VM0011", - "schema:identifier": "VM0011" - } - ] - }, - "schema:location": { - "@context": { - "type": "@type", - "@vocab": "https://purl.org/geojson/vocab#", - "coordinates": { - "@container": "@list" - }, - "bbox": { - "@container": "@list" - } - }, - "id": "region.42027", - "type": "Feature", - "place_type": [ - "region" - ], - "relevance": 1, - "properties": { - "short_code": "CG-13", - "wikidata": "Q775410", - "mapbox_id": "dXJuOm1ieHBsYzpwQ3M" - }, - "text": "Sangha", - "place_name": "Sangha, Republic of the Congo", - "bbox": [ - 13.125225, - 0.032586, - 16.964951, - 2.729108 - ], - "center": [ - 16.0513456, - 1.6105452 - ], - "geometry": { - "type": "Point", - "coordinates": [ - 16.0513456, - 1.6105452 - ] - }, - "context": [ - { - "id": "country.8747", - "short_code": "cg", - "wikidata": "Q971", - "mapbox_id": "dXJuOm1ieHBsYzpJaXM", - "text": "Republic of the Congo" - } - ] - } -} +{ + "@type": "regen:C03-Project", + "@context": { + "xsd": "http://www.w3.org/2001/XMLSchema#", + "regen": "https://schema.regen.network#", + "schema": "http://schema.org/", + "schema:itemListElement": { + "@container": "@list" + } + }, + "schema:name": "North Pikounda REDD+", + "regen:vcsProjectId": 1052, + "regen:toucanProjectTokenId": 54, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "VM0011", + "schema:identifier": "VM0011" + } + ] + }, + "schema:location": { + "@context": { + "type": "@type", + "@vocab": "https://purl.org/geojson/vocab#", + "coordinates": { + "@container": "@list" + }, + "bbox": { + "@container": "@list" + } + }, + "id": "region.42027", + "type": "Feature", + "place_type": [ + "region" + ], + "relevance": 1, + "properties": { + "short_code": "CG-13", + "wikidata": "Q775410", + "mapbox_id": "dXJuOm1ieHBsYzpwQ3M" + }, + "text": "Sangha", + "place_name": "Sangha, Republic of the Congo", + "bbox": [ + 13.125225, + 0.032586, + 16.964951, + 2.729108 + ], + "center": [ + 16.0513456, + 1.6105452 + ], + "geometry": { + "type": "Point", + "coordinates": [ + 16.0513456, + 1.6105452 + ] + }, + "context": [ + { + "id": "country.8747", + "short_code": "cg", + "wikidata": "Q971", + "mapbox_id": "dXJuOm1ieHBsYzpJaXM", + "text": "Republic of the Congo" + } + ] + } +} diff --git a/ops/C06/credit-class-metadata/C06-credit-class-metadata.jsonld b/ops/C06/credit-class-metadata/C06-credit-class-metadata.jsonld new file mode 100644 index 0000000..c005086 --- /dev/null +++ b/ops/C06/credit-class-metadata/C06-credit-class-metadata.jsonld @@ -0,0 +1,107 @@ +{ + "@context": { + "schema": "http://schema.org/", + "regen": "https://schema.regen.network#", + "xsd": "http://www.w3.org/2001/XMLSchema#", + "schema:itemListElement": { + "@container": "@list" + }, + "schema:url": { + "@type": "schema:URL" + }, + "regen:additionalityAssessment": { + "@container": "@list" + }, + "regen:bufferPoolAccounts": { + "@container": "@list" + }, + "regen:creditingTerm": { + "@type": "schema:Duration" + }, + "regen:creditGenerationMethod": { + "@container": "@list" + }, + "regen:ecosystemType": { + "@container": "@list" + }, + "regen:eligibleActivities": { + "@container": "@list" + }, + "regen:landOwnershipType": { + "@container": "@list" + }, + "regen:lookbackPeriod": { + "@type": "schema:Duration" + }, + "regen:measuredGHGs": { + "@container": "@list" + }, + "regen:permanencePeriod": { + "@type": "schema:Duration" + }, + "regen:sectoralScope": { + "@container": "@list" + }, + "regen:verificationMethods": { + "@container": "@list" + } + }, + "@type": "regen:C06-CreditClass", + "schema:name": "GHG Benefits in Managed Crop and Grassland Systems Credit Class", + "schema:description": "This Credit Class and its supporting measuring and monitoring methodology, focuses on quantifying increases in soil organic carbon sequestration and storage in regenerative cropping and managed grassland agricultural systems.", + "schema:url": "https://registry.regen.network/v/regen-registry-credit-classes/regen-registry-credit-classes-1/ghg-benefits-in-managed-crop-and-grassland-systems-credit-class", + "regen:additionalityAssessment": [ + "Regulatory Surplus" + ], + "regen:allowsAggregatedProjects": true, + "regen:approvedMethodologies": { + "@type": "schema:ItemList", + "schema:itemListElement": [ + { + "schema:name": "Methodology Proposal for Soil Organic Carbon Estimation in Regenerative Cropping and Managed Grassland Ecosystems", + "schema:url": "https://registry.regen.network/v/methodology-library/published-methodologies/soil-organic-carbon-estimation-in-regenerative-cropping-and-managed-grassland-ecosystems", + "schema:identifier": "ecometric-0044", + "schema:version": "V1.1" + } + ] + }, + "regen:bufferPoolAccounts": [ + { + "schema:name": "Blaston Estate Project Specific Buffer Pool", + "regen:walletAddress": "", + "regen:poolAllocation": "20%" + } + ], + "regen:creditingTerm": "P10Y", + "regen:creditGenerationMethod": [ + "Carbon Removal" + ], + "regen:ecosystemType": [ + "Cropland", + "Grassland", + "Pastureland", + "Shrubland" + ], + "regen:eligibleActivities": [ + "Regenerative crop management", + "Managed grazing" + ], + "regen:geographicApplicability": "Global", + "regen:landOwnershipType": [ + "Public", + "Private", + "Tribal" + ], + "regen:lookbackPeriod": "-P10Y", + "regen:measuredGHGs": [ + "Carbon Dioxide (CO2)" + ], + "regen:permanencePeriod": "P10Y", + "regen:sectoralScope": [ + "Agriculture, Forestry, and Other Land Use (AFOLU)" + ], + "regen:verificationMethods": [ + "Third-Party Verification", + "ISO 14066" + ] +} \ No newline at end of file diff --git a/ops/README.md b/ops/README.md index c58c947..845c138 100644 --- a/ops/README.md +++ b/ops/README.md @@ -1,9 +1,9 @@ -# Regen Registry Ops - -Welcome to Regen Registry Ops. This repo contains the metadata for all -projects, credit classes, and credit batches live on Regen Ledger, and should -be used in conjunction with SHACL schemas defined in [Regen Registry -Standards](https://github.com/regen-network/regen-registry-standards) to -generate IRIs for querying metadata based on its content hash. Metadata should -be stored in JSON-LD files copied from the Regen Registry Standards repo with -the appropriate information and filled in with the appropriate information. +# Regen Registry Ops + +Welcome to Regen Registry Ops. This repo contains the metadata for all +projects, credit classes, and credit batches live on Regen Ledger, and should +be used in conjunction with SHACL schemas defined in [Regen Registry +Standards](https://github.com/regen-network/regen-registry-standards) to +generate IRIs for querying metadata based on its content hash. Metadata should +be stored in JSON-LD files copied from the Regen Registry Standards repo with +the appropriate information and filled in with the appropriate information. diff --git a/shacl/common.ttl b/shacl/common.ttl index c10ca89..24fd85d 100644 --- a/shacl/common.ttl +++ b/shacl/common.ttl @@ -1,96 +1,96 @@ -@prefix schema: . -@prefix sh: . -@prefix regen: . -@prefix xsd: . -@prefix dash: . -@prefix rdf: . -@prefix schema: . - -regen:ToucanURIPropertyShape sh:path regen:toucanURI ; - sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:minLength 1 ; -. - -regen:OffsetGenerationMethodPropertyShape sh:path regen:offsetGenerationMethod ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; -. - -regen:CreditGenerationMethodPropertyShape sh:path regen:creditGenerationMethod ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; -. - -regen:OffsetGenerationMethodOptionalPropertyShape sh:path regen:offsetGenerationMethod ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:maxCount 1 ; -. - -regen:ProjectActivitiesPropertyShape sh:path regen:projectActivities ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; -. - -regen:ApprovedMethodologiesPropertyShape sh:path regen:approvedMethodologies ; - sh:class schema:ItemList ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:property [ - sh:path schema:itemListElement ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:node regen:MethodologyVersionShape ; - sh:minCount 1 ; - ] ; - ] ; - sh:property [ - sh:path schema:url ; - sh:maxCount 1 ; - sh:datatype schema:URL ; - ] ; -. - -regen:NameUrlShape a sh:NodeShape ; - sh:property regen:RequiredNamePropertyShape ; - sh:property regen:RequiredUrlPropertyShape ; -. - -regen:RequiredNamePropertyShape sh:path schema:name ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; -. - -regen:RequiredUrlPropertyShape sh:path schema:url ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype schema:URL ; -. +@prefix schema: . +@prefix sh: . +@prefix regen: . +@prefix xsd: . +@prefix dash: . +@prefix rdf: . +@prefix schema: . + +regen:ToucanURIPropertyShape sh:path regen:toucanURI ; + sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:minLength 1 ; +. + +regen:OffsetGenerationMethodPropertyShape sh:path regen:offsetGenerationMethod ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; +. + +regen:CreditGenerationMethodPropertyShape sh:path regen:creditGenerationMethod ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; +. + +regen:OffsetGenerationMethodOptionalPropertyShape sh:path regen:offsetGenerationMethod ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:maxCount 1 ; +. + +regen:ProjectActivitiesPropertyShape sh:path regen:projectActivities ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; +. + +regen:ApprovedMethodologiesPropertyShape sh:path regen:approvedMethodologies ; + sh:class schema:ItemList ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:property [ + sh:path schema:itemListElement ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:node regen:MethodologyVersionShape ; + sh:minCount 1 ; + ] ; + ] ; + sh:property [ + sh:path schema:url ; + sh:maxCount 1 ; + sh:datatype schema:URL ; + ] ; +. + +regen:NameUrlShape a sh:NodeShape ; + sh:property regen:RequiredNamePropertyShape ; + sh:property regen:RequiredUrlPropertyShape ; +. + +regen:RequiredNamePropertyShape sh:path schema:name ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; +. + +regen:RequiredUrlPropertyShape sh:path schema:url ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype schema:URL ; +. diff --git a/shacl/credit-batches/C01-verified-carbon-standard-batch.ttl b/shacl/credit-batches/C01-verified-carbon-standard-batch.ttl index ef656d4..112de33 100644 --- a/shacl/credit-batches/C01-verified-carbon-standard-batch.ttl +++ b/shacl/credit-batches/C01-verified-carbon-standard-batch.ttl @@ -1,48 +1,48 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . - -regen:C01-CreditBatchShape a sh:NodeShape ; - sh:targetClass regen:C01-CreditBatch ; - sh:property [ - sh:path regen:vcsRetirementSerialNumber ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path regen:vcsProjectId ; - sh:datatype xsd:integer ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:additionalCertifications ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:node regen:NameOptionalUrlShape ; - ] ; - sh:maxCount 1 ; - ] ; -. - -regen:NameOptionalUrlShape a sh:NodeShape ; - sh:property [ - sh:path schema:name ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path schema:url ; - sh:maxCount 1 ; - sh:datatype schema:URL ; - ] ; -. +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . + +regen:C01-CreditBatchShape a sh:NodeShape ; + sh:targetClass regen:C01-CreditBatch ; + sh:property [ + sh:path regen:vcsRetirementSerialNumber ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:vcsProjectId ; + sh:datatype xsd:integer ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:additionalCertifications ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:node regen:NameOptionalUrlShape ; + ] ; + sh:maxCount 1 ; + ] ; +. + +regen:NameOptionalUrlShape a sh:NodeShape ; + sh:property [ + sh:path schema:name ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path schema:url ; + sh:maxCount 1 ; + sh:datatype schema:URL ; + ] ; +. diff --git a/shacl/credit-batches/C02-batch.ttl b/shacl/credit-batches/C02-batch.ttl index 54794b0..fe42b0c 100644 --- a/shacl/credit-batches/C02-batch.ttl +++ b/shacl/credit-batches/C02-batch.ttl @@ -1,47 +1,47 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . - -regen:C02-CreditBatchShape a sh:NodeShape ; - sh:targetClass regen:C02-CreditBatch ; - sh:property [ - sh:path regen:cfcCreditSerialNumbers ; - sh:minCount 1 ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - ] ; - ] ; - sh:property [ - sh:path regen:cfcVintageYear ; - sh:datatype xsd:gYear ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:verificationReports ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:node regen:UrlShape ; - ] ; - ] ; - sh:property [ - sh:path regen:projectVerifier ; - sh:node regen:NameUrlShape ; - ] ; -. - -regen:UrlShape a sh:NodeShape ; - sh:property [ - sh:path schema:url ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:datatype schema:URL ; - ] ; -. +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . + +regen:C02-CreditBatchShape a sh:NodeShape ; + sh:targetClass regen:C02-CreditBatch ; + sh:property [ + sh:path regen:cfcCreditSerialNumbers ; + sh:minCount 1 ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + ] ; + ] ; + sh:property [ + sh:path regen:cfcVintageYear ; + sh:datatype xsd:gYear ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:verificationReports ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:node regen:UrlShape ; + ] ; + ] ; + sh:property [ + sh:path regen:projectVerifier ; + sh:node regen:NameUrlShape ; + ] ; +. + +regen:UrlShape a sh:NodeShape ; + sh:property [ + sh:path schema:url ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:datatype schema:URL ; + ] ; +. diff --git a/shacl/credit-batches/C03-batch.ttl b/shacl/credit-batches/C03-batch.ttl index feca88b..cc2c983 100644 --- a/shacl/credit-batches/C03-batch.ttl +++ b/shacl/credit-batches/C03-batch.ttl @@ -1,15 +1,15 @@ -@prefix sh: . -@prefix regen: . -@prefix xsd: . - -regen:C03-CreditBatchShape a sh:NodeShape ; - sh:targetClass regen:C03-CreditBatch ; - - sh:property [ - sh:path regen:toucanVintageTokenId ; - sh:datatype xsd:integer ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property regen:ToucanURIPropertyShape ; -. +@prefix sh: . +@prefix regen: . +@prefix xsd: . + +regen:C03-CreditBatchShape a sh:NodeShape ; + sh:targetClass regen:C03-CreditBatch ; + + sh:property [ + sh:path regen:toucanVintageTokenId ; + sh:datatype xsd:integer ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property regen:ToucanURIPropertyShape ; +. diff --git a/shacl/credit-batches/credit-vintage.ttl b/shacl/credit-batches/credit-vintage.ttl index 7157f99..248557d 100644 --- a/shacl/credit-batches/credit-vintage.ttl +++ b/shacl/credit-batches/credit-vintage.ttl @@ -1,77 +1,77 @@ -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . - -# regen:CreditVintageShape defines generic metadata that goes -# into the credit_vintage.metadata column in the Postgres database. -# -# Note that credit_vintage.metadata could also store other kind of data -# specific to its corresponding credit_class. - -regen:CreditVintageShape - a rdfs:Class, sh:NodeShape ; - sh:targetClass regen:CreditVintage ; - rdfs:subClassOf rdfs:Resource ; - sh:property [ - sh:path regen:bufferDistribution ; - sh:node regen:BufferDistributionShape ; - ] ; - sh:property [ - sh:path regen:additionalCertifications ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - ] ; - ] ; - sh:property [ - sh:path regen:serialNumber ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path regen:initialIssuanceTotalGrossAmount ; - sh:minExclusive 0; - ] ; -. - -# regen:CreditVintageInitialDistributionShape defines a credit vintage initial distribution that is stored -# into the credit_vintage.initial_distribution column in the Postgres database. - -regen:CreditVintageInitialDistributionShape - a rdfs:Class, sh:NodeShape ; - sh:targetClass regen:CreditVintage ; - rdfs:subClassOf rdfs:Resource ; - sh:property [ - sh:path regen:projectDeveloperDistribution ; - sh:minInclusive 0; - sh:maxInclusive 1; - ] ; - sh:property [ - sh:path regen:landStewardDistribution ; - sh:minInclusive 0; - sh:maxInclusive 1; - ] ; - sh:property [ - sh:path regen:landOwnerDistribution ; - sh:minInclusive 0; - sh:maxInclusive 1; - ] ; -. - -regen:BufferDistributionShape - a rdfs:Class, sh:NodeShape ; - sh:property [ - sh:path regen:bufferPool ; - sh:minInclusive 0; - sh:maxInclusive 1; - ] ; - sh:property [ - sh:path regen:permanenceReversalBuffer ; - sh:minInclusive 0; - sh:maxInclusive 1; - ] ; -. +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . + +# regen:CreditVintageShape defines generic metadata that goes +# into the credit_vintage.metadata column in the Postgres database. +# +# Note that credit_vintage.metadata could also store other kind of data +# specific to its corresponding credit_class. + +regen:CreditVintageShape + a rdfs:Class, sh:NodeShape ; + sh:targetClass regen:CreditVintage ; + rdfs:subClassOf rdfs:Resource ; + sh:property [ + sh:path regen:bufferDistribution ; + sh:node regen:BufferDistributionShape ; + ] ; + sh:property [ + sh:path regen:additionalCertifications ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + ] ; + ] ; + sh:property [ + sh:path regen:serialNumber ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:initialIssuanceTotalGrossAmount ; + sh:minExclusive 0; + ] ; +. + +# regen:CreditVintageInitialDistributionShape defines a credit vintage initial distribution that is stored +# into the credit_vintage.initial_distribution column in the Postgres database. + +regen:CreditVintageInitialDistributionShape + a rdfs:Class, sh:NodeShape ; + sh:targetClass regen:CreditVintage ; + rdfs:subClassOf rdfs:Resource ; + sh:property [ + sh:path regen:projectDeveloperDistribution ; + sh:minInclusive 0; + sh:maxInclusive 1; + ] ; + sh:property [ + sh:path regen:landStewardDistribution ; + sh:minInclusive 0; + sh:maxInclusive 1; + ] ; + sh:property [ + sh:path regen:landOwnerDistribution ; + sh:minInclusive 0; + sh:maxInclusive 1; + ] ; +. + +regen:BufferDistributionShape + a rdfs:Class, sh:NodeShape ; + sh:property [ + sh:path regen:bufferPool ; + sh:minInclusive 0; + sh:maxInclusive 1; + ] ; + sh:property [ + sh:path regen:permanenceReversalBuffer ; + sh:minInclusive 0; + sh:maxInclusive 1; + ] ; +. diff --git a/shacl/credit-classes/C01-verified-carbon-standard-class.ttl b/shacl/credit-classes/C01-verified-carbon-standard-class.ttl index c6c4b4c..bb6af7d 100644 --- a/shacl/credit-classes/C01-verified-carbon-standard-class.ttl +++ b/shacl/credit-classes/C01-verified-carbon-standard-class.ttl @@ -1,9 +1,9 @@ -@prefix sh: . -@prefix regen: . -@prefix rdfs: . - -regen:C01-CreditClass rdfs:subClassOf regen:CreditClass . - -regen:C01-CreditClassShape a sh:NodeShape ; - sh:targetClass regen:C01-CreditClass ; -. +@prefix sh: . +@prefix regen: . +@prefix rdfs: . + +regen:C01-CreditClass rdfs:subClassOf regen:CreditClass . + +regen:C01-CreditClassShape a sh:NodeShape ; + sh:targetClass regen:C01-CreditClass ; +. diff --git a/shacl/credit-classes/C02-city-forest-credits-class.ttl b/shacl/credit-classes/C02-city-forest-credits-class.ttl index 9ef165e..50242e2 100644 --- a/shacl/credit-classes/C02-city-forest-credits-class.ttl +++ b/shacl/credit-classes/C02-city-forest-credits-class.ttl @@ -1,24 +1,24 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . - -regen:C02-CreditClass rdfs:subClassOf regen:CreditClass . - -regen:C02-CreditClassShape a sh:NodeShape ; - sh:targetClass regen:C02-CreditClass ; - sh:property regen:ProjectActivitiesPropertyShape; - sh:property [ - sh:path regen:carbonOffsetStandard ; - sh:node regen:NameUrlShape ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - # TODO: eventually this should set on most of our shapes - # this will help us catch missing fields - # sh:closed true ; - # sh:ignoredProperties ( rdf:type ) ; -. +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . + +regen:C02-CreditClass rdfs:subClassOf regen:CreditClass . + +regen:C02-CreditClassShape a sh:NodeShape ; + sh:targetClass regen:C02-CreditClass ; + sh:property regen:ProjectActivitiesPropertyShape; + sh:property [ + sh:path regen:carbonOffsetStandard ; + sh:node regen:NameUrlShape ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + # TODO: eventually this should set on most of our shapes + # this will help us catch missing fields + # sh:closed true ; + # sh:ignoredProperties ( rdf:type ) ; +. diff --git a/shacl/credit-classes/C03-toucan-tco2-class.ttl b/shacl/credit-classes/C03-toucan-tco2-class.ttl index d60d463..6e2bc17 100644 --- a/shacl/credit-classes/C03-toucan-tco2-class.ttl +++ b/shacl/credit-classes/C03-toucan-tco2-class.ttl @@ -1,21 +1,21 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . - -regen:C03-CreditClass rdfs:subClassOf regen:CreditClass . - -regen:C03-CreditClassShape a sh:NodeShape ; - sh:targetClass regen:C03-CreditClass ; - sh:property [ - sh:path regen:tokenizationSource ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - ] ; - sh:property regen:ProjectActivitiesPropertyShape; -. +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . + +regen:C03-CreditClass rdfs:subClassOf regen:CreditClass . + +regen:C03-CreditClassShape a sh:NodeShape ; + sh:targetClass regen:C03-CreditClass ; + sh:property [ + sh:path regen:tokenizationSource ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + ] ; + sh:property regen:ProjectActivitiesPropertyShape; +. diff --git a/shacl/credit-classes/C04-ruuts-credit-class.ttl b/shacl/credit-classes/C04-ruuts-credit-class.ttl index 361b3a6..e7cd4bd 100644 --- a/shacl/credit-classes/C04-ruuts-credit-class.ttl +++ b/shacl/credit-classes/C04-ruuts-credit-class.ttl @@ -1,154 +1,154 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix dash: . -@prefix rdf: . - -regen:C04-CreditClassShape a sh:NodeShape ; - sh:targetClass regen:C04-CreditClass ; - sh:property [ - sh:path regen:measuredGHGs ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:geographicApplicability ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path regen:eligibleActivities ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:landOwnershipType ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:ecosystemType ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:creditingTerm ; - sh:node schema:Duration ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path regen:lookbackPeriod ; - sh:node schema:Duration ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path regen:allowsAggregatedProjects ; - sh:node schema:Boolean ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path regen:monitoringFrequency ; - sh:node schema:Duration ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path regen:verificationFrequency ; - sh:node schema:Duration ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property regen:BufferPoolAccountsShape ; - sh:property [ - sh:path regen:additionalityApproach ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:leakageApproach ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:permanencePeriod ; - sh:node schema:activityDuration ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; -. - -regen:BufferPoolAccountShape a sh:NodeShape ; - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path regen:address ; - sh:datatype xsd:string ; - sh:minCount 1 ; - ] ; - sh:property [ - sh:path regen:poolAllocation ; - sh:datatype xsd:string ; - sh:minCount 1 ; - ] ; -. - -regen:BufferPoolAccountsShape sh:path regen:bufferPoolAccounts ; - sh:node dash:ListShape ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:node regen:BufferPoolAccountShape ; - sh:minCount 1 ; - ] ; -. +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix dash: . +@prefix rdf: . + +regen:C04-CreditClassShape a sh:NodeShape ; + sh:targetClass regen:C04-CreditClass ; + sh:property [ + sh:path regen:measuredGHGs ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:geographicApplicability ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:eligibleActivities ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:landOwnershipType ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:ecosystemType ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:creditingTerm ; + sh:node schema:Duration ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path regen:lookbackPeriod ; + sh:node schema:Duration ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path regen:allowsAggregatedProjects ; + sh:node schema:Boolean ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path regen:monitoringFrequency ; + sh:node schema:Duration ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path regen:verificationFrequency ; + sh:node schema:Duration ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property regen:BufferPoolAccountsShape ; + sh:property [ + sh:path regen:additionalityApproach ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:leakageApproach ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:permanencePeriod ; + sh:node schema:activityDuration ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; +. + +regen:BufferPoolAccountShape a sh:NodeShape ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path regen:address ; + sh:datatype xsd:string ; + sh:minCount 1 ; + ] ; + sh:property [ + sh:path regen:poolAllocation ; + sh:datatype xsd:string ; + sh:minCount 1 ; + ] ; +. + +regen:BufferPoolAccountsShape sh:path regen:bufferPoolAccounts ; + sh:node dash:ListShape ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:node regen:BufferPoolAccountShape ; + sh:minCount 1 ; + ] ; +. diff --git a/shacl/credit-classes/C05-ecometric-credit-class.ttl b/shacl/credit-classes/C05-ecometric-credit-class.ttl new file mode 100644 index 0000000..0dbf260 --- /dev/null +++ b/shacl/credit-classes/C05-ecometric-credit-class.ttl @@ -0,0 +1,123 @@ +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix dash: . +@prefix rdf: . + +regen:C06-CreditClassShape a sh:NodeShape ; + sh:targetClass regen:C06-CreditClass ; + sh:property [ + sh:path regen:allowsAggregatedProjects ; + sh:node schema:Boolean ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:additionalityAssessment ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:bufferPoolAccounts ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:node regen:BufferPoolAccountShape ; + ] ; + sh:minCount 1 ; + sh:maxCount 1; + ] ; + sh:property [ + sh:path regen:creditingTerm ; + sh:node schema:Duration ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:eligibleActivities ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:ecosystemType ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:geographicApplicability ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:landOwnershipType ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:lookbackPeriod ; + sh:node schema:Duration ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:measuredGHGs ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:permanencePeriod ; + sh:node schema:Duration ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; +. + +regen:BufferPoolAccountShape a sh:NodeShape ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path regen:walletAddress ; + sh:datatype xsd:string ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:poolAllocation ; + sh:datatype xsd:string ; + sh:maxCount 1 ; + ] ; +. \ No newline at end of file diff --git a/shacl/credit-classes/credit-class.ttl b/shacl/credit-classes/credit-class.ttl index 8b4020b..008e49c 100644 --- a/shacl/credit-classes/credit-class.ttl +++ b/shacl/credit-classes/credit-class.ttl @@ -1,153 +1,153 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . - -regen:CreditClassShape a sh:NodeShape ; - sh:targetClass - regen:CreditClass, - regen:C01-CreditClass, regen:C02-CreditClass, regen:C03-CreditClass, regen:C04-CreditClass, - regen:KSH01-CreditClass; - sh:property [ - sh:path schema:name ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path schema:description ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - ] ; - sh:property [ - sh:path schema:image ; - sh:datatype schema:URL ; - ] ; - sh:property [ - sh:path regen:sourceRegistry ; - sh:node regen:NameUrlShape ; - ] ; - sh:property [ - sh:path regen:sectoralScope ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:maxCount 1 ; - ] ; - sh:or ( - [ - sh:property regen:OffsetGenerationMethodPropertyShape ; - ] [ - sh:property regen:CreditGenerationMethodPropertyShape ; - ] - ) ; - sh:or ( - [ - sh:property [ - sh:path regen:verificationMethod ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - ] ; - ] [ - sh:property [ - sh:path regen:verificationMethods ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - sh:minLength 1 ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - ] - ) ; - sh:property regen:ApprovedMethodologiesPropertyShape ; - sh:property [ - sh:path regen:certifications ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:node regen:NameUrlShape; - ] ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:primaryImpact ; - sh:nodeKind sh:IRI ; - sh:node regen:OptionalNameSGDsShape ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:coBenefits ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:nodeKind sh:IRI ; - sh:node regen:OptionalNameSGDsShape ; - sh:or ( - [ sh:class regen:MeasuredCoBenefit ] - [ sh:class regen:ProjectBenefit ] - ) - ] ; - sh:maxCount 1 ; - ] -. - -regen:OptionalNameSGDsShape a sh:NodeShape ; - sh:property [ - sh:path schema:name ; - sh:maxCount 1 ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path regen:SDGs ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:nodeKind sh:IRI ; - ] ; - sh:maxCount 1 ; - ] -. - -regen:MethodologyVersionShape a sh:NodeShape ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path schema:identifier ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path schema:version ; - sh:datatype xsd:string ; - sh:maxCount 1 ; - ] ; -. +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . + +regen:CreditClassShape a sh:NodeShape ; + sh:targetClass + regen:CreditClass, + regen:C01-CreditClass, regen:C02-CreditClass, regen:C03-CreditClass, regen:C04-CreditClass, + regen:KSH01-CreditClass; + sh:property [ + sh:path schema:name ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path schema:description ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + ] ; + sh:property [ + sh:path schema:image ; + sh:datatype schema:URL ; + ] ; + sh:property [ + sh:path regen:sourceRegistry ; + sh:node regen:NameUrlShape ; + ] ; + sh:property [ + sh:path regen:sectoralScope ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:maxCount 1 ; + ] ; + sh:or ( + [ + sh:property regen:OffsetGenerationMethodPropertyShape ; + ] [ + sh:property regen:CreditGenerationMethodPropertyShape ; + ] + ) ; + sh:or ( + [ + sh:property [ + sh:path regen:verificationMethod ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + ] ; + ] [ + sh:property [ + sh:path regen:verificationMethods ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + sh:minLength 1 ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + ] + ) ; + sh:property regen:ApprovedMethodologiesPropertyShape ; + sh:property [ + sh:path regen:certifications ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:node regen:NameUrlShape; + ] ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:primaryImpact ; + sh:nodeKind sh:IRI ; + sh:node regen:OptionalNameSGDsShape ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:coBenefits ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:nodeKind sh:IRI ; + sh:node regen:OptionalNameSGDsShape ; + sh:or ( + [ sh:class regen:MeasuredCoBenefit ] + [ sh:class regen:ProjectBenefit ] + ) + ] ; + sh:maxCount 1 ; + ] +. + +regen:OptionalNameSGDsShape a sh:NodeShape ; + sh:property [ + sh:path schema:name ; + sh:maxCount 1 ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:SDGs ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:nodeKind sh:IRI ; + ] ; + sh:maxCount 1 ; + ] +. + +regen:MethodologyVersionShape a sh:NodeShape ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path schema:identifier ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path schema:version ; + sh:datatype xsd:string ; + sh:maxCount 1 ; + ] ; +. diff --git a/shacl/credit-classes/credit-class.ttl.legacy b/shacl/credit-classes/credit-class.ttl.legacy index e31a7c9..fab8ded 100644 --- a/shacl/credit-classes/credit-class.ttl.legacy +++ b/shacl/credit-classes/credit-class.ttl.legacy @@ -1,77 +1,77 @@ -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . - -# regen:CreditClassVersionShape defines the metadata that goes -# into the credit_class_version.metadata column in the Postgres database. - -regen:CreditClassVersionShape - a rdfs:Class, sh:NodeShape ; - sh:targetClass regen:CreditClass ; - rdfs:subClassOf rdfs:Resource ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - ] ; - sh:property [ - sh:path regen:offsetGenerationMethod ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path regen:creditDenom ; - sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:minCount 1 ; - ] ; - sh:property [ - sh:path regen:SDGs ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:nodeKind sh:IRI ; - sh:class regen:SDG ; - ] ; - ] ; - - # The following properties are based on https://app.mural.co/t/exploros/m/exploros/1626198876689/ecd285bfe106442917d13fb94421b33de7f5d981?sender=marie6396 - # which is still WIP so subject to change. - sh:property [ - sh:path regen:ecosystemType ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path regen:projectType ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path regen:indicator ; - sh:nodeKind sh:IRI ; - sh:class regen:Indicator ; - ] ; - sh:property [ - sh:path regen:unit ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path regen:methods ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:class regen:Methodology ; - sh:nodeKind sh:IRI ; - ] ; - ] ; - sh:property [ - sh:path regen:coBenefits ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:class regen:Indicator ; - sh:nodeKind sh:IRI ; - ] ; - ] ; -. +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . + +# regen:CreditClassVersionShape defines the metadata that goes +# into the credit_class_version.metadata column in the Postgres database. + +regen:CreditClassVersionShape + a rdfs:Class, sh:NodeShape ; + sh:targetClass regen:CreditClass ; + rdfs:subClassOf rdfs:Resource ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + ] ; + sh:property [ + sh:path regen:offsetGenerationMethod ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:creditDenom ; + sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:minCount 1 ; + ] ; + sh:property [ + sh:path regen:SDGs ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:nodeKind sh:IRI ; + sh:class regen:SDG ; + ] ; + ] ; + + # The following properties are based on https://app.mural.co/t/exploros/m/exploros/1626198876689/ecd285bfe106442917d13fb94421b33de7f5d981?sender=marie6396 + # which is still WIP so subject to change. + sh:property [ + sh:path regen:ecosystemType ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:projectType ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:indicator ; + sh:nodeKind sh:IRI ; + sh:class regen:Indicator ; + ] ; + sh:property [ + sh:path regen:unit ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:methods ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:class regen:Methodology ; + sh:nodeKind sh:IRI ; + ] ; + ] ; + sh:property [ + sh:path regen:coBenefits ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:class regen:Indicator ; + sh:nodeKind sh:IRI ; + ] ; + ] ; +. diff --git a/shacl/methodologies/methodology.ttl b/shacl/methodologies/methodology.ttl index a9d1eeb..83bae75 100644 --- a/shacl/methodologies/methodology.ttl +++ b/shacl/methodologies/methodology.ttl @@ -1,33 +1,33 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix dash: . -@prefix rdf: . - -regen:MethodologyVersionShape a sh:NodeShape ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path schema:identifier ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path schema:version ; - sh:datatype xsd:string ; - sh:maxCount 1 ; - ] ; -. - +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix dash: . +@prefix rdf: . + +regen:MethodologyVersionShape a sh:NodeShape ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path schema:identifier ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path schema:version ; + sh:datatype xsd:string ; + sh:maxCount 1 ; + ] ; +. + diff --git a/shacl/projects/C01-project.ttl b/shacl/projects/C01-project.ttl index b0bab9c..b9cd1ff 100644 --- a/shacl/projects/C01-project.ttl +++ b/shacl/projects/C01-project.ttl @@ -1,21 +1,21 @@ -@prefix sh: . -@prefix regen: . -@prefix rdfs: . - -regen:C01-Project rdfs:subClassOf regen:Project . - -# Anchored - -regen:C01-ProjectShape a sh:NodeShape ; - sh:targetClass regen:C01-Project ; - sh:property regen:ProjectSizePropertyShape ; - sh:property regen:ProjectActivityPropertyShape ; - sh:property regen:ProjectStartDatePropertyShape ; - sh:property regen:ProjectEndDatePropertyShape ; - sh:property regen:ProjectTypePropertyShape ; - sh:property regen:OffsetGenerationMethodPropertyShape ; - sh:property regen:VCSProjectIdPropertyShape ; - sh:property regen:VCSProjectPagePropertyShape ; - sh:property regen:VCSMethodologyPropertyShape -. - +@prefix sh: . +@prefix regen: . +@prefix rdfs: . + +regen:C01-Project rdfs:subClassOf regen:Project . + +# Anchored + +regen:C01-ProjectShape a sh:NodeShape ; + sh:targetClass regen:C01-Project ; + sh:property regen:ProjectSizePropertyShape ; + sh:property regen:ProjectActivityPropertyShape ; + sh:property regen:ProjectStartDatePropertyShape ; + sh:property regen:ProjectEndDatePropertyShape ; + sh:property regen:ProjectTypePropertyShape ; + sh:property regen:OffsetGenerationMethodPropertyShape ; + sh:property regen:VCSProjectIdPropertyShape ; + sh:property regen:VCSProjectPagePropertyShape ; + sh:property regen:VCSMethodologyPropertyShape +. + diff --git a/shacl/projects/C02-project.ttl b/shacl/projects/C02-project.ttl index 8557bc6..c446e9a 100644 --- a/shacl/projects/C02-project.ttl +++ b/shacl/projects/C02-project.ttl @@ -1,33 +1,33 @@ -@prefix schema: . -@prefix sh: . -@prefix regen: . -@prefix rdfs: . - -regen:C02-Project rdfs:subClassOf regen:Project . - -regen:C02-ProjectShape a sh:NodeShape ; - sh:targetClass regen:C02-Project ; - sh:property regen:ProjectSizePropertyShape ; - sh:property regen:ProjectActivityPropertyShape ; - sh:property regen:ProjectStartDatePropertyShape ; - sh:property regen:ProjectEndDatePropertyShape ; - sh:property regen:ProjectTypePropertyShape ; - - sh:property regen:OffsetGenerationMethodPropertyShape ; - sh:property regen:CFCProjectIdPropertyShape ; - sh:property regen:CFCProjectPagePropertyShape ; - sh:property regen:ProjectDesignDocumentPropertyShape ; - sh:property regen:OffsetProtocolPropertyShape ; -. - -regen:ProjectDesignDocumentPropertyShape sh:path regen:projectDesignDocument ; - sh:datatype schema:URL ; - sh:minCount 1 ; - sh:maxCount 1 ; -. - -regen:OffsetProtocolPropertyShape sh:path regen:offsetProtocol ; - sh:node regen:NameUrlVersionShape ; - sh:minCount 1 ; - sh:maxCount 1 ; -. +@prefix schema: . +@prefix sh: . +@prefix regen: . +@prefix rdfs: . + +regen:C02-Project rdfs:subClassOf regen:Project . + +regen:C02-ProjectShape a sh:NodeShape ; + sh:targetClass regen:C02-Project ; + sh:property regen:ProjectSizePropertyShape ; + sh:property regen:ProjectActivityPropertyShape ; + sh:property regen:ProjectStartDatePropertyShape ; + sh:property regen:ProjectEndDatePropertyShape ; + sh:property regen:ProjectTypePropertyShape ; + + sh:property regen:OffsetGenerationMethodPropertyShape ; + sh:property regen:CFCProjectIdPropertyShape ; + sh:property regen:CFCProjectPagePropertyShape ; + sh:property regen:ProjectDesignDocumentPropertyShape ; + sh:property regen:OffsetProtocolPropertyShape ; +. + +regen:ProjectDesignDocumentPropertyShape sh:path regen:projectDesignDocument ; + sh:datatype schema:URL ; + sh:minCount 1 ; + sh:maxCount 1 ; +. + +regen:OffsetProtocolPropertyShape sh:path regen:offsetProtocol ; + sh:node regen:NameUrlVersionShape ; + sh:minCount 1 ; + sh:maxCount 1 ; +. diff --git a/shacl/projects/C03-project.ttl b/shacl/projects/C03-project.ttl index 0bc7cc8..bb26471 100644 --- a/shacl/projects/C03-project.ttl +++ b/shacl/projects/C03-project.ttl @@ -1,22 +1,22 @@ -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix rdfs: . - -regen:C03-Project rdfs:subClassOf regen:Project . - -regen:C03-ProjectShape a sh:NodeShape ; - sh:targetClass regen:C03-Project ; - - sh:property [ - sh:path regen:toucanProjectTokenId ; - sh:datatype xsd:integer ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property regen:VCSProjectIdPropertyShape ; - sh:property regen:ToucanURIPropertyShape ; - - sh:property regen:ApprovedMethodologiesPropertyShape ; -. +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix rdfs: . + +regen:C03-Project rdfs:subClassOf regen:Project . + +regen:C03-ProjectShape a sh:NodeShape ; + sh:targetClass regen:C03-Project ; + + sh:property [ + sh:path regen:toucanProjectTokenId ; + sh:datatype xsd:integer ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property regen:VCSProjectIdPropertyShape ; + sh:property regen:ToucanURIPropertyShape ; + + sh:property regen:ApprovedMethodologiesPropertyShape ; +. diff --git a/shacl/projects/common.ttl b/shacl/projects/common.ttl index 11741fc..f185d70 100644 --- a/shacl/projects/common.ttl +++ b/shacl/projects/common.ttl @@ -1,294 +1,294 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix rdfs: . -@prefix geojson: . -@prefix dash: . -@prefix rdf: . -@prefix qudt: . -@prefix unit: . - -regen:NamePropertyShape sh:path schema:name ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageBasicInfoGroup ; -. - -regen:DescriptionPropertyShape sh:path schema:description ; - sh:maxLength 600 ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageDescriptionGroup ; -. - -regen:LocationPropertyShape sh:path schema:location ; - sh:class geojson:Feature ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageLocationGroup ; -. - -regen:ProjectSizeShape a sh:NodeShape ; - sh:property [ - sh:path qudt:unit ; - sh:datatype qudt:Unit ; - sh:in ( "unit:HA"^^qudt:Unit "unit:AC"^^qudt:Unit ) ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageBasicInfoGroup ; - ] ; - sh:property [ - sh:path qudt:numericValue ; - sh:minExclusive 0 ; - sh:datatype xsd:double ; - sh:maxCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageBasicInfoGroup ; - ] ; -. - -regen:ProjectSizePropertyShape sh:path regen:projectSize ; - sh:node regen:ProjectSizeShape ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageBasicInfoGroup ; -. - -regen:ProjectSizeOptionalPropertyShape sh:path regen:projectSize ; - sh:node regen:ProjectSizeShape ; - sh:maxCount 1 ; - sh:group regen:ProjectPageBasicInfoGroup ; -. - -regen:ProjectActivityPropertyShape sh:path regen:projectActivity ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:node regen:NameOptionalUrlShape ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:ProjectActivityOptionalPropertyShape sh:path regen:projectActivity ; - sh:maxCount 1 ; - sh:node regen:NameOptionalUrlShape ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:ProjectStartDatePropertyShape sh:path regen:projectStartDate ; - sh:datatype xsd:date ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:ProjectOptionalStartDatePropertyShape sh:path regen:projectStartDate ; - sh:datatype xsd:date ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:ProjectEndDatePropertyShape sh:path regen:projectEndDate ; - sh:datatype xsd:date ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:ProjectOptionalEndDatePropertyShape sh:path regen:projectEndDate ; - sh:datatype xsd:date ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:ProjectTypePropertyShape sh:path regen:projectType ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:ProjectTypeOptionalPropertyShape sh:path regen:projectType ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:PreviewPhotoPropertyShape sh:path regen:previewPhoto ; - sh:group regen:ProjectPageMediaGroup ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - sh:maxCount 1 ; - sh:minCount 1 ; - ] ; - sh:property [ - sh:path schema:creditText ; - sh:datatype xsd:string ; - sh:minLength 1 ; - sh:maxCount 1 ; - ] ; -. - -regen:GalleryPhotosPropertyShape sh:path regen:galleryPhotos ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:node [ - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - sh:maxCount 1 ; - sh:minCount 1 ; - ] ; - sh:property [ - sh:path schema:creditText ; - sh:datatype xsd:string ; - sh:minLength 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path schema:caption ; - sh:datatype xsd:string ; - sh:minLength 1 ; - sh:maxCount 1 ; - ] ; - ] ; - sh:group regen:ProjectPageMediaGroup ; - ] ; - sh:group regen:ProjectPageMediaGroup ; -. - -regen:VideoURLPropertyShape sh:path regen:videoURL ; - sh:datatype schema:URL ; - sh:group regen:ProjectPageMediaGroup ; -. - -regen:VCSProjectIdPropertyShape sh:path regen:vcsProjectId ; - sh:datatype xsd:integer ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:VCSProjectPagePropertyShape sh:path regen:vcsProjectPage ; - sh:datatype schema:URL ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:VCSMethodologyPropertyShape sh:path regen:vcsMethodology ; - sh:node regen:NameUrlShape ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:CFCProjectIdPropertyShape sh:path regen:cfcProjectId ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; -. - -regen:CFCProjectPagePropertyShape sh:path regen:cfcProjectPage ; - sh:datatype schema:URL ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMetadataGroup ; -. - -regen:ProjectDeveloperPropertyShape sh:path regen:projectDeveloper ; - sh:node regen:ProjectRoleShape ; - sh:maxCount 1 ; - sh:group regen:ProjectPageRolesGroup ; -. - -regen:ProjectVerifierPropertyShape sh:path regen:projectVerifier ; - sh:node regen:ProjectRoleShape ; - sh:maxCount 1 ; - sh:group regen:ProjectPageRolesGroup ; -. - -regen:ProjectRoleShape - a sh:NodeShape ; - sh:targetClass - regen:Individual , - regen:IndividualDisplay , - regen:Organization , - regen:OrganizationDisplay ; - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:group regen:ProjectPageRolesGroup ; - ] ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - sh:maxCount 1 ; - sh:group regen:ProjectPageRolesGroup ; - ] ; - sh:property [ - sh:path schema:image ; - sh:datatype schema:URL ; - sh:group regen:ProjectPageRolesGroup ; - ] ; - sh:property regen:DescriptionPropertyShape ; - sh:property [ - sh:path regen:address ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageRolesGroup ; - ] ; -. - -regen:NameUrlVersionShape a sh:NodeShape ; - sh:targetClass regen:NameUrlVersionUrl; - sh:property regen:RequiredNamePropertyShape ; - sh:property regen:RequiredUrlPropertyShape ; - sh:property regen:RequiredVersionPropertyShape ; -. - -regen:RequiredVersionPropertyShape sh:path schema:version ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:group regen:ProjectPageMetadataGroup ; - sh:datatype xsd:string ; -. - -# Groups - -regen:ProjectPageBasicInfoGroup - a sh:PropertyGroup ; - rdfs:label "Basic Info" ; - sh:order "1"^^xsd:decimal . - -regen:ProjectPageLocationGroup - a sh:PropertyGroup ; - rdfs:label "Location" ; - sh:order "2"^^xsd:decimal . - -regen:ProjectPageRolesGroup - a sh:PropertyGroup ; - rdfs:label "Roles" ; - sh:order "3"^^xsd:decimal . - -regen:ProjectPageDescriptionGroup - a sh:PropertyGroup ; - rdfs:label "Description" ; - sh:order "4"^^xsd:decimal . - -regen:ProjectPageMediaGroup - a sh:PropertyGroup ; - rdfs:label "Media" ; - sh:order "5"^^xsd:decimal . - -regen:ProjectPageMetadataGroup - a sh:PropertyGroup ; - rdfs:label "Metadata" ; - sh:order "6"^^xsd:decimal . +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix rdfs: . +@prefix geojson: . +@prefix dash: . +@prefix rdf: . +@prefix qudt: . +@prefix unit: . + +regen:NamePropertyShape sh:path schema:name ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageBasicInfoGroup ; +. + +regen:DescriptionPropertyShape sh:path schema:description ; + sh:maxLength 600 ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageDescriptionGroup ; +. + +regen:LocationPropertyShape sh:path schema:location ; + sh:class geojson:Feature ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageLocationGroup ; +. + +regen:ProjectSizeShape a sh:NodeShape ; + sh:property [ + sh:path qudt:unit ; + sh:datatype qudt:Unit ; + sh:in ( "unit:HA"^^qudt:Unit "unit:AC"^^qudt:Unit ) ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageBasicInfoGroup ; + ] ; + sh:property [ + sh:path qudt:numericValue ; + sh:minExclusive 0 ; + sh:datatype xsd:double ; + sh:maxCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageBasicInfoGroup ; + ] ; +. + +regen:ProjectSizePropertyShape sh:path regen:projectSize ; + sh:node regen:ProjectSizeShape ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageBasicInfoGroup ; +. + +regen:ProjectSizeOptionalPropertyShape sh:path regen:projectSize ; + sh:node regen:ProjectSizeShape ; + sh:maxCount 1 ; + sh:group regen:ProjectPageBasicInfoGroup ; +. + +regen:ProjectActivityPropertyShape sh:path regen:projectActivity ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:node regen:NameOptionalUrlShape ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:ProjectActivityOptionalPropertyShape sh:path regen:projectActivity ; + sh:maxCount 1 ; + sh:node regen:NameOptionalUrlShape ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:ProjectStartDatePropertyShape sh:path regen:projectStartDate ; + sh:datatype xsd:date ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:ProjectOptionalStartDatePropertyShape sh:path regen:projectStartDate ; + sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:ProjectEndDatePropertyShape sh:path regen:projectEndDate ; + sh:datatype xsd:date ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:ProjectOptionalEndDatePropertyShape sh:path regen:projectEndDate ; + sh:datatype xsd:date ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:ProjectTypePropertyShape sh:path regen:projectType ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:ProjectTypeOptionalPropertyShape sh:path regen:projectType ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:PreviewPhotoPropertyShape sh:path regen:previewPhoto ; + sh:group regen:ProjectPageMediaGroup ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + sh:maxCount 1 ; + sh:minCount 1 ; + ] ; + sh:property [ + sh:path schema:creditText ; + sh:datatype xsd:string ; + sh:minLength 1 ; + sh:maxCount 1 ; + ] ; +. + +regen:GalleryPhotosPropertyShape sh:path regen:galleryPhotos ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:node [ + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + sh:maxCount 1 ; + sh:minCount 1 ; + ] ; + sh:property [ + sh:path schema:creditText ; + sh:datatype xsd:string ; + sh:minLength 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path schema:caption ; + sh:datatype xsd:string ; + sh:minLength 1 ; + sh:maxCount 1 ; + ] ; + ] ; + sh:group regen:ProjectPageMediaGroup ; + ] ; + sh:group regen:ProjectPageMediaGroup ; +. + +regen:VideoURLPropertyShape sh:path regen:videoURL ; + sh:datatype schema:URL ; + sh:group regen:ProjectPageMediaGroup ; +. + +regen:VCSProjectIdPropertyShape sh:path regen:vcsProjectId ; + sh:datatype xsd:integer ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:VCSProjectPagePropertyShape sh:path regen:vcsProjectPage ; + sh:datatype schema:URL ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:VCSMethodologyPropertyShape sh:path regen:vcsMethodology ; + sh:node regen:NameUrlShape ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:CFCProjectIdPropertyShape sh:path regen:cfcProjectId ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; +. + +regen:CFCProjectPagePropertyShape sh:path regen:cfcProjectPage ; + sh:datatype schema:URL ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMetadataGroup ; +. + +regen:ProjectDeveloperPropertyShape sh:path regen:projectDeveloper ; + sh:node regen:ProjectRoleShape ; + sh:maxCount 1 ; + sh:group regen:ProjectPageRolesGroup ; +. + +regen:ProjectVerifierPropertyShape sh:path regen:projectVerifier ; + sh:node regen:ProjectRoleShape ; + sh:maxCount 1 ; + sh:group regen:ProjectPageRolesGroup ; +. + +regen:ProjectRoleShape + a sh:NodeShape ; + sh:targetClass + regen:Individual , + regen:IndividualDisplay , + regen:Organization , + regen:OrganizationDisplay ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:group regen:ProjectPageRolesGroup ; + ] ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + sh:maxCount 1 ; + sh:group regen:ProjectPageRolesGroup ; + ] ; + sh:property [ + sh:path schema:image ; + sh:datatype schema:URL ; + sh:group regen:ProjectPageRolesGroup ; + ] ; + sh:property regen:DescriptionPropertyShape ; + sh:property [ + sh:path regen:address ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageRolesGroup ; + ] ; +. + +regen:NameUrlVersionShape a sh:NodeShape ; + sh:targetClass regen:NameUrlVersionUrl; + sh:property regen:RequiredNamePropertyShape ; + sh:property regen:RequiredUrlPropertyShape ; + sh:property regen:RequiredVersionPropertyShape ; +. + +regen:RequiredVersionPropertyShape sh:path schema:version ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:group regen:ProjectPageMetadataGroup ; + sh:datatype xsd:string ; +. + +# Groups + +regen:ProjectPageBasicInfoGroup + a sh:PropertyGroup ; + rdfs:label "Basic Info" ; + sh:order "1"^^xsd:decimal . + +regen:ProjectPageLocationGroup + a sh:PropertyGroup ; + rdfs:label "Location" ; + sh:order "2"^^xsd:decimal . + +regen:ProjectPageRolesGroup + a sh:PropertyGroup ; + rdfs:label "Roles" ; + sh:order "3"^^xsd:decimal . + +regen:ProjectPageDescriptionGroup + a sh:PropertyGroup ; + rdfs:label "Description" ; + sh:order "4"^^xsd:decimal . + +regen:ProjectPageMediaGroup + a sh:PropertyGroup ; + rdfs:label "Media" ; + sh:order "5"^^xsd:decimal . + +regen:ProjectPageMetadataGroup + a sh:PropertyGroup ; + rdfs:label "Metadata" ; + sh:order "6"^^xsd:decimal . diff --git a/shacl/projects/project-page.ttl b/shacl/projects/project-page.ttl index 819aec0..1dca7ef 100644 --- a/shacl/projects/project-page.ttl +++ b/shacl/projects/project-page.ttl @@ -1,108 +1,108 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . - -# Unanchored - single schema for all credit classes - -regen:ProjectPageShape a sh:NodeShape ; - sh:targetClass regen:Project-Page ; - - sh:property [ - sh:path regen:creditClassId ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - - sh:property regen:DescriptionPropertyShape ; - sh:property regen:PreviewPhotoPropertyShape ; - sh:property regen:GalleryPhotosPropertyShape ; - - sh:property [ - sh:path regen:storyMedia ; - sh:maxCount 1 ; - sh:or ( - [ sh:class schema:VideoObject ] - [ sh:class schema:PhotoObject ] - ) - ] ; - - # this constraint says that story and storyTitle are coupled. - # you cannot have one without the other but it is OK for a project page to not have them. - # in other words, if a project page has a story it must have a storyTitle (and vice-versa). - sh:or ( - # if the value node does not conform to this first condition, the "or" short circuits. - # so if neither of these fields are found, this schema is not subject to added constraints. - # if one of these fields is present, we proceed to the next condition. - [ sh:not [ - sh:or ( - [ sh:path regen:story ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] - [ sh:path regen:storyTitle ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] - ) - ] - ] - # otherwise make sure that both regen:story and regen:storyTitle are set properly - [ - sh:and ( - [ sh:path regen:story ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:maxLength 2000 ; - sh:datatype xsd:string - ] - [ - sh:path regen:storyTitle ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:maxLength 120 ; - sh:datatype xsd:string - ] - ) - ] - ); -. - -regen:VideoObjectNodeShape sh:a sh:NodeShape ; - sh:targetClass - schema:VideoObject ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - sh:minLength 1 ; - sh:maxCount 1 ; - sh:minCount 1 ; - ] ; -. - -regen:PhotoObjectNodeShape sh:a sh:NodeShape ; - sh:targetClass - schema:PhotoObject ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - sh:minLength 1 ; - sh:maxCount 1 ; - sh:minCount 1 ; - ] ; - sh:property [ - sh:path schema:creditText ; - sh:datatype xsd:string ; - sh:minLength 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path schema:caption ; - sh:datatype xsd:string ; - sh:minLength 1 ; - sh:maxCount 1 ; - ] ; -. +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . + +# Unanchored - single schema for all credit classes + +regen:ProjectPageShape a sh:NodeShape ; + sh:targetClass regen:Project-Page ; + + sh:property [ + sh:path regen:creditClassId ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + + sh:property regen:DescriptionPropertyShape ; + sh:property regen:PreviewPhotoPropertyShape ; + sh:property regen:GalleryPhotosPropertyShape ; + + sh:property [ + sh:path regen:storyMedia ; + sh:maxCount 1 ; + sh:or ( + [ sh:class schema:VideoObject ] + [ sh:class schema:PhotoObject ] + ) + ] ; + + # this constraint says that story and storyTitle are coupled. + # you cannot have one without the other but it is OK for a project page to not have them. + # in other words, if a project page has a story it must have a storyTitle (and vice-versa). + sh:or ( + # if the value node does not conform to this first condition, the "or" short circuits. + # so if neither of these fields are found, this schema is not subject to added constraints. + # if one of these fields is present, we proceed to the next condition. + [ sh:not [ + sh:or ( + [ sh:path regen:story ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + [ sh:path regen:storyTitle ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] + ) + ] + ] + # otherwise make sure that both regen:story and regen:storyTitle are set properly + [ + sh:and ( + [ sh:path regen:story ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:maxLength 2000 ; + sh:datatype xsd:string + ] + [ + sh:path regen:storyTitle ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:maxLength 120 ; + sh:datatype xsd:string + ] + ) + ] + ); +. + +regen:VideoObjectNodeShape sh:a sh:NodeShape ; + sh:targetClass + schema:VideoObject ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + sh:minLength 1 ; + sh:maxCount 1 ; + sh:minCount 1 ; + ] ; +. + +regen:PhotoObjectNodeShape sh:a sh:NodeShape ; + sh:targetClass + schema:PhotoObject ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + sh:minLength 1 ; + sh:maxCount 1 ; + sh:minCount 1 ; + ] ; + sh:property [ + sh:path schema:creditText ; + sh:datatype xsd:string ; + sh:minLength 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path schema:caption ; + sh:datatype xsd:string ; + sh:minLength 1 ; + sh:maxCount 1 ; + ] ; +. diff --git a/shacl/projects/project-page.ttl.legacy b/shacl/projects/project-page.ttl.legacy index a4bca46..1f65fc6 100644 --- a/shacl/projects/project-page.ttl.legacy +++ b/shacl/projects/project-page.ttl.legacy @@ -1,526 +1,526 @@ -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix geojson: . -@prefix qudt_unit: . -@prefix qudt: . - -# Node and Property Shapes - -# Legacy version.. -regen:ProjectPageShape - a rdfs:Class, sh:NodeShape ; - sh:targetClass regen:ProjectPage ; - rdfs:label "Project Page" ; - rdfs:subClassOf rdfs:Resource ; - - sh:property [ - sh:path regen:creditClass ; - sh:class regen:CreditClass ; - sh:nodeKind sh:IRI ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:group regen:ProjectPageCreditClassGroup ; - ] ; - sh:property [ - sh:path schema:name ; - sh:name "Project name" ; - rdfs:label "project name" ; - sh:description "This is the name of the farm, ranch, property, or conservation project." ; - sh:datatype xsd:string ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:minLength 1 ; - sh:group regen:ProjectPageBasicInfoGroup ; - ] ; - sh:property [ - sh:path regen:projectSize ; - sh:name "Size in hectares or acres" ; - rdfs:label "size" ; - sh:maxCount 1 ; - sh:minCount 1 ; - sh:group regen:ProjectPageBasicInfoGroup ; - sh:node regen:ProjectSizeShape ; - ] ; - sh:property [ - sh:path schema:location ; - sh:name "Location" ; - sh:description "Type an address or latitude/longitude coordinates. This is the location that will appear in the project contracts, and on your project page." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageLocationGroup ; - sh:class geojson:Feature ; - ] ; - sh:property [ - sh:path regen:boundaries ; - sh:name "Upload GIS data" ; - sh:description "You may upload .shp, .kml, or .json files" ; - sh:datatype schema:URL ; - # Commented until we implement it in the form UI - # sh:minCount 1 ; - # sh:maxCount 1 ; - # sh:group regen:ProjectPageLocationGroup ; - ] ; - sh:or ( - [ - sh:property [ - sh:path regen:landOwner ; - sh:name "Land Owner" ; - sh:description "The individual or organization that owns this land." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:node regen:RoleShape; - sh:group regen:ProjectPageRolesGroup ; - ] - ] - [ - sh:property [ - sh:path regen:landSteward ; - sh:name "Land Steward" ; - sh:description "The individual or organization that is performing the work on the ground. This can be a farmer, rancher, conservationist, forester, fisherman, etc." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:node regen:RoleShape; - sh:group regen:ProjectPageRolesGroup ; - ] - ] - [ - sh:property [ - sh:path regen:projectDeveloper ; - sh:name "Project Developer" ; - sh:description "The individual or organization that is in charge of managing the project and is the main point of contact with Regen Registry." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:node regen:RoleShape; - sh:group regen:ProjectPageRolesGroup ; - ] - ] - [ - sh:property [ - sh:path regen:projectOriginator ; - sh:name "Project Originator" ; - sh:description "The individual or organization that helps initiate the project." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:node regen:RoleShape; - sh:group regen:ProjectPageRolesGroup ; - ] - ] - ) ; - # We should show at least one of the project stakeholders on the project page. - sh:property [ - sh:path regen:projectStakeholder ; - sh:name "Choose the entities to show on the project page:" ; - sh:description "Showing more entities increases the salability of the project. You must show at least one entity on the project page. These entities can only be edited in the previous step." ; - sh:group regen:ProjectPageEntityDisplayGroup ; - sh:or ( - [ - sh:property [ - sh:path ( regen:landOwner regen:showOnProjectPage ) ; - sh:hasValue true; - ] - ] - [ - sh:property [ - sh:path ( regen:landSteward regen:showOnProjectPage ) ; - sh:hasValue true; - ] - ] - [ - sh:property [ - sh:path ( regen:projectDeveloper regen:showOnProjectPage ) ; - sh:hasValue true; - ] - ] - [ - sh:property [ - sh:path ( regen:projectOriginator regen:showOnProjectPage ) ; - sh:hasValue true; - ] - ] - ) ; - ] ; - sh:or ( - [ - sh:property [ - sh:path regen:landOwner ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:node regen:RoleDisplayShape ; - sh:group regen:ProjectPageEntityDisplayGroup ; - ] - ] - [ - sh:property [ - sh:path regen:landSteward ; - sh:description "recommended to increase salability" ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:node regen:RoleDisplayShape ; - sh:group regen:ProjectPageEntityDisplayGroup ; - ] - ] - [ - sh:property [ - sh:path regen:projectDeveloper ; - sh:description "recommended to increase salability" ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:node regen:RoleDisplayShape ; - sh:group regen:ProjectPageEntityDisplayGroup ; - ] - ] - ) ; - sh:property [ - sh:path regen:landStory ; - sh:name "Story of the land" ; - sh:description "Describe the story of this property." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:maxLength 500 ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageStoryGroup ; - ] ; - sh:property [ - sh:path regen:story ; - sh:name "Story of the land stewards" ; - sh:description "Describe the story of this property." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:maxLength 500 ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageStoryGroup ; - ] ; - sh:property [ - sh:path regen:storyTitle ; - sh:name "Land steward story title" ; - sh:description "In one sentence, summarize the story above of the land stewards." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:maxLength 80 ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageStoryGroup ; - ] ; - sh:property [ - sh:path regen:projectQuote ; - sh:node regen:ProjectQuoteShape ; - sh:group regen:ProjectPageStoryGroup ; - ] ; - sh:property [ - sh:path regen:previewPhoto ; - sh:datatype schema:URL ; - sh:name "Preview photo" ; - sh:description "Choose the summary photo that will show up in project previews." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMediaGroup ; - ] ; - sh:property [ - sh:path regen:galleryPhotos ; - sh:name "Gallery photos" ; - sh:description "People love pictures of people! Upload images of the land stewards, in addition to the land and animals." ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype schema:URL ; - sh:minCount 4 ; - sh:group regen:ProjectPageMediaGroup ; - ] ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMediaGroup ; - ] ; - sh:or ( - [ - sh:property [ - sh:path regen:videoURL ; - sh:datatype schema:URL ; - sh:name "Video url" ; - sh:description "Copy and paste a video url from YouTube, Vimeo, or Facebook." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMediaGroup ; - ] ; - ] [ - sh:property [ - sh:path regen:landStewardPhoto ; - sh:datatype schema:URL ; - sh:name "Land steward photo" ; - sh:description "Upload a nice portrait of the land stewards and their families. This should be different from the other photos of land stewards you uploaded in the gallery above." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageMediaGroup ; - ] ; - ] - ) -. - -regen:ProjectSizeShape - a rdfs:Class, sh:NodeShape ; - rdfs:label "Size in hectares or acres" ; - sh:property [ - sh:path qudt:numericValue ; - sh:datatype xsd:double ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minExclusive 0 ; - sh:group regen:ProjectPageBasicInfoGroup ; - ] ; - sh:property [ - sh:path qudt:unit ; - sh:datatype qudt:Unit ; - sh:in ( "unit:HA"^^qudt:Unit "unit:AC"^^qudt:Unit ) ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageBasicInfoGroup ; - ] ; -. - -regen:RoleShape - a sh:NodeShape ; - sh:xone ( - regen:IndividualShape - regen:OrganizationShape - ) . - -regen:RoleDisplayShape - a sh:NodeShape ; - sh:xone ( - regen:IndividualDisplayShape - regen:OrganizationDisplayShape - ) . - - -regen:OrganizationShape - a sh:NodeShape ; - sh:targetClass regen:Organization ; - rdfs:label "Add Organization" ; - sh:property [ - sh:path schema:legalName ; - sh:datatype xsd:string ; - sh:name "Organization legal name" ; - sh:description "This is the name of the farm, ranch, cooperative, non-profit, or other organization." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:group regen:ProjectPageRolesGroup; - ] ; - sh:property [ - sh:path schema:location ; - sh:name "Organization location" ; - sh:description "This address is used for issuing credits. If you choose to show this entity on the project page, only city, state/province, and country will be displayed." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:class geojson:Feature ; - sh:group regen:ProjectPageRolesGroup; - ] ; - sh:property [ - sh:path regen:responsiblePerson ; - sh:datatype xsd:string ; - sh:name "Responsible person at organization" ; - sh:description "This is the person who will be signing the project plan, and whose name will appear on credit issuance certificates if credits are issued to this organization." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:group regen:ProjectPageRolesGroup; - ] ; - sh:property regen:EmailShape ; - sh:property regen:PhoneNumberShape ; - sh:property regen:SharePermissionShape ; -. - -regen:IndividualShape - a sh:NodeShape ; - sh:targetClass regen:Individual ; - rdfs:label "Add Individual" ; - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:name "Full name" ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:group regen:ProjectPageRolesGroup; - ] ; - sh:property regen:EmailShape ; - sh:property regen:PhoneNumberShape ; - sh:property regen:SharePermissionShape ; -. - -regen:OrganizationDisplayShape - a sh:NodeShape ; - sh:targetClass regen:OrganizationDisplay ; - sh:property regen:EntityDisplayShape-showOnProjectPage ; - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:name "Organization display name" ; - sh:description "This is the display name on your project page, if you choose to make this entity publically viewable." ; - sh:group regen:ProjectPageEntityDisplayGroup ; - ] ; - sh:property [ - sh:path schema:logo ; - sh:datatype schema:URL ; - sh:name "Organization logo" ; - sh:maxCount 1 ; - sh:group regen:ProjectPageEntityDisplayGroup ; - ] ; - sh:property [ - sh:path schema:description ; - sh:datatype xsd:string ; - sh:name "Short organization description" ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:maxLength 160 ; - sh:group regen:ProjectPageEntityDisplayGroup ; - ] ; -. - -regen:IndividualDisplayShape - a sh:NodeShape ; - sh:targetClass regen:IndividualDisplay ; - sh:property regen:EntityDisplayShape-showOnProjectPage ; - sh:property [ - sh:path schema:image ; - sh:datatype schema:URL ; - sh:name "Bio photo" ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageEntityDisplayGroup ; - ] ; - sh:property [ - sh:path schema:description ; - sh:datatype xsd:string ; - sh:name "Short person description" ; - sh:description "Describe any relevant background and experience." ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:maxLength 160 ; - sh:group regen:ProjectPageEntityDisplayGroup ; - ] ; -. - -regen:EmailShape - a sh:PropertyShape ; - sh:path schema:email ; - sh:name "Email address" ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageRolesGroup; -. - -regen:PhoneNumberShape - a sh:PropertyShape ; - sh:path schema:telephone ; - sh:datatype xsd:string ; - sh:name "Phone number" ; - sh:group regen:ProjectPageRolesGroup; -. - -regen:SharePermissionShape - a sh:PropertyShape ; - sh:path regen:sharePermission ; - sh:description "I have this individual’s permission to share their information with Regen Registry" ; - sh:datatype xsd:boolean ; - sh:hasValue true ; - sh:group regen:ProjectPageRolesGroup; -. - -regen:EntityDisplayShape-showOnProjectPage - a sh:PropertyShape ; - sh:path regen:showOnProjectPage ; - sh:datatype xsd:boolean ; - sh:hasValue true ; - sh:group regen:ProjectPageEntityDisplayGroup ; -. - -regen:EntityDisplayShape-hideOnProjectPage - a sh:PropertyShape ; - sh:path regen:showOnProjectPage ; - sh:datatype xsd:boolean ; - sh:hasValue false ; - sh:group regen:ProjectPageEntityDisplayGroup ; -. - -regen:ProjectQuoteShape - a rdfs:Class, sh:NodeShape ; - sh:property [ - sh:path regen:quote ; - sh:name "Quote from land steward or other important stakeholder" ; - sh:description "Choose an inspiring quote that helps others understand why this project is important." ; - sh:maxLength 160 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:group regen:ProjectPageStoryGroup ; - ] ; - sh:property [ - sh:path schema:name ; - sh:name "Name of person quoted" ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageStoryGroup ; - ] ; - sh:property [ - sh:path schema:jobTitle ; - sh:name "Title of person quoted" ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - sh:datatype xsd:string ; - sh:group regen:ProjectPageStoryGroup ; - ] ; -. - -# Groups - -regen:ProjectPageCreditClassGroup - a sh:PropertyGroup ; - rdfs:label "Choose a Credit Class" ; - sh:order "0"^^xsd:decimal . - -regen:ProjectPageBasicInfoGroup - a sh:PropertyGroup ; - rdfs:label "Basic Info" ; - sh:order "1"^^xsd:decimal . - -regen:ProjectPageLocationGroup - a sh:PropertyGroup ; - rdfs:label "Location" ; - sh:order "2"^^xsd:decimal . - -regen:ProjectPageRolesGroup - a sh:PropertyGroup ; - rdfs:label "Roles" ; - sh:order "3"^^xsd:decimal . - -regen:ProjectPageEntityDisplayGroup - a sh:PropertyGroup ; - rdfs:label "Entity Display" ; - rdfs:comment "See an example project page»" ; - sh:order "4"^^xsd:decimal . - -regen:ProjectPageStoryGroup - a sh:PropertyGroup ; - rdfs:label "Story" ; - rdfs:comment "See an example project page»" ; - sh:order "5"^^xsd:decimal . - -regen:ProjectPageMediaGroup - a sh:PropertyGroup ; - rdfs:label "Media" ; - rdfs:comment "See an example project page»" ; - sh:order "6"^^xsd:decimal . +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix geojson: . +@prefix qudt_unit: . +@prefix qudt: . + +# Node and Property Shapes + +# Legacy version.. +regen:ProjectPageShape + a rdfs:Class, sh:NodeShape ; + sh:targetClass regen:ProjectPage ; + rdfs:label "Project Page" ; + rdfs:subClassOf rdfs:Resource ; + + sh:property [ + sh:path regen:creditClass ; + sh:class regen:CreditClass ; + sh:nodeKind sh:IRI ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:group regen:ProjectPageCreditClassGroup ; + ] ; + sh:property [ + sh:path schema:name ; + sh:name "Project name" ; + rdfs:label "project name" ; + sh:description "This is the name of the farm, ranch, property, or conservation project." ; + sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:minLength 1 ; + sh:group regen:ProjectPageBasicInfoGroup ; + ] ; + sh:property [ + sh:path regen:projectSize ; + sh:name "Size in hectares or acres" ; + rdfs:label "size" ; + sh:maxCount 1 ; + sh:minCount 1 ; + sh:group regen:ProjectPageBasicInfoGroup ; + sh:node regen:ProjectSizeShape ; + ] ; + sh:property [ + sh:path schema:location ; + sh:name "Location" ; + sh:description "Type an address or latitude/longitude coordinates. This is the location that will appear in the project contracts, and on your project page." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageLocationGroup ; + sh:class geojson:Feature ; + ] ; + sh:property [ + sh:path regen:boundaries ; + sh:name "Upload GIS data" ; + sh:description "You may upload .shp, .kml, or .json files" ; + sh:datatype schema:URL ; + # Commented until we implement it in the form UI + # sh:minCount 1 ; + # sh:maxCount 1 ; + # sh:group regen:ProjectPageLocationGroup ; + ] ; + sh:or ( + [ + sh:property [ + sh:path regen:landOwner ; + sh:name "Land Owner" ; + sh:description "The individual or organization that owns this land." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:node regen:RoleShape; + sh:group regen:ProjectPageRolesGroup ; + ] + ] + [ + sh:property [ + sh:path regen:landSteward ; + sh:name "Land Steward" ; + sh:description "The individual or organization that is performing the work on the ground. This can be a farmer, rancher, conservationist, forester, fisherman, etc." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:node regen:RoleShape; + sh:group regen:ProjectPageRolesGroup ; + ] + ] + [ + sh:property [ + sh:path regen:projectDeveloper ; + sh:name "Project Developer" ; + sh:description "The individual or organization that is in charge of managing the project and is the main point of contact with Regen Registry." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:node regen:RoleShape; + sh:group regen:ProjectPageRolesGroup ; + ] + ] + [ + sh:property [ + sh:path regen:projectOriginator ; + sh:name "Project Originator" ; + sh:description "The individual or organization that helps initiate the project." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:node regen:RoleShape; + sh:group regen:ProjectPageRolesGroup ; + ] + ] + ) ; + # We should show at least one of the project stakeholders on the project page. + sh:property [ + sh:path regen:projectStakeholder ; + sh:name "Choose the entities to show on the project page:" ; + sh:description "Showing more entities increases the salability of the project. You must show at least one entity on the project page. These entities can only be edited in the previous step." ; + sh:group regen:ProjectPageEntityDisplayGroup ; + sh:or ( + [ + sh:property [ + sh:path ( regen:landOwner regen:showOnProjectPage ) ; + sh:hasValue true; + ] + ] + [ + sh:property [ + sh:path ( regen:landSteward regen:showOnProjectPage ) ; + sh:hasValue true; + ] + ] + [ + sh:property [ + sh:path ( regen:projectDeveloper regen:showOnProjectPage ) ; + sh:hasValue true; + ] + ] + [ + sh:property [ + sh:path ( regen:projectOriginator regen:showOnProjectPage ) ; + sh:hasValue true; + ] + ] + ) ; + ] ; + sh:or ( + [ + sh:property [ + sh:path regen:landOwner ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:node regen:RoleDisplayShape ; + sh:group regen:ProjectPageEntityDisplayGroup ; + ] + ] + [ + sh:property [ + sh:path regen:landSteward ; + sh:description "recommended to increase salability" ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:node regen:RoleDisplayShape ; + sh:group regen:ProjectPageEntityDisplayGroup ; + ] + ] + [ + sh:property [ + sh:path regen:projectDeveloper ; + sh:description "recommended to increase salability" ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:node regen:RoleDisplayShape ; + sh:group regen:ProjectPageEntityDisplayGroup ; + ] + ] + ) ; + sh:property [ + sh:path regen:landStory ; + sh:name "Story of the land" ; + sh:description "Describe the story of this property." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:maxLength 500 ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageStoryGroup ; + ] ; + sh:property [ + sh:path regen:story ; + sh:name "Story of the land stewards" ; + sh:description "Describe the story of this property." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:maxLength 500 ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageStoryGroup ; + ] ; + sh:property [ + sh:path regen:storyTitle ; + sh:name "Land steward story title" ; + sh:description "In one sentence, summarize the story above of the land stewards." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:maxLength 80 ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageStoryGroup ; + ] ; + sh:property [ + sh:path regen:projectQuote ; + sh:node regen:ProjectQuoteShape ; + sh:group regen:ProjectPageStoryGroup ; + ] ; + sh:property [ + sh:path regen:previewPhoto ; + sh:datatype schema:URL ; + sh:name "Preview photo" ; + sh:description "Choose the summary photo that will show up in project previews." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMediaGroup ; + ] ; + sh:property [ + sh:path regen:galleryPhotos ; + sh:name "Gallery photos" ; + sh:description "People love pictures of people! Upload images of the land stewards, in addition to the land and animals." ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype schema:URL ; + sh:minCount 4 ; + sh:group regen:ProjectPageMediaGroup ; + ] ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMediaGroup ; + ] ; + sh:or ( + [ + sh:property [ + sh:path regen:videoURL ; + sh:datatype schema:URL ; + sh:name "Video url" ; + sh:description "Copy and paste a video url from YouTube, Vimeo, or Facebook." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMediaGroup ; + ] ; + ] [ + sh:property [ + sh:path regen:landStewardPhoto ; + sh:datatype schema:URL ; + sh:name "Land steward photo" ; + sh:description "Upload a nice portrait of the land stewards and their families. This should be different from the other photos of land stewards you uploaded in the gallery above." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageMediaGroup ; + ] ; + ] + ) +. + +regen:ProjectSizeShape + a rdfs:Class, sh:NodeShape ; + rdfs:label "Size in hectares or acres" ; + sh:property [ + sh:path qudt:numericValue ; + sh:datatype xsd:double ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minExclusive 0 ; + sh:group regen:ProjectPageBasicInfoGroup ; + ] ; + sh:property [ + sh:path qudt:unit ; + sh:datatype qudt:Unit ; + sh:in ( "unit:HA"^^qudt:Unit "unit:AC"^^qudt:Unit ) ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageBasicInfoGroup ; + ] ; +. + +regen:RoleShape + a sh:NodeShape ; + sh:xone ( + regen:IndividualShape + regen:OrganizationShape + ) . + +regen:RoleDisplayShape + a sh:NodeShape ; + sh:xone ( + regen:IndividualDisplayShape + regen:OrganizationDisplayShape + ) . + + +regen:OrganizationShape + a sh:NodeShape ; + sh:targetClass regen:Organization ; + rdfs:label "Add Organization" ; + sh:property [ + sh:path schema:legalName ; + sh:datatype xsd:string ; + sh:name "Organization legal name" ; + sh:description "This is the name of the farm, ranch, cooperative, non-profit, or other organization." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:group regen:ProjectPageRolesGroup; + ] ; + sh:property [ + sh:path schema:location ; + sh:name "Organization location" ; + sh:description "This address is used for issuing credits. If you choose to show this entity on the project page, only city, state/province, and country will be displayed." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:class geojson:Feature ; + sh:group regen:ProjectPageRolesGroup; + ] ; + sh:property [ + sh:path regen:responsiblePerson ; + sh:datatype xsd:string ; + sh:name "Responsible person at organization" ; + sh:description "This is the person who will be signing the project plan, and whose name will appear on credit issuance certificates if credits are issued to this organization." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:group regen:ProjectPageRolesGroup; + ] ; + sh:property regen:EmailShape ; + sh:property regen:PhoneNumberShape ; + sh:property regen:SharePermissionShape ; +. + +regen:IndividualShape + a sh:NodeShape ; + sh:targetClass regen:Individual ; + rdfs:label "Add Individual" ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:name "Full name" ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:group regen:ProjectPageRolesGroup; + ] ; + sh:property regen:EmailShape ; + sh:property regen:PhoneNumberShape ; + sh:property regen:SharePermissionShape ; +. + +regen:OrganizationDisplayShape + a sh:NodeShape ; + sh:targetClass regen:OrganizationDisplay ; + sh:property regen:EntityDisplayShape-showOnProjectPage ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:name "Organization display name" ; + sh:description "This is the display name on your project page, if you choose to make this entity publically viewable." ; + sh:group regen:ProjectPageEntityDisplayGroup ; + ] ; + sh:property [ + sh:path schema:logo ; + sh:datatype schema:URL ; + sh:name "Organization logo" ; + sh:maxCount 1 ; + sh:group regen:ProjectPageEntityDisplayGroup ; + ] ; + sh:property [ + sh:path schema:description ; + sh:datatype xsd:string ; + sh:name "Short organization description" ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:maxLength 160 ; + sh:group regen:ProjectPageEntityDisplayGroup ; + ] ; +. + +regen:IndividualDisplayShape + a sh:NodeShape ; + sh:targetClass regen:IndividualDisplay ; + sh:property regen:EntityDisplayShape-showOnProjectPage ; + sh:property [ + sh:path schema:image ; + sh:datatype schema:URL ; + sh:name "Bio photo" ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageEntityDisplayGroup ; + ] ; + sh:property [ + sh:path schema:description ; + sh:datatype xsd:string ; + sh:name "Short person description" ; + sh:description "Describe any relevant background and experience." ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:maxLength 160 ; + sh:group regen:ProjectPageEntityDisplayGroup ; + ] ; +. + +regen:EmailShape + a sh:PropertyShape ; + sh:path schema:email ; + sh:name "Email address" ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageRolesGroup; +. + +regen:PhoneNumberShape + a sh:PropertyShape ; + sh:path schema:telephone ; + sh:datatype xsd:string ; + sh:name "Phone number" ; + sh:group regen:ProjectPageRolesGroup; +. + +regen:SharePermissionShape + a sh:PropertyShape ; + sh:path regen:sharePermission ; + sh:description "I have this individual’s permission to share their information with Regen Registry" ; + sh:datatype xsd:boolean ; + sh:hasValue true ; + sh:group regen:ProjectPageRolesGroup; +. + +regen:EntityDisplayShape-showOnProjectPage + a sh:PropertyShape ; + sh:path regen:showOnProjectPage ; + sh:datatype xsd:boolean ; + sh:hasValue true ; + sh:group regen:ProjectPageEntityDisplayGroup ; +. + +regen:EntityDisplayShape-hideOnProjectPage + a sh:PropertyShape ; + sh:path regen:showOnProjectPage ; + sh:datatype xsd:boolean ; + sh:hasValue false ; + sh:group regen:ProjectPageEntityDisplayGroup ; +. + +regen:ProjectQuoteShape + a rdfs:Class, sh:NodeShape ; + sh:property [ + sh:path regen:quote ; + sh:name "Quote from land steward or other important stakeholder" ; + sh:description "Choose an inspiring quote that helps others understand why this project is important." ; + sh:maxLength 160 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:group regen:ProjectPageStoryGroup ; + ] ; + sh:property [ + sh:path schema:name ; + sh:name "Name of person quoted" ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageStoryGroup ; + ] ; + sh:property [ + sh:path schema:jobTitle ; + sh:name "Title of person quoted" ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + sh:datatype xsd:string ; + sh:group regen:ProjectPageStoryGroup ; + ] ; +. + +# Groups + +regen:ProjectPageCreditClassGroup + a sh:PropertyGroup ; + rdfs:label "Choose a Credit Class" ; + sh:order "0"^^xsd:decimal . + +regen:ProjectPageBasicInfoGroup + a sh:PropertyGroup ; + rdfs:label "Basic Info" ; + sh:order "1"^^xsd:decimal . + +regen:ProjectPageLocationGroup + a sh:PropertyGroup ; + rdfs:label "Location" ; + sh:order "2"^^xsd:decimal . + +regen:ProjectPageRolesGroup + a sh:PropertyGroup ; + rdfs:label "Roles" ; + sh:order "3"^^xsd:decimal . + +regen:ProjectPageEntityDisplayGroup + a sh:PropertyGroup ; + rdfs:label "Entity Display" ; + rdfs:comment "See an example project page»" ; + sh:order "4"^^xsd:decimal . + +regen:ProjectPageStoryGroup + a sh:PropertyGroup ; + rdfs:label "Story" ; + rdfs:comment "See an example project page»" ; + sh:order "5"^^xsd:decimal . + +regen:ProjectPageMediaGroup + a sh:PropertyGroup ; + rdfs:label "Media" ; + rdfs:comment "See an example project page»" ; + sh:order "6"^^xsd:decimal . diff --git a/shacl/projects/project.ttl b/shacl/projects/project.ttl index 590bb7e..c056da1 100644 --- a/shacl/projects/project.ttl +++ b/shacl/projects/project.ttl @@ -1,80 +1,80 @@ -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . -@prefix geojson: . -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . - -# Anchored - -regen:ProjectShape a sh:NodeShape ; - sh:targetClass regen:Project, regen:C01-Project, regen:C02-Project, regen:C03-Project ; - sh:property regen:NamePropertyShape ; - sh:property regen:LocationPropertyShape ; - sh:property regen:ProjectSizeOptionalPropertyShape ; - sh:property regen:ProjectActivityOptionalPropertyShape ; - sh:property regen:ProjectDeveloperPropertyShape ; - sh:property regen:ProjectVerifierPropertyShape ; - sh:property regen:OffsetGenerationMethodOptionalPropertyShape ; - sh:property regen:ProjectTypeOptionalPropertyShape ; - sh:property regen:ProjectOptionalStartDatePropertyShape ; - sh:property regen:ProjectOptionalEndDatePropertyShape ; - sh:property [ - sh:path regen:ratings ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:node [ - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path schema:ratingValue ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - ] - ] ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:primaryImpact ; - sh:nodeKind sh:IRI ; - sh:node regen:OptionalDescriptionShape ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:coBenefits ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:nodeKind sh:IRI ; - sh:node regen:OptionalDescriptionShape ; - ] ; - sh:maxCount 1 ; - ] -. - -regen:OptionalDescriptionShape a sh:NodeShape ; - sh:property [ - sh:path schema:description ; - sh:maxCount 1 ; - sh:datatype xsd:string ; - ] ; -. - +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . +@prefix geojson: . +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . + +# Anchored + +regen:ProjectShape a sh:NodeShape ; + sh:targetClass regen:Project, regen:C01-Project, regen:C02-Project, regen:C03-Project ; + sh:property regen:NamePropertyShape ; + sh:property regen:LocationPropertyShape ; + sh:property regen:ProjectSizeOptionalPropertyShape ; + sh:property regen:ProjectActivityOptionalPropertyShape ; + sh:property regen:ProjectDeveloperPropertyShape ; + sh:property regen:ProjectVerifierPropertyShape ; + sh:property regen:OffsetGenerationMethodOptionalPropertyShape ; + sh:property regen:ProjectTypeOptionalPropertyShape ; + sh:property regen:ProjectOptionalStartDatePropertyShape ; + sh:property regen:ProjectOptionalEndDatePropertyShape ; + sh:property [ + sh:path regen:ratings ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:node [ + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path schema:ratingValue ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + ] + ] ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:primaryImpact ; + sh:nodeKind sh:IRI ; + sh:node regen:OptionalDescriptionShape ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:coBenefits ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:nodeKind sh:IRI ; + sh:node regen:OptionalDescriptionShape ; + ] ; + sh:maxCount 1 ; + ] +. + +regen:OptionalDescriptionShape a sh:NodeShape ; + sh:property [ + sh:path schema:description ; + sh:maxCount 1 ; + sh:datatype xsd:string ; + ] ; +. + diff --git a/shacl/projects/project.ttl.legacy b/shacl/projects/project.ttl.legacy index d891211..80e5a7c 100644 --- a/shacl/projects/project.ttl.legacy +++ b/shacl/projects/project.ttl.legacy @@ -1,114 +1,114 @@ -@prefix dash: . -@prefix rdf: . -@prefix rdfs: . -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . - -# regen:ProjectShape defines generic metadata that goes -# into the project.metadata column in the Postgres database. -# -# Note that project.metadata can also store other kind of data -# than is defined as part of other SHACL shapes (e.g. regen:ProjectPageShape -# used for validating self-service project page forms). - -regen:ProjectShape - a rdfs:Class, sh:NodeShape ; - sh:targetClass regen:Project ; - rdfs:subClassOf rdfs:Resource ; - sh:property [ - sh:path regen:projectActivity ; - sh:node regen:NameURLShape ; - ] ; - sh:property [ - sh:path regen:additionalCertification ; - sh:node regen:StandardShape ; - ] ; - sh:property [ - sh:path regen:externalProjectUrl ; - sh:datatype schema:URL ; - ] ; - sh:property [ - sh:path schema:creditText ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path regen:glanceText ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:datatype xsd:string ; - ] ; - ] ; - sh:property [ - sh:path regen:landManagementActions ; - sh:node dash:ListShape ; - sh:property [ - sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; - sh:node regen:LandManagementActionShape ; - ] ; - ] ; -. - -regen:LandManagementActionShape - a rdfs:Class, sh:NodeShape ; - sh:property [ - sh:path schema:image ; - sh:datatype schema:URL ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; - sh:property [ - sh:path schema:description ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - sh:minLength 1 ; - ] ; -. - -regen:StandardShape - a rdfs:Class, sh:NodeShape ; - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path schema:version ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path regen:documentId ; - sh:datatype xsd:string ; - ] ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - ] ; -. - -regen:NameURLShape - a rdfs:Class, sh:NodeShape ; - sh:property [ - sh:path schema:name ; - sh:datatype xsd:string ; - sh:minCount 1 ; - sh:maxCount 1 ; - ] ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - ] ; -. +@prefix dash: . +@prefix rdf: . +@prefix rdfs: . +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . + +# regen:ProjectShape defines generic metadata that goes +# into the project.metadata column in the Postgres database. +# +# Note that project.metadata can also store other kind of data +# than is defined as part of other SHACL shapes (e.g. regen:ProjectPageShape +# used for validating self-service project page forms). + +regen:ProjectShape + a rdfs:Class, sh:NodeShape ; + sh:targetClass regen:Project ; + rdfs:subClassOf rdfs:Resource ; + sh:property [ + sh:path regen:projectActivity ; + sh:node regen:NameURLShape ; + ] ; + sh:property [ + sh:path regen:additionalCertification ; + sh:node regen:StandardShape ; + ] ; + sh:property [ + sh:path regen:externalProjectUrl ; + sh:datatype schema:URL ; + ] ; + sh:property [ + sh:path schema:creditText ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path regen:glanceText ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:datatype xsd:string ; + ] ; + ] ; + sh:property [ + sh:path regen:landManagementActions ; + sh:node dash:ListShape ; + sh:property [ + sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ; + sh:node regen:LandManagementActionShape ; + ] ; + ] ; +. + +regen:LandManagementActionShape + a rdfs:Class, sh:NodeShape ; + sh:property [ + sh:path schema:image ; + sh:datatype schema:URL ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; + sh:property [ + sh:path schema:description ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + sh:minLength 1 ; + ] ; +. + +regen:StandardShape + a rdfs:Class, sh:NodeShape ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path schema:version ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path regen:documentId ; + sh:datatype xsd:string ; + ] ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + ] ; +. + +regen:NameURLShape + a rdfs:Class, sh:NodeShape ; + sh:property [ + sh:path schema:name ; + sh:datatype xsd:string ; + sh:minCount 1 ; + sh:maxCount 1 ; + ] ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + ] ; +. diff --git a/shacl/retirement.ttl b/shacl/retirement.ttl index eb12bab..4dee340 100644 --- a/shacl/retirement.ttl +++ b/shacl/retirement.ttl @@ -1,19 +1,19 @@ -@prefix rdf: . -@prefix rdfs: . -@prefix schema: . -@prefix sh: . -@prefix xsd: . -@prefix regen: . - -# regen:RetirementShape defines the metadata that goes -# into the retirement.metadata column in the Postgres database. - -regen:RetirementShape - a rdfs:Class, sh:NodeShape ; - sh:targetClass regen:Retirement ; - rdfs:subClassOf rdfs:Resource ; - sh:property [ - sh:path schema:url ; - sh:datatype schema:URL ; - ] ; +@prefix rdf: . +@prefix rdfs: . +@prefix schema: . +@prefix sh: . +@prefix xsd: . +@prefix regen: . + +# regen:RetirementShape defines the metadata that goes +# into the retirement.metadata column in the Postgres database. + +regen:RetirementShape + a rdfs:Class, sh:NodeShape ; + sh:targetClass regen:Retirement ; + rdfs:subClassOf rdfs:Resource ; + sh:property [ + sh:path schema:url ; + sh:datatype schema:URL ; + ] ; . \ No newline at end of file diff --git a/shacl_validate.py b/shacl_validate.py index 4b9a5a2..93f7e72 100755 --- a/shacl_validate.py +++ b/shacl_validate.py @@ -1,165 +1,165 @@ -#!/usr/bin/env python3 -import argparse -import glob -import sys -from shutil import which -from subprocess import STDOUT, CalledProcessError, check_output -from tempfile import NamedTemporaryFile - -# If the script exits with a non-zero status code there was at least one failed -# SHACL validation. This can be used to mark a CI check as failed. -EXIT_CODE = 0 -CMD_SHACL_VALIDATE = "shacl validate --text --shapes={shapes} --data={data}" - - -def shacl_validate(shapes, data): - global EXIT_CODE - try: - result = check_output( - CMD_SHACL_VALIDATE.format(shapes=shapes, data=data).split(), - encoding="utf-8", - stderr=STDOUT, - ).strip() - except CalledProcessError as exc: - print(f"shapes={shapes} data={data} result=ERROR") - print(exc.stdout) - EXIT_CODE = 1 - return False - if result == "Conforms": - print(f"shapes={shapes} data={data} result=CONFORMS") - return True - EXIT_CODE = 1 - print(f"shapes={shapes} data={data} result=INVALID") - full_result = check_output( - f"shacl validate --shapes={shapes} --data={data}".split(), - encoding="utf-8", - ).strip() - print(full_result) - return False - - -def sglob(pathname): - return sorted(glob.iglob(pathname)) - - -def credit_class_validations(fp, class_id=None): - if class_id is None: - glob_string = "*/*/credit-class-metadata/*.jsonld" - else: - glob_string = f"*/{class_id}/credit-class-metadata/*.jsonld" - - for data in sglob(glob_string): - shacl_validate( - fp.name, - data, - ) - - -def project_validations(fp, class_id=None): - if class_id is None: - glob_string = "*/*/project-metadata/*.jsonld" - else: - glob_string = f"*/{class_id}/project-metadata/*.jsonld" - - for data in sglob(glob_string): - shacl_validate( - fp.name, - data, - ) - - -def credit_batch_validations(fp, class_id=None): - if class_id is None: - glob_string = "*/*/credit-batch-metadata/*.jsonld" - else: - glob_string = f"*/{class_id}/credit-batch-metadata/*.jsonld" - - for data in sglob(glob_string): - shacl_validate( - fp.name, - data, - ) - - -def build_schema_file(fp): - files = " ".join( - check_output( - 'find shacl -name "*.ttl"', - encoding="utf-8", - shell=True, - ).split() - ) - cmd = f"riot --output=turtle {files}" - schema = check_output(cmd, encoding="utf-8", shell=True) - fp.write(schema) - return - - -if __name__ == "__main__": - if not which("shacl") or not which("riot"): - print("Please install the apache jena shacl cli tool.") - print("See https://jena.apache.org/documentation/shacl/index.html") - print("For mac: https://formulae.brew.sh/formula/jena") - print("Install Docs: https://jena.apache.org/download/index.cgi") - sys.exit(1) - - parser = argparse.ArgumentParser( - prog="shacl_validate", - description="A tool for validating SHACL schema against regen-registry-standards JSON-LD data graphs", - ) - parser.add_argument( - "--build-schema-file-only", - help="Only build the schema file", - action="store_true", - ) - parser.add_argument( - "--print-shacl-validate-cmd-only", - help="Only print the shacl validate cmd template string.", - action="store_true", - ) - parser.add_argument( - "--credit-class-only", - help="Only validate credit class data", - action="store_true", - ) - parser.add_argument( - "--project-only", - help="Only validate project data", - action="store_true", - ) - parser.add_argument( - "--credit-batch-only", - help="Only validate credit batch data", - action="store_true", - ) - parser.add_argument("--class-id", help="Only run validations for a particular class id") - args = parser.parse_args() - - if args.build_schema_file_only: - with open("regen-registry-schema.ttl", "w") as fp: - build_schema_file(fp) - sys.exit(EXIT_CODE) - - if args.print_shacl_validate_cmd_only: - print(CMD_SHACL_VALIDATE) - sys.exit(EXIT_CODE) - - with NamedTemporaryFile("w", suffix=".ttl") as fp: - build_schema_file(fp) - - if args.credit_class_only: - credit_class_validations(fp, class_id=args.class_id) - sys.exit(EXIT_CODE) - if args.project_only: - project_validations(fp, class_id=args.class_id) - sys.exit(EXIT_CODE) - if args.credit_batch_only: - credit_batch_validations(fp, class_id=args.class_id) - sys.exit(EXIT_CODE) - - # by default, validate all data - credit_class_validations(fp, class_id=args.class_id) - project_validations(fp, class_id=args.class_id) - credit_batch_validations(fp, class_id=args.class_id) - - sys.exit(EXIT_CODE) +#!/usr/bin/env python3 +import argparse +import glob +import sys +from shutil import which +from subprocess import STDOUT, CalledProcessError, check_output +from tempfile import NamedTemporaryFile + +# If the script exits with a non-zero status code there was at least one failed +# SHACL validation. This can be used to mark a CI check as failed. +EXIT_CODE = 0 +CMD_SHACL_VALIDATE = "shacl validate --text --shapes={shapes} --data={data}" + + +def shacl_validate(shapes, data): + global EXIT_CODE + try: + result = check_output( + CMD_SHACL_VALIDATE.format(shapes=shapes, data=data).split(), + encoding="utf-8", + stderr=STDOUT, + ).strip() + except CalledProcessError as exc: + print(f"shapes={shapes} data={data} result=ERROR") + print(exc.stdout) + EXIT_CODE = 1 + return False + if result == "Conforms": + print(f"shapes={shapes} data={data} result=CONFORMS") + return True + EXIT_CODE = 1 + print(f"shapes={shapes} data={data} result=INVALID") + full_result = check_output( + f"shacl validate --shapes={shapes} --data={data}".split(), + encoding="utf-8", + ).strip() + print(full_result) + return False + + +def sglob(pathname): + return sorted(glob.iglob(pathname)) + + +def credit_class_validations(fp, class_id=None): + if class_id is None: + glob_string = "*/*/credit-class-metadata/*.jsonld" + else: + glob_string = f"*/{class_id}/credit-class-metadata/*.jsonld" + + for data in sglob(glob_string): + shacl_validate( + fp.name, + data, + ) + + +def project_validations(fp, class_id=None): + if class_id is None: + glob_string = "*/*/project-metadata/*.jsonld" + else: + glob_string = f"*/{class_id}/project-metadata/*.jsonld" + + for data in sglob(glob_string): + shacl_validate( + fp.name, + data, + ) + + +def credit_batch_validations(fp, class_id=None): + if class_id is None: + glob_string = "*/*/credit-batch-metadata/*.jsonld" + else: + glob_string = f"*/{class_id}/credit-batch-metadata/*.jsonld" + + for data in sglob(glob_string): + shacl_validate( + fp.name, + data, + ) + + +def build_schema_file(fp): + files = " ".join( + check_output( + 'find shacl -name "*.ttl"', + encoding="utf-8", + shell=True, + ).split() + ) + cmd = f"riot --output=turtle {files}" + schema = check_output(cmd, encoding="utf-8", shell=True) + fp.write(schema) + return + + +if __name__ == "__main__": + if not which("shacl") or not which("riot"): + print("Please install the apache jena shacl cli tool.") + print("See https://jena.apache.org/documentation/shacl/index.html") + print("For mac: https://formulae.brew.sh/formula/jena") + print("Install Docs: https://jena.apache.org/download/index.cgi") + sys.exit(1) + + parser = argparse.ArgumentParser( + prog="shacl_validate", + description="A tool for validating SHACL schema against regen-registry-standards JSON-LD data graphs", + ) + parser.add_argument( + "--build-schema-file-only", + help="Only build the schema file", + action="store_true", + ) + parser.add_argument( + "--print-shacl-validate-cmd-only", + help="Only print the shacl validate cmd template string.", + action="store_true", + ) + parser.add_argument( + "--credit-class-only", + help="Only validate credit class data", + action="store_true", + ) + parser.add_argument( + "--project-only", + help="Only validate project data", + action="store_true", + ) + parser.add_argument( + "--credit-batch-only", + help="Only validate credit batch data", + action="store_true", + ) + parser.add_argument("--class-id", help="Only run validations for a particular class id") + args = parser.parse_args() + + if args.build_schema_file_only: + with open("regen-registry-schema.ttl", "w") as fp: + build_schema_file(fp) + sys.exit(EXIT_CODE) + + if args.print_shacl_validate_cmd_only: + print(CMD_SHACL_VALIDATE) + sys.exit(EXIT_CODE) + + with NamedTemporaryFile("w", suffix=".ttl") as fp: + build_schema_file(fp) + + if args.credit_class_only: + credit_class_validations(fp, class_id=args.class_id) + sys.exit(EXIT_CODE) + if args.project_only: + project_validations(fp, class_id=args.class_id) + sys.exit(EXIT_CODE) + if args.credit_batch_only: + credit_batch_validations(fp, class_id=args.class_id) + sys.exit(EXIT_CODE) + + # by default, validate all data + credit_class_validations(fp, class_id=args.class_id) + project_validations(fp, class_id=args.class_id) + credit_batch_validations(fp, class_id=args.class_id) + + sys.exit(EXIT_CODE) diff --git a/update_project_pages.py b/update_project_pages.py index 2aad4da..0e69bfc 100755 --- a/update_project_pages.py +++ b/update_project_pages.py @@ -1,37 +1,37 @@ -#!/usr/bin/env python -import os -import glob -import json -from sqlalchemy import create_engine, text - -url = os.getenv( - "DB_URL", "postgresql+psycopg2://postgres:postgres@localhost:5432/regen_registry" -) -print(f"DB_URL={url}") -if not url.startswith("postgresql+psycopg2://"): - raise Exception("invalid db url") - -files = sorted(glob.glob("ops/*/project-metadata/*-project-page.jsonld")) - -updates = [] -for file in files: - on_chain_id = file.split("-project-page.jsonld")[0].split("/")[-1] - with open(file, "r") as fp: - metadata = json.dumps(json.load(fp)) - print(f"project.metadata for project.{on_chain_id=} will be updated with {file=}") - updates.append({"metadata": metadata, "on_chain_id": on_chain_id}) - -engine = create_engine(url, echo=True) -with engine.connect() as conn: - q = text( - "UPDATE project SET metadata=:metadata, updated_at=now() WHERE on_chain_id=:on_chain_id" - ) - res = conn.execute( - q, - updates, - ) - print(len(files), "project page metadata files were loaded..") - print(res.rowcount, "rows will be updated after commit..") - c = input("commit? [y/n] ").lower().strip() - if c == "y": - conn.commit() +#!/usr/bin/env python +import os +import glob +import json +from sqlalchemy import create_engine, text + +url = os.getenv( + "DB_URL", "postgresql+psycopg2://postgres:postgres@localhost:5432/regen_registry" +) +print(f"DB_URL={url}") +if not url.startswith("postgresql+psycopg2://"): + raise Exception("invalid db url") + +files = sorted(glob.glob("ops/*/project-metadata/*-project-page.jsonld")) + +updates = [] +for file in files: + on_chain_id = file.split("-project-page.jsonld")[0].split("/")[-1] + with open(file, "r") as fp: + metadata = json.dumps(json.load(fp)) + print(f"project.metadata for project.{on_chain_id=} will be updated with {file=}") + updates.append({"metadata": metadata, "on_chain_id": on_chain_id}) + +engine = create_engine(url, echo=True) +with engine.connect() as conn: + q = text( + "UPDATE project SET metadata=:metadata, updated_at=now() WHERE on_chain_id=:on_chain_id" + ) + res = conn.execute( + q, + updates, + ) + print(len(files), "project page metadata files were loaded..") + print(res.rowcount, "rows will be updated after commit..") + c = input("commit? [y/n] ").lower().strip() + if c == "y": + conn.commit() diff --git a/verify_jena.sh b/verify_jena.sh index ec32425..9d6ca9e 100755 --- a/verify_jena.sh +++ b/verify_jena.sh @@ -1,15 +1,15 @@ -#!/usr/bin/env bash -set -o errexit -set -o nounset -set -o pipefail -#set -x xtrace - -rm -rf apache-jena* -wget -r -nd --no-parent -R 'index.html*' --accept-regex 'apache-jena-([0-9\.]*).tar.gz' https://dlcdn.apache.org/jena/binaries/ -o /dev/null -JENA=$(find . -name "apache-jena-*.tar.gz") -VERSION=$(echo $JENA | perl -wne '/apache-jena-([0-9\.]*).tar.gz/i and print $1') -SUM=$(sha512sum apache-jena-$VERSION.tar.gz) -XSUM=$(cat apache-jena-$VERSION.tar.gz.sha512) -test "$SUM"="$XSUM" && echo "jena has a valid checksum" || echo "jena does not have a valid checksum" -mkdir -p apache-jena -tar -xzf apache-jena-$VERSION.tar.gz -C apache-jena --strip-components=1 +#!/usr/bin/env bash +set -o errexit +set -o nounset +set -o pipefail +#set -x xtrace + +rm -rf apache-jena* +wget -r -nd --no-parent -R 'index.html*' --accept-regex 'apache-jena-([0-9\.]*).tar.gz' https://dlcdn.apache.org/jena/binaries/ -o /dev/null +JENA=$(find . -name "apache-jena-*.tar.gz") +VERSION=$(echo $JENA | perl -wne '/apache-jena-([0-9\.]*).tar.gz/i and print $1') +SUM=$(sha512sum apache-jena-$VERSION.tar.gz) +XSUM=$(cat apache-jena-$VERSION.tar.gz.sha512) +test "$SUM"="$XSUM" && echo "jena has a valid checksum" || echo "jena does not have a valid checksum" +mkdir -p apache-jena +tar -xzf apache-jena-$VERSION.tar.gz -C apache-jena --strip-components=1