1. Background
This document presents the second major version of the Digital Measurement, Reporting & Verification (dMRV) Framework, initially published in late 2021. The InterWork Alliance (IWA) and Global Blockchain Business Council (GBBC) members have extensively shared the framework throughout the sustainability ecosystem, identifying missing elements, refining definitions, and striving to establish common standards for unifying ecological and environmental product manufacturing or origination processes, such as voluntary carbon credits. This specification supersedes its predecessor entirely due to the diligent efforts and collaboration of its contributors.
The lifecycle of environmental or ecological credits, such as carbon or renewable energy credits, includes two main phases: origination (or manufacturing) and distribution. The origination phase involves the creation or issuance of a credit from an issuing authority, comparable to commodity origination processes like agriculture or raw materials, where the work is done to grow and harvest the crop in preparation for distribution. The transition from origination to distribution necessitates different infrastructure and requirements, ranging from supporting data collection and verification during manufacturing to facilitating marketplace and exchange activities for trading and settlement. The dMRV Framework focuses specifically on the origination phase of ecological assets.
Within the origination phase, there are two sub-phases: Validation and Verification. The validation phase entails the process for a project to be validated by an issuing program before credits can be issued. This phase encompasses project design, location, plan, involved parties, governance, adjacent impacts on society, and establishing a baseline for measuring impacts. The outcome of this phase typically results in a Project Design Description (PDD) document, which serves as the official recognition and resource for project information. The validation phase is governed by the issuing registry and conducted by a Validation and Verification Body (VVB), usually validated for multiple years.
The verification phase involves subsequent monitoring of the data points outlined in the validation phase and reporting this data to the VVB for verification. The verification findings are then reported to the issuing registry, which issues a credit for the verified impact to the project. Historically, the validation phase has represented the majority of the effort for establishing projects and issuing credits, often taking a year or more to complete. This extended timeframe is primarily due to early projects being land- and nature-based, such as forestry or land use, which could not produce direct evidence of impact over short periods. Consequently, trust anchors were established based on the validation phase, with annual issuances relying on indirect evidence or factoring to calculate carbon reduction or avoidance.
Recently, environmental markets have shifted with the introduction of engineered projects and a focus on carbon removal rather than reductions or avoidances. These new technology-based solutions, such as solar, wind, or direct air capture, utilize digital sensors that produce large volumes of highly accurate and verifiable data. This shift emphasizes verification during the origination phase over project validation.
Engineered projects are typically operated by established corporate entities, have smaller land footprints, and require faster issuance times—monthly instead of annually. Engineered environmental projects, including renewable energy and carbon capture and storage, should prioritize verification over validation, reflecting the shift in trust anchors from a project’s reputation established during validation to proof of impact accurately measured in near real-time. The Digital MRV Framework is optimized for these new types of engineered projects, which generate substantial quantities of precise measurement data for verification, thereby directly proving energy output or carbon sequestration.
Currently, there are multiple open standard initiatives, such as the Carbon Data Open Protocol, aimed at unifying carbon project data from project validation and credit issuance. The Digital MRV Framework can introduce an open standard for verification and implement a new "effort scale" between validation and verification based on project type, moving away from a one-size-fits-all approach.
2. Introduction
The Digital MRV (dMRV) Framework outlines the terminology, roles, process workflows, generic evidence packaging, and attestations that digital MRV solutions should follow to create the next generation of environmental credits as digital assets. The framework establishes a common roles-based process along with an extensible data model to maintain a consistent taxonomy across infrastructure and asset classes, allowing for customization to accommodate various activities that can produce these new assets. It describes an asset origination supply chain (dMRV network), where different roles are responsible for different parts of the process.
For instance, a project developer, who performs the work generating environmental benefits, provides raw measurement data and evidence into the supply chain. The verifier then validates this evidence against a quality standard, such as methodology, ensuring its accuracy and reliability. The verifier generates a report used to issue the digital asset, such as a carbon credit, to the issuing registry.
The framework aims to support investments in and the generation of high-quality, data-backed ecological assets at scale. It specifies the entities and processes enabling the application of various standards, protocols, and technologies that can collaboratively produce high-quality projects and claims, ready for validation and verification.
This document serves as the technical specification for the dMRV Framework. It is intended for software developers, business analysts, data scientists, and others seeking to understand the data model and its entities, such as tokens, agreements, and data extensions, defined by this specification.
2.1. Status of this Document
Although this is the released Version 2.5 of the framework, comments regarding the document are welcome, for IWA members, please file issues directly on GitHub, using the dMRV
label.
Branching feedback can be made via pull request by branching and editing the GitHub Spec Bikeshed source directly.
Feedback from non-members is welcome via email to iwa
The technical specifications within this document are the result of consent processses by GBBC/IWA members and other external sources.
2.2. Scope
The scope of this document is to reach consensus on a tokenized orgination process that describes the behaviors, common data model, schema or data dictionary and encoding standard of the process for the IWA Voluntary Ecological Markets taskforce to represent the data entities involved in the origination process for the resulting digital assets.
2.3. Regarding the Token Taxonomy Framework
The Token Taxonomy Framework (TTF) is the IWA’s primary tool for defining an open specification for a token. It focuses on defining individual tokens but does not offer a framework for defining sets of related tokens involved in broader processes. This artifact will complement, rather than replace, the tokens defined in the TTF. The tokens and their data models from this artifact will be utilized to define the tokens within the TTF.
Token definitions will be titled as Token & Data Type to make it clear that the token is defined in the context of the data model. All other data types are considered Property Sets in the TTF.
Placing all of the token definitions and especially the data model in a single artifact makes it easier to understand the relationships and dependencies between the tokens.
Additionally, a single agreement that governs the process of origination, the Verification Process Agreement, see § 4.32 Agreement & Data Type: VerificationProcessAgreement, is defined in this artifact. This agreement is used to establish the parties and their roles in the origination process.
2.4. Intended Audience
This technical specification is for
-
software developers who want to build software to edit, exchange or store data in the format defined by this specification
-
business analysts who want to understand the data model and data dictionary defined by this specification
-
data scientists who want to understand the data model and data dictionary defined by this specification
-
anyone else who wants to understand the data model and data dictionary defined by this specification
2.5. About the Voluntary Ecological Markets Taskforce
The IWA Voluntary Ecological Markets Taskforce is a working group of the InterWork Alliance (IWA) that is focused on the develoment of standards for the creation of digital assets that represent the environmental benefits of voluntary ecological markets.
The lifecycle of these assets has two main phases: origination and distribution. The origination phase is the process of creating the digital asset and the distribution phase is the process of distributing the digital asset to the market, e.g., marketplaces, exchanges, DeFi, etc.
This document and the specifications are aimed at the origination phase of the lifecycle.
2.6. Disclaimer
While IWA encourages the implementation of the technical specifications by all entities for interoperability, those organiazations and individuals who contributed to the development of this document do not assume responsibility for any consequences or damages resulting directly or indirectly from the use of this document.
2.7. License
The license can be found in Appendix A: License.
3. Terminology
- dMRV
-
Digital Measurement, Reporting and Verification, also a Namespace in the framework.
- Accountable Impact Organization
-
An Accountable Impact Organization undertakes activities to achieve specific environmental outcomes measured by Activity Impact Modules (AIMs). Multiple AIMs can target different objectives, following a particular Quality Standard. For instance, an agricultural project may have separate AIMs for carbon removal and biodiversity conservation. Carbon Capture and Storage projects may have distinct modules for capture, transport, and storage phases. This structure allows the organization to manage various types of credits or organize activities into separate modules for streamlined issuance.
The encoding of an Accountable Impact Organization in the data model is specified in § 4.3 Token & Data Type: AccountableImpactOrganization
- Activity Impact Module (AIM)
-
An Activity Impact Module, AIM, can represent a single project with all § 4.56 Data Type QualityStandard modules represented in a single AIM, or span multiple AIMs where each AIM represents a different module within a project and be grouped into a § 4.8 Data Type: ActivityImpactModuleGroup. Each AIM has a defined scope and a defined set of activities that are intended to achieve a defined set of outcomes. The outcomes of the project are typically environmental benefits and follow a spcific Quality Standard, i.e. methodology.
A AIM is scoped or bound to a quality standard/methodology that it follows along with a physical location or boundary that defines where the project activities occur. For example, a land based project would be scoped to an area/polygon on a map and an engineered sequestion based project would be scoped to a power plant/GPS/INSS.
An Accountable Impact Organization can have multiple AIMs, but there cannot be another AIM using the same benefit type/quality standard/methodology and location.
The encoding of a Activity Impact Module in the data model is specified in § 4.5 Data Type: ActivityImpactModule
- Quality Standard
-
A quality standard is a generic term for the methodology or protocol(s) that are used to validate a project and measure, report and verify the environmental benefits of an Activity Impact Module. The quality standard may include additional project validation requirements and be composed of different combinations of tools to calculate things like Additionally, etc.
The encoding of a Quality Standard in the data model is specified in § 4.56 Data Type QualityStandard
- Verification Automation
-
Solutions, platforms, services, etc., designed to accelerate the verification of claims. Depending on the Quality Standard, it may be able, with appropriate audit requirements, to perform full verification of claims issuance of impact credits. For other Quality Standards, these platforms or services may automate and prepare findings data that are evaluated by a VVB in order to speed up and support a continuous verification process.
- Impact Claim
-
An impact claim is a collection of the evidence data submitted according to the quality standard being followed by the AIM for a claim period. A claim period is typically the same as the issuing cadence, i.e., monthly or annually. An impact claim is composed of one or more checkpoints.
The encoding of an Impact Claim in the data model is specified in § 4.10 Token & Data Type: ImpactClaim
- Impact Claim Checkpoint
-
An impact claim checkpoint is a collection of the evidence data submitted periodically to an impact claim. The checkpoint is a cryptographic fingerprint of the evidence data contained within a Data Package to establish the provenance and integrity of the evidence being submitted.
The encoding of an Impact Claim Checkpoint in the data model is specified in § 4.11 Data Type: ImpactClaimCheckpoint
- Data Package
-
A data package, is the data package file, i.e. .zip file, that contains the raw evidence data being submitted with a checkpoint.
The encoding of a Data Package in the data model is specified in § 4.12 Data Type: DataPackage
- Data Package Manifest
-
A data package has a manifest.json file in the root of the package file that contains the metadata about the contents of the file as well as extensible metadata that is specific for the quality standard being followed.
The encoding of a Manifest in the data model is specified in § 4.13 Data Type: Manifest
- Processed Claim
-
For each Impact Claim, there is a Processed Claim used by the Verifier to record verification outcomes. A processed claim is the Impact Claim’s corresponding collection of checkpoint results that are generated by the verifier.
The encoding of a Processed Claim in the data model is specified in § 4.30 Token & Data Type: ProcessedClaim
- Checkpoint Result
-
A Checkpoint Result is paired with a corresponding Impact Claim Checkpoint for the claim being processed and contains the results of the verification of the checkpoint.
The encoding of a Checkpoint Result in the data model is specified in § 4.31 Data Type: CheckpointResult
- Activity Impact Module Group
-
The ActivityImpactModuleGroup is a group of Activity Impact Modules that are grouped together to combine claims from multiple projects, potentially from different organizations, into a single group claim. A carbon credit may require several different modules and claims to be combined to create a single credit, the AIMs would be grouped together in an ActivityImpactModuleGroup, even in scenarios involving different organizations.
For example, Carbon Capture and Storage (CCS) may require a project developer to capture CO2 from a plant, then hand it off to a different organization to transport the CO2 to a storage facility, then a third organization to store the CO2. Each of these organizations would have their own AIM and claim, but only one credit will be issued for the combined claims. The AIMs would be grouped together in an ActivityImpactModuleGroup, their claims would be combined into an ClaimGroup for a single credit to be issued for the group. Since an Activity Impact Module can be a member of multiple groups, when a claim is created it must identify the Claim Group it will belong to.
The encoding of an Activity Impact Module Group in the data model is specified in § 4.8 Data Type: ActivityImpactModuleGroup
- Claim Group
-
An ClaimGroup is a group of Impact and Processed Claim pairs that are grouped together to combine claims from multiple projects (AIMs), potentially from different organizations, into a single claim for processing.
A ClaimGroup is a member of only one Activity Impact Module Group.
The encoding of a Claim Group in the data model is specified in § 4.15 Data Type: ClaimGroup
- Extension
-
An Extension can be an
Entity
,Message
,Formula
orVariable
extension to the data model that is specific to the quality standard being followed. These extensions are used to extend the data model and process to support the specific requirements of the quality standard and can be contextually applied to the appropriate data types. For example, an Entity Extension can be applied to an Activity Impact Module to support the data requirements of a specific quality standard. An Extension Message Pair can be defined to add a process step to a claim verification for one party to request something from another and be recorded as a request/response message pair in the proper context of the business process.Each extension must have an extension template defined in an Extension Set. There are templates for each extension type, Entity Template, Message Pair, Formula Template and Variable Template. Templates are defined in an Extension Set that is shared by all participants in the dMRV Process as a way of creating structured data and messaging to digitize the MRV Process.
To use an extension, a template must be defined first, then an extension instance can be created from the template and applied.
The encoding of an Extension in the data model is specified in § 4.23 Data Type: FormulaTemplate & § 4.24 Data Type: Formula, § 4.25 Data Type: VariableTemplate & § 4.26 Data Type: Variable, § 4.21 Data Type: EntityTemplate & § 4.22 Data Type: Entity, § 4.18 Data Type: MessagePair & § 4.19 Data Type: Message
- Extension Set
-
An extension set is a grouping of Extension Templates that can be organized into ExtensionSetModules that is the shared library of available extensions available for use by the participants in the dMRV process.
ExtensionSets and Templates are how specific Quality Standards are digitally implemented in the framework.
The encoding of an Extension Set in the data model is specified in § 4.16 Data Type: ExtensionSet
- Verification Process Agreement
-
A multiparty agreement between the parties involved in the origination and digital MRV process. It defines the roles, rules, quality standard and the ExtensionSet that can be used by the participants. Every dMRV origination process must have a Verification Process Agreement in place and is the
rule book
that governs the process.The encoding of a Verification Process Agreement in the data model is specified in § 4.32 Agreement & Data Type: VerificationProcessAgreement
- Carbon Removal or Reduction Credit - CRU
-
A CRU can represent either a carbon removal or reduction credit. The difference is that a carbon removal credit is a credit that is issued for the removal of carbon from the atmosphere, while a carbon reduction credit is a credit that is issued for the reduction of carbon emissions.
This is just one example of a credit definition. New types of credits can be defined and applied to the framework.
The encoding of a CRU in the data model is specified in § 4.33 Token & Data Type: CRU
4. Tokens and their Data Model
This section specifies the tokens and their data model for the entities involved in the origination process to conform with this specification.
The data model consists of the following major data types:
-
AccountableImpactOrganization: contains information identifying an individual or organization that will host one or more Activity Impact Module(s).
-
ActivityImpactModule: is parented by an Accountable Impact Organization that can have multiple AIMs and contains information identifying a project, or optionally a module for a project, that will host one or more Impact Claim(s).
-
ImpactClaim: contains information identifying a claim that will host one or more Checkpoint(s).
-
DataPackage: contains information identifying a data package that will contain evidence or processed results of verification.
-
ProcessedClaim: contains information identifying a processed claim that will host one or more Checkpoint Result(s).
-
VerificationProcessAgreement: contains information identifying a verification agreement that will host one or more Checkpoint Result(s).
-
CRU: contains information identifying a carbon removal or reduction credit. This is the cononical example of an ecological asset and can be replaced by a different asset type, e.g., biodiversity, water, etc.
-
REC: contains information identifying a renewable energy credit. This is the cononical example of an ecological asset and can be replaced by a different asset type, e.g., biodiversity, water, etc.
Of these data types, the CRU and REC are the only tokens that are traded
and retired or redeemed
in the system. The other data types are used to support the origination process and provide the system of record for the data that backs the asset types.
Some data types, like the DataPackage, support extensible metadata. This means that the data type can be extended to support additional data types that are specific to the quality standard being followed. For example, the DataPackage data type can be extended to support the data types required by specific methodologies or quality standards.
Not all data types defined in this artifact are tokens, but are a Property-Set which are a collection of properties grouped together that can be used or composed into other property-sets or be present in many token definitions.
4.1. Highlevel Data Model
The following diagram shows the highlevel data model for the tokens defined in this specification, including the relationships between the them. This model only includes the highlights of properties within the data types and does not include the full list of properties for each data type.
4.2. Data Model
The following diagram shows the detailed data model for this specification, including the relationships between the them. This model is quite large can be downloaded from here.
4.3. Token & Data Type: AccountableImpactOrganization
AccountableImpactOrganization
is a data type which represents the individual or organization that will host one or more ActivityImpactModule(s).
This data type is used to represent a one to many relationship that can occur when an Accountable Impact Organization wishes to create multiple types of ecological assets and not have to establish an organiazational identity for each type of asset.
4.3.1. Base Token and Behaviors
The AccountableImpactOrganization has a Non-Fungilble base that has the following behaviors:
-
Transferable (t): The AccountableImpactOrganization can be transferred from one party to another.
-
Divisible (d): The AccountableImpactOrganization can be divided into multiple AccountableImpactOrganization tokens, up to 2 decimal places.
-
Burnable (b): The AccountableImpactOrganization can be burned, retired or permanently deactivated.
TTF base formula with behaviors is: [τN{d,t,b}]
4.3.2. Properties
An Accountable Impact Organization has the following properties:
Property | Type | Req | Specification |
---|---|---|---|
id : Id
| String | M | The Organization’s unique identifier, See § 4.105 Data Type: Id for details. |
name
| String | M | The name of the Accountable Impact Organization. |
description :
| String | M | A brief description of the Accountable Impact Organization. |
addresses : Address | Array | M | The non-empty set of addresses. Each value can represent physical, mailing and or legal addresses. See § 4.4 Data Type Address for details. |
owners : Id
| Array | M | The non-empty set of Id. Each of the values in the set is supposed to uniquely identify each owner of the project. |
informationLink : VerifiedLink
| String | M | A URI for information, i.e., webpage. See§ 4.43 Data Type: VerifiedLink |
mediaLinks : VerifiedLink
| Array | O | An array of optional media links. See§ 4.43 Data Type: VerifiedLink |
attestations : Attestation
| Array | O | An array of optional attestations including tags. See§ 4.52 Data Type: Attestation |
activityImpactModules : ActivityImpactModule
| Array | M | A collection of ActivityImpactModules that belong to this Accountable Impact Organization. |
entityExtensions : Entity | Array | O | A collection of optional MrvExtensions, see § 4.22 Data Type: Entity for details. |
4.4. Data Type Address
An address is a collection of address lines, city, state, postal code and country that can represent physical, legal or mailing addresses.
4.4.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
addressType : AddressType
| AddressType | M | The type of the address. See § 4.90 Data Type: AddressType for details. |
addressLines : String
| Array | M | A collection of address lines. |
city :
| String | M | The city of the address. |
state :
| String | M | The state of the address. |
postalCode :
| String | M | The postal code of the address. |
country :
| String | M | The country of the address. |
4.5. Data Type: ActivityImpactModule
A ActivityImpactModule represents the actual project work that will generate benefits. It is bound to to Quality Standard and is where claims are issued from. An AIM can represent a project as a whole, or be modularized to represent a specific part of a project and be correlated using a correlation identifier.
4.5.1. Scope of a ActivityImpactModule
Each ActivityImpactModule is scoped:
-
To a parent Accountable Impact Organization, which can host multiple Activity Impact Modules
-
Is bound or mapped to a QualityStandard that matches the AIM activities
-
Must be unique for its geographic footprint and Quality Standard
4.5.2. Properties
A ActivityImpactModule has the following properties:
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the AIM, See § 4.105 Data Type: Id for details. |
aioId : Id
| String | M | The unique identifier for the parent Accountable Impact Organization, See § 4.105 Data Type: Id for details. |
isGrouped : Boolean
| Boolean | M | False by default, if true, this AIM is a part of at least one ActivityImpactModuleGroup. It can be a member of multiple groups, for example, if the project provides captured CO2 to multiple storage facilities. |
name : | String | M | The name of the ActivityImpactModule |
classificationCategory : ClassificationCategory
| String | M | The string representaion classification category of the ActivityImpactModule, see § 4.79 Data Type: ClassificationCategory for details. |
classificationMethod : Method
| String | M |
The string representation of the classification method used to generate the benefit, see § 4.84 Data Type: Method for details.
|
benefitCategory : UN-SDGs
| String | M | The string representation of the benefit category of the ActivityImpactModule. The value MUST be a valid UN Sustainable Development Goal (UN SDG) code. See § 4.92 Data Type: UN-SDGs for details. |
projectScope : ProjectScope
| String | M | The string representation scope of the AIM, maps to the scope of the Quality Standard. See § 4.93 Data Type: ProjectScope for details. |
projectType : ProjectType
| String | M | The type of the AIM, maps to the scope of the Quality Standard. See § 4.94 Data Type: ProjectType for details. |
projectScale : ProjectScale
| String | M | String representation of scale, see § 4.88 Data Type: ProjectScale for details. MICRO = less than 1000 tCO2e SMALL = 1000 - 10000 tCO2e MEDIUM = 10000 - 100000 tCO2e LARGE = 100000 - 1000000 tCO2e Micro, Small, Medium or Large |
country : ISO3166CC
| String | M | The country where the project is located. The value MUST be a valid ISO 3166-1 alpha-2 country code. See § 4.106 Data Type: ISO3166CC for details. |
region : Region
| String | M | The region the project is located in. |
arbId :
| String | O | If present, this is the California Air Resources Board (ARB) project identifier. |
geographicLocation : GeographicLocation
| Object | M | This is the geographic location of the project. See § 4.55 Data Type: GeographicLocation for details. |
firstYearIssuance :
| String | O | If present, this is the year credits were first issued for the project. |
registryProjectId :
| String | O | If present, this is the Id assigned by the issuing registry for the project on their system. |
developers : Id
| Array | M | List of developers for the project. See § 4.105 Data Type: Id for details. |
sponsors : Id
| Array | M | List of sponsors, i.e., financiers, etc. for the project. See § 4.105 Data Type: Id for details. |
claimSources : ClaimSource
| Object | M | A collection of claim evidence sources for the project, i.e., sensors, meters, applications, etc. See § 4.9 Data Type: ClaimSource for details. |
impactClaims : ImpactClaim
| Object | M | A collection of impact claims for the project. See § 4.10 Token & Data Type: ImpactClaim for details. |
validations : Validation
| Object | M | A collection of validations for the project. See § 4.6 Data Type: Validation for details. |
attestations : Attestation
| Array | O | An array of optional attestations including tags. See§ 4.52 Data Type: Attestation |
entityExtensions : Entity | Array | O | A collection of entity extensions for the project. See § 4.22 Data Type: Entity for details. |
formulaTemplates : FormulaTemplate | Array | O | A collection of Formula Templates for the project. See § 4.24 Data Type: Formula for details. |
fixedVariables : Variable | Array | O | A collection of fixed variables for the project, i.e. emission factors. See § 4.26 Data Type: Variable for details. |
4.6. Data Type: Validation
Represents the validation steps and artifacts created in the validation phase of a project. These would include Project Design Documents (PDD), etc.
4.6.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
requestDate : DateString
| String | M | The request date for validation. See § 4.61 Data Type: DateString for details. |
validationDate : DateString
| Date | M | The date of the validation. See § 4.61 Data Type: DateString for details. |
validatingPartyId :
| String | M | The Id of the validating party, see § 4.105 Data Type: Id for details. |
validationMethod :
| String | M | The validation method used for the project, can include a version identifier. |
validationExpirationDate : DateString
| String | M | The date of the validation expires. See § 4.61 Data Type: DateString for details. |
validationSteps : ValidationStep
| Array | M | A collection of Validation Steps. See § 4.7 Data Type: ValidationStep for details. |
4.7. Data Type: ValidationStep
A validation step is a single step in the validation process, a validation process can be composed of multiple steps each step can generate its own artifact like a Project Design Document.
4.7.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
validationStepName :
| String | M | The name of the validation step. |
validationStepDescription :
| String | M | The description of the validation step. |
validationStepStatus : ValidationStepStatus
| ValidationStepStatus | M | The ValidationStepStatus of the validation step. See § 4.89 Data Type: ValidationStepStatus for details. |
stepDocumentLink : VerifiedLink
| VerifiedLink | M | The artifact generated by the validation step. See § 4.43 Data Type: VerifiedLink for details. |
4.8. Data Type: ActivityImpactModuleGroup
The ActivityImpactModuleGroup is a group of Activity Impact Modules that are grouped together in order to combine claims from multiple project, potentially from different organizations, into a single claim. A carbon credit may require several different modules and claims to be combined to create a single credit, the AIMs would be grouped together in an ActivityImpactGroup, even accross different organizations.
4.8.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the ActivityImpactModuleGroup, See § 4.105 Data Type: Id for details. |
name | String | M | The name of the ActivityImpactModuleGroup. |
description | String | M | A description of the ActivityImpactModuleGroup. |
activityImpactModules : ActivityImpactModule
| Object | M | Collection of Activity Impact Module members of the group. See § 4.5 Data Type: ActivityImpactModule for details. |
claimGroups : ClaimGroup
| Object | M | Collection of ClaimGroups that belong to the group. See § 4.15 Data Type: ClaimGroup for details. |
4.9. Data Type: ClaimSource
A ClaimSource is a registered source of evidence data to support a claim. A claim source can be a device like a sensor or meter, an application that collects user data or reference data like satellite imagery.
4.9.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the ClaimSource, See § 4.105 Data Type: Id for details. |
aimId : Id
| String | M | The unique identifier for the parent ActivityImpactModule, See § 4.105 Data Type: Id for details. |
name : | String | M | A name for the source. |
description : | String | M | Description of the source and other details like the type of data collected, the frequency of collection, GPS/Location, etc. |
location : GeographicLocation | Object | M | GNSS, i.e., GPS coordinates, for the source. See § 4.55 Data Type: GeographicLocation for details. |
sourceType : ClaimSourceType
| String | M | String representing the source type can include sensor, meter, application, reference, etc. See § 4.83 Data Type: ClaimSourceType for details. |
unitOfMeasure : Unit
| String | M | The string representation for unit of measure, see § 4.101 Data Type: Unit for details. |
reportingFrequency : ReportingFrequency
| String | M | The string representation for Reporting Frequency, see § 4.100 Data Type: ReportingFrequency for details. |
sourceIdentifier :
| string | M | this can be the unique identifier for the device, like a serial number, public key, etc. |
entityExtensions : Entity | Array | O | A collection of optional MrvExtensions, see § 4.22 Data Type: Entity for details. |
variableTemplates : VariableTemplate | Array | O | A collection of optional Variable Templates, see § 4.25 Data Type: VariableTemplate for details. |
4.10. Token & Data Type: ImpactClaim
An ImpactClaim represents the actual project work that will generate benefits through out the claim period that is agreed to by the developer, VVB and Registry. ImpactClaims are created by a ActivityImpactModule and contains metadata about the claim period as well as a collection of checkpoints that are used to submitted project evidence that is verified by the VVB or Verification Automation.
4.10.1. Base Token and Behaviors
The ImpactClaim has a Non-Fungilble base that has the following behaviors:
-
Indivisible (~d): The ImpactClaim is indivisible, meaning it cannot be divided into multiple ImpactClaim tokens.
-
Non-transferable (~t): The ImpactClaim is non-transferable, meaning it cannot be transferred to another parent Accountable Impact Organization/AIM.
-
Delegable (g): The ImpactClaim can have certain behaviors delegated to another party.
-
encumberable (e): The ImpactClaim can be encumbered by a third party, typically the verification automation or VVB.
-
ProcessedClaimControl (PCC): The ImpactClaim also has this Behavior-Group with a set of behaviors a bundled and configured to control the processing of the ImpactClaim.
-
Mintable (m): The ImpactClaim can be minted, i.e., created, by the parent ActivityImpactModule.
-
Roles (r): The ImpactClaim can have roles assigned to it, i.e., the VVB, Verifier, etc. that has the ability to burn or retire the claim after processing has completed.
-
Burnable (b): The ImpactClaim can be burned, i.e., retired, by the VVB or Verifier.
-
TTF base formula with behaviors is: [τN{~d,~t,g,e,PCC}]
4.10.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the ImpactClaim, See § 4.105 Data Type: Id for details. |
aimId : Id | String | M | The unique identifier for the parent ActivityImpactModule, See § 4.105 Data Type: Id for details. |
processedClaimId : Id
| String | M | The unique identifier for the corrisponding processed claim that the verification automation uses to track the verification process and results of a claim. See § 4.105 Data Type: Id for details. The value can be null until a processed claim is created. |
claimGroupId : Id
| String | O | The id of the ClaimGroup that the claim is associated with, will be null if not part of a group. |
startDate: DateString | String | M | The start date of the claim period. See § 4.61 Data Type: DateString for details. |
endDate: DateString | String | M | The end date of the claim period. See § 4.61 Data Type: DateString for details. |
unit : Unit
| String | M | The unit of measurement/analysis of the project. See Data Type § 4.101 Data Type: Unit for further information. |
quantity : Decimal | Decimal | O | Optional, the estimated benefit quantity. |
co-benefits : Co-benefit
| Object | O | Optional list of co-benefits associated with the ImpactClaim. See § 4.38 Data Type: Co-Benefit for details. |
checkpoints : ImpactClaimCheckpoint
| Object | M | A collection of checkpoints for the ImpactClaim. See § 4.11 Data Type: ImpactClaimCheckpoint for details. |
entityExtensions : Entity | Array | O | A collection of entity extensions for the claim. See § 4.22 Data Type: Entity for details. |
4.11. Data Type: ImpactClaimCheckpoint
The impact claim checkpoint is a collection of evidence that is submitted by the developer to support the claim. The VVB or verification automation will review the evidence and provide a status of the evidence in a corresponding CheckpointResult in the processed claim.
Checkpoints are used to periodically submit evidence on an agreed upon basis from the ActivityImpactModule to the VVB or verification automation. This enables the development of continous verification of the project and the ability to provide feedback to the developer on the status of the project and the evidence submitted before the end of the claim period.
4.11.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : | String | M | Unique identifier for the ImpactClaimCheckpoint, See § 4.105 Data Type: Id for details. |
claimId :
| String | M | The unique identifier for the parent ImpactClaim, See § 4.105 Data Type: Id for details. |
claimSourceIds : Id
| Array | M | A list of registered claim sources submitting evidence in this checkpoint. See § 4.105 Data Type: Id for details. |
projectDeveloperId :
| String | M | The Id of the project developer that is submitting the checkpoint, must be a developer registered in the ActivityImpactModule. This is used when multiple identities may submit a checkpoint for a claim, for example one party may submit evidence of carbon capture and another may submit evidence of sequestration to support a carbon removal claim. See § 4.105 Data Type: Id for details. |
efBefore :
| String | O | Environmental factor before activity - i.e., total emissions = 3 tCO2e |
efAfter :
| String | O | Environmental factor after activity - i.e., total emissions = 2 tCO2e. |
checkpointDateRange : DateRange
| DateRange | M | The date range for the checkpoint. See § 4.59 Data Type: DateRange for details. |
entityExtensions : Entity | Array | O | A collection of entity extensions for the checkpoint. See § 4.22 Data Type: Entity for details. |
dataPackages : DataPackage
| Array | O | Optional, collect and store the data packages for the checkpoint, this contains be the Json string contents of the manifest.json in the Data Package root and the § 4.43 Data Type: VerifiedLink to the data file. See § 4.12 Data Type: DataPackage for details. |
4.12. Data Type: DataPackage
A data package is an index and metadata file that is stored in the root of the DataPackage file that is submitted with a checkpoint. It contains meta data about the evidence files contained in the package as well as extensible MRV data that is specific to the Quality Standard/Methodology the AIM is bound to.
4.12.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
manifest : Manifest | Object | M | The manifest object, a serialized JSON object that contains the metadata for the DataPackage. See § 4.13 Data Type: Manifest for details. |
verifiedLinkToCheckpointData : VerifiedLink
| Object | M | A VerifiedLink that contain the evidence, in a data package submitted by the AIM. See § 4.43 Data Type: VerifiedLink for details. |
4.13. Data Type: Manifest
The Data Package has a manifest.json file that is an extensible JSON object that contains the metadata about the contents in the Data Package. The manifest contains a list of files that are contained in the Data Package and the metadata about the files. The manifest also contains extensible MRV data that is specific to the Quality Standard/Methodology the AIM is bound to.
4.13.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | The unique identifier for the Data Package, See § 4.105 Data Type: Id for details. |
version: String | String | M | The versions of the Data Package specification, default is 1.0.0. |
aioId : Id | String | M | The unique identifier for the Accountable Impact Organization, See § 4.105 Data Type: Id for details. |
aimId : Id | String | M | The Activity Impact Module that the Data Package is sourced from. |
claimId : Id | String | M | The Impact Claim that the Data Package, if it is sourced from. See, § 4.105 Data Type: Id for details. |
processedClaimId : Id | String | M | The Processed Claim that the Data Package, if it is sourced from. See, § 4.105 Data Type: Id for details. |
projectDeveloperId : Id | String | M | The Project Developer that submitted the Data Package, See, § 4.105 Data Type: Id for details. |
created : DatePoint | DatePoint | M | The DatePoint that the Data Package was created. See § 4.60 Data Type: DatePoint for details. |
entityExtensions : Entity | Array | O | A collection of one or more Entity Extensions that are specific to the Quality Standard/Methodology the AIM is bound to. See § 4.22 Data Type: Entity for details. |
files : DataFile | Array | M | The files that are in the Data Package, see § 4.14 Data Type: DataFile for details. |
4.14. Data Type: DataFile
A DataFile is a set of metadata about an evidence file contained within the Data Package.
4.14.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
name : String | String | M | The name of the file. |
type : String | String | M | The string representation of the file type, see § 4.72 Data Type: FileType for details. |
description : String | String | M | A description of the contents of the file. |
claimSourceId : Id | String | M | The id for the claim source registered with the ActivityImpactModule that the file is sourced from. |
claimSourceAttestation : DigitalSignature | Object | O | The source attestation or signature for the file. See § 4.47 Data Type: DigitalSignature for details. |
entityExtensions : Entity | Array | O | A collection of optional MrvExtensions. See § 4.22 Data Type: Entity for details. |
4.15. Data Type: ClaimGroup
An ClaimGroup is a group of Impact and Processed Claim pairs that are grouped together in order to combine claims from multiple projects (AIM), potentially from different organizations, into a single claim for processing.
4.15.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the ClaimGroup, See § 4.105 Data Type: Id for details. |
activityImpactModuleGroupId : Id | String | M | Unique identifier for the Activity Impact Module Group the Claim Group belongs to, See § 4.105 Data Type: Id for details. |
name | String | M | The name of the ClaimGroup. |
description | String | M | A description of the ClaimGroup. |
impactClaims : ImpactClaim
| Object | M | Collection of Impact Claims in the group. See § 4.10 Token & Data Type: ImpactClaim for details. |
processedClaims : ProcessedClaim
| Object | M | Collection of Processed Claims in the group. See § 4.10 Token & Data Type: ImpactClaim for details. |
4.16. Data Type: ExtensionSet
A collection of Extensions (Entity
, Message
, Formula
or Variable
) and Modules that are specific to the Quality Standard/Methodology the AIM is bound to, typically comprosised of multiple MRV Extensions for modules or activities. A ExtensionSet
can be defined by the supplier, verifier and issuer based on a set of methodology modules to form reusable libraries for the MRV process for all parties.
4.16.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.16.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the MRV Extension Set, this is a string that is defined by the verifier or verification automation. |
name : String | String | M | The name of the MRV Extension Set, this is a string that is defined by the verifier or verification automation. |
version: String | String | M | The versions of the MRV Extension Set specification, default is 1.0.0. |
description : String | String | M | A description of the MRV Extension Set, this is a string that is defined by the verifier or verification automation describing the purpose of the extension. |
documentation :String
| String | O | A link to the documentation for the MRV Extension Set, see § 4.29 Extension Documentation: ExtensionDocumentation for details. |
modules : ExtensionSetModule | Array | M | A collection of Extension Modules for the Quality Standard. See § 4.17 Data Type: ExtensionSetModule for details. |
entityTemplates : EntityTemplate | Array | O | A collection of MRV Entity Templates for the whole Quality Standard, meaning these can apply to all child modules as well. See § 4.21 Data Type: EntityTemplate for details. |
extensionMessage : MessagePair | Array | O | A collection of MRV Extension Message Pairs for the whole Quality Standard, meaning these can apply to all child modules as well. See § 4.18 Data Type: MessagePair for details. |
formulaTemplates : FormulaTemplate | Array | O | A collection of MRV Formula Templates for the whole Quality Standard, meaning these can apply to all child modules as well. See § 4.23 Data Type: FormulaTemplate for details. |
variableTemplates : VariableTemplate | Array | O | A collection of MRV Variable Templates for the whole Quality Standard, meaning these can apply to all child modules as well. See § 4.25 Data Type: VariableTemplate for details. |
4.17. Data Type: ExtensionSetModule
A MRV Extension St Module is a collection of MRV Extensions that are specific to the Quality Standard/Methodology the AIM is bound to, typically comprosised of multiple MRV Extensions for modules or activities. A ExtensionSetModule, categorizes MrvExtensions into modules like, "Carbon Capture", "Carbon Sequestration", "Carbon Removal", etc.
Templates for Entity Extensions, Messages, Formulas and Variables defined at the module level can only apply to the module and its child modules.
4.17.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.17.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the MRV Extension, this is a string that is defined by the verifier or verification automation. |
name : String | String | M | The name of the MRV Extension, this is a string that is defined by the verifier or verification automation. |
version: String | String | M | The versions of the MRV Extension specification, default is 1.0.0. |
description : String | String | M | A description of the MRV Extension, this is a string that is defined by the verifier or verification automation describing the purpose of the extension. |
documentation :String
| String | O | A link to the documentation for the MRV Extension, see § 4.29 Extension Documentation: ExtensionDocumentation for details. |
entityTemplates : EntityTemplate | Array | M | A collection of Entity Templates for the Module. See § 4.21 Data Type: EntityTemplate for details. |
messagePairs : MessagePair | Array | O | A collection of Extension Message Pairs for the Module. See § 4.18 Data Type: MessagePair for details. |
formulaTemplates : FormulaTemplate | Array | O | A collection of Formula Templates for the Module. See § 4.23 Data Type: FormulaTemplate for details. |
variableTemplates : VariableTemplate | Array | O | A collection of Variable Templates for the Module. See § 4.25 Data Type: VariableTemplate for details. |
4.18. Data Type: MessagePair
A Extension Message Pair is a defined set of Request and Response messages that used to communicate and drive MRV Process between the parties involved in the MRV process, i.e., the supplier, verifier, issuer.
4.18.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.18.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the Extension Message Pair, this is a string that is defined by the verifier or verification automation. |
name : String | String | M | The name of the Extension Message Pair, this is a string that is defined by the verifier or verification automation. |
version: String | String | M | The versions of the Extension Message Pair specification, default is 1.0.0. |
description : String | String | M | A description of the Extension Message Pair, this is a string that is defined by the verifier or verification automation describing the purpose of the extension. |
documentation :String
| String | O | A link to the documentation for the Extension Message Pair, see § 4.29 Extension Documentation: ExtensionDocumentation for details. |
requestDefinition : AnyData | Object | M | The request message definition for the Extension Message Pair. See § 4.19 Data Type: Message for details. |
responseDefinition : AnyData | Object | M | The response message definition for the Extension Message Pair. See § 4.19 Data Type: Message for details. |
4.19. Data Type: Message
A Extension Message is a defined message that is used to communicate and drive MRV Process between the parties involved, i.e., the supplier, verifier, issuer. It is recommended that these messages use Apache Avro and Json Schema to define the message structure, content and serialization.
4.19.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.19.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the Extension Message, this is a string that is defined by the verifier or verification automation. |
messageType : MessageType
| String | M | The message type, request or response, see § 4.71 Data Type: MessageType for details. |
senderId: String | String | M | The Id for the sender of the message. |
correlationId : String
| String | M | The correlation Id for the message will be the same for related messages, typically the initial request message’s id. |
conversationId : String
| String | O | A conversation Id for the message, this is used to track the conversation between the parties and should be set for message pairs that may have multiple requests and responses tied to a process. |
closed | Boolean | O | A boolean that indicates if the conversation is closed, is optional for use by messaging implementations. |
message : AnyData | Object | M | The message for the Extension, these are the custom messages defined for the extension. See § 4.19 Data Type: Message for details. |
4.20. Data Type: AnyData
Any data is used to represent a custom message type defined for Extensions. If the message is defined in a protocol buffer, the message will be serialized to protoData and the remaining fields will be null. If other serialization, a dataType can use a custom class or json schema to define the message type and the value will be serialized to value.
4.20.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.20.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
protoData : String | String | O | Serialized protocol buffer data in Json or byte string format. |
dataType : String | String | O | The data type that of the message, this will be extension and implementation specific, i.e. using protocol buffers, custom classes, or json schema for message types. |
value: String | String | O | Serialized data like Json or byte string |
4.21. Data Type: EntityTemplate
An Entity Extension Template is an extensible object (JSON, proto, etc.) that contains custom data that is specific to a Quality Standard/Methodology Entity. Entity Extension Templates can be defined by the methdology developers or the verifier, or verification automation to include attributes or data that is helpful to have on the ledger. entityTemplates are used to create Entity instances and add to most entity types, i.e., ActivityImpactModule, ImpactClaim, and ProcessedClaim types.
The Entity Extension Template is defined and added to a ExtensionSet with an accompanying schema. The ExtensionSet is a part of the VerificationProcessAgreement and is used by participants to define the MRV process and data that is required for the verification process.
4.21.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.21.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the Entity Extension, this is a string that is defined by the verifier or verification automation. |
name : String | String | M | The name of the Entity Extension, this is a string that is defined by the verifier or verification automation. |
version: String | String | M | The versions of the Entity Extension specification, default is 1.0.0. |
description : String | String | M | A description of the Entity Extension, this is a string that is defined by the verifier or verification automation describing the purpose of the extension. |
documentation :String
| String | O | A link to the documentation for the Entity Extension, see § 4.29 Extension Documentation: ExtensionDocumentation for details. |
extensionContext : ExtensionContext
| String | M | The type of extension and which entity it applies to, See § 4.70 Data Type: ExtensionContext for details. |
dataSchemaOrType : string | URI, URL or string | O* | A link to the Json schema file for the Entity Extension that the data property follows or is mapped to. It also may contain a type name for direct serialization/de-serialization functionality.
|
dataExample | Object | O* | A Json or byte string object that contains example data for the extension. |
4.22. Data Type: Entity
An Entity Extension is an extensible object (JSON, proto, etc.) that contains custom data that is specific to a Quality Standard/Methodology Entity. Entity Extensions are an instance of an EntityTemplate and can be added to most entity types, i.e., ActivityImpactModule, ImpactClaim, and ProcessedClaim types. An Entity Extension is used to add custom data to the entity that is not part of the core schema.
Entity Extensions are defined and reference their EntityTemplate and added to a ExtensionSet with an accompanying schema. The ExtensionSet is a part of the VerificationProcessAgreement and is used by participants as the repository of extensions used for the Quality Standard/Methodology.
4.22.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.22.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the Entity Extension, this is a string that is defined by the verifier or verification automation. |
templateId : Id | String | M | The id for the Entity Extension Template that the Entity Extension is based on. |
data : AnyData | Object | M | The data for the Entity Extension, this is a custom object that is defined by the verifier or verification automation. |
appliedToId : Id | String | O | OPTIONAL - depending on data layer implementation, the entity id that the extension applies to. |
extensionContext: ExtensionContext
| String | O | OPTIONAL - depending on data layer implementation, the context of the extension. |
4.23. Data Type: FormulaTemplate
A Formula Template is a formula that is used to calculate the MRV data for a Quality Standard/Methodology. Formula Templates are composed into ExtensionSet and are used to calculate the MRV data for the Quality Standard/Methodology. A Formula is an instance from a Formula Template that is used to calculate the MRV data for a Quality Standard/Methodology and is applied to an ActivityImpactModule.
4.23.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.23.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the Formula Template, this is a string that is defined by the verifier or verification automation. |
name : String | String | M | The name of the Formula Template, this is a string that is defined by the verifier or verification automation. |
version: String | String | M | The versions of the Formula Template specification, default is 1.0.0. |
formula: String | String | M | The formula for the Formula Template, this is a string that is defined by the verifier or verification automation. |
description : String | String | M | A description of the Formula Template, this is a string that is defined by the verifier or verification automation describing the purpose of the extension. |
documentation :String
| String | O | A link to the documentation for the Formula Template, see § 4.29 Extension Documentation: ExtensionDocumentation for details. |
dataSchemaOrType : String | String | M | The data schema or type for the Formula Template, this is a string that is defined by the verifier or verification automation. |
dataExample : String | String | M | An example of the formula. |
variableTemplates : VariableTemplate | Array | M | A collection of Variables Templates that are used in the formula. |
4.24. Data Type: Formula
A Formula is an instance of a FormulaTemplate that is used to calculate the MRV data for a Quality Standard/Methodology. Formulas are applied to an ActivityImpactModule and are used to calculate the MRV data for the Quality Standard/Methodology. Formulas are composed of Variables that are used to calculate the MRV data for the Quality Standard/Methodology and are applied to entities like a ActivityImpactModule.
4.24.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.24.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the Formula, this is a string that is defined by the verifier or verification automation. |
templateId : Id | String | M | The id for the Formula Template that the Formula is based on. |
data : AnyData | Object | M | The data for the Formula, this is a custom object that is defined by the verifier or verification automation. |
variables : Variable | Array | M | A collection of Variables that are used in the formula. |
appliedToId : Id | String | O | OPTIONAL - depending on data layer implementation, the entity id that the extension applies to. |
extensionContext : ExtensionContext
| String | O | OPTIONAL - depending on data layer implementation, the entity context the formula belongs to. |
4.25. Data Type: VariableTemplate
A Variable Template is a variable that is used in a Formula Template to calculate the MRV data for a Quality Standard/Methodology. Variable Templates are composed into FormulaTemplate and are used to calculate the MRV data for the Quality Standard/Methodology.
A Variable is an instance from a Variable Template that is used to calculate the MRV data for a Quality Standard/Methodology and is applied to entities like a ClaimSource.
4.25.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.25.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the Variable, this is a string that is defined by the verifier or verification automation. |
name : String | String | M | The name of the Variable, this is a string that is defined by the verifier or verification automation. |
version: String | String | M | The versions of the Variable specification, default is 1.0.0. |
description : String | String | M | A description of the Variable, this is a string that is defined by the verifier or verification automation describing the purpose of the extension. |
documentation :String
| String | O | A link to the documentation for the Variable, see § 4.29 Extension Documentation: ExtensionDocumentation for details. |
dataSchemaOrType : String | String | M | The data type or schema for the Variable, this is a string that is defined by the verifier or verification automation. |
dataExample : String | String | M | An example of the variable. |
4.25.3. Data Type: VariableTemplates
A collection of VariableTemplate objects that are used in a Extension Sets and Claims.
4.26. Data Type: Variable
A Variable is an instance of a VariableTemplate that is used to calculate the MRV data for a Quality Standard/Methodology. Variables are used in Formula Templates to calculate the MRV data for the Quality Standard/Methodology. Variables are applied to entities like a ClaimSource or ImpactClaimCheckpoint.
4.26.1. Namespace
The ExtensionSet is a part of the dmrv
namespace.
4.26.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | A unique identifier for the Variable, this is a string that is defined by the verifier or verification automation. |
templateId : Id | String | M | The id for the Variable Template that the Variable is based on. |
data : AnyData | Object | M | The data for the Variable, this is a custom object that is defined by the verifier or verification automation. |
appliedToId : Id | String | O | OPTIONAL - depending on data layer implementation, the entity id that the extension applies to. |
extensionContext : ExtensionContext
| String | O | OPTIONAL - depending on data layer implementation, the entity context the variable belongs to. |
4.27. Data Type: Variables
A collection of Variable objects that are used in a Extension Sets and Claims.
4.28. Extension Schema File: ExtensionDefinition
MRV extensions MAY define a valid JSON Schema document according to the JSON Schema specification. The extension schema file defines the data encoding and syntactical data validation details.
Authors of extension schema definitions SHOULD attempt to add as many validation rules as possible such that data validation can be automated as much as possible.
Extension schemas SHOULD be defined in a way to make illegal extension representations unrepresentable.
Additional details which are not representable in JSON Schema such as data semantics or validation rules, MUST be defined in the extension documentation (§ 4.29 Extension Documentation: ExtensionDocumentation).
4.29. Extension Documentation: ExtensionDocumentation
The extension documentation is a human-readable document that describes the extension in detail. Extension document MUST be written in English. The documentation CAN be offered as a translation in other languages as well.
The documentation MUST include:
-
Version of the extension and the document. The value MUST be a string in the format
major.minor.patch
as defined in Semantic Versioning 2.0.0. -
If the extension was updated, the document MUST include a changelog. The changelog MUST contain a summary of the changes between subsequent versions.
-
A description of the extension, including the business case addressed by the extension and the business value gained by extending the Pathfinder Data Model. 2.1 This includes methodological alignment of the extension, especially covering the alignment with the Pathfinder Framework if applicable.
-
A public URL to the § 4.28 Extension Schema File: ExtensionDefinition.
-
A license declaration covering the documentation, the extension schema file, and their use.
-
Electronic contact information on how to get in touch with the authors and maintainers of the extension.
4.30. Token & Data Type: ProcessedClaim
The verification automation or VVB creates a ProcessedClaim at the beginning of verification to track the verification process and support continous verification. A ProcessedClaim is paired with an ImpactClaim and also contains a collection of CheckpointResults where results for each checkpoint verified are recorded.
4.30.1. Base Token and Behaviors
The ProcessedClaim has a Non-Fungible base with the following behaviors:
-
Indivisible (~d): The ProcessedClaim is indivisible, meaning it cannot be divided into multiple ImpactClaim tokens.
-
Non-transferable (~t): The ProcessedClaim is non-transferable, meaning it cannot be transferred to another parent Accountable Impact Organization/AIM.
-
Delegable (g): The ProcessedClaim can have certain behaviors delegated to another party.
-
CredibleClaimControl (CCC): The ProcessedClaim also has this Behavior-Group with a set of behaviors a bundled and configured to control the processing of the ImpactClaim.
-
Mintable (m): The ProcessedClaim can be minted, i.e., created, by the parent ActivityImpactModule.
-
Roles (r): The ProcessedClaim can have roles assigned to it, i.e., the Issuing Registry. that has the ability to burn or retire the claim after a credit has been issued.
-
Burnable (b): The ProcessedClaim can be burned, i.e., retired, by the VVB or Verifier.
-
TTF base formula with behaviors is: [τN{~d,~t,g,CCC}]
4.30.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : String | String | M | Unique identifier for the ProcessedClaim, See § 4.105 Data Type: Id for details. |
vpaId : String
| String | M | The unique identifier for the parent VerificationProcessAgreement, See § 4.105 Data Type: Id for details. |
impactClaimId : String
| String | M | The unique identifier for the paired ImpactClaim, See § 4.105 Data Type: Id for details. |
claimGroupId : Id
| String | O | The id of the ClaimGroup that the claim is associated with, will be null if not part of a group. |
creditId : String
| String | O | The unique identifier for the credit, once issued, associated with the ProcessedClaim, See § 4.105 Data Type: Id for details. |
unit : Unit
| String | M | The unit of measurement/analysis of the project. See Data Type § 4.101 Data Type: Unit for further information. |
quantity : Decimal | Decimal | M | The verified benefit quantity after the verification period is complete. |
co-benefits : Co-benefit | Object | M | A collection of co-benefits that should be attributed to the credit issued. See § 4.38 Data Type: Co-Benefit for details. |
checkpointResults : CheckpointResults
| Object | M | A collection of checkpoint results for the ProcessedClaim. See § 4.31 Data Type: CheckpointResult for details. |
entityExtensions : Entity | Object | O | A collection of entity extensions that are specific to the Quality Standard/Methodology. See § 4.22 Data Type: Entity for details. |
issuanceRequest :
| Object | M | Since a processed claim is generic, it can contain an issuance request that contains the proposed asset type with values to the issuing registry to use as a consideration. For example, this field could contain as the proposed asset a CRU Token with the values that the verifier proposes after verification. This allows the processed claim to be used as the source for any type of asset or credit. |
4.31. Data Type: CheckpointResult
A CheckpointResult is summary and verified links to verification results for the corresponding ImpactClaimCheckpoint. The CheckpointResult enables continous verification of the project and the ability to provide feedback to the developer during the verification process.
4.31.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : String | String | M | Unique identifier for the CheckpointResult, See § 4.105 Data Type: Id for details. |
checkpointId : String | String | M | The unique identifier for the corresponding ImpactClaimCheckpoint being processed, See § 4.105 Data Type: Id for details. |
verifiedLinkToProcessDataResult : VerifiedLink
| Object | M | A VerifiedLink object that contain the processed data findings from verification. See § 4.43 Data Type: VerifiedLink for details. |
dateRange : DateRange
| DateRange | M | The date range for the checkpoint being processed. See § 4.59 Data Type: DateRange for details. |
efBefore : String | String | O | Verified environmental factor before activity - i.e., total emissions = 3 tCO2e |
efAfter : String | String | O | Verified environmental factor after activity - i.e., total emissions = 2 tCO2e. |
entityExtensions : Entity | Object | O | A collection of entity extensions that are specific to the Quality Standard/Methodology. See § 4.22 Data Type: Entity for details. |
4.32. Agreement & Data Type: VerificationProcessAgreement
A VerificationProcessAgreement is an agreement between a developer, verifier and registry that defines the terms of the verification process. Shared properties of all the data entities in the validation and verification process are listed here, like the Quality Standard being used, the MRV Requirements, Claim Period, audit schedule, etc. The VerificationProcessAgreement is the indirect parent object for all the other data entities in the origination process.
4.32.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : String | String | M | Unique identifier for the VerificationProcessAgreement, See § 4.105 Data Type: Id for details. |
name : String | String | M | The name of the Verification Process Agreement, usually the name of the project - name of the issuing registry. |
description : String | String | M | A description of the Verification Process Agreement and where special instructions are provided. |
isAimGroup | Boolean | M | If true the VPA is for a AIM Group and the Id below is for a group instead of a single AIM. |
aimOrAimGroupId : Id | String | M | The unique identifier for the corresponding AIM or AIM Group, depending on the value of isAimGroup . See § 4.105 Data Type: Id for details.
|
signatories : Signatory
| Array | M | A collection of signatories, the AIM owner, Issuing Registry, VVB and verification platform are examples of signatories. See § 4.46 Data Type: Signatory for details. |
qualityStandard : QualityStandard
| Object | M | The quality standard being used for the verification. See § 4.56 Data Type QualityStandard for details. |
mrvRequirements : MRVRequirements
| Object | M | The MRV requirements being used for the verification. See § 4.57 Data Type MRVRequirements for details. |
agreementDate : DateString
| String | M | The date the agreement was signed. See § 4.61 Data Type: DateString for details. |
estimatedAnnualCredits :
| String | O | The quantity of credits that are expected to be generated annually. |
AuditSchedule : AuditSchedule
| String | M | The string representation of the audit schedule, see § 4.91 Data Type: AuditSchedule for details. |
Audits : Audits
| Object | M | The audits that are required for the verification agreement. See § 4.45 Data Type: Audits for details. |
entityExtensions : Entity | Array | O | A collection of optional MrvEntityExtensions, see § 4.22 Data Type: Entity for details. |
4.33. Token & Data Type: CRU
The Carbon Removal or Reduction Unit, is a digital asset or token that services as a credit represents 1 metric tonne of CO2e. This is a non-financial, un-regulated, intangible digital asset that behavies like a commodity and is ready for distribution.
This is one example of a specific type of token or credit that can represent the ecological or environmental benefits that can be traded and retired to net down effective emissions for the beneficiary.
Other types of credits can be created, and reuse all of the other data entities for the generic validation and verification process.
4.33.1. Base Token and Behaviors
The CRU has a Non-Fungible base with the following behaviors:
-
Divisible (d): The CRU can be divided into multiple CRU tokens, up to 4 decimal places.
-
Transferable (t): The CRU can be transferred from one party to another.
-
Encumberable (e): The CRU can be encumbered by a third party, typically by a listing agent for distribution.
-
Revokable (v): The CRU can be revoked by the issuer, typically if the credit is found to be invalid, i.e., a carbon reversal event.
-
Delegable (g): The CRU can be delegated to a third party, typically by a listing agent in distribution scenarios.
-
Offsetable Supply Control (OSC): The CRU has a Behavior-Group for offseting and supply control with the following behaviors:
-
Mintable (m): The CRU can be minted by the issuer.
-
Roles (r): The CRU has a role for the issuer to be able to mint/issue and approve retirements.
-
Burnable (b): The CRU can be burned or retired by the owner, or by delegation, but requires approval by the issuer and optionaly can include other metadata like reporting period and jurisdiction.
-
TTF base formula with behaviors is: [τN{d,t,e,v,g,}]
4.33.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the CRU, See § 4.105 Data Type: Id for details. |
quantity : Decimal | Decimal | M | A quantity that is fractional to represent up to 8 decimal places, use a string or decimal for the quantity. |
unit : Unit
| String | M | The string representation of the unit of measure, see § 4.101 Data Type: Unit for details. |
ownerId : Id | string | M | The id for the owner of the CRU, See § 4.105 Data Type: Id for details. |
listingAgentId : String | String | M | The unique identifier for the listing agent, See § 4.105 Data Type: Id for details. This could be a marketplace or exchange that has an encumberance on the CRU and can split or transfer their representations of the CRU to other parties on their system of record. |
coreCarbonPrinciples : CoreCarbonPrinciples
| Object | M | The CoreCarbonPrinciples for this CRU, see § 4.34 Data Type: CoreCarbonPrinciples for details. |
climateLabels : ClimateLabel
| Array | O | A collection of optional climate labels, see § 4.42 Data Type: ClimateLabel for details. |
status : CreditStatus
| Status | M | The status of the CRU, see § 4.96 Data Type: CreditStatus for details. |
referencedCru : ReferencedCredit
| Array | O | Used to hold values for reference a credits on another registry, there are likely to be more fields needed here so using a property-set instead of a single field. See § 4.44 Data Type: ReferencedCredit for details. |
appliedToReportingPeriodId : Id | String | O | Optional link to the Id of the reporting period the asset was retired for, if supported. See § 4.105 Data Type: Id for details. |
processedClaimId : Id | String | M | The id for the ProcessedClaim that the CRU is based on, see § 4.105 Data Type: Id for details. |
issuerId : Id | String | M | The id for the Issuing Registry, see § 4.105 Data Type: Id for details. |
4.34. Data Type: CoreCarbonPrinciples
The CoreCarbonPrinciples are a set of properties that are used to describe the carbon removal or reduction that follows the ICVCM Core Carbon Principles.
4.34.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
assetId : Id | String | O | Typically the issuing registry’s master id or serial number that resides on their registry system. Could be empty or the same as the token’s id if not needed. |
issuanceDate : DateString | String | M | The date of credit issuance, see § 4.61 Data Type: DateString for details. |
vintage : String | String | M | The vintage year of the credit for the project. |
generationType : GenerationType
| String | M | The string representation for how the credit was generated, see § 4.81 Data Type: GenerationType for details. |
verificationStandard : Standard
| String | M | The string representation of the verification standard, see § 4.97 Data Type: Standard for details. |
mitigationActivity : MitigationActivity
| String | M | The string representation of the MitigationActivity, see § 4.54 Data Type: MitigationActivity for details. |
durability : Durability
| Object | M | The Durability properties for the credit, see § 4.35 Data Type: Durability for details. |
replacement : Replacement
| Object | O | Present if the credit is a replacement credit, see § 4.37 Data Type: Replacement for details. |
paCompliance : PACompliance
| Object | M | The PACompliance properties for the credit, see § 4.40 Data Type: PACompliance for details. |
quantifiedSDGImpacts : Co-benefit | Array | O | An array of optional quantified impact cobenefits, see § 4.92 Data Type: UN-SDGs for details. |
adaptionCoBenefits : UN-SDGs
| Array | O | An array of adaptation co-benefits of the token consistent with the host country’s priorities, consistent with the provisions under Article 7.1 of the Paris Agreement, see § 4.92 Data Type: UN-SDGs for details. |
4.35. Data Type: Durability
The Durability properties are used to describe the durability of the carbon removal or reduction, its expected permanence, and the expected duration of the carbon removal or reduction. It includes the risk of reversal and how that risk is mitigated.
4.35.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
storageType : Storage
| String | M | The string representation of the Storage Type, see § 4.85 Data Type: Storage for details. |
years : WholeNumber | Number | M | The length of time in years that the carbon removal or reduction is expected to last. |
degradable : Degradable
| Object | M | The degradable properties for the credit, see § 4.36 Data Type: Degradable for details. |
reversalMitigation : ReversalMitigation
| Object | M | The risk of reversal and how the risk is mitigated, see § 4.39 Data Type: ReversalMitigation for details. |
4.36. Data Type: Degradable
The Degradable properties are used to describe the degradation of the carbon removal or reduction.
4.36.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
percentage : WholeNumber | Number | M | The rate of degradation of the carbon removal or reduction, 0 = no degredation possible, 100 = all sequestered should be expected to be released |
factor : WholeNumber | Number | M | Factor of years for degredation, 25 = .25 per year if linear or exponential starts at 25% of durability years. |
degredationType : DegradationType
| String | M | A string representation of the degredation type, see § 4.66 Data Type: DegradationType for details. |
4.37. Data Type: Replacement
Replacement is used when a credit is replacing a revoked credit.
4.37.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
replacesId : String
| String | M | The Id of the revoked credit being replaced. |
replacementDate : DateString
| String | M | The date of the replacement, see § 4.61 Data Type: DateString for details. |
notes :
| String | O | Optional notes about the revokation and replacement |
4.38. Data Type: Co-Benefit
Co-benefits currently map to the UN SDGs and include a description for how the benefit applies.
4.38.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
un-sdg : UN-SDGs
| String | M | The string representation of a UN SDG that the co-benefit applies to. See § 4.92 Data Type: UN-SDGs for details. |
description | String | M | A description of how the co-benefit applies to the project or activity. |
4.39. Data Type: ReversalMitigation
The ReversalMitigation properties are used to describe the risk of reversal and how the risk is mitigated.
4.39.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
reversalRisk : ReversalRisk
| String | M | The string representation of the reversal risk. See § 4.67 Data Type: ReversalRisk for details. |
insuranceType : DurabilityInsuranceType
| String | M | A string representation of the insurance type, see § 4.68 Data Type: DurabilityInsuranceType for details. |
insurancePolicyOwner : InsurancePolicyOwner
| String | M | A string representation of the insurance policy owner, see § 4.69 Data Type: InsurancePolicyOwner for details. |
insurancePolicyLink : VerifiedLink | Object | O | Link to the insurance policy, see § 4.43 Data Type: VerifiedLink for details. |
4.40. Data Type: PACompliance
Details about a credit’s Paris Agreement Compliance.
4.40.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
correspondingAdjustment : CorrespondingAdjustment
| String | M | The string status of the corresponding adjustment, see§ 4.99 Data Type: CorrespondingAdjustment for details. |
letterOfApproval : VerifiedLink
| Object | O | Optional verified link to the letter of approval. See § 4.43 Data Type: VerifiedLink for details. |
itmoId : ITMOId
| String | O | Optional ITMO Id, see § 4.65 Data Type: ITMOId for details. |
4.41. Token & Data Type: REC
The Renewable Energy Credit is an example
token is a Fungible Token that represents the environmental benefits of a renewable energy project
and is exchangeable for evidencing the production of electricity. The primary unit of measure for I-REC(E)s is the megawatt hour (MWh), with below megawatt
hour resolution to the watt hour (Wh) as optional. Each unit of electricity is uniquely attributable
to the source generation using the same project and claims process that other assets like the CRU originate from.
This is one example of a specific type of token or credit that can represent the ecological or environmental benefits that can be traded and retired to net down effective emissions for the beneficiary.
4.41.1. Base Token and Behaviors
The REC has a Non-Fungible base with the following behaviors:
-
Divisible (d): The REC can be divided into multiple REC tokens, up to 6 decimal places.
-
1.000000
= 1MW -
0.001000
= 1kW -
0.000001
= 1W
-
-
Transferable (t): The REC can be transferred from one party to another.
-
Encumberable (e): The REC can be encumbered by a third party, typically by a listing agent for distribution.
-
Revokable (v): The REC can be revoked by the issuer, typically if the credit is found to be invalid, i.e., a carbon reversal event.
-
Delegable (g): The REC can be delegated to a third party, typically by a listing agent in distribution scenarios.
-
Offsetable Supply Control (OSC): The REC has a Behavior-Group for offseting and supply control with the following behaviors:
-
Mintable (m): The REC can be minted by the issuer.
-
Roles (r): The REC has a role for the issuer to be able to mint/issue and approve retirements.
-
Burnable (b): The REC can be burned or retired by the owner, or by delegation, but requires approval by the issuer and optionaly can include other metadata like reporting period and jurisdiction.
-
TTF base formula with behaviors is: [τF{d,t,e,v,g,}]
4.41.2. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the REC, See § 4.105 Data Type: Id for details. |
type : RecType
| String | M | The string representation of the REC type, see § 4.80 Data Type: RecType for details. |
validJurisdiction : String | String | O | Optional jurisdiction where of the REC can be redeemed, i.e. US-Texas, multiples separated by a comma. |
quantity : Decimal | Decimal | M | A quantity that is fractional to represent up to 8 decimal places, use a string or decimal for the quantity. |
unit : Unit
| String | M | The string representation of the unit of measure, see § 4.101 Data Type: Unit for details. |
ownerId : Id | string | M | The id for the owner of the REC, See § 4.105 Data Type: Id for details. |
listingAgentId : Id | String | M | The unique identifier for the listing agent, See § 4.105 Data Type: Id for details. This could be a marketplace or exchange that has an encumberance on the REC and can split or transfer their representations of the REC to other parties on their system of record. |
climateLabels : ClimateLabel
| Array | O | A collection of optional climate labels, see § 4.42 Data Type: ClimateLabel for details. |
status : CreditStatus
| Status | M | The status of the REC, see § 4.96 Data Type: CreditStatus for details. |
referencedRec : ReferencedCredit
| Array | O | Used to hold values for reference a credits on another registry, there are likely to be more fields needed here so using a property-set instead of a single field. See § 4.44 Data Type: ReferencedCredit for details. |
appliedToReportingPeriodId : Id | String | O | Optional link to the Id of the reporting period the asset was retired for, if supported. See § 4.105 Data Type: Id for details. |
processedClaimId : Id | String | M | The id for the ProcessedClaim that the REC is based on, see § 4.105 Data Type: Id for details. |
issuerId : Id | String | M | The id for the Issuing Registry, see § 4.105 Data Type: Id for details. |
4.42. Data Type: ClimateLabel
A ClimateLabel is a reference to an external data element that contains a climate label, typically set by the registry or methodology.
4.42.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : String | String | M | Unique identifier for the ClimateLabel, See § 4.105 Data Type: Id for details. |
name : String | String | M | The name of the ClimateLabel. |
description : String | String | M | A description about how the label applies to the credit. |
4.43. Data Type: VerifiedLink
A VerifiedLink is a reference, URI or URL to an external data element along with a cryptographic fingerprint of the external data so that its integrity can be checked by any party.
4.43.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the VerifiedLink, See § 4.105 Data Type: Id for details. |
uri :String
| String | M | The URI or URL of the external data element. |
description : String | String | M | A description of the link or data referenced. |
hashProof: String | String | M | The cryptographic hash of the external data element. |
hashAlgorithm : HashAlgorithm
| String | M | The cryptographic hash algorithm used to generate the hash. See § 4.73 Data Type: HashAlgorithm for details. |
4.44. Data Type: ReferencedCredit
A ReferencedCredit is used to hold values for credits that reference a credit on another registry, there are likely to be more fields needed here so using a property-set instead of a single field.
4.44.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
referencedCreditId : Id | String | M | Unique identifier for the referenced credit, this can be a serial number or a master id on the external registry. |
registryLink : VerifiedLink | Object | M | VerifiedLink to the external registry for the referenced credit or asset, see § 4.43 Data Type: VerifiedLink for details. |
metadata : String | String | O | Optional metadata about the referenced credit, json serialized as a string. |
4.45. Data Type: Audits
Audits contain the audit schedule, date of last audit and the verified links to the audit reports for the verification agreement.
4.45.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
lastAuditDate : DateString | String | O | Date of the audit, See § 4.61 Data Type: DateString for details. |
auditReports : VerifiedLink | Array | M | A collection of VerifiedLinks to audit reports for the verification agreement, see § 4.43 Data Type: VerifiedLink . |
4.46. Data Type: Signatory
A Signatory is a party that has signed a document or agreement. The Signatory is a digital entity or identity in a specific role in the dMRV process.
4.46.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the signatory, See § 4.105 Data Type: Id for details. |
name : String | String | M | The individual or organization name in the role. |
description : String | String | M | A description of the signatory, notes or comments. |
signatoryRole : SignatoryRole
| String | M | The role of the signatory in the dMRV process. |
vvbIdForAim : Id
| String | M | OPTIONAL: the the id of the VVB/verifier that is associated with the AIM, if there is a AIM group with multiple VVBs for different AIMs, this will be needed to map the VVB to the AIM. |
signature : DigitalSignature
| Object | M | The digital signature of the signatory. |
Data Type: DigitalSignature
4.47. Data Type: DigitalSignature
A Signature is a digital signature of a document or agreement. The Signature is a digital entity or identity in a specific role in the dMRV process. Support for JWT and Verifiable Credentials is planned.
4.47.1. Properties
A Signature contains the following properties:
Property | Type | Req | Specification |
---|---|---|---|
type : SignatureType
| String | M | String representation of the enum SignatureType, see § 4.77 Data Type: SignatureType for details. |
jws : String
| String | O | If using a JWS, this is the serialized JWS. |
credential : Credential
| Object | O | If using a Verifiable Credential, this is the VC. |
Data Type: Credential (data format, type (JWS, Verifiable Credential))
4.48. Data Type: Credential
A Credential is a digital credential that is an emerging W3C standard for Decentralized Identifiers (DIDs) and Verifiable Credentials (VCs). As implementations of the standard emerge, the dMRV specification will be updated to reflect the standard. Implementations can use the current format and type of the credential as a placeholder until the standard is finalized.
It is expected that the Credential will be a JSON Web Signature (JWS) or a Verifiable Credential (VC) as defined by the W3C Verifiable Credentials Data Model 1.0 specification and can be used to assign a DID to a party, device, source, etc. in the dMRV process. These will be used for attestations, verifications, and signatures in the dMRV process.
See W3C Verifiable Credentials Implementation Guidelines 1.0 for more information.
4.48.1. Properties
A Credential contains the following properties:
Property | Type | Req | Specification |
---|---|---|---|
context : String
| Array | M | The context of the credential, an array of strings. |
id : String | String | M | The id of the credential, a string. |
type : CredentialType
| Array | M | The list of credential types, an array of strings. |
issuer : String | String | M | The issuer of the credential, a string. |
issuanceDate : DateString | String | M | The issuance date of the credential, a string, see § 4.61 Data Type: DateString for details. |
credentialSubject : CredentialSubject | Object | M | The subject of the credential, an object. |
proof : Proof | Object | M | The proof of the credential, an object. |
4.49. Data Type: CredentialSubject
A CredentialSubject is the subject of a Credential.
4.49.1. Properties
A CredentialSubject contains the following properties:
Property | Type | Req | Specification |
---|---|---|---|
id : String | String | O | Unique identifier for the credential subject, usually assigned if referencing another DiD, but an optional property. |
property : String | String | M | The subject may contain multiple properties, these can be presented as a Json string in a single property or an array of properties. |
4.50. Data Type: Proof
A Proof is a digital proof of a Credential.
4.50.1. Properties
A Proof contains the following properties:
Property | Type | Req | Specification |
---|---|---|---|
type : ProofType
| String | M | String representation of the enum ProofType, see § 4.75 Data Type: ProofType for details. |
created : DateString | String | M | The creation date of the proof, a string, see § 4.61 Data Type: DateString for details. |
proofPurpose : String | String | M | The purpose of the proof, a string. |
verificationMethod : String | String | M | The verification method of the proof, a string. |
challenge : String | String | O | Optional for Presentations for replay attacks, the challenge of the proof, a string. |
domain : String | String | O | Optional for Presentations for replay attacks, the domain of the proof, a string. |
jws : String | String | M | The JSON Web Signature of the proof, a string. |
4.51. Data Type: VerifiablePresentation
A VerifiablePresentation is a digital presentation of a Verifiable Credential or Digital Signature that is linked to a DID or Signatory.
4.51.1. Properties
A VerifiablePresentation contains the following properties:
Property | Type | Req | Specification |
---|---|---|---|
id : String | String | M | The id of the presentation, a string. |
type : SignatureType
| String | M | The type of the presentation, a string. |
holder : String | String | M | The holder of the presentation, a string. |
credentials : Credential | Array | M | The credentials of the presentation, an array of objects. |
proof : Proof | Object | M | The proof of the presentation, an object. |
4.52. Data Type: Attestation
Attestations provide opportunities for context in MRV data. Conceptually, attestations can be the data within the project or the commentary around the project. For project data, “Direct Data Attestations” can come from individuals, project developers, verifiers, and/or directly from devices asserting an event that is represented digitally on the public ledger.
Attestations, metadata, or “Tags” describing digital entities, such as actors, calculations, or their quantifiable outcomes, allow for more context to exist about Accountable Impact Organizations or Impact Modules (AIM) within the market, which inherently have a relationship with credit pricing and can describe overall project effectiveness.
4.52.1. Properties
An Attestation contains the following properties:
Property | Type | Req | Specification |
---|---|---|---|
tag : Tag | Object | M | Allow for more context and attributes to be applied to a data type and be digitally signed , see § 4.53 Data Type: Tag for details.
|
type : AttestationType
| String | M | The type of the attestation, a string. |
proof_type : ProofType
| String | M | The type of the proof, a string. |
attestor : String | String | M | The attestor of the attestation, a string. |
signature : DigitalSignature | Object | M | The signature of the attestation, an object. |
4.53. Data Type: Tag
Are attested metadata describing digital entities, such as actors, calculations, or their quantifiable outcomes, allow for more context to exist about a data type within the market, which inherently have a relationship with credit pricing and can describe overall project effectiveness.
4.53.1. Properties
A Tag’s properties will vary based on the implementation, for example using DIDs or Verified Credentials. An example tag might have the following properties:
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Id of the tag, see § 4.105 Data Type: Id for details. |
name : String | String | M | Name of the tag as applied to the data type. |
context : String | Array | M | The contexts of the tag, similar to Json-LD, an array of strings. |
description : String | String | M | The description of the tag. |
4.54. Data Type: MitigationActivity
The combination structure of the CCP MitigationActivity attribute.
4.54.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
carbonCategory : CarbonCategory
| String | M | The activity of the project, see § 4.82 Data Type: CarbonCategory for details. |
method : Method
| String | M | The method used by the project for its activities, see § 4.84 Data Type: Method for details. |
4.55. Data Type: GeographicLocation
The GeographicLocation is a data type that can represent a GNSS/GPS point location for projects like a facility or building and or a geographic area, like a land project using a polygon represented as a string or file. *Either the longitude and latitude or the string or file for the area must have a value.
4.55.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
id : Id | String | M | Unique identifier for the GNSS, See § 4.105 Data Type: Id for details. |
latitude : Decimal
| Decimal | O* | The latitude of the location using Decimal Degrees. |
longitude : Decimal
| Decimal | O* | The longitude of the location using Decimal Degrees. |
geoJsonOrKml : String
| String | O* | The geoJson or KML as a minimized string of the geographic area. |
geographicLocationFile : VerifiedLink
| Object | O* | The geographic location file, Geojson, KML, etc., for larger geographic data sets, see § 4.43 Data Type: VerifiedLink for details. |
4.56. Data Type QualityStandard
The QualityStandard is a set of properties that identify the accredited standard, a methodology and any versioning information for the validation and verification process.
4.56.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
name : String | String | M | Name of the quality standard, methodology or protocol, can include version information in the name. |
description : String | String | O | Description of the quality standard, can include differentiating information related to the project implementation. |
standard : Standard
| String | M | The standard used for the quality standard. See § 4.97 Data Type: Standard for details. |
methdologyAndTools : MethodologyAndTool
| Array | M | A list of the methodology and any tools used for the quality standard. See § 4.98 Data Type: MethodologyAndTool for details. |
version :String | String | O | The version of the quality standard, methodology or protocol. |
co-benefits : Co-Benefit | Object | O | The co-benefits of the quality standard. See § 4.38 Data Type: Co-Benefit for details. |
standardLink : VerifiedLink | Object | M | The VerifiedLink to the standard. See § 4.43 Data Type: VerifiedLink for details. |
4.57. Data Type MRVRequirements
The MRVRequirements is a set of properties that identify the measurement specification, the precision of the measurement and the link to the specification. Here is where a Quality Standard can prescribe a set of Extensions to be used in the verification process.
4.57.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
MeasurementSpecification : MeasurementSpecification
| String | M | A string representation of the measurement specification, see § 4.95 Data Type: MeasurementSpecification for details. |
specificationLink : VerifiedLink | Object | M | The VerifiedLink to the specification. See § 4.43 Data Type: VerifiedLink for details. |
precision : PrecisionMix | Object | M | The precision of the measurement. See § 4.58 Data Type: PrecisionMix for details. |
claimPeriod : ClaimPeriod
| String | M | The string representation of claim period for measurement and reporting. See § 4.87 Data Type: ClaimPeriod for details. |
extensionSetId : Id | String | M | A collection of extensions, called a set, used in the verification process, see § 4.16 Data Type: ExtensionSet for details. |
4.58. Data Type: PrecisionMix
The mix of precision, by percentage, of the measurement specification used for the project. The sum of all the mixes must be 100 for 100%.
4.58.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
low : Decimal | Decimal | M | The percentage of estimated or factored precision for the project. |
medium : Decimal | Decimal | M | The percentage of indirect high quality precision for the project. |
high : Decimal | Decimal | M | The percentage of direct highly accurate measurements for the project, i.e., from sensors. |
4.59. Data Type: DateRange
A date range contains a start and end date, with optional timestamps for precision.
4.59.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
start : DatePoint
| DatePoint | M | The start date of the range. |
end : DatePoint
| DatePoint | M | The end date of the range. |
4.60. Data Type: DatePoint
A DatePoint combines a date with an optional UTC Timestamp for precision if needed.
4.60.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
date : Date
| Date | M | The date of the point. See § 4.62 Data Type: Date for details. |
timestamp : Timestamp
| Timestamp | O | The UTC timestamp of the point. |
4.61. Data Type: DateString
A simple date string, i.e. "2023-01-01".
4.61.1. Json Representation
Each DateString MUST be encoded as a JSON String.
4.62. Data Type: Date
Represents a date with discrete values for month, day and year.
4.62.1. Properties
Property | Type | Req | Specification |
---|---|---|---|
dateTime : DateTime
| String | O | The UTC date time, often used as DateTimeOffset, depending on the platform. |
dateString : String
| String | M | Can be a simple date string, i.e. "2023-01-01". |
4.63. Data Type: DateTime
A DateTime is a date and time with an optional UTC Timestamp for precision if needed.
Example values:
4.63.1. JSON Representation
Each DateTime MUST be encoded as a JSON String.
4.64. Data Type: Timestamp
A Timestamp is a number of milliseconds since the Unix epoch (1970-01-01T00:00:00Z).
Example values:
4.64.1. JSON Representation
Each Timestamp MUST be encoded as a JSON String.
4.65. Data Type: ITMOId
An ITMOId is a unique identifier for an Internationally Transferred Mitigation Outcome. It is a unique composite identifier made up of 6 parts, separated by a -
.
Example:
-
CA12-EU01-SP-1236500-2022-NIO
The parts are:
-
CA12
- Identifier of the cooperative approach assigned at authorization, cannot be changed once assigned -
EU01
- Identifier of the originating Party registry -
SP
- Identifier of the first transferring Party -
1236500
- Serial Number -
2022
- Vintage of the underlying mitigation outcome -
NIO
- Authorizations granted to the ITMO may change under certain circumstances to be defined by the CMA: N = NDC, I = International Mitigation Purposes, O = Other
4.65.1. JSON Representation
Each ITMOId MUST be encoded as a JSON String.
4.66. Data Type: DegradationType
Does the sequestration degrade over time?
NOT_APPLICABLE
-
the activity claim is not applicable to degradation.
LINEAR
-
for activity claim is linear degradation
EXPONENTIAL
-
for activity claim is exponential degradation
4.66.1. JSON Representation
Each DegredationType MUST be encoded as a JSON String.
4.67. Data Type: ReversalRisk
Carbon sequestration reversal risk.
ZERO
-
GHG reservoirs are subject to zero risk if the form of carbon storage is such that stored CO2e cannot conceivably be released into the atmosphere. This also includes activity types with no storage, and thus no risk of reversal, e.g., Enhanced weathering of minerals, mineralization, renewable energy, other activities leading to lower demand for fossil fuel.
LOW
-
GHG reservoirs might be subject to low risk of reversal if the characteristics of storage reservoirs (e.g., the geological formation in which carbon is to be stored,in the case of carbon capture and storage) and monitoring requirements virtually eliminate risk, e.g. Carbon capture and storage in geological formations, direct air capture and storage.
MATERIAL
-
GHG reservoirs might be subject to significant reversal risks if: risks of reversal are exogenous and/or unavoidable (e.g., extreme weather events, invasive pest outbreaks, and wildfires); the GHG reservoir is subject to natural disturbance and natural fluxes in carbon inventories; reversal events may or can be expected to occur over a specified time horizon (100 years); a mitigation activity proponent could have economic interests in intentionally causing a reversal (for example cutting down a forest for timber or changing land use to agriculture), e.g. Improved forest management, afforestation/reforestation, enhanced soil organic carbon sequestration, Avoided deforestation, sequestration via harvested wood products (for example buildings)
4.67.1. JSON Representation
Each ReversalRisk MUST be encoded as a JSON String.
4.68. Data Type: DurabilityInsuranceType
Types of durability insurance for carbon removal credits.
BUFFER_POOL
-
an Accountable Impact Organization or insurance product can set aside credits into a pool for risk mitigation. If needed issued credits can be revoked and replaced by credits from the pool.
REFUND
-
purchase price of the credit is refunded to the buyer and the credit is revoked.
4.68.1. JSON Representation
Each DurabilityInsuranceType MUST be encoded as a JSON String.
4.69. Data Type: InsurancePolicyOwner
The owner of the durability insurance policy.
ACCOUNTABLE_IMPACT_ORGANIZATION
-
the Accountable Impact Organization is the owner of the insurance policy.
ISSUING_REGISTRY
-
the issuing registry is the owner of the insurance policy.
RETIRER
-
the retirer is the owner of the insurance policy.
CUSTODIAN
-
the custodian is the owner of the insurance policy.
4.69.1. JSON Representation
Each InsurancePolicyOwner MUST be encoded as a JSON String.
4.70. Data Type: ExtensionContext
An Extension can be context specific and attach to the appropriate data type. Because there can be many Extensions defined for a Quality Standard and be applied to different data types, the Extension Type is used to identify the data type to which the Extension applies.
UNKNOWN_CONTEXT
-
Unknown context
ACCOUNTABLE_IMPACT_ORGANIZATION
-
Accountable Impact Organization context
ACTIVITY_IMPACT_MODULE
-
Activity Impact Module context
CLAIM_SOURCE
-
Claim Source context
IMPACT_CLAIM
-
Impact Claim context
CHECKPOINT
-
Checkpoint context
CHECKPOINT_RESULT
-
Checkpoint Result context
DATA_PACKAGE_MANIFEST
-
Data Package Manifest context
DATA_FILE
-
Data File context
PROCESSED_CLAIM
-
Processed Claim context
VERIFICATION_PROCESS_AGREEMENT
-
Verification Process Agreement context
4.70.1. JSON Representation
Each ExtensionContext MUST be encoded as a JSON String.
4.71. Data Type: MessageType
The type of Extension message.
REQUEST
-
for Request
RESPONSE
-
for Response
4.71.1. JSON Representation
Each MessageType MUST be encoded as a JSON String.
4.72. Data Type: FileType
The file type indicates what data is contained within the file.
DATA_BINARY
-
The file contains binary data.
DATA_CSV
-
The file contains CSV data.
DATA_JSON
-
The file contains JSON data.
DATA_XML
-
The file contains XML data.
DATA_AVRO
-
The file is in Avro format.
DATA_OTHER
-
The file contains other data.
4.72.1. JSON Representation
Each FileType MUST be encoded as a JSON String.
4.73. Data Type: HashAlgorithm
The HashAlgorithm is a string enumeration that defines the cryptographic hash algorithm used to generate the hash of an external data element.
SHA-256
-
The SHA-256 cryptographic hash algorithm.
SHA3
-
The SHA3 cryptographic hash algorithm.
4.73.1. JSON Representation
Each HashAlgorithm MUST be encoded as a JSON String.
4.74. Data Type: AttestationType
Attestations can take the form of traditional PKI/JWT or Verified Credentials
RS256
-
JSON Web Token
VC
-
Verified Credentials
4.74.1. JSON Representation
Each AttestationType MUST be encoded as a JSON String.
4.75. Data Type: ProofType
The type of attestation requested, supports two types: JWT, along with a ciphertype and Verified Credentials.
JWT
-
Json Web Token
DIP
-
Data Integrity Proofs
CL_ZKP
-
Camenisch-Lysyanskaya Zero-Knowledge Proofs
4.75.1. JSON Representation
Each ProofType MUST be encoded as a JSON String.
4.76. Data Type: CredentialType
The type of credential requested, supports three types: Verifiable Credentials, Verifiable Presentations, and Identity Credentials.
VERIFIABLE_CREDENTIAL
-
Verifiable Credentials
VERIFIABLE_PRESENTATION
-
Verifiable Presentations
IDENTITY_CREDENTIAL
-
Identity Credentials
4.76.1. JSON Representation
Each CredentialType MUST be encoded as a JSON String.
4.77. Data Type: SignatureType
The type of signature requested, supports two types: JSON Web Signature and Verified Credentials.
JWS
-
JSON Web Signature
VERIFIED_CREDENTIAL
-
Verified Credentials
4.77.1. JSON Representation
Each SignatureType MUST be encoded as a JSON String.
4.78. Data Type: SignatoryRole
Role of the signatory for the Validation and Verification process.
ISSUING_REGISTRY
-
for Issuing Registry
VALIDATION_AND_VERIFICATION_BODY
-
for Validation and Verification Body
PROJECT_OWNER
-
for Project Owner
VERIFICATION_PLATFORM_PROVIDER
-
for Verification Automation Provider
ACCOUNTABLE_IMPACT_ORGANIZATION
-
for Accountable Impact Organization
ACTIVITY_IMPACT_MODULE
-
for Activity Impact Module
4.78.1. JSON Representation
Each SignatoryRole MUST be encoded as a JSON String.
4.79. Data Type: ClassificationCategory
The ClassificationCategory is a string enumeration that defines the classification for the type of credit the project is seeking. This list will be expanded to include other categories, like biodiversity, in the future.
CARBON_AVOIDANCE
-
for Carbon Avoidance
CARBON_REDUCTION
-
for Carbon Reduction
CARBON_REMOVAL
-
for Carbon Removal
WATER
-
for Water
UNDEFINED
-
for undefined
4.79.1. JSON Representation
Each ClassificationCategory MUST be encoded as a JSON String.
4.80. Data Type: RecType
The REC Type is a string enumeration that defines the type of renewable energy credit or program used to generate the credit.
IREC
-
For International REC
NERC
-
For North American REC
4.80.1. JSON Representation
Each RecType MUST be encoded as a JSON String.
4.81. Data Type: GenerationType
How the project generates the credits.
GENERATED
-
the credit was generated by evidence collected and verified by the project; verifier and registry
EX_ANTE
-
the credit represents forecasted emissions reductions
EX_POST
-
the credit represents historical emissions reductions
4.81.1. JSON Representation
Each GenerationType MUST be encoded as a JSON String.
4.82. Data Type: CarbonCategory
The CarbonCategory is used by the Core Carbon Principles to indicate wether a credit is a reduction or a removal.
REDUCTION
-
for Carbon Reduction
REMOVAL
-
for Carbon Removal
4.82.1. JSON Representation
Each CarbonCategory MUST be encoded as a JSON String.
4.83. Data Type: ClaimSourceType
A ClaimSourceType is the source type for evidence in a claim that can include sensor, meter, application, reference, etc.
SENSOR_DEVICE
-
A sensor or meter that collects data to support a claim, e.g., IoT, meter, etc.
USER_APPLICATION
-
An application running on a device, iPad, etc. that uses the device’s sensors like GPS, date/time and user authentication as evidence of source claim data.
REFERENCE
-
Reference data like satellite imagery, remote sensing, analytical models, etc.
4.83.1. JSON Representation
Each ClaimSourceType MUST be encoded as a JSON String.
4.84. Data Type: Method
The method used by the project for its activities.
NATURAL
-
for Natural or using Natural processes
TECHNOLOGICAL
-
for Technological or engineered
BOTH_NATURAL_AND_TECHNOLOGICAL
-
for both Natural and Technological
4.84.1. JSON Representation
Each Method MUST be encoded as a JSON String.
4.85. Data Type: Storage
Storage is used by the Core Carbon Principles to indicate the storage type.
BIOLOGICAL
-
for biological carbon sequestration
GEOLOGICAL
-
for geological carbon sequestration
MATERIALS
-
for sequestration materials, i.e., in products, concrete, etc.
4.85.1. JSON Representation
Each Storage MUST be encoded as a JSON String.
4.86. Data Type: Region
The region of the project.
GLOBAL
-
for Global
CENTRAL_AMERICA
-
for Central America
CENTRAL_ASIA
-
for Central Asia
EAST_ASIA
-
for East Asia
EUROPE
-
for Europe
INTERNATIONAL
-
for International
MIDDLE_EAST
-
for Middle East
NORTH_AFRICA
-
for North Africa
NORTH_AMERICA
-
for North America
OCEANIA
-
for Oceania
SOUTH_AMERICA
-
for South America
SOUTH_ASIA
-
for South Asia
SOUTH_EAST_ASIA
-
for South East Asia
SUB_SAHARAN_AFRICA
-
for Sub-Saharan Africa
4.86.1. JSON Representation
Each Region MUST be encoded as a JSON String.
4.87. Data Type: ClaimPeriod
Duration of the claim period.
DAILY
-
for Daily
WEEKLY
-
for Weekly
MONTHLY
-
for Monthly
QUARTERLY
-
for Quarterly
SEMIANNUAL
-
for Semiannual
ANNUAL
-
for Annual
BIENNIAL
-
for Biennial
4.87.1. JSON Representation
Each ClaimPeriod MUST be encoded as a JSON String.
4.88. Data Type: ProjectScale
The scale of the project.
MICRO
-
less than 1000 tCO2e
SMALL
-
1000 - 10000 tCO2e
MEDIUM
-
10000 - 100000 tCO2e
LARGE
-
100000 - 1000000 tCO2e
4.88.1. JSON Representation
Each ProjectScale MUST be encoded as a JSON String.
4.89. Data Type: ValidationStepStatus
The status of the validation step.
UNKNOWN_VALIDATION_STEP_STATUS
-
for Unknown status
NOT_STARTED
-
for Not Started
IN_PROGRESS
-
for In Progress
COMPLETED
-
for Completed
4.89.1. JSON Representation
Each ValidationStepStatus MUST be encoded as a JSON String.
4.90. Data Type: AddressType
The type of the address.
PHYSICAL
-
for Physical Address
LEGAL
-
for Legal Address
MAILING
-
for Mailing Address
4.90.1. JSON Representation
Each AddressType MUST be encoded as a JSON String.
4.91. Data Type: AuditSchedule
The schedule of the audit.
ANNUAL
-
for Annual Audits
BIANNUAL
-
for Biannual Audits
BIENNIAL
-
for Biennial Audits
TRIENNIAL
-
for Triennial Audits
QUADRENNIAL
-
for Quadrennial Audits
QUINQUENNIAL
-
for Quinquennial Audits
4.91.1. JSON Representation
Each AuditSchedule MUST be encoded as a JSON String.
4.92. Data Type: UN-SDGs
The UN SDGs are used in certain categories for entities as well as with Co-benefits that are usually attached to assets like voluntary carbon credits.
NO_CATEGORY
-
for No Category
NO_POVERTY
-
for No Poverty
ZERO_HUNGER
-
for Zero Hunger
GOOD_HEALTH_AND_WELL_BEING
-
for Good Health and Well Being
QUALITY_EDUCATION
-
for Quality Education
GENDER_EQUALITY
-
for Gender Equality
CLEAN_WATER_AND_SANITATION
-
for Clean Water and Sanitation
AFFORDABLE_AND_CLEAN_ENERGY
-
for Affordable and Clean Energy
DECENT_WORK_AND_ECONOMIC_GROWTH
-
for Decent Work and Economic Growth
INDUSTRY_INNOVATION_AND_INFRASTRUCTURE
-
for Industry Innovation and Infrastructure
REDUCED_INEQUALITIES
-
for Reduced Inequalities
SUSTAINABLE_CITIES_AND_COMMUNITIES
-
for Sustainable Cities and Communities
RESPONSIBLE_CONSUMPTION_AND_PRODUCTION
-
for Responsible Consumption and Production
CLIMATE_ACTION
-
for Climate Action
LIFE_BELOW_WATER
-
for Life Below Water
LIFE_ON_LAND
-
for Life on Land
PEACE_JUSTICE_AND_STRONG_INSTITUTIONS
-
for Peace Justice and Strong Institutions
PARTNERSHIPS_FOR_THE_GOALS
-
for Partnerships for the Goals
4.92.1. JSON Representation
Each UN-SDGs MUST be encoded as a JSON String.
4.93. Data Type: ProjectScope
Project scope helps classify projects.
OTHER
-
for Other
AGRICULTURE
-
for Agriculture
CARBON_CAPTURE_AND_STORAGE
-
for Carbon Capture and Storage
CHEMICAL_PROCESSES
-
for Chemical Processes
FORESTRY_AND_LAND_USE
-
for Forestry and Land Use
HOUSEHOLD_AND_COMMUNITY
-
for Household and Community
INDUSTRIAL_MANUFACTURING
-
for Industrial Manufacturing
RENEWABLE_ENERGY
-
for Renewable Energy
TRANSPORTATION
-
for Transportation
WASTE_MANAGEMENT
-
for Waste Management
4.93.1. JSON Representation
Each ProjectScope MUST be encoded as a JSON String.
4.94. Data Type: ProjectType
Project Type helps to classify a project.
ADVANCED_REFRIGERANTS
-
for Advanced Refrigerants
AFFORESTATION_REFORESTATION
-
for Afforestation Reforestation
ALUMINUM_SMELTERS_EMISSION_REDUCTIONS
-
for Aluminum Smelters Emission Reductions
AVOIDED_FOREST_CONVERSION
-
for Avoided Forest Conversion
AVOIDED_GRASSLAND_CONVERSION
-
for Avoided Grassland Conversion
BICYCLES
-
for Bicycles
BIODIGESTERS
-
for Biodigesters
BIOMASS
-
for Biomass
BRICK_MANUFACTURING_EMISSION_REDUCTIONS
-
for Brick Manufacturing Emission Reductions
BUNDLED_COMPOST_PRODUCTION_AND_SOIL_APPLICATION
-
for Bundled Compost Production and Soil Application
BUNDLED_ENERGY_EFFICIENCY
-
for Bundled Energy Efficiency
CARBON_CAPTURE_AND_ENHANCED_OIL_RECOVERY
-
for Carbon Capture and Enhanced Oil Recovery
CARBON_CAPTURE_AND_STORAGE
-
for Carbon Capture and Storage
CARBON_CAPTURE_IN_CEMENT
-
for Carbon Capture in Cement
CARBON_CAPTURE_IN_PLASTIC
-
for Carbon Capture in Plastic
CLEAN_WATER
-
for Clean Water
COMMUNITY_BOREHOLES
-
for Community Boreholes
COMPOST_ADDITION_TO_RANGELAND_SOIL
-
for Compost Addition to Rangeland Soil
COMPOSTING
-
for Composting
COOKSTOVES
-
for Cookstoves
ELECTRIC_VEHICLES_AND_CHARGING
-
for Electric Vehicles and Charging
ENERGY_EFFICIENCY
-
for Energy Efficiency
FEED_ADDITIVES
-
for Feed Additives
FLEET_EFFICIENCY
-
for Fleet Efficiency
FUEL_SWITCHING
-
for Fuel Switching
FUEL_TRANSPORT
- for Fuel Transport
GEOTHERMAL
- for Fuel Transport
-
for Geothermal
GRID_EXPANSION_AND_MINI_GRIDS
-
for Grid Expansion and Mini Grids
HFC_REFRIGERANT_RECLAMATION
-
for HFC Refrigerant Reclamation
HFC_REPLACEMENT_IN_FOAM_PRODUCTION
-
for HFC Replacement in Foam Production
HFC23_DESTRUCTION
-
for HFC23 Destruction
HYDROPOWER
-
for Hydropower
IMPROVED_FOREST_MANAGEMENT
-
for Improved Forest Management
IMPROVED_IRRIGATION_MANAGEMENT
-
for Improved Irrigation Management
LANDFILL_METHANE
-
for Landfill Methane
LEAK_DETECTION_AND_REPAIR_IN_GAS_SYSTEMS
-
for Leak Detection and Repair in Gas Systems
LIGHTING
-
for Lighting
MANURE_METHANE_DIGESTER
-
for Manure Methane Digester
MASS_TRANSIT
-
for Mass Transit
METHANE_RECOVERY_IN_WASTEWATER
-
for Methane Recovery in Wastewater
MINE_METHANE_CAPTURE
-
for Mine Methane Capture
MINERALIZATION
-
for Mineralization
N20_DESTRUCTION_IN_ADIPIC_ACID_PRODUCTION
-
for N20 Destruction in Adipic Acid Production
N20_DESTRUCTION_IN_NITRIC_ACID_PRODUCTION
-
for N20 Destruction in Nitric Acid Production
NATURAL_GAS_ELECTRICITY_GENERATION
-
for Natural Gas Electricy Generation
NITROGEN_MANAGEMENT
-
for Nitrogen Management
OIL_RECYCLING
-
for Oil Recycling
OZONE_DEPLETING_SUBSTANCES_RECOVERY_AND_DESTRUCTION
-
for Ozone Depleting Substances Recovery and Destruction
PNEUMATIC_RETROFIT
-
for Pneumatic Retrofit
PROPYLENE_OXIDE_PRODUCTION
-
for Propylene Oxide Production
RE_BUNDLED
-
for Re-Bundled
REDD_PLUS
-
for REDD+
REFRIGERANT_LEAK_DETECTION
-
for Refrigerant Leak Detection
RICE_EMISSION_REDUCTIONS
-
for Rice Emission Reductions
SF6_REPLACEMENT
-
for SF6 Replacement
SHIPPING
-
for Shipping
SOLAR_CENTRALIZED
-
for Solar Centralized
SOLAR_DISTRIBUTED
-
for Solar Distributed
SOLAR_LIGHTING
-
for Solar Lighting
SOLAR_WATER_HEATERS
-
for Solar Water Heaters
SOLID_WASTE_SEPARATION
-
for Solid Waste Separation
SUSTAINABLE_AGRICULTURE
-
for Sustainable Agriculture
SUSTAINABLE_GRASSLAND_MANAGEMENT
-
for Sustainable Grassland Management
TRUCK_STOP_ELECTRIFICATION
-
for Truck Stop Electrification
UNIVERSITY_CAMPUS_EMISSION_REDUCTIONS
-
for University Campus Emission Reductions
WASTE_DIVERSION
-
for Waste Diversion
WASTE_GAS_RECOVERY
-
for Waste Gas Recovery
WASTE_HEAT_RECOVERY
-
for Waste Heat Recovery
WASTE_INCINERATION
-
for Waste Incineration
WASTE_RECYCLING
-
for Waste Recycling
WEATHERIZATION
-
for Weatherization
WETLAND_RESTORATION
-
for Wetland Restoration
WIND
-
for Wind
BIOCHAR
-
for Biochar
CARBONATED_MATERIALS
-
for Carbonated Materials
CARBON_CAPTURE_IN_GEOLOGICAL_STORAGE
-
for Carbon Capture in Geological Storage
ENHANCED_ROCK_WEATHERING
-
for Enhanced Rock Weathering
TERRESTRIAL_STORAGE_OF_BIOMASS
-
for Terrestrial Storage of Biomass
4.94.1. JSON Representation
Each ProjectType is represented as a string in JSON.
4.95. Data Type: MeasurementSpecification
The MRV measurement specification used.
ISO_14064
-
for ISO 14064
ISO_14064_1
-
for ISO 14064-1
ISO_14064_2
-
for ISO 14064-2
4.95.1. JSON Representation
Each MeasurementSpecification is represented as a string in JSON.
4.96. Data Type: CreditStatus
A status indicator used for credits.
ACTIVE
-
for Active
INACTIVE
-
for Inactive
REVOKED
-
for Revoked
RETIRED
-
for Retired
4.96.1. JSON Representation
Each CreditStatus is represented as a string in JSON.
4.97. Data Type: Standard
The list of Quality Standard, e.g., methodology or protocols.
GS_VER
-
for Gold Standard Verified Emissions Reduction
VCS
-
for Certified Carbon Standard generates VCUs
VOS
-
for Voluntary Offset Standard
CCB
-
for Climate
GREEN_E
-
for US renewable energy
CDM
-
for Compliance: Clean Development Mechanism generates CERs
JI
-
for Compliance: Joint Implementation - Kyoto binding targets generation of ERUs
EUA
-
for Compliance: European Union Allowances
PURO
-
for Puro Standard verified durable carbon removal
PENDING
-
for Other or in Development
4.97.1. JSON Representation
Each Standard is represented as a string in JSON.
4.98. Data Type: MethodologyAndTool
Each Quality Standard defined in the VerificationProcessAgreement(#dt-verification-process-agreement) is has a Methodology and might also have multiple toolkits for Additionality, Leakage, and Baseline, etc. This is not an exhaustive list of Methodologies and Tools as there can be hundreds of them.
CDM - AM0007
-
for CDM - AM0007
CDM - AM0010
-
for CDM - AM0010
4.98.1. JSON Representation
Each MethodologyAndTool is represented as a string in JSON.
4.99. Data Type: CorrespondingAdjustment
A credits corresponding adjustment status.
NONE
-
for there is no Corresponding adjustment associated with this credit. Meaning the country of origin for the credit will not subtract the credit from their Nationally Determined Contributions (NDCs)if the credit is exported and consumed in a different country.
PARIS_AGREEMENT_COMPLIANT
-
for there is verified Corresponding adjustment associated with this credit. Meaning the country of origin for the credit will not count the credit in their Nationally Determined Contributions (NDCs)so the credit can be exported and count in a different country’s NDC.
PARIS_AGREEMENT_PENDING_COMPLIANCE
-
for there is corresponding adjustment associated with this credit; that is pending verification. Meaning the country of origin for the credit will not count the credit in their Nationally Determined Contributions (NDCs)so the credit can be exported and count in a different country’s NDC.
4.99.1. JSON Representation
Each CorrespondingAdjustment is represented as a string in JSON.
4.100. Data Type: ReportingFrequency
Reporting Frequency is the enumeration of the frequency that a claim source reports data.
SUB_HOURLY
-
can report in intervals less than an hour
HOURLY
-
can report hourly
DAILY
-
can report daily
SUB_WEEKLY
-
can report in intervals less than a week
WEEKLY
-
can report weekly
SUB_MONTHLY
-
can report in intervals less than a month
MONTHLY
-
can report monthly
4.100.1. JSON Representation
The value of each ReportingFrequency
MUST be encoded as a JSON String.
4.101. Data Type: Unit
Unit is the enumeration of accepted declared units with values
liter
-
for unit liter
kilogram
-
for unit kilogram
cubic meter
-
for cubic meter
kilowatt
-
for kilowatt
megawatt
-
for megawatt
megajoule
-
for megajoule
ton kilometer
-
for ton kilometer
square meter
-
for square meter
TONNE_CO2E
-
for tonne of CO2e
TONNE_CO2
-
for tonne of CO2
TONNE_CH4
-
for tonne of CH4
TONNE_N2O
-
for tonne of N2O
MwH
-
for megawatt hour
4.101.1. JSON Representation
The value of each Unit
MUST be encoded as a JSON String.
4.102. Data Type: WholeNumber
A whole number, may be signed, positive or negative.
Example values:
4.102.1. JSON Representation
Each whole number MUST be encoded as a JSON String.
4.103. Data Type: Decimal
A dotted-decimal number.
Example values:
4.103.1. JSON Representation
Each Decimal MUST be encoded as a JSON String.
4.104. Data Type: String
A regular UTF-8 String.
4.104.1. JSON Data Representation
Each String MUST be encoded as a JSON String.
4.105. Data Type: Id
A Id MUST either be a UUID v4 as specified in [rfc9562].
or a unique key that can be represented as a string.
4.105.1. JSON Representation
Each Id MUST be encoded as a JSON String, see § 4.104.1 JSON Data Representation for details.
Example JSON string value:
4.106. Data Type: ISO3166CC
An ISO 3166-2 alpha-2 country code.
Example value for tue alpha-2 country code of the United States:
4.106.1. JSON Representation
Each ISO3166CC MUST be encoded as a JSON String.
5. Data Samples
5.1. Example Full Credit Lineage
{ "id" : "bef817d3-e178-402c-93bd-b20aab360e71" , "quantity" : "1.41" , "unit" : "TonneCo2E" , "ownerId" : "396a2870-851e-4c93-bd97-e330c0d2d3c1" , "listingAgentId" : "ac497050-23eb-4fac-b9e5-1ec9039b2d34" , "coreCarbonPrinciples" : { "assetId" : "snei219123-998sdfl-sad21-1-1.41" , "issuanceDate" : { "dateTime" : "" , "dateString" : "3/20/2025" }, "vintage" : "2018" , "generationType" : "Generated" , "verificationStandard" : "Puro" , "mitigationActivity" : { "category" : "Removal" , "method" : "Technological" }, "durability" : { "storageType" : "Biological" , "years" : 100 , "degradable" : { "percentage" : 10 , "factor" : 5 , "degradationType" : "Linear" }, "reversalMitigation" : { "reversalRisk" : "Material" , "insuranceType" : "BufferPool" , "insurancePolicyOwner" : "AccountableImpactOrg" , "insurancePolicyLink" : { "id" : "a08f99d1-99cc-4ff7-804d-d7fab7be0c90" , "uri" : "https://puro.earth/mitigations/a08f99d1-99cc-4ff7-804d-d7fab7be0c90.pdf" , "description" : "Link to the Reversal Mitigation Insurance Policy" , "hashProof" : "98uuisdE12A0213az2133ASdfsdf" , "hashAlgorithm" : "Sha256" } } }, "replacement" : null , "parisAgreementCompliance" : { "ca" : "ParisAgreementCompliant" , "letterOfApproval" : { "id" : "492be7eb-0d9a-499b-9a95-e8ed8d7e4c9f" , "uri" : "https://span.com/492be7eb-0d9a-499b-9a95-e8ed8d7e4c9f.pdf" , "description" : "Letter of Approval for Paris Agreement Compliance" , "hashProof" : "uuisdE12A0213az2133ASdfsdf" , "hashAlgorithm" : "Sha256" }, "itmoId" : "CA12-EU01-SP-1234500-2023-NIO" }, "quantifiedSdgImpacts" : [ { "unSdg" : "AffordableAndCleanEnergy" , "description" : "This project provides affordable clean energy to the surrounding community." } ], "adaptationCoBenefits" : [ { "unSdg" : "IndustryInnovationAndInfrastructure" , "description" : "The project is contributing to the expansion of renewable infrastructure." } ] }, "climateLabels" : [ { "id" : "92252fdf-5c2d-4dc9-9a39-af6362a6b122" , "name" : "Climate Neutral" , "description" : "Climate Neutral - environmentally friendly, climate positive" } ], "status" : "Active" , "referencedCredits" : [ { "referencedCreditId" : "16e029bb-8258-4721-b3ab-3d4493425151" , "registryLink" : { "id" : "" , "uri" : "" , "description" : "" , "hashProof" : "" , "hashAlgorithm" : "Sha256" }, "metadata" : "serialized json data" } ], "appliedToReportingPeriodId" : "" , "processedClaimId" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "issuerId" : "2ab239a3-63e6-42dc-a0aa-8ca26dd81cde" , "processedClaim" : { "id" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "vpaId" : "e0d357b0-a75a-40fa-838b-5a5d444d2216" , "impactClaimId" : "a5cd2fbe-0b18-4cb7-99e8-624dc96acafa" , "claimGroupId" : "" , "creditId" : "bef817d3-e178-402c-93bd-b20aab360e71" , "unit" : "TonneCo2E" , "quantity" : "1.41" , "coBenefits" : [ { "unSdg" : "CleanWaterAndSanitation" , "description" : "The project was found to significantly contribute towards the communities clean water program." }, { "unSdg" : "ReducedInequalities" , "description" : "By training and employing locals, this project is reducing inequalities in the country." } ], "extensions" : [ { "id" : "" , "templateId" : "" , "data" : null , "appliedToId" : "" , "extensionContext" : "UnknownContext" } ], "checkpointResults" : [ { "id" : "5eda007d-e136-4b21-8c27-9374447c0212" , "checkpointId" : "189bc8ee-b19c-4116-be65-e8ec1d0b7764" , "processedData" : [ { "manifest" : { "id" : "bd199e99-14e0-4440-af99-03b78096a24b" , "version" : "1" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "claimId" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "processedClaimId" : "" , "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "created" : { "date" : { "dateTime" : "03/20/2025 17:22:43" , "dateString" : "3/20/2025" }, "timeStamp" : { "seconds" : 1742491363 , "nanos" : 861642000 } }, "extensions" : [ { "id" : "7662b2b6-e889-49c5-956f-575bcbd9960a" , "templateId" : "2fb3c5ea-6243-4560-83f3-30365f8c3ac9" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "appliedToId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataPackageManifest" } ], "formulas" : [], "dataFiles" : [ { "name" : "Data from sensor" , "type" : "DataBinary" , "description" : "Primary source data from sensor." , "claimSourceId" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "claimSourceAttestation" : "digital_signature" , "extensions" : [ { "id" : "41614623-8843-4bc0-8e92-6d681920543c" , "templateId" : "a1707f69-6bdf-45d7-9f89-4475c4828633" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "appliedToId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataFile" } ] } ] }, "verifiedLinkToDataPackage" : { "id" : "8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "uri" : "https://span.com/8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "description" : "Link to the Span Data Package" , "hashProof" : "asdflkdfs889fj3l437098asdfi" , "hashAlgorithm" : "Sha256" } } ], "dateRange" : { "startDate" : null , "endDate" : null }, "efBefore" : "" , "efAfter" : "" , "extensions" : [ { "id" : "" , "templateId" : "" , "data" : null , "appliedToId" : "" , "extensionContext" : "UnknownContext" } ] } ], "issuanceRequest" : null , "verificationProcessAgreement" : { "id" : "e0d357b0-a75a-40fa-838b-5a5d444d2216" , "name" : "Verification Process Agreement for Concrete Plant 3341" , "description" : "Verification Process Agreement for Concrete Plant 3341, with issuer Puro and verifier SustainCERT" , "isAimGroup" : false , "aimOrAimGroupId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "signatories" : [ { "id" : "60425f71-6d55-4875-b661-6bc1b1a4be8a" , "name" : "Puro.earth" , "description" : "Puro.earth is the world's leading platform for engineered carbon removal. Our mission is to mobilize the economy to reward carbon net negative emissions." , "signatoryRole" : "IssuingRegistry" , "vvbIdForAim" : "" , "signature" : { "type" : "JWS" , "jws" : "epx324jkasdf883429f2lMMm8asxdz9ZW0" , "hasJws" : true , "vc" : null , "signatureCase" : "Jws" } }, { "id" : "58827053-14ab-441d-8699-7108de68e687" , "name" : "SustainCERT" , "description" : "SustainCERT is an organization..." , "signatoryRole" : "ValidationAndVerificationBody" , "vvbIdForAim" : "" , "signature" : { "type" : "JWS" , "jws" : "789908sa32980231ll132fsd89asdfa123" , "hasJws" : true , "vc" : null , "signatureCase" : "Jws" } }, { "id" : "9431e6b8-9601-460b-b0e3-c3da409da3de" , "name" : "Eco-Earth Forest Growth" , "description" : "Eco-Earth Forest Growth is a forest management firm that..." , "signatoryRole" : "ProjectOwner" , "vvbIdForAim" : "" , "signature" : { "type" : "JWS" , "jws" : "1234567890asdfasdfas" , "hasJws" : true , "vc" : null , "signatureCase" : "Jws" } } ], "qualityStandard" : { "name" : "Puro - Carbonated Building Materials" , "description" : "Manufactured concrete-like building elements from steel slag (waste material from steel industry) instead of traditional cement. Basically, it’s CO2 negative concrete that removes more CO2 than its production emits." , "standard" : "Puro" , "methodologyAndTools" : [ "VcsVm0026" , "VcsVm0009" ], "version" : "1.0" , "coBenefits" : [ { "unSdg" : "ClimateAction" , "description" : "Climate Action, by removing carbon from the atmosphere." }, { "unSdg" : "LifeOnLand" , "description" : "Improving Life on Land, the use of the projects land to provide..." } ], "standardLink" : { "id" : "be062a19-133c-4626-aa2d-bcca2c510ab2" , "uri" : "https://puro.earth/carbon-removal-methods/carbonated-building-materials" , "description" : "Link to the Carbonated Building Materials" , "hashProof" : "1234567890abc12fasdfw43asdfasdf342" , "hashAlgorithm" : "Sha256" } }, "mrvRequirements" : { "measurementSpecification" : "Iso14064" , "specificationLink" : { "id" : "efc93244-030d-48b8-95a5-9204c45dd679" , "uri" : "https://www.iso.org/standard/70964.pdf" , "description" : "Link to the ISO 14064-3:2018 standard" , "hashProof" : "GX1234567890abc12fasdfw43asdfasdf342" , "hashAlgorithm" : "Sha256" }, "precision" : { "low" : 0 , "medium" : 0 , "high" : 0 }, "claimPeriod" : "Annual" , "extensionSetId" : "" , "extensionSet" : { "id" : "d2935622-fd03-4b31-a8d4-7bd876d607f9" , "name" : "" , "version" : "" , "description" : "Extension Set for VerificationProcessAgreement" , "documentation" : "" , "modules" : [ { "id" : "" , "name" : "VM0007 REDD+ Methodology Framework Extension" , "version" : "1.6" , "description" : "Methodology specific data attributes being tracked." , "documentation" : "" , "entityTemplates" : [ { "id" : "" , "name" : "Δ𝐶𝑊𝑃𝑏𝑖𝑜𝑚𝑎𝑠𝑠,𝑡" , "version" : "" , "description" : "Change in carbon stock in biomass carbon pools in the project scenario in year 𝑡 (t C y-1)" , "documentation" : "" , "extensionContext" : "DataPackageManifest" , "dataSchemaOrType" : "" , "dataExample" : "" } ], "messagePairs" : [], "formulaTemplates" : [], "variableTemplates" : [], "parentSet" : null } ], "entityTemplates" : [ { "id" : "27259534-8f7c-455a-9e6d-c97ebda6077a" , "name" : "Claim Source Make and Model" , "version" : "" , "description" : "An example entity extension for a Claim Source" , "documentation" : "" , "extensionContext" : "ClaimSource" , "dataSchemaOrType" : "MeterDeviceMetadata" , "dataExample" : "'{'make': 'Samsung', 'model': 'FuSIGon G20' }'" } ], "messagePairs" : [ { "id" : "8484df1c-30d2-43e4-b597-fdba979ca45e" , "name" : "Calibrate Sensor" , "version" : "" , "description" : "Sample request response message pair" , "documentation" : "" , "extensionContext" : "Checkpoint" , "requestDefinition" : { "protoData" : null , "dataType" : "CalibrationRequest" , "value" : "'{'deviceId': 'a21-3223a', 'sn': '324123d-23424a1FFs1' }'" }, "responseDefinition" : { "protoData" : null , "dataType" : "CalibrationResponse" , "value" : "'{'deviceId': 'a21-3223a', 'sn': '324123d-23424a1FFs1', 'status': 'OK' }'" } } ], "formulaTemplates" : [ { "id" : "90a825b5-d2b1-41b5-ad06-a3ca099bd02e" , "name" : "Carbon Removal Formula" , "version" : "1.0.0" , "formula" : "" , "description" : "An example formula template for a Activity Impact Module" , "documentation" : "" , "dataSchemaOrType" : "CDRFormula" , "dataExample" : "CDR = Cap - Emissions * 0.1" , "variableTemplates" : [] } ], "variableTemplates" : [ { "id" : "49bc2d54-b46d-433c-9c9f-458d435f8d88" , "name" : "Carbon Removal Variable" , "version" : "1.0.0" , "description" : "An example variable template for a Activity Impact Module" , "documentation" : "" , "dataSchemaOrType" : "CDRVariable" , "dataExample" : "CAP = Co2Capi,m" } ] } }, "agreementDate" : { "dateTime" : "" , "dateString" : "3/20/2025" }, "estimatedAnnualCredits" : "15,000" , "auditSchedule" : "Quinquennial" , "audits" : { "lastAuditDate" : { "dateTime" : "" , "dateString" : "3/20/2025" }, "auditReports" : [ { "id" : "424613f8-bec9-4ca0-b5ec-b6f5d4b02d8f" , "uri" : "https://sustaincert.com/audit/e0d357b0-a75a-40fa-838b-5a5d444d2216" , "description" : "Audit report for verification process agreement e0d357b0-a75a-40fa-838b-5a5d444d2216" , "hashProof" : "0xzxWW-1234567890abcdefasdf" , "hashAlgorithm" : "Sha256" } ] }, "extensions" : [], "activityImpactModule" : null , "processedClaims" : [] }, "impactClaim" : { "id" : "a5cd2fbe-0b18-4cb7-99e8-624dc96acafa" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "processedClaimId" : "" , "claimGroupId" : "" , "startDate" : "2021-01-01" , "endDate" : "2021-12-31" , "unit" : "TonneCo2E" , "quantity" : "1.41" , "coBenefits" : [ { "unSdg" : "ClimateAction" , "description" : "Climate Action for this project includes: carbon removal, reduction and carbon avoidance." }, { "unSdg" : "CleanWaterAndSanitation" , "description" : "Clean Water and Sanitation for this project includes: water quality improvement, water availability and water access." } ], "checkpoints" : [ { "id" : "189bc8ee-b19c-4116-be65-e8ec1d0b7764" , "claimId" : "a5cd2fbe-0b18-4cb7-99e8-624dc96acafa" , "claimSourceIds" : [ "147e7105-2333-4f5f-847c-6c984e5220dd" ], "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "efBefore" : "0" , "efAfter" : "1.41" , "checkpointDateRange" : { "startDate" : { "date" : { "dateTime" : "" , "dateString" : "3/20/2025" }, "timeStamp" : { "seconds" : 1742491363 , "nanos" : 865435000 } }, "endDate" : { "date" : { "dateTime" : "" , "dateString" : "3/20/2025" }, "timeStamp" : { "seconds" : 1742491363 , "nanos" : 865511000 } } }, "extensions" : [], "dataPackages" : [ { "manifest" : { "id" : "bd199e99-14e0-4440-af99-03b78096a24b" , "version" : "1" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "claimId" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "processedClaimId" : "" , "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "created" : { "date" : { "dateTime" : "03/20/2025 17:22:43" , "dateString" : "3/20/2025" }, "timeStamp" : { "seconds" : 1742491363 , "nanos" : 865796000 } }, "extensions" : [ { "id" : "8500c9b9-b26d-4b05-b6fb-502171944b79" , "templateId" : "2595f01a-9f01-44a9-9552-d611264d06f6" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "appliedToId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataPackageManifest" } ], "formulas" : [], "dataFiles" : [ { "name" : "Data from sensor" , "type" : "DataBinary" , "description" : "Primary source data from sensor." , "claimSourceId" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "claimSourceAttestation" : "digital_signature" , "extensions" : [ { "id" : "16b1a26d-293c-40d1-9ec6-6742aea6ecaf" , "templateId" : "8171202d-9972-4550-aaef-98d72dbe26ac" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "appliedToId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataFile" } ] } ] }, "verifiedLinkToDataPackage" : { "id" : "8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "uri" : "https://span.com/8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "description" : "Link to the Span Data Package" , "hashProof" : "asdflkdfs889fj3l437098asdfi" , "hashAlgorithm" : "Sha256" } } ] } ], "extensions" : [ { "id" : "" , "templateId" : "" , "data" : null , "appliedToId" : "" , "extensionContext" : "UnknownContext" } ], "activityImpactModule" : { "id" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "isGrouped" : false , "name" : "Forest Plot 3341" , "classificationCategory" : "CarbonRemoval" , "classificationMethod" : "Natural" , "benefitCategory" : "ClimateAction" , "projectScope" : "CarbonCaptureAndStorage" , "projectType" : "CarbonCaptureAndEnhancedOilRecovery" , "projectScale" : "Medium" , "country" : "BR" , "region" : "SouthAmerica" , "arbId" : "" , "geographicLocation" : { "longitude" : "41.40338" , "latitude" : "2.17403" , "geoJsonOrKml" : "{'type':'FeatureCollection','name':'1071','crs__type':'name','crs__properties__name':'urn:ogc:def:crs:OGC:1.3:CRS84','features__0__type':'Feature','features__0__properties__Name':'1071','features__0__properties__description':{},'features__0__properties__timestamp':{},'features__0__properties__begin':{},'features__0__properties__end':{},'features__0__properties__altitudeMode':{},'features__0__properties__tessellate':1,'features__0__properties__extrude':0,'features__0__properties__visibility':-1,'features__0__properties__drawOrder':{},'features__0__properties__icon':{},'features__0__geometry__type':'Polygon','features__0__geometry__coordinates__0__0__0':-17.44979726383285,'features__0__geometry__coordinates__0__0__1':14.6208620053651,'features__0__geometry__coordinates__0__0__2':0,'features__0__geometry__coordinates__0__1__0':-17.41480356186299,'features__0__geometry__coordinates__0__1__1':14.63868215949493,'features__0__geometry__coordinates__0__1__2':0,'features__0__geometry__coordinates__0__2__0':-17.39295299318011,'features__0__geometry__coordinates__0__2__1':14.67781171481277,'features__0__geometry__coordinates__0__2__2':0,'features__0__geometry__coordinates__0__3__0':-17.29563788678882,'features__0__geometry__coordinates__0__3__1':14.67680110195058,'features__0__geometry__coordinates__0__3__2':0,'features__0__geometry__coordinates__0__4__0':-17.17383924249105,'features__0__geometry__coordinates__0__4__1':14.59081467498821,'features__0__geometry__coordinates__0__4__2':0,'features__0__geometry__coordinates__0__5__0':-17.09360187476775,'features__0__geometry__coordinates__0__5__1':14.51585846117694,'features__0__geometry__coordinates__0__5__2':0,'features__0__geometry__coordinates__0__6__0':-17.08630514448674,'features__0__geometry__coordinates__0__6__1':14.47029974369886,'features__0__geometry__coordinates__0__6__2':0,'features__0__geometry__coordinates__0__7__0':-16.9635166358808,'features__0__geometry__coordinates__0__7__1':14.3497385970107,'features__0__geometry__coordinates__0__7__2':0,'features__0__geometry__coordinates__0__8__0':-16.94043127233231,'features__0__geometry__coordinates__0__8__1':14.28282669386156,'features__0__geometry__coordinates__0__8__2':0,'features__0__geometry__coordinates__0__9__0':-16.8524904710476,'features__0__geometry__coordinates__0__9__1':14.13282117800751,'features__0__geometry__coordinates__0__9__2':0,'features__0__geometry__coordinates__0__10__0':-16.76401571438566,'features__0__geometry__coordinates__0__10__1':13.94911098722119,'features__0__geometry__coordinates__0__10__2':0,'features__0__geometry__coordinates__0__11__0':-16.60258876944933,'features__0__geometry__coordinates__0__11__1':13.9482543830415,'features__0__geometry__coordinates__0__11__2':0,'features__0__geometry__coordinates__0__12__0':-16.35717663748357,'features__0__geometry__coordinates__0__12__1':13.94597928824933,'features__0__geometry__coordinates__0__12__2':0,'features__0__geometry__coordinates__0__13__0':-16.15567817482042,'features__0__geometry__coordinates__0__13__1':13.9444453347921,'features__0__geometry__coordinates__0__13__2':0,'features__0__geometry__coordinates__0__14__0':-15.84076599032189,'features__0__geometry__coordinates__0__14__1':13.96344759515951,'features__0__geometry__coordinates__0__14__2':0,'features__0__geometry__coordinates__0__15__0':-15.61023581159491,'features__0__geometry__coordinates__0__15__1':13.98459708145865,'features__0__geometry__coordinates__0__15__2':0,'features__0__geometry__coordinates__0__16__0':-15.51441146374702,'features__0__geometry__coordinates__0__16__1':14.03040839455136,'features__0__geometry__coordinates__0__16__2':0,'features__0__geometry__coordinates__0__17__0':-15.27072272145035,'features__0__geometry__coordinates__0__17__1':14.02255567674107,'features__0__geometry__coordinates__0__17__2':0,'features__0__geometry__coordinates__0__18__0':-15.26395397063758,'features__0__geometry__coordinates__0__18__1':14.13443659420945,'features__0__geometry__coordinates__0__18__2':0,'features__0__geometry__coordinates__0__19__0':-15.24023775131042,'features__0__geometry__coordinates__0__19__1':14.32904559912449,'features__0__geometry__coordinates__0__19__2':0,'features__0__geometry__coordinates__0__20__0':-15.21541086886319,'features__0__geometry__coordinates__0__20__1':14.58967912435987,'features__0__geometry__coordinates__0__20__2':0,'features__0__geometry__coordinates__0__21__0':-15.15515131233524,'features__0__geometry__coordinates__0__21__1':15.42311620512102,'features__0__geometry__coordinates__0__21__2':0,'features__0__geometry__coordinates__0__22__0':-15.45264670678973,'features__0__geometry__coordinates__0__22__1':15.42390739827185,'features__0__geometry__coordinates__0__22__2':0,'features__0__geometry__coordinates__0__23__0':-15.94444309310633,'features__0__geometry__coordinates__0__23__1':15.44371941768868,'features__0__geometry__coordinates__0__23__2':0,'features__0__geometry__coordinates__0__24__0':-16.3807688129775,'features__0__geometry__coordinates__0__24__1':15.45532235769231,'features__0__geometry__coordinates__0__24__2':0,'features__0__geometry__coordinates__0__25__0':-16.6574348263018,'features__0__geometry__coordinates__0__25__1':15.45077945422687,'features__0__geometry__coordinates__0__25__2':0,'features__0__geometry__coordinates__0__26__0':-16.75007765137733,'features__0__geometry__coordinates__0__26__1':15.41963731349297,'features__0__geometry__coordinates__0__26__2':0,'features__0__geometry__coordinates__0__27__0':-16.84991521854622,'features__0__geometry__coordinates__0__27__1':15.25813719688476,'features__0__geometry__coordinates__0__27__2':0,'features__0__geometry__coordinates__0__28__0':-16.94933674042656,'features__0__geometry__coordinates__0__28__1':15.12921501453258,'features__0__geometry__coordinates__0__28__2':0,'features__0__geometry__coordinates__0__29__0':-17.03626620967582,'features__0__geometry__coordinates__0__29__1':15.02938820681259,'features__0__geometry__coordinates__0__29__2':0,'features__0__geometry__coordinates__0__30__0':-17.10950928370794,'features__0__geometry__coordinates__0__30__1':14.94591580526796,'features__0__geometry__coordinates__0__30__2':0,'features__0__geometry__coordinates__0__31__0':-17.13088115585902,'features__0__geometry__coordinates__0__31__1':14.91578363643908,'features__0__geometry__coordinates__0__31__2':0,'features__0__geometry__coordinates__0__32__0':-17.27833470905615,'features__0__geometry__coordinates__0__32__1':14.84727548094827,'features__0__geometry__coordinates__0__32__2':0,'features__0__geometry__coordinates__0__33__0':-17.29778756226728,'features__0__geometry__coordinates__0__33__1':14.83767502076119,'features__0__geometry__coordinates__0__33__2':0,'features__0__geometry__coordinates__0__34__0':-17.30879441185855,'features__0__geometry__coordinates__0__34__1':14.8340737594179,'features__0__geometry__coordinates__0__34__2':0,'features__0__geometry__coordinates__0__35__0':-17.44096028793862,'features__0__geometry__coordinates__0__35__1':14.7932587077975,'features__0__geometry__coordinates__0__35__2':0,'features__0__geometry__coordinates__0__36__0':-17.53662598222956,'features__0__geometry__coordinates__0__36__1':14.76802543590545,'features__0__geometry__coordinates__0__36__2':0,'features__0__geometry__coordinates__0__37__0':-17.44979726383285,'features__0__geometry__coordinates__0__37__1':14.6208620053651,'features__0__geometry__coordinates__0__37__2':0}" , "geographicLocationFile" : null }, "firstYearIssuance" : "2017" , "registryProjectId" : "vef-1321-99da-1" , "developers" : [ "9c6e926f-9603-45de-9933-8af01ac45f31" ], "sponsors" : [ "sponsor" ], "claimSources" : [ { "id" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "name" : "Soil Sensor Device" , "description" : "Located in forest area e2" , "location" : { "longitude" : "41.40338" , "latitude" : "2.17403" , "geoJsonOrKml" : "" , "geographicLocationFile" : null }, "sourceType" : "SensorDevice" , "unitOfMeasure" : "TonneCo2E" , "reportingFrequency" : "SubHourly" , "sourceIdentifier" : "key:efc0b0b0-0b0b-0b0b-0b0b-0b0b0b0b0b0b" , "extensions" : [ { "id" : "bdd7c465-6034-4bd4-8869-fc169ec1991a" , "templateId" : "d2af892f-a2ac-42ba-bb5d-b017a677e33e" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "appliedToId" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "extensionContext" : "ClaimSource" } ], "variableTemplates" : [] } ], "impactClaims" : [ { "id" : "" , "aimId" : "" , "processedClaimId" : "" , "claimGroupId" : "" , "startDate" : "" , "endDate" : "" , "unit" : "TonneCo2E" , "quantity" : "" , "coBenefits" : [], "checkpoints" : [], "extensions" : [], "activityImpactModule" : null } ], "extensions" : [ { "id" : "0e23197e-3b0a-4f2b-a237-1a35ad865759" , "templateId" : "610dce02-b3b1-4cf5-88cc-ea7d66279c5e" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "appliedToId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "extensionContext" : "ActivityImpactModule" } ], "validations" : [ { "requestDate" : "2021-04-01" , "validationDate" : "3/20/2025" , "validatingPartyId" : "8226ece8-27b8-46f7-b21f-f531705c11cb" , "validationMethod" : "ISO 14064-3:2018" , "validationExpirationDate" : "3/20/2025" , "validationSteps" : [ { "validationStepName" : "Project Plan" , "validationStepDescription" : "Detailed project plan for the management of forest carbon sequestration" , "validationStepStatus" : "Completed" , "validationStepDocumentLink" : { "id" : "456bf8d1-f090-47b1-b7c0-b539441e557e" , "uri" : "https://sustaincert.com/forestcarbonsequestration/projectplan.pdf" , "description" : "Project Plan" , "hashProof" : "0x32wasfd1234567890abcdef" , "hashAlgorithm" : "Sha256" } } ] } ], "attestations" : [], "formulaTemplates" : [], "fixedVariables" : [], "accountableImpactOrganization" : { "id" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "name" : "Eco-Earth Forest Growth" , "description" : "The Eco-Earth Forest Growth organization is a reforestation project that aims to restore degraded land in the Amazon rainforest." , "addresses" : [ { "addressType" : "Legal" , "addressLines" : [ "123 ABC St." ], "city" : "Santarém" , "state" : "PA" , "zip" : "234123" , "country" : "Brazil" } ], "owners" : [ "owner" ], "informationLink" : { "id" : "7edef2c7-ff0e-41fc-b5e7-dda5aa65e850" , "uri" : "https://www.ecoearth.com/forest-growth.html" , "description" : "Project Website" , "hashProof" : "n/a" , "hashAlgorithm" : "Sha256" }, "mediaLinks" : [ { "id" : "987c9c95-09bf-4ad5-8331-50be9805a9af" , "uri" : "https://www.ecoearth.com/forest-growth-video.mp4" , "description" : "Project Video" , "hashProof" : "n/a" , "hashAlgorithm" : "Sha256" } ], "attestations" : [], "activityImpactModules" : [], "extensions" : [] } } }, "asset" : null } }
5.2. Example Accountable Impact Organization
{ "id" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "name" : "Eco-Earth Forest Growth" , "description" : "The Eco-Earth Forest Growth organization is a reforestation project that aims to restore degraded land in the Amazon rainforest." , "addresses" : [ { "addressType" : "Legal" , "addressLines" : [ "123 ABC St." ], "city" : "Santarém" , "state" : "PA" , "zip" : "234123" , "country" : "Brazil" } ], "owners" : [ "owner" ], "informationLink" : { "id" : "7edef2c7-ff0e-41fc-b5e7-dda5aa65e850" , "uri" : "https://www.ecoearth.com/forest-growth.html" , "description" : "Project Website" , "hashProof" : "n/a" , "hashAlgorithm" : "Sha256" }, "mediaLinks" : [ { "id" : "987c9c95-09bf-4ad5-8331-50be9805a9af" , "uri" : "https://www.ecoearth.com/forest-growth-video.mp4" , "description" : "Project Video" , "hashProof" : "n/a" , "hashAlgorithm" : "Sha256" } ], "attestations" : [], "activityImpactModules" : [ { "id" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "correlatingProjectId" : "" , "name" : "Forest Plot 3341" , "classificationCategory" : "CarbonRemoval" , "classificationMethod" : "Natural" , "benefitCategory" : "ClimateAction" , "projectScope" : "CarbonCaptureAndStorage" , "projectType" : "CarbonCaptureAndEnhancedOilRecovery" , "projectScale" : "Medium" , "country" : "BR" , "region" : "SouthAmerica" , "arbId" : "" , "geographicLocation" : { "longitude" : "41.40338" , "latitude" : "2.17403" , "geoJsonOrKml" : "{'type':'FeatureCollection','name':'1071','crs__type':'name','crs__properties__name':'urn:ogc:def:crs:OGC:1.3:CRS84','features__0__type':'Feature','features__0__properties__Name':'1071','features__0__properties__description':{},'features__0__properties__timestamp':{},'features__0__properties__begin':{},'features__0__properties__end':{},'features__0__properties__altitudeMode':{},'features__0__properties__tessellate':1,'features__0__properties__extrude':0,'features__0__properties__visibility':-1,'features__0__properties__drawOrder':{},'features__0__properties__icon':{},'features__0__geometry__type':'Polygon','features__0__geometry__coordinates__0__0__0':-17.44979726383285,'features__0__geometry__coordinates__0__0__1':14.6208620053651,'features__0__geometry__coordinates__0__0__2':0,'features__0__geometry__coordinates__0__1__0':-17.41480356186299,'features__0__geometry__coordinates__0__1__1':14.63868215949493,'features__0__geometry__coordinates__0__1__2':0,'features__0__geometry__coordinates__0__2__0':-17.39295299318011,'features__0__geometry__coordinates__0__2__1':14.67781171481277,'features__0__geometry__coordinates__0__2__2':0,'features__0__geometry__coordinates__0__3__0':-17.29563788678882,'features__0__geometry__coordinates__0__3__1':14.67680110195058,'features__0__geometry__coordinates__0__3__2':0,'features__0__geometry__coordinates__0__4__0':-17.17383924249105,'features__0__geometry__coordinates__0__4__1':14.59081467498821,'features__0__geometry__coordinates__0__4__2':0,'features__0__geometry__coordinates__0__5__0':-17.09360187476775,'features__0__geometry__coordinates__0__5__1':14.51585846117694,'features__0__geometry__coordinates__0__5__2':0,'features__0__geometry__coordinates__0__6__0':-17.08630514448674,'features__0__geometry__coordinates__0__6__1':14.47029974369886,'features__0__geometry__coordinates__0__6__2':0,'features__0__geometry__coordinates__0__7__0':-16.9635166358808,'features__0__geometry__coordinates__0__7__1':14.3497385970107,'features__0__geometry__coordinates__0__7__2':0,'features__0__geometry__coordinates__0__8__0':-16.94043127233231,'features__0__geometry__coordinates__0__8__1':14.28282669386156,'features__0__geometry__coordinates__0__8__2':0,'features__0__geometry__coordinates__0__9__0':-16.8524904710476,'features__0__geometry__coordinates__0__9__1':14.13282117800751,'features__0__geometry__coordinates__0__9__2':0,'features__0__geometry__coordinates__0__10__0':-16.76401571438566,'features__0__geometry__coordinates__0__10__1':13.94911098722119,'features__0__geometry__coordinates__0__10__2':0,'features__0__geometry__coordinates__0__11__0':-16.60258876944933,'features__0__geometry__coordinates__0__11__1':13.9482543830415,'features__0__geometry__coordinates__0__11__2':0,'features__0__geometry__coordinates__0__12__0':-16.35717663748357,'features__0__geometry__coordinates__0__12__1':13.94597928824933,'features__0__geometry__coordinates__0__12__2':0,'features__0__geometry__coordinates__0__13__0':-16.15567817482042,'features__0__geometry__coordinates__0__13__1':13.9444453347921,'features__0__geometry__coordinates__0__13__2':0,'features__0__geometry__coordinates__0__14__0':-15.84076599032189,'features__0__geometry__coordinates__0__14__1':13.96344759515951,'features__0__geometry__coordinates__0__14__2':0,'features__0__geometry__coordinates__0__15__0':-15.61023581159491,'features__0__geometry__coordinates__0__15__1':13.98459708145865,'features__0__geometry__coordinates__0__15__2':0,'features__0__geometry__coordinates__0__16__0':-15.51441146374702,'features__0__geometry__coordinates__0__16__1':14.03040839455136,'features__0__geometry__coordinates__0__16__2':0,'features__0__geometry__coordinates__0__17__0':-15.27072272145035,'features__0__geometry__coordinates__0__17__1':14.02255567674107,'features__0__geometry__coordinates__0__17__2':0,'features__0__geometry__coordinates__0__18__0':-15.26395397063758,'features__0__geometry__coordinates__0__18__1':14.13443659420945,'features__0__geometry__coordinates__0__18__2':0,'features__0__geometry__coordinates__0__19__0':-15.24023775131042,'features__0__geometry__coordinates__0__19__1':14.32904559912449,'features__0__geometry__coordinates__0__19__2':0,'features__0__geometry__coordinates__0__20__0':-15.21541086886319,'features__0__geometry__coordinates__0__20__1':14.58967912435987,'features__0__geometry__coordinates__0__20__2':0,'features__0__geometry__coordinates__0__21__0':-15.15515131233524,'features__0__geometry__coordinates__0__21__1':15.42311620512102,'features__0__geometry__coordinates__0__21__2':0,'features__0__geometry__coordinates__0__22__0':-15.45264670678973,'features__0__geometry__coordinates__0__22__1':15.42390739827185,'features__0__geometry__coordinates__0__22__2':0,'features__0__geometry__coordinates__0__23__0':-15.94444309310633,'features__0__geometry__coordinates__0__23__1':15.44371941768868,'features__0__geometry__coordinates__0__23__2':0,'features__0__geometry__coordinates__0__24__0':-16.3807688129775,'features__0__geometry__coordinates__0__24__1':15.45532235769231,'features__0__geometry__coordinates__0__24__2':0,'features__0__geometry__coordinates__0__25__0':-16.6574348263018,'features__0__geometry__coordinates__0__25__1':15.45077945422687,'features__0__geometry__coordinates__0__25__2':0,'features__0__geometry__coordinates__0__26__0':-16.75007765137733,'features__0__geometry__coordinates__0__26__1':15.41963731349297,'features__0__geometry__coordinates__0__26__2':0,'features__0__geometry__coordinates__0__27__0':-16.84991521854622,'features__0__geometry__coordinates__0__27__1':15.25813719688476,'features__0__geometry__coordinates__0__27__2':0,'features__0__geometry__coordinates__0__28__0':-16.94933674042656,'features__0__geometry__coordinates__0__28__1':15.12921501453258,'features__0__geometry__coordinates__0__28__2':0,'features__0__geometry__coordinates__0__29__0':-17.03626620967582,'features__0__geometry__coordinates__0__29__1':15.02938820681259,'features__0__geometry__coordinates__0__29__2':0,'features__0__geometry__coordinates__0__30__0':-17.10950928370794,'features__0__geometry__coordinates__0__30__1':14.94591580526796,'features__0__geometry__coordinates__0__30__2':0,'features__0__geometry__coordinates__0__31__0':-17.13088115585902,'features__0__geometry__coordinates__0__31__1':14.91578363643908,'features__0__geometry__coordinates__0__31__2':0,'features__0__geometry__coordinates__0__32__0':-17.27833470905615,'features__0__geometry__coordinates__0__32__1':14.84727548094827,'features__0__geometry__coordinates__0__32__2':0,'features__0__geometry__coordinates__0__33__0':-17.29778756226728,'features__0__geometry__coordinates__0__33__1':14.83767502076119,'features__0__geometry__coordinates__0__33__2':0,'features__0__geometry__coordinates__0__34__0':-17.30879441185855,'features__0__geometry__coordinates__0__34__1':14.8340737594179,'features__0__geometry__coordinates__0__34__2':0,'features__0__geometry__coordinates__0__35__0':-17.44096028793862,'features__0__geometry__coordinates__0__35__1':14.7932587077975,'features__0__geometry__coordinates__0__35__2':0,'features__0__geometry__coordinates__0__36__0':-17.53662598222956,'features__0__geometry__coordinates__0__36__1':14.76802543590545,'features__0__geometry__coordinates__0__36__2':0,'features__0__geometry__coordinates__0__37__0':-17.44979726383285,'features__0__geometry__coordinates__0__37__1':14.6208620053651,'features__0__geometry__coordinates__0__37__2':0}" , "geographicLocationFile" : null }, "firstYearIssuance" : "2017" , "registryProjectId" : "vef-1321-99da-1" , "developers" : [ "9c6e926f-9603-45de-9933-8af01ac45f31" ], "sponsors" : [ "sponsor" ], "claimSources" : [ { "id" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "name" : "Soil Sensor Device" , "description" : "Located in forest area e2" , "location" : { "longitude" : "41.40338" , "latitude" : "2.17403" , "geoJsonOrKml" : "" , "geographicLocationFile" : null }, "sourceType" : "SensorDevice" , "unitOfMeasure" : "TonneCo2E" , "sourceIdentifier" : "key:efc0b0b0-0b0b-0b0b-0b0b-0b0b0b0b0b0b" , "extensions" : [ { "id" : "" , "name" : "" , "version" : "" , "description" : "" , "documentation" : "EXAMPLE: https://puro.earth/removal-methods/carbonated-concrete/mrv-extension/concrete-device-sensor/" , "mrvExtensionContext" : "ClaimSource" , "properties" : [], "dataSchemaOrType" : "https://puro.earth/schemas/mrv-extension/v1.0/mbp-claim-source-mrv-extension.json" , "data" : null , "serializedData" : { "type" : "" , "value" : "{data: Device ID, value: 1234567890, data: Calibration Offset, value: .0028, data: Calibration Slope, value: 1.0002}" } } ] } ], "impactClaims" : [ { "id" : "" , "aimId" : "" , "processedClaimId" : "" , "startDate" : "" , "endDate" : "" , "unit" : "TonneCo2E" , "quantity" : "" , "coBenefits" : [], "checkpoints" : [], "extensions" : [], "activityImpactModule" : null } ], "extensions" : [ { "id" : "" , "name" : "" , "version" : "" , "description" : "" , "documentation" : "EXAMPLE: https:/puro.earth/mrv-extensions/mbp-mrv-extension/" , "mrvExtensionContext" : "AccountableImpactOrganization" , "properties" : [], "dataSchemaOrType" : "https://puro.earth/schemas/mrv-extension/v1.0/mbp-mrv-extension.json" , "data" : null , "serializedData" : { "type" : "" , "value" : "{data: Baseline Scenario, value: Most plausible baseline scenario, data: Barrier analysis, value: Barrier analysis for alternative land use, data: Alternative land use: Cattle ranching, value: Barrier analysis found that cattle ranching was not a viable alternative land use because of the low productivity of the land and the high cost of fencing.}" } } ], "validations" : [ { "requestDate" : "2021-04-01" , "validationDate" : "9/16/2024" , "validatingPartyId" : "8226ece8-27b8-46f7-b21f-f531705c11cb" , "validationMethod" : "ISO 14064-3:2018" , "validationExpirationDate" : "9/16/2024" , "validationSteps" : [ { "validationStepName" : "Project Plan" , "validationStepDescription" : "Detailed project plan for the management of forest carbon sequestration" , "validationStepStatus" : "Completed" , "validationStepDocumentLink" : { "id" : "456bf8d1-f090-47b1-b7c0-b539441e557e" , "uri" : "https://sustaincert.com/forestcarbonsequestration/projectplan.pdf" , "description" : "Project Plan" , "hashProof" : "0x32wasfd1234567890abcdef" , "hashAlgorithm" : "Sha256" } } ] } ], "attestations" : [], "accountableImpactOrganization" : null } ], "extensions" : [] }
5.3. Example Activity Impact Module
{ "id" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "isGrouped" : false , "name" : "Forest Plot 3341" , "classificationCategory" : "CarbonRemoval" , "classificationMethod" : "Natural" , "benefitCategory" : "ClimateAction" , "projectScope" : "CarbonCaptureAndStorage" , "projectType" : "CarbonCaptureAndEnhancedOilRecovery" , "projectScale" : "Medium" , "country" : "BR" , "region" : "SouthAmerica" , "arbId" : "" , "geographicLocation" : { "longitude" : "41.40338" , "latitude" : "2.17403" , "geoJsonOrKml" : "{'type':'FeatureCollection','name':'1071','crs__type':'name','crs__properties__name':'urn:ogc:def:crs:OGC:1.3:CRS84','features__0__type':'Feature','features__0__properties__Name':'1071','features__0__properties__description':{},'features__0__properties__timestamp':{},'features__0__properties__begin':{},'features__0__properties__end':{},'features__0__properties__altitudeMode':{},'features__0__properties__tessellate':1,'features__0__properties__extrude':0,'features__0__properties__visibility':-1,'features__0__properties__drawOrder':{},'features__0__properties__icon':{},'features__0__geometry__type':'Polygon','features__0__geometry__coordinates__0__0__0':-17.44979726383285,'features__0__geometry__coordinates__0__0__1':14.6208620053651,'features__0__geometry__coordinates__0__0__2':0,'features__0__geometry__coordinates__0__1__0':-17.41480356186299,'features__0__geometry__coordinates__0__1__1':14.63868215949493,'features__0__geometry__coordinates__0__1__2':0,'features__0__geometry__coordinates__0__2__0':-17.39295299318011,'features__0__geometry__coordinates__0__2__1':14.67781171481277,'features__0__geometry__coordinates__0__2__2':0,'features__0__geometry__coordinates__0__3__0':-17.29563788678882,'features__0__geometry__coordinates__0__3__1':14.67680110195058,'features__0__geometry__coordinates__0__3__2':0,'features__0__geometry__coordinates__0__4__0':-17.17383924249105,'features__0__geometry__coordinates__0__4__1':14.59081467498821,'features__0__geometry__coordinates__0__4__2':0,'features__0__geometry__coordinates__0__5__0':-17.09360187476775,'features__0__geometry__coordinates__0__5__1':14.51585846117694,'features__0__geometry__coordinates__0__5__2':0,'features__0__geometry__coordinates__0__6__0':-17.08630514448674,'features__0__geometry__coordinates__0__6__1':14.47029974369886,'features__0__geometry__coordinates__0__6__2':0,'features__0__geometry__coordinates__0__7__0':-16.9635166358808,'features__0__geometry__coordinates__0__7__1':14.3497385970107,'features__0__geometry__coordinates__0__7__2':0,'features__0__geometry__coordinates__0__8__0':-16.94043127233231,'features__0__geometry__coordinates__0__8__1':14.28282669386156,'features__0__geometry__coordinates__0__8__2':0,'features__0__geometry__coordinates__0__9__0':-16.8524904710476,'features__0__geometry__coordinates__0__9__1':14.13282117800751,'features__0__geometry__coordinates__0__9__2':0,'features__0__geometry__coordinates__0__10__0':-16.76401571438566,'features__0__geometry__coordinates__0__10__1':13.94911098722119,'features__0__geometry__coordinates__0__10__2':0,'features__0__geometry__coordinates__0__11__0':-16.60258876944933,'features__0__geometry__coordinates__0__11__1':13.9482543830415,'features__0__geometry__coordinates__0__11__2':0,'features__0__geometry__coordinates__0__12__0':-16.35717663748357,'features__0__geometry__coordinates__0__12__1':13.94597928824933,'features__0__geometry__coordinates__0__12__2':0,'features__0__geometry__coordinates__0__13__0':-16.15567817482042,'features__0__geometry__coordinates__0__13__1':13.9444453347921,'features__0__geometry__coordinates__0__13__2':0,'features__0__geometry__coordinates__0__14__0':-15.84076599032189,'features__0__geometry__coordinates__0__14__1':13.96344759515951,'features__0__geometry__coordinates__0__14__2':0,'features__0__geometry__coordinates__0__15__0':-15.61023581159491,'features__0__geometry__coordinates__0__15__1':13.98459708145865,'features__0__geometry__coordinates__0__15__2':0,'features__0__geometry__coordinates__0__16__0':-15.51441146374702,'features__0__geometry__coordinates__0__16__1':14.03040839455136,'features__0__geometry__coordinates__0__16__2':0,'features__0__geometry__coordinates__0__17__0':-15.27072272145035,'features__0__geometry__coordinates__0__17__1':14.02255567674107,'features__0__geometry__coordinates__0__17__2':0,'features__0__geometry__coordinates__0__18__0':-15.26395397063758,'features__0__geometry__coordinates__0__18__1':14.13443659420945,'features__0__geometry__coordinates__0__18__2':0,'features__0__geometry__coordinates__0__19__0':-15.24023775131042,'features__0__geometry__coordinates__0__19__1':14.32904559912449,'features__0__geometry__coordinates__0__19__2':0,'features__0__geometry__coordinates__0__20__0':-15.21541086886319,'features__0__geometry__coordinates__0__20__1':14.58967912435987,'features__0__geometry__coordinates__0__20__2':0,'features__0__geometry__coordinates__0__21__0':-15.15515131233524,'features__0__geometry__coordinates__0__21__1':15.42311620512102,'features__0__geometry__coordinates__0__21__2':0,'features__0__geometry__coordinates__0__22__0':-15.45264670678973,'features__0__geometry__coordinates__0__22__1':15.42390739827185,'features__0__geometry__coordinates__0__22__2':0,'features__0__geometry__coordinates__0__23__0':-15.94444309310633,'features__0__geometry__coordinates__0__23__1':15.44371941768868,'features__0__geometry__coordinates__0__23__2':0,'features__0__geometry__coordinates__0__24__0':-16.3807688129775,'features__0__geometry__coordinates__0__24__1':15.45532235769231,'features__0__geometry__coordinates__0__24__2':0,'features__0__geometry__coordinates__0__25__0':-16.6574348263018,'features__0__geometry__coordinates__0__25__1':15.45077945422687,'features__0__geometry__coordinates__0__25__2':0,'features__0__geometry__coordinates__0__26__0':-16.75007765137733,'features__0__geometry__coordinates__0__26__1':15.41963731349297,'features__0__geometry__coordinates__0__26__2':0,'features__0__geometry__coordinates__0__27__0':-16.84991521854622,'features__0__geometry__coordinates__0__27__1':15.25813719688476,'features__0__geometry__coordinates__0__27__2':0,'features__0__geometry__coordinates__0__28__0':-16.94933674042656,'features__0__geometry__coordinates__0__28__1':15.12921501453258,'features__0__geometry__coordinates__0__28__2':0,'features__0__geometry__coordinates__0__29__0':-17.03626620967582,'features__0__geometry__coordinates__0__29__1':15.02938820681259,'features__0__geometry__coordinates__0__29__2':0,'features__0__geometry__coordinates__0__30__0':-17.10950928370794,'features__0__geometry__coordinates__0__30__1':14.94591580526796,'features__0__geometry__coordinates__0__30__2':0,'features__0__geometry__coordinates__0__31__0':-17.13088115585902,'features__0__geometry__coordinates__0__31__1':14.91578363643908,'features__0__geometry__coordinates__0__31__2':0,'features__0__geometry__coordinates__0__32__0':-17.27833470905615,'features__0__geometry__coordinates__0__32__1':14.84727548094827,'features__0__geometry__coordinates__0__32__2':0,'features__0__geometry__coordinates__0__33__0':-17.29778756226728,'features__0__geometry__coordinates__0__33__1':14.83767502076119,'features__0__geometry__coordinates__0__33__2':0,'features__0__geometry__coordinates__0__34__0':-17.30879441185855,'features__0__geometry__coordinates__0__34__1':14.8340737594179,'features__0__geometry__coordinates__0__34__2':0,'features__0__geometry__coordinates__0__35__0':-17.44096028793862,'features__0__geometry__coordinates__0__35__1':14.7932587077975,'features__0__geometry__coordinates__0__35__2':0,'features__0__geometry__coordinates__0__36__0':-17.53662598222956,'features__0__geometry__coordinates__0__36__1':14.76802543590545,'features__0__geometry__coordinates__0__36__2':0,'features__0__geometry__coordinates__0__37__0':-17.44979726383285,'features__0__geometry__coordinates__0__37__1':14.6208620053651,'features__0__geometry__coordinates__0__37__2':0}" , "geographicLocationFile" : null }, "firstYearIssuance" : "2017" , "registryProjectId" : "vef-1321-99da-1" , "developers" : [ "9c6e926f-9603-45de-9933-8af01ac45f31" ], "sponsors" : [ "sponsor" ], "claimSources" : [ { "id" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "name" : "Soil Sensor Device" , "description" : "Located in forest area e2" , "location" : { "longitude" : "41.40338" , "latitude" : "2.17403" , "geoJsonOrKml" : "" , "geographicLocationFile" : null }, "sourceType" : "SensorDevice" , "unitOfMeasure" : "TonneCo2E" , "reportingFrequency" : "SubHourly" , "sourceIdentifier" : "key:efc0b0b0-0b0b-0b0b-0b0b-0b0b0b0b0b0b" , "extensions" : [ { "id" : "9af4e282-5607-4985-b85b-a6bcbffde246" , "templateId" : "56b981f2-8b71-46f7-b8ef-4e4afcc71ceb" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "entityId" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "extensionContext" : "ClaimSource" } ], "variables" : null } ], "impactClaims" : [ { "id" : "" , "aimId" : "" , "processedClaimId" : "" , "claimGroupId" : "" , "startDate" : "" , "endDate" : "" , "unit" : "TonneCo2E" , "quantity" : "" , "coBenefits" : [], "checkpoints" : [], "extensions" : [], "activityImpactModule" : null } ], "extensions" : [ { "id" : "b959b6e5-8321-496b-944f-2e5db0d94af3" , "templateId" : "e7ee9d38-bec3-457f-89fa-78558524a1b5" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "entityId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "extensionContext" : "ActivityImpactModule" } ], "validations" : [ { "requestDate" : "2021-04-01" , "validationDate" : "2/4/2025" , "validatingPartyId" : "8226ece8-27b8-46f7-b21f-f531705c11cb" , "validationMethod" : "ISO 14064-3:2018" , "validationExpirationDate" : "2/4/2025" , "validationSteps" : [ { "validationStepName" : "Project Plan" , "validationStepDescription" : "Detailed project plan for the management of forest carbon sequestration" , "validationStepStatus" : "Completed" , "validationStepDocumentLink" : { "id" : "456bf8d1-f090-47b1-b7c0-b539441e557e" , "uri" : "https://sustaincert.com/forestcarbonsequestration/projectplan.pdf" , "description" : "Project Plan" , "hashProof" : "0x32wasfd1234567890abcdef" , "hashAlgorithm" : "Sha256" } } ] } ], "attestations" : [], "formulas" : [], "accountableImpactOrganization" : null }
5.4. Example Impact Claim
{ "id" : "a5cd2fbe-0b18-4cb7-99e8-624dc96acafa" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "processedClaimId" : "" , "claimGroupId" : "" , "startDate" : "2021-01-01" , "endDate" : "2021-12-31" , "unit" : "TonneCo2E" , "quantity" : "1.41" , "coBenefits" : [ { "unSdg" : "ClimateAction" , "description" : "Climate Action for this project includes: carbon removal, reduction and carbon avoidance." }, { "unSdg" : "CleanWaterAndSanitation" , "description" : "Clean Water and Sanitation for this project includes: water quality improvement, water availability and water access." } ], "checkpoints" : [ { "id" : "189bc8ee-b19c-4116-be65-e8ec1d0b7764" , "claimId" : "a5cd2fbe-0b18-4cb7-99e8-624dc96acafa" , "claimSourceIds" : [ "147e7105-2333-4f5f-847c-6c984e5220dd" ], "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "efBefore" : "0" , "efAfter" : "1.41" , "checkpointDateRange" : { "startDate" : { "date" : { "dateTime" : "" , "dateString" : "2/4/2025" }, "timeStamp" : { "seconds" : 1738696062 , "nanos" : 257176000 } }, "endDate" : { "date" : { "dateTime" : "" , "dateString" : "2/4/2025" }, "timeStamp" : { "seconds" : 1738696062 , "nanos" : 257198000 } } }, "extensions" : [], "dataPackages" : [ { "manifest" : { "id" : "bd199e99-14e0-4440-af99-03b78096a24b" , "version" : "1" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "claimId" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "created" : { "date" : { "dateTime" : "02/04/2025 19:07:42" , "dateString" : "2/4/2025" }, "timeStamp" : { "seconds" : 1738696062 , "nanos" : 257228000 } }, "extensions" : [ { "id" : "0e19904e-d058-4190-9781-612db7402e35" , "templateId" : "c76d2f87-85ee-4337-96d3-d8968d2c5022" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "entityId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataPackageManifest" } ], "dataFiles" : [ { "name" : "Data from sensor" , "type" : "DataBinary" , "description" : "Primary source data from sensor." , "claimSourceId" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "claimSourceAttestation" : "digital_signature" , "extensions" : [ { "id" : "8f25fae7-1d56-4c56-bb80-c70d51b10005" , "templateId" : "aa7ed1c6-c7f1-482f-9f8b-dd7cd7eb5fbb" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "entityId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataFile" } ] } ] }, "verifiedLinkToDataPackage" : { "id" : "8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "uri" : "https://span.com/8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "description" : "Link to the Data Package" , "hashProof" : "asdflkdfs889fj3l437098asdfi" , "hashAlgorithm" : "Sha256" } } ] } ], "extensions" : [ { "id" : "" , "templateId" : "" , "data" : null , "entityId" : "" , "extensionContext" : "UnknownContext" } ], "activityImpactModule" : null }
5.5. Example Data Package
{ "manifest" : { "id" : "bd199e99-14e0-4440-af99-03b78096a24b" , "version" : "1" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "claimId" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "created" : { "date" : { "dateTime" : "02/04/2025 19:10:38" , "dateString" : "2/4/2025" }, "timeStamp" : { "seconds" : 1738696238 , "nanos" : 315754000 } }, "extensions" : [ { "id" : "cff8d1df-b5b7-42ca-bd5e-c1ed04de613a" , "templateId" : "6400f1b1-df0e-400b-af7a-82f7737b83f8" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "entityId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataPackageManifest" } ], "dataFiles" : [ { "name" : "Data from sensor" , "type" : "DataBinary" , "description" : "Primary source data from sensor." , "claimSourceId" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "claimSourceAttestation" : "digital_signature" , "extensions" : [ { "id" : "899b17c6-3ced-4ae1-8da6-8f0491006e0c" , "templateId" : "3b44525f-ae44-499b-8830-7347e69f3ac3" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "entityId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataFile" } ] } ] }, "verifiedLinkToDataPackage" : { "id" : "8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "uri" : "https://span.com/8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "description" : "Link to the Span Data Package" , "hashProof" : "asdflkdfs889fj3l437098asdfi" , "hashAlgorithm" : "Sha256" } }
5.6. Example Processed Claim
{ "id" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "vpaId" : "e0d357b0-a75a-40fa-838b-5a5d444d2216" , "impactClaimId" : "a5cd2fbe-0b18-4cb7-99e8-624dc96acafa" , "claimGroupId" : "" , "creditId" : "bef817d3-e178-402c-93bd-b20aab360e71" , "unit" : "TonneCo2E" , "quantity" : "1.41" , "coBenefits" : [ { "unSdg" : "CleanWaterAndSanitation" , "description" : "The project was found to significantly contribute towards the communities clean water program." }, { "unSdg" : "ReducedInequalities" , "description" : "By training and employing locals, this project is reducing inequalities in the country." } ], "extensions" : [ { "id" : "" , "templateId" : "" , "data" : null , "entityId" : "" , "extensionContext" : "UnknownContext" } ], "checkpointResults" : [ { "id" : "5eda007d-e136-4b21-8c27-9374447c0212" , "checkpointId" : "189bc8ee-b19c-4116-be65-e8ec1d0b7764" , "processedData" : [ { "manifest" : { "id" : "bd199e99-14e0-4440-af99-03b78096a24b" , "version" : "1" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "claimId" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "created" : { "date" : { "dateTime" : "02/04/2025 19:09:53" , "dateString" : "2/4/2025" }, "timeStamp" : { "seconds" : 1738696193 , "nanos" : 301360000 } }, "extensions" : [ { "id" : "f51c1f67-6021-44ce-a183-79f55ab440dd" , "templateId" : "93497466-b547-448d-9f5f-ee225a8ff9e1" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "entityId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataPackageManifest" } ], "dataFiles" : [ { "name" : "Data from sensor" , "type" : "DataBinary" , "description" : "Primary source data from sensor." , "claimSourceId" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "claimSourceAttestation" : "digital_signature" , "extensions" : [ { "id" : "5a039dde-eba9-4fff-9329-717313b8567a" , "templateId" : "b81354c8-7b40-48af-b50a-a6e05ef66b77" , "data" : { "protoData" : null , "dataType" : "" , "value" : "" }, "entityId" : "bd199e99-14e0-4440-af99-03b78096a24b" , "extensionContext" : "DataFile" } ] } ] }, "verifiedLinkToDataPackage" : { "id" : "8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "uri" : "https://span.com/8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "description" : "Link to the Span Data Package" , "hashProof" : "asdflkdfs889fj3l437098asdfi" , "hashAlgorithm" : "Sha256" } } ], "dateRange" : { "startDate" : null , "endDate" : null }, "efBefore" : "" , "efAfter" : "" , "extensions" : [ { "id" : "" , "templateId" : "" , "data" : null , "entityId" : "" , "extensionContext" : "UnknownContext" } ] } ], "issuanceRequest" : null , "verificationProcessAgreement" : null , "impactClaim" : null , "asset" : null }
5.7. Example Verification Process Agreement
{ "id" : "e0d357b0-a75a-40fa-838b-5a5d444d2216" , "name" : "Verification Process Agreement for Concrete Plant 3341" , "description" : "Verification Process Agreement for Concrete Plant 3341, with issuer Puro and verifier SustainCERT" , "isAimGroup" : false , "aimOrAimGroupId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "signatories" : [ { "id" : "60425f71-6d55-4875-b661-6bc1b1a4be8a" , "name" : "Puro.earth" , "description" : "Puro.earth is the world's leading platform for engineered carbon removal. Our mission is to mobilize the economy to reward carbon net negative emissions." , "signatoryRole" : "IssuingRegistry" , "vvbIdForAim" : "" , "signature" : { "type" : "JWS" , "jws" : "epx324jkasdf883429f2lMMm8asxdz9ZW0" , "hasJws" : true , "vc" : null , "signatureCase" : "Jws" } }, { "id" : "58827053-14ab-441d-8699-7108de68e687" , "name" : "SustainCERT" , "description" : "SustainCERT is an organization..." , "signatoryRole" : "ValidationAndVerificationBody" , "vvbIdForAim" : "" , "signature" : { "type" : "JWS" , "jws" : "789908sa32980231ll132fsd89asdfa123" , "hasJws" : true , "vc" : null , "signatureCase" : "Jws" } }, { "id" : "9431e6b8-9601-460b-b0e3-c3da409da3de" , "name" : "Eco-Earth Forest Growth" , "description" : "Eco-Earth Forest Growth is a forest management firm that..." , "signatoryRole" : "ProjectOwner" , "vvbIdForAim" : "" , "signature" : { "type" : "JWS" , "jws" : "1234567890asdfasdfas" , "hasJws" : true , "vc" : null , "signatureCase" : "Jws" } } ], "qualityStandard" : { "name" : "Puro - Carbonated Building Materials" , "description" : "Manufactured concrete-like building elements from steel slag (waste material from steel industry) instead of traditional cement. Basically, it’s CO2 negative concrete that removes more CO2 than its production emits." , "standard" : "Puro" , "methodologyAndTools" : [ "VcsVm0026" , "VcsVm0009" ], "version" : "1.0" , "coBenefits" : [ { "unSdg" : "ClimateAction" , "description" : "Climate Action, by removing carbon from the atmosphere." }, { "unSdg" : "LifeOnLand" , "description" : "Improving Life on Land, the use of the projects land to provide..." } ], "standardLink" : { "id" : "be062a19-133c-4626-aa2d-bcca2c510ab2" , "uri" : "https://puro.earth/carbon-removal-methods/carbonated-building-materials" , "description" : "Link to the Carbonated Building Materials" , "hashProof" : "1234567890abc12fasdfw43asdfasdf342" , "hashAlgorithm" : "Sha256" } }, "mrvRequirements" : { "measurementSpecification" : "Iso14064" , "specificationLink" : { "id" : "efc93244-030d-48b8-95a5-9204c45dd679" , "uri" : "https://www.iso.org/standard/70964.pdf" , "description" : "Link to the ISO 14064-3:2018 standard" , "hashProof" : "GX1234567890abc12fasdfw43asdfasdf342" , "hashAlgorithm" : "Sha256" }, "precision" : { "low" : 0 , "medium" : 0 , "high" : 0 }, "claimPeriod" : "Annual" , "extensionSetId" : "" , "extensionSet" : { "id" : "0fd135bc-04fa-4fa0-80cd-6e1aef12967b" , "name" : "" , "version" : "" , "description" : "Extension Set for VerificationProcessAgreement" , "documentation" : "" , "modules" : [ { "id" : "" , "name" : "VM0007 REDD+ Methodology Framework Extension" , "version" : "1.6" , "description" : "Methodology specific data attributes being tracked." , "documentation" : "" , "entityTemplates" : [ { "id" : "" , "name" : "Δ𝐶𝑊𝑃𝑏𝑖𝑜𝑚𝑎𝑠𝑠,𝑡" , "version" : "" , "description" : "Change in carbon stock in biomass carbon pools in the project scenario in year 𝑡 (t C y-1)" , "documentation" : "" , "extensionContext" : "DataPackageManifest" , "dataSchemaOrType" : "" , "dataExample" : "" } ], "messagePairs" : [], "formulaTemplates" : [], "variableTemplates" : [] } ], "entityTemplates" : [ { "id" : "44eca494-0934-4019-9331-d6e0825511bc" , "name" : "Claim Source Make and Model" , "version" : "" , "description" : "An example entity extension for a Claim Source" , "documentation" : "" , "extensionContext" : "ClaimSource" , "dataSchemaOrType" : "MeterDeviceMetadata" , "dataExample" : "'{'make': 'Samsung', 'model': 'FuSIGon G20' }'" } ], "messagePairs" : [ { "id" : "7d3f1481-4c1a-453d-94d1-1835188bb788" , "name" : "Calibrate Sensor" , "version" : "" , "description" : "Sample request response message pair" , "documentation" : "" , "extensionContext" : "Checkpoint" , "requestDefinition" : { "protoData" : null , "dataType" : "CalibrationRequest" , "value" : "'{'deviceId': 'a21-3223a', 'sn': '324123d-23424a1FFs1' }'" }, "responseDefinition" : { "protoData" : null , "dataType" : "CalibrationResponse" , "value" : "'{'deviceId': 'a21-3223a', 'sn': '324123d-23424a1FFs1', 'status': 'OK' }'" } } ], "formulaTemplates" : [ { "id" : "195e9117-a4e3-4349-8277-3497fd7d1154" , "name" : "Carbon Removal Formula" , "version" : "1.0.0" , "description" : "An example formula template for a Activity Impact Module" , "documentation" : "" , "dataSchemaOrType" : "CDRFormula" , "dataExample" : "CDR = Cap - Emissions * 0.1" , "variableTemplates" : [] } ], "variableTemplates" : [ { "id" : "45750126-1187-4e53-b41e-2eea03921547" , "name" : "Carbon Removal Variable" , "version" : "1.0.0" , "description" : "An example variable template for a Activity Impact Module" , "documentation" : "" , "dataSchemaOrType" : "CDRVariable" , "dataExample" : "CAP = Co2Capi,m" } ] } }, "agreementDate" : { "dateTime" : "" , "dateString" : "2/7/2025" }, "estimatedAnnualCredits" : "15,000" , "auditSchedule" : "Quinquennial" , "audits" : { "auditDate" : { "dateTime" : "" , "dateString" : "2/7/2025" }, "auditReports" : [ { "id" : "424613f8-bec9-4ca0-b5ec-b6f5d4b02d8f" , "uri" : "https://sustaincert.com/audit/e0d357b0-a75a-40fa-838b-5a5d444d2216" , "description" : "Audit report for verification process agreement e0d357b0-a75a-40fa-838b-5a5d444d2216" , "hashProof" : "0xzxWW-1234567890abcdefasdf" , "hashAlgorithm" : "Sha256" } ] }, "extensions" : [], "activityImpactModule" : null , "processedClaims" : [] }
5.8. Example Carbon Reduction or Removal Unit
{ "id" : "bef817d3-e178-402c-93bd-b20aab360e71" , "quantity" : "1.41" , "unit" : "TonneCo2E" , "ownerId" : "396a2870-851e-4c93-bd97-e330c0d2d3c1" , "listingAgentId" : "ac497050-23eb-4fac-b9e5-1ec9039b2d34" , "coreCarbonPrinciples" : { "assetId" : "snei219123-998sdfl-sad21-1-1.41" , "issuanceDate" : { "dateTime" : "" , "dateString" : "9/16/2024" }, "vintage" : "2018" , "generationType" : "Generated" , "verificationStandard" : "Puro" , "mitigationActivity" : { "category" : "Removal" , "method" : "Technological" }, "durability" : { "storageType" : "Biological" , "years" : 100 , "degradable" : { "percentage" : 10 , "factor" : 5 , "degradationType" : "Linear" }, "reversalMitigation" : { "reversalRisk" : "Material" , "insuranceType" : "BufferPool" , "insurancePolicyOwner" : "AccountableImpactOrg" , "insurancePolicyLink" : { "id" : "a08f99d1-99cc-4ff7-804d-d7fab7be0c90" , "uri" : "https://puro.earth/mitigations/a08f99d1-99cc-4ff7-804d-d7fab7be0c90.pdf" , "description" : "Link to the Reversal Mitigation Insurance Policy" , "hashProof" : "98uuisdE12A0213az2133ASdfsdf" , "hashAlgorithm" : "Sha256" } } }, "replacement" : null , "parisAgreementCompliance" : { "ca" : "ParisAgreementCompliant" , "letterOfApproval" : { "id" : "492be7eb-0d9a-499b-9a95-e8ed8d7e4c9f" , "uri" : "https://span.com/492be7eb-0d9a-499b-9a95-e8ed8d7e4c9f.pdf" , "description" : "Letter of Approval for Paris Agreement Compliance" , "hashProof" : "uuisdE12A0213az2133ASdfsdf" , "hashAlgorithm" : "Sha256" }, "itmoId" : "CA12-EU01-SP-1234500-2023-NIO" }, "quantifiedSdgImpacts" : [ { "unSdg" : "AffordableAndCleanEnergy" , "description" : "This project provides affordable clean energy to the surrounding community." } ], "adaptationCoBenefits" : [ { "unSdg" : "IndustryInnovationAndInfrastructure" , "description" : "The project is contributing to the expansion of renewable infrastructure." } ] }, "climateLabels" : [ { "id" : "92252fdf-5c2d-4dc9-9a39-af6362a6b122" , "name" : "Climate Neutral" , "description" : "Climate Neutral - environmentally friendly, climate positive" } ], "status" : "Active" , "referencedCredits" : [ { "referencedCreditId" : "16e029bb-8258-4721-b3ab-3d4493425151" , "registryLink" : { "id" : "" , "uri" : "" , "description" : "" , "hashProof" : "" , "hashAlgorithm" : "Sha256" }, "metadata" : "serialized json data" } ], "appliedToId" : "" , "processedClaimId" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "issuerId" : "2ab239a3-63e6-42dc-a0aa-8ca26dd81cde" , "processedClaim" : null }
5.9. Example Renewable Energy Credit
{ "id" : "16e029bb-8258-4721-b3ab-3d4493425151" , "recType" : "IRec" , "validJurisdiction" : "US" , "quantity" : "1.3121" , "unit" : "MwH" , "ownerId" : "396a2870-851e-4c93-bd97-e330c0d2d3c1" , "listingAgentId" : "ac497050-23eb-4fac-b9e5-1ec9039b2d34" , "climateLabels" : [ { "id" : "91c7a40a-d64a-44d3-b3e8-cb0e7c21c45c" , "name" : "Climate Neutral" , "description" : "Climate Neutral - environmentally friendly, climate positive" } ], "status" : "Active" , "referencedRecs" : [ { "referencedCreditId" : "17e029bb8258A4721B3ab4493425151" , "registryLink" : { "id" : "" , "uri" : "" , "description" : "" , "hashProof" : "" , "hashAlgorithm" : "Sha256" }, "metadata" : "serialized json data" } ], "appliedToId" : "" , "processedClaimId" : "45a85f6e-472d-46cf-87b6-73d3a34b4020" , "issuerId" : "c2862fe4-c97d-4494-afd0-b6c8d7efccd9" , "processedClaim" : null }
5.10. Example Renewable Energy Credit Full Lineage
{ "id" : "16e029bb-8258-4721-b3ab-3d4493425151" , "recType" : "IRec" , "validJurisdiction" : "US" , "quantity" : "1.3121" , "unit" : "MwH" , "ownerId" : "396a2870-851e-4c93-bd97-e330c0d2d3c1" , "listingAgentId" : "ac497050-23eb-4fac-b9e5-1ec9039b2d34" , "climateLabels" : [ { "id" : "91c7a40a-d64a-44d3-b3e8-cb0e7c21c45c" , "name" : "Climate Neutral" , "description" : "Climate Neutral - environmentally friendly, climate positive" } ], "status" : "Active" , "referencedRecs" : [ { "referencedCreditId" : "17e029bb8258A4721B3ab4493425151" , "registryLink" : { "id" : "" , "uri" : "" , "description" : "" , "hashProof" : "" , "hashAlgorithm" : "Sha256" }, "metadata" : "serialized json data" } ], "appliedToId" : "" , "processedClaimId" : "45a85f6e-472d-46cf-87b6-73d3a34b4020" , "issuerId" : "c2862fe4-c97d-4494-afd0-b6c8d7efccd9" , "processedClaim" : { "id" : "45a85f6e-472d-46cf-87b6-73d3a34b4020" , "vpaId" : "e0d357b0-a75a-40fa-838b-5a5d444d2216" , "impactClaimId" : "a5cd2fbe-0b18-4cb7-99e8-624dc96acafa" , "creditId" : "16e029bb-8258-4721-b3ab-3d4493425151" , "unit" : "MwH" , "quantity" : "1.41" , "coBenefits" : [ { "unSdg" : "CleanWaterAndSanitation" , "description" : "The project was found to significantly contribute towards the communities clean water program." }, { "unSdg" : "ReducedInequalities" , "description" : "By training and employing locals, this project is reducing inequalities in the country." } ], "mrvExtensions" : [ { "id" : "" , "name" : "Carbon Sequestration Through Accelerated Carbonation of Concrete Aggregate" , "version" : "1.0" , "description" : "Methodology for quantifying GHG emission reductions from carbon sequestration through accelerated carbonation of concrete aggregate" , "documentation" : "EXAMPLE: https://verra.org/methodology/vm0026-sustainable-grassland-management-framework-extension/" , "mrvExtensionContext" : "ProcessedClaim" , "properties" : [ { "key" : "mCO2,i,d" , "value" : "Mass of CO2 which was fed to the reactor system in within the monitoring period y" }, { "key" : "CO2" , "value" : "2" }, { "key" : "y" , "value" : "2" } ], "dataSchemaOrType" : "" , "data" : null , "serializedData" : null } ], "checkpointResults" : [ { "id" : "5eda007d-e136-4b21-8c27-9374447c0212" , "checkpointId" : "189bc8ee-b19c-4116-be65-e8ec1d0b7764" , "processedData" : [ { "manifest" : { "id" : "bd199e99-14e0-4440-af99-03b78096a24b" , "version" : "1" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "claimId" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "created" : { "date" : { "dateTime" : "08/02/2024 13:13:07" , "dateString" : "8/2/2024" }, "timeStamp" : { "seconds" : 1722604387 , "nanos" : 806759000 } }, "mrvExtensions" : [ { "id" : "" , "name" : "VM0007 REDD+ Methodology Framework Extension" , "version" : "1.6" , "description" : "Methodology specific data attributes being tracked." , "documentation" : "" , "mrvExtensionContext" : "DataPackageManifest" , "properties" : [ { "key" : "Δ𝐶𝑊𝑃𝑏𝑖𝑜𝑚𝑎𝑠𝑠,𝑡" , "value" : "Change in carbon stock in biomass carbon pools in the project scenario in year 𝑡 (t C y-1)" }, { "key" : "Δ𝐶𝑊𝑃𝑤𝑜𝑜𝑑𝑦,𝑡" , "value" : "Average annual change in carbon stock in woody biomass in the project scenario in the monitoring interval ending in year 𝑡 (t C y-1)" } ], "dataSchemaOrType" : "" , "data" : null , "serializedData" : null } ], "dataFiles" : [ { "name" : "Data from sensor" , "type" : "DataBinary" , "description" : "Primary source data from sensor." , "claimSourceId" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "claimSourceAttestation" : "digital_signature" , "mrvExtensions" : [ { "id" : "" , "name" : "Carbonated Concrete Device Sensor Evidence File" , "version" : "1.0" , "description" : "Sensor data values required for evidence data." , "documentation" : "EXAMPLE: https://puro.earth/removal-methods/carbonated-concrete/mrv-extension/concrete-device-sensor/sdp-file" , "mrvExtensionContext" : "DataFile" , "properties" : [ { "key" : "Starting Temperature Sensor Reading" , "value" : "31.2c" }, { "key" : "End Temperature Sensor Reading" , "value" : "50.7c" }, { "key" : "Dust Sensor Reading" , "value" : "1.0002" } ], "dataSchemaOrType" : "" , "data" : null , "serializedData" : null } ] } ] }, "verifiedLinkToDataPackage" : { "id" : "8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "uri" : "https://span.com/8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "description" : "Link to the Span Data Package" , "hashProof" : "asdflkdfs889fj3l437098asdfi" , "hashAlgorithm" : "Sha256" } } ], "dateRange" : { "startDate" : null , "endDate" : null }, "efBefore" : "" , "efAfter" : "" , "mrvExtensions" : [ { "id" : "" , "name" : "" , "version" : "" , "description" : "" , "documentation" : "" , "mrvExtensionContext" : "UnknownContext" , "properties" : [], "dataSchemaOrType" : "" , "data" : null , "serializedData" : null } ] } ], "issuanceRequest" : null , "verificationProcessAgreement" : { "id" : "e0d357b0-a75a-40fa-838b-5a5d444d2216" , "name" : "Verification Process Agreement for Concrete Plant 3341" , "description" : "Verification Process Agreement for Concrete Plant 3341, with issuer Puro and verifier SustainCERT" , "signatories" : [ { "id" : "60425f71-6d55-4875-b661-6bc1b1a4be8a" , "name" : "Puro.earth" , "description" : "Puro.earth is the world's leading platform for engineered carbon removal. Our mission is to mobilize the economy to reward carbon net negative emissions." , "signatoryRole" : "IssuingRegistry" , "signature" : { "type" : "JWS" , "jws" : "epx324jkasdf883429f2lMMm8asxdz9ZW0" , "hasJws" : true , "vc" : null , "signatureCase" : "Jws" } }, { "id" : "58827053-14ab-441d-8699-7108de68e687" , "name" : "SustainCERT" , "description" : "SustainCERT is an organization..." , "signatoryRole" : "ValidationAndVerificationBody" , "signature" : { "type" : "JWS" , "jws" : "789908sa32980231ll132fsd89asdfa123" , "hasJws" : true , "vc" : null , "signatureCase" : "Jws" } }, { "id" : "9431e6b8-9601-460b-b0e3-c3da409da3de" , "name" : "Eco-Earth Forest Growth" , "description" : "Eco-Earth Forest Growth is a forest management firm that..." , "signatoryRole" : "ProjectOwner" , "signature" : { "type" : "JWS" , "jws" : "1234567890asdfasdfas" , "hasJws" : true , "vc" : null , "signatureCase" : "Jws" } } ], "qualityStandard" : { "name" : "Puro - Carbonated Building Materials" , "description" : "Manufactured concrete-like building elements from steel slag (waste material from steel industry) instead of traditional cement. Basically, it’s CO2 negative concrete that removes more CO2 than its production emits." , "standard" : "Puro" , "methodologyAndTools" : [ "VcsVm0026" , "VcsVm0009" ], "version" : "1.0" , "coBenefits" : [ { "unSdg" : "ClimateAction" , "description" : "Climate Action, by removing carbon from the atmosphere." }, { "unSdg" : "LifeOnLand" , "description" : "Improving Life on Land, the use of the projects land to provide..." } ], "standardLink" : { "id" : "be062a19-133c-4626-aa2d-bcca2c510ab2" , "uri" : "https://puro.earth/carbon-removal-methods/carbonated-building-materials" , "description" : "Link to the Carbonated Building Materials" , "hashProof" : "1234567890abc12fasdfw43asdfasdf342" , "hashAlgorithm" : "Sha256" } }, "mrvRequirements" : { "measurementSpecification" : "Iso14064" , "specificationLink" : { "id" : "efc93244-030d-48b8-95a5-9204c45dd679" , "uri" : "https://www.iso.org/standard/70964.pdf" , "description" : "Link to the ISO 14064-3:2018 standard" , "hashProof" : "GX1234567890abc12fasdfw43asdfasdf342" , "hashAlgorithm" : "Sha256" }, "precision" : { "low" : 0 , "medium" : 0 , "high" : 0 }, "claimPeriod" : "Annual" , "mrvExtensionSet" : { "id" : "" , "name" : "" , "version" : "" , "description" : "" , "documentation" : "" , "modules" : [ { "id" : "" , "name" : "VM0007 REDD+ Methodology Framework Extension" , "version" : "1.6" , "description" : "Methodology specific data attributes being tracked." , "documentation" : "" , "extensions" : [ { "id" : "" , "name" : "Δ𝐶𝑊𝑃𝑏𝑖𝑜𝑚𝑎𝑠𝑠,𝑡" , "version" : "" , "description" : "Change in carbon stock in biomass carbon pools in the project scenario in year 𝑡 (t C y-1)" , "documentation" : "" , "mrvExtensionContext" : "DataPackageManifest" , "properties" : [], "dataSchemaOrType" : "" , "data" : null , "serializedData" : null } ], "messages" : [] } ], "extensions" : [], "messages" : [] } }, "agreementDate" : { "dateTime" : "" , "dateString" : "8/2/2024" }, "estimatedAnnualCredits" : "15,000" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "auditSchedule" : "Quinquennial" , "audits" : { "auditDate" : { "dateTime" : "" , "dateString" : "8/2/2024" }, "auditReports" : [ { "id" : "424613f8-bec9-4ca0-b5ec-b6f5d4b02d8f" , "uri" : "https://sustaincert.com/audit/e0d357b0-a75a-40fa-838b-5a5d444d2216" , "description" : "Audit report for verification process agreement e0d357b0-a75a-40fa-838b-5a5d444d2216" , "hashProof" : "0xzxWW-1234567890abcdefasdf" , "hashAlgorithm" : "Sha256" } ] }, "mrvExtensions" : [], "activityImpactModule" : null , "processedClaims" : [] }, "impactClaim" : { "id" : "a5cd2fbe-0b18-4cb7-99e8-624dc96acafa" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "processedClaimId" : "" , "startDate" : "2021-01-01" , "endDate" : "2021-12-31" , "unit" : "TonneCo2E" , "quantity" : "1.41" , "coBenefits" : [ { "unSdg" : "ClimateAction" , "description" : "Climate Action for this project includes: carbon removal, reduction and carbon avoidance." }, { "unSdg" : "CleanWaterAndSanitation" , "description" : "Clean Water and Sanitation for this project includes: water quality improvement, water availability and water access." } ], "checkpoints" : [ { "id" : "189bc8ee-b19c-4116-be65-e8ec1d0b7764" , "claimId" : "a5cd2fbe-0b18-4cb7-99e8-624dc96acafa" , "claimSourceIds" : [ "147e7105-2333-4f5f-847c-6c984e5220dd" ], "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "efBefore" : "0" , "efAfter" : "1.41" , "checkpointDateRange" : { "startDate" : { "date" : { "dateTime" : "" , "dateString" : "8/2/2024" }, "timeStamp" : { "seconds" : 1722604387 , "nanos" : 862955000 } }, "endDate" : { "date" : { "dateTime" : "" , "dateString" : "8/2/2024" }, "timeStamp" : { "seconds" : 1722604387 , "nanos" : 862997000 } } }, "mrvExtensions" : [], "dataPackages" : [ { "manifest" : { "id" : "bd199e99-14e0-4440-af99-03b78096a24b" , "version" : "1" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "claimId" : "2d17d155-ca8b-4208-8cc0-6dc3a85e2c34" , "projectDeveloperId" : "9c6e926f-9603-45de-9933-8af01ac45f31" , "created" : { "date" : { "dateTime" : "08/02/2024 13:13:07" , "dateString" : "8/2/2024" }, "timeStamp" : { "seconds" : 1722604387 , "nanos" : 863167000 } }, "mrvExtensions" : [ { "id" : "" , "name" : "VM0007 REDD+ Methodology Framework Extension" , "version" : "1.6" , "description" : "Methodology specific data attributes being tracked." , "documentation" : "" , "mrvExtensionContext" : "DataPackageManifest" , "properties" : [ { "key" : "Δ𝐶𝑊𝑃𝑏𝑖𝑜𝑚𝑎𝑠𝑠,𝑡" , "value" : "Change in carbon stock in biomass carbon pools in the project scenario in year 𝑡 (t C y-1)" }, { "key" : "Δ𝐶𝑊𝑃𝑤𝑜𝑜𝑑𝑦,𝑡" , "value" : "Average annual change in carbon stock in woody biomass in the project scenario in the monitoring interval ending in year 𝑡 (t C y-1)" } ], "dataSchemaOrType" : "" , "data" : null , "serializedData" : null } ], "dataFiles" : [ { "name" : "Data from sensor" , "type" : "DataBinary" , "description" : "Primary source data from sensor." , "claimSourceId" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "claimSourceAttestation" : "digital_signature" , "mrvExtensions" : [ { "id" : "" , "name" : "Carbonated Concrete Device Sensor Evidence File" , "version" : "1.0" , "description" : "Sensor data values required for evidence data." , "documentation" : "EXAMPLE: https://puro.earth/removal-methods/carbonated-concrete/mrv-extension/concrete-device-sensor/sdp-file" , "mrvExtensionContext" : "DataFile" , "properties" : [ { "key" : "Starting Temperature Sensor Reading" , "value" : "31.2c" }, { "key" : "End Temperature Sensor Reading" , "value" : "50.7c" }, { "key" : "Dust Sensor Reading" , "value" : "1.0002" } ], "dataSchemaOrType" : "" , "data" : null , "serializedData" : null } ] } ] }, "verifiedLinkToDataPackage" : { "id" : "8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "uri" : "https://span.com/8403c1d7-af52-4f9b-aa5d-ea07e6e80d05" , "description" : "Link to the Span Data Package" , "hashProof" : "asdflkdfs889fj3l437098asdfi" , "hashAlgorithm" : "Sha256" } } ] } ], "mrvExtensions" : [ { "id" : "" , "name" : "Carbon Sequestration Through Accelerated Carbonation of Concrete Aggregate" , "version" : "1.0" , "description" : "Methodology for quantifying GHG emission reductions from carbon sequestration through accelerated carbonation of concrete aggregate" , "documentation" : "EXAMPLE: https://verra.org/methodology/vm0026-sustainable-grassland-management-framework-extension/" , "mrvExtensionContext" : "ImpactClaim" , "properties" : [ { "key" : "MGy,i,d" , "value" : "Mass of the concrete aggregate type i of a grain size distribution d in monitoring period y." }, { "key" : "i" , "value" : "limestone" }, { "key" : "d" , "value" : "0.5-1.0 mm" }, { "key" : "y" , "value" : "1" } ], "dataSchemaOrType" : "" , "data" : null , "serializedData" : null } ], "activityImpactModule" : { "id" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "aioId" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "isGrouped" : false , "name" : "Forest Plot 3341" , "classificationCategory" : "CarbonRemoval" , "classificationMethod" : "Natural" , "benefitCategory" : "ClimateAction" , "projectScope" : "CarbonCaptureAndStorage" , "projectType" : "CarbonCaptureAndEnhancedOilRecovery" , "projectScale" : "Medium" , "country" : "BR" , "region" : "SouthAmerica" , "arbId" : "" , "geographicLocation" : { "longitude" : "41.40338" , "latitude" : "2.17403" , "geoJsonOrKml" : "{'type':'FeatureCollection','name':'1071','crs__type':'name','crs__properties__name':'urn:ogc:def:crs:OGC:1.3:CRS84','features__0__type':'Feature','features__0__properties__Name':'1071','features__0__properties__description':{},'features__0__properties__timestamp':{},'features__0__properties__begin':{},'features__0__properties__end':{},'features__0__properties__altitudeMode':{},'features__0__properties__tessellate':1,'features__0__properties__extrude':0,'features__0__properties__visibility':-1,'features__0__properties__drawOrder':{},'features__0__properties__icon':{},'features__0__geometry__type':'Polygon','features__0__geometry__coordinates__0__0__0':-17.44979726383285,'features__0__geometry__coordinates__0__0__1':14.6208620053651,'features__0__geometry__coordinates__0__0__2':0,'features__0__geometry__coordinates__0__1__0':-17.41480356186299,'features__0__geometry__coordinates__0__1__1':14.63868215949493,'features__0__geometry__coordinates__0__1__2':0,'features__0__geometry__coordinates__0__2__0':-17.39295299318011,'features__0__geometry__coordinates__0__2__1':14.67781171481277,'features__0__geometry__coordinates__0__2__2':0,'features__0__geometry__coordinates__0__3__0':-17.29563788678882,'features__0__geometry__coordinates__0__3__1':14.67680110195058,'features__0__geometry__coordinates__0__3__2':0,'features__0__geometry__coordinates__0__4__0':-17.17383924249105,'features__0__geometry__coordinates__0__4__1':14.59081467498821,'features__0__geometry__coordinates__0__4__2':0,'features__0__geometry__coordinates__0__5__0':-17.09360187476775,'features__0__geometry__coordinates__0__5__1':14.51585846117694,'features__0__geometry__coordinates__0__5__2':0,'features__0__geometry__coordinates__0__6__0':-17.08630514448674,'features__0__geometry__coordinates__0__6__1':14.47029974369886,'features__0__geometry__coordinates__0__6__2':0,'features__0__geometry__coordinates__0__7__0':-16.9635166358808,'features__0__geometry__coordinates__0__7__1':14.3497385970107,'features__0__geometry__coordinates__0__7__2':0,'features__0__geometry__coordinates__0__8__0':-16.94043127233231,'features__0__geometry__coordinates__0__8__1':14.28282669386156,'features__0__geometry__coordinates__0__8__2':0,'features__0__geometry__coordinates__0__9__0':-16.8524904710476,'features__0__geometry__coordinates__0__9__1':14.13282117800751,'features__0__geometry__coordinates__0__9__2':0,'features__0__geometry__coordinates__0__10__0':-16.76401571438566,'features__0__geometry__coordinates__0__10__1':13.94911098722119,'features__0__geometry__coordinates__0__10__2':0,'features__0__geometry__coordinates__0__11__0':-16.60258876944933,'features__0__geometry__coordinates__0__11__1':13.9482543830415,'features__0__geometry__coordinates__0__11__2':0,'features__0__geometry__coordinates__0__12__0':-16.35717663748357,'features__0__geometry__coordinates__0__12__1':13.94597928824933,'features__0__geometry__coordinates__0__12__2':0,'features__0__geometry__coordinates__0__13__0':-16.15567817482042,'features__0__geometry__coordinates__0__13__1':13.9444453347921,'features__0__geometry__coordinates__0__13__2':0,'features__0__geometry__coordinates__0__14__0':-15.84076599032189,'features__0__geometry__coordinates__0__14__1':13.96344759515951,'features__0__geometry__coordinates__0__14__2':0,'features__0__geometry__coordinates__0__15__0':-15.61023581159491,'features__0__geometry__coordinates__0__15__1':13.98459708145865,'features__0__geometry__coordinates__0__15__2':0,'features__0__geometry__coordinates__0__16__0':-15.51441146374702,'features__0__geometry__coordinates__0__16__1':14.03040839455136,'features__0__geometry__coordinates__0__16__2':0,'features__0__geometry__coordinates__0__17__0':-15.27072272145035,'features__0__geometry__coordinates__0__17__1':14.02255567674107,'features__0__geometry__coordinates__0__17__2':0,'features__0__geometry__coordinates__0__18__0':-15.26395397063758,'features__0__geometry__coordinates__0__18__1':14.13443659420945,'features__0__geometry__coordinates__0__18__2':0,'features__0__geometry__coordinates__0__19__0':-15.24023775131042,'features__0__geometry__coordinates__0__19__1':14.32904559912449,'features__0__geometry__coordinates__0__19__2':0,'features__0__geometry__coordinates__0__20__0':-15.21541086886319,'features__0__geometry__coordinates__0__20__1':14.58967912435987,'features__0__geometry__coordinates__0__20__2':0,'features__0__geometry__coordinates__0__21__0':-15.15515131233524,'features__0__geometry__coordinates__0__21__1':15.42311620512102,'features__0__geometry__coordinates__0__21__2':0,'features__0__geometry__coordinates__0__22__0':-15.45264670678973,'features__0__geometry__coordinates__0__22__1':15.42390739827185,'features__0__geometry__coordinates__0__22__2':0,'features__0__geometry__coordinates__0__23__0':-15.94444309310633,'features__0__geometry__coordinates__0__23__1':15.44371941768868,'features__0__geometry__coordinates__0__23__2':0,'features__0__geometry__coordinates__0__24__0':-16.3807688129775,'features__0__geometry__coordinates__0__24__1':15.45532235769231,'features__0__geometry__coordinates__0__24__2':0,'features__0__geometry__coordinates__0__25__0':-16.6574348263018,'features__0__geometry__coordinates__0__25__1':15.45077945422687,'features__0__geometry__coordinates__0__25__2':0,'features__0__geometry__coordinates__0__26__0':-16.75007765137733,'features__0__geometry__coordinates__0__26__1':15.41963731349297,'features__0__geometry__coordinates__0__26__2':0,'features__0__geometry__coordinates__0__27__0':-16.84991521854622,'features__0__geometry__coordinates__0__27__1':15.25813719688476,'features__0__geometry__coordinates__0__27__2':0,'features__0__geometry__coordinates__0__28__0':-16.94933674042656,'features__0__geometry__coordinates__0__28__1':15.12921501453258,'features__0__geometry__coordinates__0__28__2':0,'features__0__geometry__coordinates__0__29__0':-17.03626620967582,'features__0__geometry__coordinates__0__29__1':15.02938820681259,'features__0__geometry__coordinates__0__29__2':0,'features__0__geometry__coordinates__0__30__0':-17.10950928370794,'features__0__geometry__coordinates__0__30__1':14.94591580526796,'features__0__geometry__coordinates__0__30__2':0,'features__0__geometry__coordinates__0__31__0':-17.13088115585902,'features__0__geometry__coordinates__0__31__1':14.91578363643908,'features__0__geometry__coordinates__0__31__2':0,'features__0__geometry__coordinates__0__32__0':-17.27833470905615,'features__0__geometry__coordinates__0__32__1':14.84727548094827,'features__0__geometry__coordinates__0__32__2':0,'features__0__geometry__coordinates__0__33__0':-17.29778756226728,'features__0__geometry__coordinates__0__33__1':14.83767502076119,'features__0__geometry__coordinates__0__33__2':0,'features__0__geometry__coordinates__0__34__0':-17.30879441185855,'features__0__geometry__coordinates__0__34__1':14.8340737594179,'features__0__geometry__coordinates__0__34__2':0,'features__0__geometry__coordinates__0__35__0':-17.44096028793862,'features__0__geometry__coordinates__0__35__1':14.7932587077975,'features__0__geometry__coordinates__0__35__2':0,'features__0__geometry__coordinates__0__36__0':-17.53662598222956,'features__0__geometry__coordinates__0__36__1':14.76802543590545,'features__0__geometry__coordinates__0__36__2':0,'features__0__geometry__coordinates__0__37__0':-17.44979726383285,'features__0__geometry__coordinates__0__37__1':14.6208620053651,'features__0__geometry__coordinates__0__37__2':0}" , "geographicLocationFile" : null }, "firstYearIssuance" : "2017" , "registryProjectId" : "vef-1321-99da-1" , "developers" : [ "9c6e926f-9603-45de-9933-8af01ac45f31" ], "sponsors" : [ "sponsor" ], "claimSources" : [ { "id" : "147e7105-2333-4f5f-847c-6c984e5220dd" , "aimId" : "d5a9cf0c-4102-4c9d-941a-408001b12147" , "name" : "Soil Sensor Device" , "description" : "Located in forest area e2" , "location" : { "longitude" : "41.40338" , "latitude" : "2.17403" , "geoJsonOrKml" : "" , "geographicLocationFile" : null }, "sourceType" : "SensorDevice" , "unitOfMeasure" : "TonneCo2E" , "sourceIdentifier" : "key:efc0b0b0-0b0b-0b0b-0b0b-0b0b0b0b0b0b" , "mrvExtensions" : [ { "id" : "" , "name" : "" , "version" : "" , "description" : "" , "documentation" : "EXAMPLE: https://puro.earth/removal-methods/carbonated-concrete/mrv-extension/concrete-device-sensor/" , "mrvExtensionContext" : "ClaimSource" , "properties" : [], "dataSchemaOrType" : "https://puro.earth/schemas/mrv-extension/v1.0/mbp-claim-source-mrv-extension.json" , "data" : null , "serializedData" : { "type" : "" , "value" : "{data: Device ID, value: 1234567890, data: Calibration Offset, value: .0028, data: Calibration Slope, value: 1.0002}" } } ] } ], "impactClaims" : [ { "id" : "" , "aimId" : "" , "processedClaimId" : "" , "startDate" : "" , "endDate" : "" , "unit" : "TonneCo2E" , "quantity" : "" , "coBenefits" : [], "checkpoints" : [], "mrvExtensions" : [], "activityImpactModule" : null } ], "mrvExtensions" : [ { "id" : "" , "name" : "" , "version" : "" , "description" : "" , "documentation" : "EXAMPLE: https:/puro.earth/mrv-extensions/mbp-mrv-extension/" , "mrvExtensionContext" : "AccountableImpactOrganization" , "properties" : [], "dataSchemaOrType" : "https://puro.earth/schemas/mrv-extension/v1.0/mbp-mrv-extension.json" , "data" : null , "serializedData" : { "type" : "" , "value" : "{data: Baseline Scenario, value: Most plausible baseline scenario, data: Barrier analysis, value: Barrier analysis for alternative land use, data: Alternative land use: Cattle ranching, value: Barrier analysis found that cattle ranching was not a viable alternative land use because of the low productivity of the land and the high cost of fencing.}" } } ], "validations" : [ { "requestDate" : "2021-04-01" , "validationDate" : "8/2/2024" , "validatingPartyId" : "8226ece8-27b8-46f7-b21f-f531705c11cb" , "validationMethod" : "ISO 14064-3:2018" , "validationExpirationDate" : "8/2/2024" , "validationSteps" : [ { "validationStepName" : "Project Plan" , "validationStepDescription" : "Detailed project plan for the management of forest carbon sequestration" , "validationStepStatus" : "Completed" , "validationStepDocumentLink" : { "id" : "456bf8d1-f090-47b1-b7c0-b539441e557e" , "uri" : "https://sustaincert.com/forestcarbonsequestration/projectplan.pdf" , "description" : "Project Plan" , "hashProof" : "0x32wasfd1234567890abcdef" , "hashAlgorithm" : "Sha256" } } ] } ], "attestations" : [], "accountableImpactOrganization" : { "id" : "8ce532c6-c344-4eee-90bb-13a8a19c5910" , "name" : "Eco-Earth Forest Growth" , "description" : "The Eco-Earth Forest Growth organization is a reforestation project that aims to restore degraded land in the Amazon rainforest." , "addresses" : [ { "addressType" : "Legal" , "addressLines" : [ "123 ABC St." ], "city" : "Santarém" , "state" : "PA" , "zip" : "234123" , "country" : "Brazil" } ], "owners" : [ "owner" ], "informationLink" : { "id" : "7edef2c7-ff0e-41fc-b5e7-dda5aa65e850" , "uri" : "https://www.ecoearth.com/forest-growth.html" , "description" : "Project Website" , "hashProof" : "n/a" , "hashAlgorithm" : "Sha256" }, "mediaLinks" : [ { "id" : "987c9c95-09bf-4ad5-8331-50be9805a9af" , "uri" : "https://www.ecoearth.com/forest-growth-video.mp4" , "description" : "Project Video" , "hashProof" : "n/a" , "hashAlgorithm" : "Sha256" } ], "attestations" : [], "activityImpactModules" : [], "mrvExtensions" : [] } } }, "asset" : null } }
Appendix A: License
Attribution 4.0 International
=======================================================================Creative Commons Corporation ("Creative Commons") is not a law firm and does not provide legal services or legal advice. Distribution of Creative Commons public licenses does not create a lawyer-client or other relationship. Creative Commons makes its licenses and related information available on an "as-is" basis. Creative Commons gives no warranties regarding its licenses, any material licensed under their terms and conditions, or any related information. Creative Commons disclaims all liability for damages resulting from their use to the fullest extent possible.
Using Creative Commons Public Licenses
Creative Commons public licenses provide a standard set of terms and conditions that creators and other rights holders may use to share original works of authorship and other material subject to copyright and certain other rights specified in the public license below. The following considerations are for informational purposes only, are not exhaustive, and do not form part of our licenses.
Considerations for licensors: Our public licenses are intended for use by those authorized to give the public permission to use material in ways otherwise restricted by copyright and certain other rights. Our licenses are irrevocable. Licensors should read and understand the terms and conditions of the license they choose before applying it. Licensors should also secure all rights necessary before applying our licenses so that the public can reuse the material as expected. Licensors should clearly mark any material not subject to the license. This includes other CC- licensed material, or material used under an exception or limitation to copyright. More considerations for licensors: wiki.creativecommons.org/Considerations_for_licensors
Considerations for the public: By using one of our public licenses, a licensor grants the public permission to use the licensed material under specified terms and conditions. If the licensor’s permission is not necessary for any reason--for example, because of any applicable exception or limitation to copyright--then that use is not regulated by the license. Our licenses grant only permissions under copyright and certain other rights that a licensor has authority to grant. Use of the licensed material may still be restricted for other reasons, including because others have copyright or other rights in the material. A licensor may make special requests, such as asking that all changes be marked or described. Although not required by our licenses, you are encouraged to respect those requests where reasonable. More_considerations for the public: wiki.creativecommons.org/Considerations_for_licensees
=======================================================================Creative Commons Attribution 4.0 International Public License
By exercising the Licensed Rights (defined below), You accept and agree to be bound by the terms and conditions of this Creative Commons Attribution 4.0 International Public License ("Public License"). To the extent this Public License may be interpreted as a contract, You are granted the Licensed Rights in consideration of Your acceptance of these terms and conditions, and the Licensor grants You such rights in consideration of benefits the Licensor receives from making the Licensed Material available under these terms and conditions.
Section 1 -- Definitions.
a. Adapted Material means material subject to Copyright and Similar Rights that is derived from or based upon the Licensed Material and in which the Licensed Material is translated, altered, arranged, transformed, or otherwise modified in a manner requiring permission under the Copyright and Similar Rights held by the Licensor. For purposes of this Public License, where the Licensed Material is a musical work, performance, or sound recording, Adapted Material is always produced where the Licensed Material is synched in timed relation with a moving image.
b. Adapter’s License means the license You apply to Your Copyright and Similar Rights in Your contributions to Adapted Material in accordance with the terms and conditions of this Public License.
c. Copyright and Similar Rights means copyright and/or similar rights closely related to copyright including, without limitation, performance, broadcast, sound recording, and Sui Generis Database Rights, without regard to how the rights are labeled or categorized. For purposes of this Public License, the rights specified in Section 2(b)(1)-(2) are not Copyright and Similar Rights.
d. Effective Technological Measures means those measures that, in the absence of proper authority, may not be circumvented under laws fulfilling obligations under Article 11 of the WIPO Copyright Treaty adopted on December 20, 1996, and/or similar international agreements.
e. Exceptions and Limitations means fair use, fair dealing, and/or any other exception or limitation to Copyright and Similar Rights that applies to Your use of the Licensed Material.
f. Licensed Material means the artistic or literary work, database, or other material to which the Licensor applied this Public License.
g. Licensed Rights means the rights granted to You subject to the terms and conditions of this Public License, which are limited to all Copyright and Similar Rights that apply to Your use of the Licensed Material and that the Licensor has authority to license.
h. Licensor means the individual(s) or entity(ies) granting rights under this Public License.
i. Share means to provide material to the public by any means or process that requires permission under the Licensed Rights, such as reproduction, public display, public performance, distribution, dissemination, communication, or importation, and to make material available to the public including in ways that members of the public may access the material from a place and at a time individually chosen by them.
j. Sui Generis Database Rights means rights other than copyright resulting from Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, as amended and/or succeeded, as well as other essentially equivalent rights anywhere in the world.
k. You means the individual or entity exercising the Licensed Rights under this Public License. Your has a corresponding meaning.
Section 2 -- Scope.
a. License grant.
-
Subject to the terms and conditions of this Public License, the Licensor hereby grants You a worldwide, royalty-free, non-sublicensable, non-exclusive, irrevocable license to exercise the Licensed Rights in the Licensed Material to:
a. reproduce and Share the Licensed Material, in whole or in part; and
b. produce, reproduce, and Share Adapted Material.
-
Exceptions and Limitations. For the avoidance of doubt, where Exceptions and Limitations apply to Your use, this Public License does not apply, and You do not need to comply with its terms and conditions.
-
Term. The term of this Public License is specified in Section 6(a).
-
Media and formats; technical modifications allowed. The Licensor authorizes You to exercise the Licensed Rights in all media and formats whether now known or hereafter created, and to make technical modifications necessary to do so. The Licensor waives and/or agrees not to assert any right or authority to forbid You from making technical modifications necessary to exercise the Licensed Rights, including technical modifications necessary to circumvent Effective Technological Measures. For purposes of this Public License, simply making modifications authorized by this Section 2(a) (4) never produces Adapted Material.
-
Downstream recipients.
a. Offer from the Licensor -- Licensed Material. Every recipient of the Licensed Material automatically receives an offer from the Licensor to exercise the Licensed Rights under the terms and conditions of this Public License.
b. No downstream restrictions. You may not offer or impose any additional or different terms or conditions on, or apply any Effective Technological Measures to, the Licensed Material if doing so restricts exercise of the Licensed Rights by any recipient of the Licensed Material.
-
No endorsement. Nothing in this Public License constitutes or may be construed as permission to assert or imply that You are, or that Your use of the Licensed Material is, connected with, or sponsored, endorsed, or granted official status by, the Licensor or others designated to receive attribution as provided in Section 3(a)(1)(A)(i).
b. Other rights.
-
Moral rights, such as the right of integrity, are not licensed under this Public License, nor are publicity, privacy, and/or other similar personality rights; however, to the extent possible, the Licensor waives and/or agrees not to assert any such rights held by the Licensor to the limited extent necessary to allow You to exercise the Licensed Rights, but not otherwise.
-
Patent and trademark rights are not licensed under this Public License.
-
To the extent possible, the Licensor waives any right to collect royalties from You for the exercise of the Licensed Rights, whether directly or through a collecting society under any voluntary or waivable statutory or compulsory licensing scheme. In all other cases the Licensor expressly reserves any right to collect such royalties.
Section 3 -- License Conditions.
Your exercise of the Licensed Rights is expressly made subject to the following conditions.
a. Attribution.
-
If You Share the Licensed Material (including in modified form), You must:
a. retain the following if it is supplied by the Licensor with the Licensed Material:
i. identification of the creator(s) of the Licensed Material and any others designated to receive attribution, in any reasonable manner requested by the Licensor (including by pseudonym if designated);
ii. a copyright notice;
iii. a notice that refers to this Public License;
iv. a notice that refers to the disclaimer of warranties;
v. a URI or hyperlink to the Licensed Material to the extent reasonably practicable;
b. indicate if You modified the Licensed Material and retain an indication of any previous modifications; and
c. indicate the Licensed Material is licensed under this Public License, and include the text of, or the URI or hyperlink to, this Public License.
-
You may satisfy the conditions in Section 3(a)(1) in any reasonable manner based on the medium, means, and context in which You Share the Licensed Material. For example, it may be reasonable to satisfy the conditions by providing a URI or hyperlink to a resource that includes the required information.
-
If requested by the Licensor, You must remove any of the information required by Section 3(a)(1)(A) to the extent reasonably practicable.
-
If You Share Adapted Material You produce, the Adapter’s License You apply must not prevent recipients of the Adapted Material from complying with this Public License.
Section 4 -- Sui Generis Database Rights.
Where the Licensed Rights include Sui Generis Database Rights that apply to Your use of the Licensed Material:
a. for the avoidance of doubt, Section 2(a)(1) grants You the right to extract, reuse, reproduce, and Share all or a substantial portion of the contents of the database;
b. if You include all or a substantial portion of the database contents in a database in which You have Sui Generis Database Rights, then the database in which You have Sui Generis Database Rights (but not its individual contents) is Adapted Material; and
c. You must comply with the conditions in Section 3(a) if You Share all or a substantial portion of the contents of the database.
For the avoidance of doubt, this Section 4 supplements and does not replace Your obligations under this Public License where the Licensed Rights include other Copyright and Similar Rights.
Section 5 -- Disclaimer of Warranties and Limitation of Liability.
a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
c. The disclaimer of warranties and limitation of liability provided above shall be interpreted in a manner that, to the extent possible, most closely approximates an absolute disclaimer and waiver of all liability.
Section 6 -- Term and Termination.
a. This Public License applies for the term of the Copyright and Similar Rights licensed here. However, if You fail to comply with this Public License, then Your rights under this Public License terminate automatically.
b. Where Your right to use the Licensed Material has terminated under Section 6(a), it reinstates:
-
automatically as of the date the violation is cured, provided it is cured within 30 days of Your discovery of the violation; or
-
upon express reinstatement by the Licensor.
For the avoidance of doubt, this Section 6(b) does not affect any right the Licensor may have to seek remedies for Your violations of this Public License.
c. For the avoidance of doubt, the Licensor may also offer the Licensed Material under separate terms or conditions or stop distributing the Licensed Material at any time; however, doing so will not terminate this Public License.
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public License.
Section 7 -- Other Terms and Conditions.
a. The Licensor shall not be bound by any additional or different terms or conditions communicated by You unless expressly agreed.
b. Any arrangements, understandings, or agreements regarding the Licensed Material not stated herein are separate from and independent of the terms and conditions of this Public License.
Section 8 -- Interpretation.
a. For the avoidance of doubt, this Public License does not, and shall not be interpreted to, reduce, limit, restrict, or impose conditions on any use of the Licensed Material that could lawfully be made without permission under this Public License.
b. To the extent possible, if any provision of this Public License is deemed unenforceable, it shall be automatically reformed to the minimum extent necessary to make it enforceable. If the provision cannot be reformed, it shall be severed from this Public License without affecting the enforceability of the remaining terms and conditions.
c. No term or condition of this Public License will be waived and no failure to comply consented to unless expressly agreed to by the Licensor.
d. Nothing in this Public License constitutes or may be interpreted as a limitation upon, or waiver of, any privileges and immunities that apply to the Licensor or You, including from the legal processes of any jurisdiction or authority.
=======================================================================Creative Commons is not a party to its public licenses. Notwithstanding, Creative Commons may elect to apply one of its public licenses to material it publishes and in those instances will be considered the “Licensor.” The text of the Creative Commons public licenses is dedicated to the public domain under the CC0 Public Domain Dedication. Except for the limited purpose of indicating that material is shared under a Creative Commons public license or as otherwise permitted by the Creative Commons policies published at creativecommons.org/policies, Creative Commons does not authorize the use of the trademark "Creative Commons" or any other trademark or logo of Creative Commons without its prior written consent including, without limitation, in connection with any unauthorized modifications to any of its public licenses or any other arrangements, understandings, or agreements concerning use of licensed material. For the avoidance of doubt, this paragraph does not form part of the public licenses.
Creative Commons may be contacted at creativecommons.org.
Appendix B: Changelog
Here we will document changes in the specification as they are made.
Version 2.5.0-20250320 (March 20th, 2025)
-
Updated the
Abstract
and added aBackground
section to the specification. -
Changed
entityId
toappliesToId
where an extension may contain a reference to an entity if the implementation does not support foreign keys. -
Changed
appliedToId
toappliedToReportingPeriodId
for CRU and REC to better reflect the optional reporting period that the credit is applied to.
Version 2.5.0-20250218 (February18th, 2025)
-
Added
processedClaimId
to the Manifest is was missing from the previous version.
Version 2.5.0-20250204 (February 4th, 2025)
Refactoring the Extension Set into a dmrv
namespace to shorten the names and make them more readable. Additionally, reflecting an ExtensionSet is a collection of Extension Templates
that have Extension Instances
that are applied to entities. The ExtensionSet is a library of the extensions that can be created from templates by the participants in the MRV process.
-
Renamed
MrvExtensionSet
to ExtensionSet to better reflect the entity nature of the type. -
Renamed
MrvExtensionSetModule
to ExtensionSetModule to better reflect the entity nature of the type. -
Renamed
MrvExtensionMessage
to Message to better reflect the entity nature of the type. -
Renamed
MessagePair
to MessagePair to better reflect the entity nature of the type. -
Renamed
MrvEntityExtension
to EntityTemplate to better reflect the entity nature of the type. -
Renamed
MrvFormula
to FormulaTemplate to better reflect the entity nature of the type. -
Renamed
MrvVariable
to VariableTemplate to better reflect the entity nature of the type. -
Removed
Property
from the EntityTemplate type, no longer needed. -
Created Entity to support the extension of entities with custom data based on a EntityTemplate.
-
Created Formula to support the use of formulas in MRV calculations based on a FormulaTemplate.
-
Created Variable to support the use of variables in MRV calculations based on a VariableTemplate.
Version 2.5.0-20250129 (January 29th, 2025)
-
Renamed
instanceValue
tovalue
in VariableTemplate to better reflect the value of the variable as either an instance value or a sum of instances. -
Adding VariableTemplates to support a collection variables used in MRV formulas for EntityTemplate.
-
Added
vvbIdForAim
to Signatory to support the VVB ID for the AIM when there is an AIM group with multiple VVBs.
Version 2.5.0-20250127 (January 27th, 2025)
-
Added FormulaTemplate to support formulas used in MRV calculations. Added to ExtensionSet and ExtensionSetModule to support formulas in extensions.
-
Added VariableTemplate to support variables used in MRV formulas. Added to ExtensionSet and ExtensionSetModule to support variables in extensions.
-
Added FormulaTemplate to ActivityImpactModule to support formulas used in MRV calculations for the AIM.
-
Added VariableTemplate to ClaimSource to support variables used in MRV formulas for the Claim Source.
Version 2.5.0-20250120 (January 20th, 2025)
-
Added the
ReportingFrequency
property to the ClaimSource type to support the frequency that a claim source reports data. -
Added the
ReportingFrequency
enumeration to support the frequency that a claim source reports data.
Version 2.5.0-20250107 (January 7th, 2025)
-
Simplified the grouping of Activity Impact Modules and their claim pairs into groups.
-
Collapsed the Impact and Processed Claim Groups into a single ClaimGroup, since a claim pair is defined by default, a impact and processed claim will always be paired and can only be a member of one Claim Group.
-
A ClaimGroup must be a member of a ActivityImpactModuleGroup
Version 2.5.0-20241219 (December 19th, 2024)
-
Added AnyData for defining custom MRV messages
-
Updated MessagePair to use AnyData for
request
andresponse
message definitions
Version 2.5.0-20241216 (December 16th, 2024)
-
Added support for grouping Activity Impact Modules, Impact and Processed Claims to support credits issued by
Quality Standards
that require multiple modules that may be operated by different parties resulting in multiple Activities and Claims to be composed together for processing. CCS is a good example of this. -
Added ActivityImpactModuleGroup to support a collection of Activity Impact Modules that would contribute to composite claims across modules for issuance.
-
Added ImpactClaimGroup to support Impact Claims that are grouped together in order to combine claims from multiple projects (AIM), potentially from different organizations, into a single claim for processing.
-
Added ProcessedClaimGroup to support Processed Claims that are grouped together in order to combine claims from multiple projects (AIM), potentially from different organizations, into a single claim for issuance.
-
Removed the
correlatingProjectId
property to the ActivityImpactModule type, no longer needed due to ActivityImpactModuleGroup. -
Update the VerificationProcessAgreement, rename
mbpId
tombpOrMbpGroupId
and added aisMbpGroup
boolean to support single or multiple MBPs for a VPA.
Version 2.5.0-20241209 (December 9th, 2024)
-
Moved
Country
andRegion
fields from AccountableImpactOrganization to ActivityImpactModule
Version 2.5.0-20240916 (September 16th, 2024)
-
Renamed
MrvExtension
to EntityTemplate to better reflect the entity nature of the type. -
Added the
entityExtensions
array to the ExtensionSet type to support multiple extensions that can apply to the entire set, i.e. child modules.
Version 2.5.0-20240801 (August 2nd, 2024)
-
Changed the SpanDataPackage to DataPackage to simplify the meaning of the type.
-
Simplified
ExtensionContext
to remove theMRV_EXTENSION
from the names and unified naming of entities in the enumeration.
Version 2.5.0-20240716 (July 16th, 2024)
-
Added the
Closed
optional property to the Message type to indicate that the message is closed for use in messaging implementations.
Version 2.5.0-20240614 (June 14th, 2024)
-
Added the MessagePair type to support sets of request/response messages to be defined to facilitate the MRV Process between the parties.
-
Added the Message type to support custom messages, used in pairs, to be defined to facilitate the MRV Process between the parties.
-
Added the MessagePair array to both the ExtensionSet and ExtensionSetModule to include message definitions in extension sets.
Version 2.5.0-20240605 (June 5th, 2024)
-
Added the ExtensionSet type to support sets of extensions as a collection mapped to a quality standard.
-
Added the ExtensionSetModule type to support modules of extensions as a collection mapped to a quality standard.
Version 2.5.0-20240428 (May 24th, 2024)
-
Simplified and collapsed the EntityTemplate type removing untyped and typed into a single type.
-
Moved VerifiedLink for the Data Package in a checkpoint into the DataPackage type.
-
Added arrays of DataPackage to both ImpactClaimCheckpoint and CheckpointResult types to support a checkpoint having more than one Data Package.
-
Added
AVRO
as a supported data format for a DataFile.