Sustainability modules¶
This page documents a mapping from the elements in the CoST IDS sustainability modules to OC4IDS fields and codes.
The mapping for each element covers only the fields needed to satisfy the specific data needs described in the CoST IDS. In order for your data to meet the widest range of user needs, when implementing the mapping, you are encouraged to consider collecting and publishing the other fields described in the OC4IDS schema. To view a field's details, click on its name, e.g. id
.
Download this page in PDF format
In Google Chrome, Microsoft Edge or Mozilla Firefox, open the Print dialog (Ctrl+P) and set Destination (Printer, in Microsoft Edge) to 'Save to PDF'. In Safari, open the File menu and click Export as PDF.
Economic and fiscal¶
CoST IDS element
Disclose the procurement strategy risk assessment. This tends to be part of the decision-making strategy and likely includes discussions regarding capabilities, the delivery model and the rationale for the risk allocation decision.
OC4IDS mapping
Project Level:
Add a project document and set its .documentType
to 'procurementStrategyRiskAssessment'.
{
"documents": [
{
"id": "1",
"title": "Procurement strategy risk assessment",
"documentType": "procurementStrategyRiskAssessment",
"url": "http://example.com/documents/procurementStrategyRiskAssessment.pdf"
}
]
}
CoST IDS element
Disclose the life cycle cost of the project, which is the cost of an asset throughout its life cycle while fulfilling the performance requirements (ISO 15686-5:2017).
OC4IDS mapping
Project Level:
Add a CostMeasurement
object to the costMeasurements
array and map to its .lifeCycleCosting.value
.
{
"costMeasurements": [
{
"id": "1",
"lifeCycleCosting": {
"value": {
"amount": 10000000,
"currency": "USD"
}
}
}
]
}
CoST IDS element
Disclose the methodology used to calculate the life-cycle cost. The methodology ought to specify whether income and externalities are included in the calculation and the common date, discount rate and period of analysis used.
OC4IDS mapping
Project Level:
Add a project document and set its .documentType
to 'lifeCycleCostMethodology'.
{
"documents": [
{
"id": "1",
"documentType": "lifeCycleCostMethodology",
"url": "http://example.com/documents/lifeCycleCostMethodology.pdf"
}
]
}
CoST IDS element
Name the funding organization(s) or funding source(s) for the preparation, implementation and maintenance stages, and disclose the budget line(s) to which the project belongs. The maintenance stage covers any preventative or corrective maintenance and the day-to-day running of the assets; this stage is also called operation.
OC4IDS mapping
Project level:
Get the
BudgetBreakdowns
object in thebudget.budgetBreakdowns
array whose.description
is "Breakdown by stage". If none exists yet, add aBudgetBreakdowns
object to thebudget.budgetBreakdowns
array, set its.id
incrementally and its.description
to "Breakdown by stage".For each stage:
a. Get the
BudgetBreakdown
object in the budget breakdowns'.budgetBreakdown
array whose.description
is the name of the stage and whose.id
is the identifier of the budget line. If none exists yet, add aBudgetBreakdown
object to the budget breakdowns'.budgetBreakdown
array, set its.id
to the budget line identifier and set its.description
to the name of the stage.b. Get the
Organization
object inparties
that represents the funding source. If none exists yet, add an organization and add 'funder' to its.roles
.c. Set the budget breakdown's
.sourceParty
to the.id
and.name
of the funding source.
{
"budget": {
"budgetBreakdowns": [
{
"id": "1",
"description": "Breakdown by stage",
"budgetBreakdown": [
{
"id": "2024/ED01/ED01-FAC/EQ01",
"description": "Preparation",
"sourceParty": {
"id": "1",
"name": "Agency for Agricultural Development of Morocco"
}
},
{
"id": "2024/ED01/ED01-FAC/SE01",
"description": "Implementation",
"sourceParty": {
"id": "1",
"name": "Agency for Agricultural Development of Morocco"
}
}
]
}
]
},
"parties": [
{
"id": "1",
"name": "Agency for Agricultural Development of Morocco",
"roles": [
"funder"
]
}
]
}
CoST IDS element
Specify the allocated budget for preparation, implementation and maintenance. Maintenance covers any preventative or corrective maintenance and the day-to-day running of the assets. This stage is also called operation.
OC4IDS mapping
Project level:
Get the
BudgetBreakdowns
object in thebudget.budgetBreakdowns
array whose.description
is "Breakdown by stage". If none exists yet, add aBudgetBreakdowns
object to thebudget.budgetBreakdowns
array, set its.id
incrementally and its.description
to "Breakdown by stage".For each stage:
a. Get the
BudgetBreakdown
object in the budget breakdowns'.budgetBreakdown
array whose.description
is the name of the stage. If none exists yet, add aBudgetBreakdown
object to the budget breakdowns'.budgetBreakdown
array, set its.id
incrementally and set its.description
to the name of the stage.b. Map to the budget breakdown's
.amount
.
{
"budget": {
"budgetBreakdowns": [
{
"id": "1",
"description": "Breakdown by stage",
"budgetBreakdown": [
{
"id": "1",
"description": "Preparation",
"amount": {
"amount": 350000,
"currency": "USD"
}
},
{
"id": "2",
"description": "Implementation",
"amount": {
"amount": 300000,
"currency": "USD"
}
}
]
}
]
}
}
CoST IDS element
Economic assessment that tends to be part of the appraisal documents and provides information on economic net benefits and costs ("ex ante" cost benefit analysis). A revised assessment can be prepared during the operational phase of the project to update the information on net benefits and costs ("ex post" cost benefit analysis). Disclose both:
Ex ante cost benefit analysis
Ex post cost benefit analysis
OC4IDS mapping
Project level:
Add a project document, set its
.documentType
to 'costBenefitAnalysis' and set its.description
to "ex ante cost benefit analysis".Add a project document, set its
.documentType
to 'costBenefitAnalysis' and set its.description
to "ex post cost benefit analysis".
{
"documents": [
{
"id": "1",
"documentType": "costBenefitAnalysis",
"description": "ex ante cost benefit analysis",
"url": "http://example.com/documents/exAnteCostBenefitAnalysis.pdf"
},
{
"id": "2",
"documentType": "costBenefitAnalysis",
"description": "ex post cost benefit analysis",
"url": "http://example.com/documents/exPostCostBenefitAnalysis.pdf"
}
]
}
CoST IDS element
A summary of the value for money analysis carried out for the project, along with supporting figures, calculations and business case, based on projected or actual procurement outcomes. This tends to include considerations of economy, efficiency, effectiveness and equity, and is part of the appraisal documents.
OC4IDS mapping
Project Level: Add a project document and set its .documentType
to 'valueForMoneyAnalysis'.
{
"documents": [
{
"id": "1",
"documentType": "valueForMoneyAnalysis",
"url": "http://example.com/documents/valueForMoneyAnalysis.pdf"
}
]
}
CoST IDS element
In case of multiyear project implementation, disclose information on budget projection for all years of implementation.
OC4IDS mapping
Project level:
Add a
BudgetBreakdowns
object to thebudget.budgetBreakdowns
array, set its.id
incrementally and set its.description
to "Breakdown by year of implementation".For each year:
Add a
BudgetBreakdown
object to the budget breakdowns'.budgetBreakdown
array and set its.id
incrementally.Map the year's start and end dates to its
.period
Map the budget projection to its
.amount
.
{
"budget": {
"budgetBreakdowns": [
{
"id": "1",
"description": "Breakdown by year of implementation",
"budgetBreakdown": [
{
"id": "1",
"period": {
"startDate": "2024-01-01T00:00:00Z",
"endDate": "2024-12-31T00:00:00Z"
},
"amount": {
"amount": 350000,
"currency": "USD"
}
},
{
"id": "2",
"period": {
"startDate": "2025-01-01T00:00:00Z",
"endDate": "2025-12-31T00:00:00Z"
},
"amount": {
"amount": 300000,
"currency": "USD"
}
}
]
}
]
}
}
CoST IDS element
Disclose any shortfall in the allocated budget, including reasons for it.
OC4IDS mapping
Project level:
Add a
Metric
object to themetrics
array, set its.id
incrementally and set its.title
to "Budget shortfall".Add an
Observation
object to the metric's.observations
array and set its.id
incrementally.Map the shortfall's value to its
.value
.Map the reasons for the shortfall to its
.notes
.
{
"metrics": [
{
"id": "1",
"title": "Budget shortfall",
"observations": [
{
"id": "1",
"value": {
"amount": 2500000,
"currency": "USD"
},
"notes": "Funding shortfall due to construction overruns and a lack of budgetary approval"
}
]
}
]
}
CoST IDS element
Disclose the maintenance plan or program. This is the documentation that describes work to slow the deterioration of the asset.
OC4IDS mapping
Project Level: Add a project document and set its .documentType
to 'maintenancePlan'.
{
"documents": [
{
"id": "1",
"documentType": "maintenancePlan",
"url": "http://example.com/documents/maintenancePlan.pdf"
}
]
}
CoST IDS element
Disclose the expected lifetime of the asset. This tends to be part of the design report.
OC4IDS mapping
Project Level: Convert to days and map to assetLifetime.durationInDays
.
{
"assetLifetime": {
"durationInDays": 3650
}
}
Environment and climate¶
CoST IDS element
Indicate the category that reflects the magnitude of environmental impact. Consider the following to rate the project:
Category A: projects with potential significant adverse environmental or social risks and/or impacts that are diverse, irreversible, or unprecedented.
Category B: projects with potential limited adverse environmental or social risks and/or impacts that are few in number, generally site-specific, largely reversible, and readily addressed through mitigation measures.
Category C: projects with minimal or no adverse environmental or social risks and/or impacts.
OC4IDS mapping
Project level:
If an environmental impact assessment was conducted:
Set
environment.hasImpactAssessment
totrue
.Add a
Classification
object to theenvironment.impactCategories
array, set its.scheme
to 'ifcEnvironmentalSocial' and set its.id
to the lowercase letter of the category into which the project falls.
If an environmental impact assessment was not conducted, set environment.hasImpactAssessment
to false
.
{
"environment": {
"hasImpactAssessment": true,
"impactCategories": [
{
"scheme": "ifcEnvironmentalSocial",
"id": "a"
}
]
}
}
CoST IDS element
Identify the measures adopted by the project to mitigate and/or remedy the environmental impact, disclosing the corresponding document that describes the project's environmental measures. This can include, without limitation, the following:
waste management
disposal of construction by-products
environmentally responsible sourcing of materials
environmentally responsible use of land, water and air
water contamination management
others (explain)
OC4IDS mapping
Project level:
For each measure, add an
EnvironmentalMeasure
object to theenvironment.environmentalMeasures
array, set its.type
according to the open environmentalMeasure codelist and map any further details to its.description
.If there is an accompanying document, add a project document and set its
.documentType
to 'environmentalMeasures'.
{
"environment": {
"environmentalMeasures": [
{
"type": "wasteManagement",
"description": "Waste management measures for the project include..."
}
]
},
"documents": [
{
"id": "1",
"documentType": "environmentalMeasures",
"description": "The following environmental measures are adopted by the project...",
"url": "http://example.com/documents/environmentalMeasures.pdf"
}
]
}
CoST IDS element
Disclose all licenses, exemptions and/or amnesties obtained for the project. This can be related to Preparation, Implementation and/or Maintenance. These stages are also known as Planning, Construction and Operation respectively.
OC4IDS mapping
Project Level:
Add a project document and set its .documentType
to 'environmentalExemption'.
{
"documents": [
{
"id": "1",
"documentType": "environmentalExemption",
"url": "http://example.com/documents/environmentalExemption.pdf"
}
]
}
CoST IDS element
Identify whether the project is located in, or provides access to a protected area. Use the project location/coordinates at the WDPA - World Database of Protected Areas to disclose the information.
OC4IDS mapping
Project level:
If the project is located in a protected area:
Set
environment.inProtectedArea
totrue
.Add a
Location
object to the.locations
array, set its.id
incrementally and set its.gazetteer.scheme
to 'WDPA'.For each protected area in which the project is located, add the area's WDPA identifier to the
.gazetteer.identifiers
array.
If the project is not located in a protected area, set environment.inProtectedArea
to false
.
{
"environment": {
"inProtectedArea": true
},
"locations": [
{
"id": "1",
"gazetteer": {
"scheme": "WDPA",
"identifiers": [
"555566673"
]
}
}
]
}
CoST IDS element
Disclose and provide further details on the measures adopted by the project to protect and enhance biodiversity. This can comprise, without limitation the following:
avoidance of ecological sitting
buffers for ecological land
nature-based solutions
land restoration
protection to landscape and historical sites
invasive species management
management of wildlife mortality risk
reduce habitat loss
pollution reduction
land, water and air management
hazardous material management
others (explain)
OC4IDS mapping
Project level:
For each measure, add a
ConservationMeasure
object to theenvironment.conservationMeasures
array, set its.type
according to the open conservationMeasure codelist and map any further details to its.description
.If there is an accompanying document, add a project document and set its
.documentType
to 'conservationMeasures'.
{
"environment": {
"conservationMeasures": [
{
"type": "habitatRestoration",
"description": "Habitat restoration measures for the project include..."
}
]
},
"documents": [
{
"id": "1",
"documentType": "conservationMeasures",
"url": "http://example.com/conservationMeasures.pdf"
}
]
}
CoST IDS element
Clarify the type of climate and disaster risks to which the project is exposed. This tends to be part of the appraisal documents.
OC4IDS mapping
Project level:
Add a project document, set its .documentType
to 'climateAndDisasterRiskAssessment' and map any free text to its .description
.
{
"documents": [
{
"id": "1",
"documentType": "climateAndDisasterRiskAssessment",
"description": "The project is exposed to the following climate and disaster risks...",
"url": "http://example.com/documents/climateAndDisasterRiskAssessment.pdf"
}
]
}
CoST IDS element
Clarify whether the project design considered climate change mitigation and/or adaptation measures, disclosing the design demonstrating how the measures were incorporated. This can comprise, without limitation the following:
use of lower-emission sources of energy
use of lower-emission materials
use of recycled and reused materials
regenerative design
retrofitting design
use of carbon capture technology
assessment of extreme weather events
assessment of precipitation patterns
assessment of rising temperatures
assessment of rising sea levels
others (explain).
OC4IDS mapping
Project level:
For each measure, add a
ClimateMeasure
object to theenvironment.climateMeasures
array, set its.type
according to the open climateMeasure codelist and map any further explanation to its.description
.If there is an accompanying document, add a project document and set its
.documentType
to 'climateMeasures'.
{
"environment": {
"climateMeasures": [
{
"type": [
"regenerativeDesign"
],
"description": "Regenerative design measures for the project include biomimicry to imitate nature."
}
]
},
"documents": [
{
"id": "1",
"documentType": "climateMeasures",
"url": "http://example.com/climateMeasures.pdf"
}
]
}
CoST IDS element
Disclose the forecast greenhouse gas emissions related to the project, including the calculation, the methodology applied and where the calculation can be found.
OC4IDS mapping
Project level:
Add a
Metric
object to the.forecasts
array.Set the metric's
.title
to "Greenhouse gas emissions (carbon dioxide equivalent)" and map the methodology clarification to its.description
.Add an
Observation
object to the metric's.observations
array and:
Map the amount of greenhouse gas emissions in tonnes of CO2 equivalent to the observation's
.measure
Set the
.unit.name
to "Tonne (metric ton)",.unit.scheme
to 'UNCEFACT' and.unit.id
to "TNE"Set
.period
to the period covered by the forecast.
If supporting documentation is available, add a project document and set its
.documentType
to 'ghgEmissionsForecast'.
{
"forecasts": [
{
"id": "1",
"title": "Greenhouse gas emissions (carbon dioxide equivalent)",
"description": "Emission forecasts are calculated using the following methodology...",
"observations": [
{
"id": "1",
"period": {
"startDate": "2024-01-01T00:00:00Z",
"endDate": "2049-12-31T00:00:00Z"
},
"measure": 1000000,
"unit": {
"name": "Tonne (metric ton)",
"scheme": "UNCEFACT",
"id": "TNE"
}
}
]
}
],
"documents": [
{
"id": "1",
"documentType": "ghgEmissionsForecast",
"url": "http://example.com/GhgEmissionForecast.pdf"
}
]
}
CoST IDS element
Disclose environmental and/or climate related certifications issued for contractors and subcontractors such as ISO 14001 for environmental management.
OC4IDS mapping
Contracting process level:
Add a contracting process document and set its .documentType
to 'supplierEnvironmentalCertification'.
{
"contractingProcesses": [
{
"id": "1",
"summary": {
"documents": [
{
"id": "1",
"documentType": "supplierEnvironmentalCertification",
"url": "http://example.com/documents/contractorEnvironmentalCertification.pdf"
}
]
}
}
]
}
CoST IDS element
Disclose the decommissioning plans for the project assets.
OC4IDS mapping
Project level:
Add a project document and set its .documentType
to 'decommissioningPlans'.
{
"documents": [
{
"id": "1",
"documentType": "decommissioningPlans",
"url": "http://example.com/documents/decommissioningPlans.pdf"
}
]
}
CoST IDS element
Disclose the forecast decommissioning costs for the project assets.
OC4IDS mapping
Project level:
Add a
CostMeasurement
object to thecostMeasurements
array and set its.id
incrementally.Add a
CostGroup
object to the cost measurement's.costGroups
array, set its.id
incrementally and set its.category
to 'endOfLife'.Add a
Cost
object to the cost group's.costs
array, set its.id
incrementally and map to its.value
.
{
"costMeasurements": [
{
"id": "1",
"costGroups": [
{
"id": "1",
"category": "endOfLife",
"costs": [
{
"id": "1",
"value": {
"amount": 50000000,
"currency": "USD"
}
}
]
}
]
}
]
}
Climate finance¶
CoST IDS element
Disclose the main climate objective that the project addresses from the list:
mitigation
adaptation
cross-cutting
OC4IDS mapping
Project level:
Map to environment.goals
using the closed environmentalGoal codelist.
{
"environment": {
"goals": [
"climateChangeMitigation",
"climateChangeAdaptation"
]
}
}
CoST IDS element
Disclose the financial instrument type from the list:
loan
concessional
non-concessional
grant
equity
guarantees
OC4IDS mapping
Get the
Finance
object in.budget.finance
orcontractingProcesses.summary.finance
that represents the financing arrangement. If none exists yet, add a financing arrangement.Set the the financing arrangement's
.assetClass
and.type
according to the instrument type:
Instrument type |
||
---|---|---|
loan |
'debt' |
'loan' |
grant |
'grant' |
|
equity |
'equity' |
'shares.listed' or 'shares.unlisted' |
guarantee |
'guarantee' |
If the instrument is a concessional loan, set
.concessional
totrue
.If the instrument is a non-concessional loan, set
.concessional
tofalse
.If the instrument is results-based, set
.resultsBased
totrue
.
{
"budget": {
"finance": [
{
"id": "1",
"assetClass": [
"debt"
],
"type": "loan",
"concessional": false,
"resultsBased": true
}
]
}
}
CoST IDS element
Clarify the theory of change, systemic transition or transformation that is intended.
OC4IDS mapping
Project level:
Add a project document, set its .documentType
to 'climateTransformation' and map any free text to .description
.
{
"documents": [
{
"id": "1",
"documentType": "climateTransformation",
"url": "http://example.com/climateTransformation.pdf"
}
]
}
CoST IDS element
Identify who approved the climate finance investment in the country.
OC4IDS mapping
Project level:
Add an organization for the decision maker and add 'climateFinanceFocalPoint' to its .roles
array.
{
"parties": [
{
"id": "1",
"name": "Presidential Climate Commission",
"roles": [
"climateFinanceFocalPoint"
]
}
]
}
CoST IDS element
Clarify how the investment is aligned with the country's nationally determined contributions.
OC4IDS mapping
CoST IDS element
Clarify how the investment is aligned with the country's Paris Agreement commitments.
OC4IDS mapping
CoST IDS element
Disclose who the climate finance investment is intended to benefit and number of beneficiaries. Beneficiaries are the individuals who benefit directly or indirectly from the project; they are the target group of the infrastructure project and their needs are addressed by the intervention.
OC4IDS mapping
CoST IDS element
Disclose the quantum of the climate finance investment.
OC4IDS mapping
Get the
Finance
object inbudget.finance
orcontractingProcesses.summary.finance
that represents the financing arrangement. If none exists yet, add a financing arrangement.Map to the financing arrangement's
.value
.
{
"budget": {
"finance": [
{
"id": "1",
"value": {
"amount": 3000000,
"currency": "EUR"
}
}
]
}
}
CoST IDS element
Disclose who is providing the finance.
OC4IDS mapping
Get the
Finance
object inbudget.finance
orcontractingProcesses.summary.finance
that represents the financing arrangement. If none exists yet, add a financing arrangement.Map to the financing arrangement's
.source
.
{
"budget": {
"finance": [
{
"id": "1",
"source": "Green Climate Fund"
}
]
}
}
CoST IDS element
For projects financed by the Green Climate Fund, disclose the accredited entities through which GCF resources are accessed.
OC4IDS mapping
Get the
Finance
object inbudget.finance
orcontractingProcesses.summary.finance
that represents the financing arrangement. If none exists yet, add a financing arrangement.Get the
Organization
object inparties
that represents the party providing the finance. If none exists yet, add an organization and add 'funder' to its.roles
.Set the financing arrangement's
.financingParty
to the.id
and.name
of the organization.
{
"budget": {
"finance": [
{
"id": "1",
"financingParty": {
"id": "1",
"name": "Agency for Agricultural Development of Morocco"
}
}
]
},
"parties": [
{
"id": "1",
"name": "Agency for Agricultural Development of Morocco",
"roles": [
"funder"
]
}
]
}
CoST IDS element
Disclose the type of accredited entity, from the list:
private
public
non-governmental
sub-national
national
regional
international
OC4IDS mapping
Get the
Organization
object inparties
that represents the accredited entity. If none exists yet, add an organization and add 'funder' to its.roles
.Add a
Classification
object to the organization's.classifications
array, set its.scheme
to 'costIdsLegalType' and map the organization's legal type ('private', 'public' or 'non-government') to its.id
.Add a
Classification
object to the organization's.classifications
array, set its.scheme
to 'costIdsAdministrativeLevel' and map the organization's administrative level ('international', 'regional', 'national' or 'sub-national') to its.id
.
{
"parties": [
{
"id": "1",
"name": "Development Bank of South Africa",
"roles": [
"funder"
],
"classifications": [
{
"id": "public",
"scheme": "costIdsLegalType"
},
{
"id": "national",
"scheme": "costIdsAdministrativeLevel"
}
]
}
]
}
CoST IDS element
Disclose the amounts invested in project preparation.
CoST IDS element
Disclose dates for project preparation.
OC4IDS mapping
Project level:
Map to preparationPeriod
.
{
"preparationPeriod": {
"startDate": "2016-07-01T00:00:00Z",
"endDate": "2016-12-31T00:00:00Z"
}
}
CoST IDS element
Disclose dates for project approval:
submission date
approval date
OC4IDS mapping
Project level:
For each date:
Add a
Milestone
to themilestones
array and set its:
If disclosing the submission date, set the milestone's
.title
to "Climate finance submission" and its.dateMet
to the date of the submission.If disclosing the approval date, set the milestone's
.title
to "Climate finance approval" and its.dateMet
to the date of the approval.
{
"milestones": [
{
"id": "1",
"title": "Climate finance submission",
"type": "financing",
"dateMet": "2023-06-01T00:00:00Z",
"status": "met"
}
]
}
CoST IDS element
Disclose the ratio of co-finance. Select from a list to specify amounts:
domestic mobilisations
private finance
OC4IDS mapping
The OC4IDS data model provides the information needed to calculate co-finance ratios by modeling a project's individual financing arrangements. For more information, see the mappings for amount of investment, funding source, Green Climate Fund Accredited Entity and Accredited Entity Type.
{
"budget": {
"finance": [
{
"id": "1",
"source": "Green Climate Fund",
"value": {
"amount": 3000000,
"currency": "USD"
}
},
{
"id": "2",
"source": "GEF Trust Fund",
"value": {
"amount": 150000,
"currency": "USD"
}
}
]
}
}
CoST IDS element
Disclose the financial instrument and on what terms is the finance being provided. This includes several financial terms:
maturity (years)
grace period (years)
annual principal repayment years (% of initial principle)
interest (%)
service fee (per annum)
commitment fee (per annum)
OC4IDS mapping
Get the
Finance
object inbudget.finance
orcontractingProcesses.summary.finance
that represents the financing arrangement. If none exists yet, add a financing arrangement.Map the terms to the financing arrangement's properties:
Maturity:
.period
Grace period: Map the period over which payments will be made to
.paymentPeriod
. The grace period is the difference between.period
and.paymentPeriod
.Annual principal repayment years:
.description
Interest:
.interestRate
Service fee:
.description
Commitment fee:
.description
{
"budget": {
"finance": [
{
"id": "1",
"period": {
"startDate": "2024-01-01T00:00:00Z",
"endDate": "2043-12-31T00:00:00Z"
},
"paymentPeriod": {
"startDate": "2029-01-01T00:00:00Z",
"endDate": "2043-12-31T00:00:00Z"
},
"interestRate": {
"margin": 0.0075
},
"description": "Annual principal repayment years 11-20 (% of initial principal): 6.7%. Service fee (per annum): 0.50%. Commitment fee (per annum): Up to 0.75%."
}
]
}
}
CoST IDS element
Disclose the cost per tonne of CO2 equivalent reduction attributed to the project.
OC4IDS mapping
Project level:
Map to environment.abatementCost
. If a document that describes the methodology used to calculate the cost is available, add a project document and set its .documentType
to 'abatementCostMethodology'.
{
"environment": {
"abatementCost": {
"amount": 12.29,
"currency": "USD"
}
},
"documents": [
{
"id": "1",
"documentType": "abatementCostMethodology",
"url": "http://example.com/abatementCostMethodology.pdf"
}
]
}
CoST IDS element
Disclose and provide further details on the potential non-climate impacts that have been factored into the project planning. This can comprise, without limitation the following:
economic
social
environmental
gender empowerment.
others (explain)
OC4IDS mapping
Project level:
For each co-benefit, add a Benefit
object to the benefits
array, map the option from the list to its .title
and map the explanation to its .description
.
{
"benefits": [
{
"title": "environmental",
"description": "The new water management plant will mean less water is removed from the delta meaning more is left in place for use by the local biome."
}
]
}
CoST IDS element
Disclose the occurrence of public meetings with communities and impacted groups including the meeting invite, the number of participants, dates and location of these meetings.
OC4IDS mapping
CoST IDS element
Disclose disbursements dates according to financial agreement versus actual disbursements dates.
OC4IDS mapping
For each planned disbursement:
If the disbursement relates to a contracting processes, for example a payment from a funder to a supplier or to a subcontractor of a supplier, get the
ContractingProcess
in thecontractingProcesses
array to which the disbursement relates and add aMilestone
object to its.summary.milestones
array. Otherwise, if the disbursement relates to the project, for example a payment from a funder to the public authority, add aMilestone
object to the project-levelmilestones
array.Set the milestone's:
.id
incrementally.status
to 'scheduled'.dueDate
to the date on which the disbursement is planned to occur.type
to 'payment'.value
to the amount and currency of the planned disbursement
For each actual disbursement:
If the disbursement relates to a contracting processes, for example a payment from a funder to a supplier or to a subcontractor of a supplier, get the
ContractingProcess
in thecontractingProcesses
array to which the disbursement relates and add aTransaction
object to its.summary.transactions
array. Otherwise, if the disbursement relates to the project, for example a payment from a funder to the public authority, add aTransaction
object to the project-leveltransactions
array.Set the transaction's:
.id
incrementally.date
to the date of the disbursement.value
to the amount and currency of the disbursement.
Get the
Organization
inparties
that represents the payer. If none exists yet, add an organization for the payer:
Add 'payer' to the organization's
.roles
arraySet the transaction's
.payer
to the.id
and.name
of the organization.
Get the
Organization
inparties
that represents the payee. If none exists yet, add an organization for the payee:
Add 'payee' to the organization's
.roles
array.Set the transaction's
.payee
to the.id
and.name
of the organization.
Get the
Milestone
inmilestones
that represents that planned disbursement:
Set its
.status
to 'met'Set its
.dateMet
to the date of the disbursementSet the transaction's
.relatedImplementationMilestone
to the.id
and.title
of the milestone.
{
"milestones": [
{
"id": "1",
"title": "Grant disbursement",
"status": "met",
"dueDate": "2023-07-01T00:00:00Z",
"dateMet": "2023-08-01T00:00:00Z",
"type": "payment",
"value": {
"amount": 5000000,
"currency": "USD"
}
}
],
"transactions": [
{
"id": "1",
"date": "2023-08-01T00:00:00Z",
"value": {
"amount": 5000000,
"currency": "USD"
},
"payer": {
"id": "1",
"name": "United Nations Development Programme"
},
"payee": {
"id": "2",
"name": "Ministry of works"
},
"relatedImplementationMilestone": {
"id": "1",
"title": "Grant disbursement"
}
}
]
}
CoST IDS element
Disclose the type of monitoring from the list:
internal
external
mixed
OC4IDS mapping
Project level:
Map to environment.climateOversightTypes
using the closed climateOversightTypes codelist.
{
"environment": {
"climateOversightTypes": [
"internal",
"external"
]
}
}
CoST IDS element
Disclose Key Performance Indicators adopted by the project.
CoST IDS element
Clarify the project reporting period. It could be quarterly, annually, biannually.
OC4IDS mapping
Project level:
Get the Metric
object in the metrics
array that represents the KPI and map to its .description
using the format "Reporting period: {period}".
{
"metrics": [
{
"id": "1",
"title": "KPI: Capacity utilization",
"description": "Reporting period: Annual"
}
]
}
CoST IDS element
Disclose oversight reports.
OC4IDS mapping
Project level:
Add a project document and set its .documentType
to 'oversightReport'.
{
"documents": [
{
"id": "1",
"documentType": "oversightReport",
"url": "http://example.com/oversightReport"
}
]
}
CoST IDS element
Identify the entities acting as independent monitors of the project.
OC4IDS mapping
CoST IDS element
Disclose technical audits produced at end of the project.
OC4IDS mapping
Project level:
For each audit report, add a project document, set its .documentType
to 'technicalAuditReport' and map any free text to its .description
.
{
"documents": [
{
"id": "1",
"documentType": "technicalAuditReport",
"description": "The project has been constructed as specified...",
"url": "http://example.com/technicalAuditReport.pdf",
"pageStart": "13",
"pageEnd": "14"
}
]
}
CoST IDS element
Clarify the methodology or system to measure the long-term impact of the project solution.
OC4IDS mapping
Project level:
Add a project document, set its .documentType
to 'impactMethodology' and map any free text to its .description
.
{
"documents": [
{
"id": "1",
"documentType": "impactMethodology",
"description": "The long term impact of this project will be measured according to...",
"url": "http://example.com/impactMethodology.pdf"
}
]
}
CoST IDS element
Disclose the carbon footprint of the project, including the calculation, the methodology applied, and where the calculation can be found.
OC4IDS mapping
Project level:
Set the metric's
.title
to "Greenhouse gas emissions (carbon dioxide equivalent)" and map the methodology clarification to its.description
.Add an
Observation
object to the metric's.observations
array and:
Map the amount of greenhouse gas emissions in tonnes of CO2 equivalent to the observation's
.measure
Set the
.unit.name
to "Tonne (metric ton)",.unit.scheme
to 'UNCEFACT' and.unit.id
to "TNE"Set
.period
to the period covered by the calculation.
If supporting documentation is available, add a project document and set its
.documentType
to 'ghgEmissions'.
{
"metrics": [
{
"id": "1",
"title": "Greenhouse gas emissions (carbon dioxide equivalent)",
"description": "Emissions are calculated using the following methodology...",
"observations": [
{
"id": "1",
"period": {
"startDate": "2024-01-01T00:00:00Z",
"endDate": "2049-12-31T00:00:00Z"
},
"measure": 1000000,
"unit": {
"name": "Tonne (metric ton)",
"scheme": "UNCEFACT",
"id": "TNE"
}
}
]
}
],
"documents": [
{
"id": "1",
"documentType": "ghgEmissions",
"url": "http://example.com/ghgEmissions.pdf"
}
]
}
CoST IDS element
Identify the asset for disposal purpose.
OC4IDS mapping
For each set of decommissioned assets in a specified location, create a new OC4IDS project and:
Set its
type
to 'decommissioning'.Set its
title
to the name of the asset.Add a
RelatedProject
object to therelatedProjects
array and set its:
.id
and.title
to the.id
and.title
of the OC4IDS project for the replacement of the asset.scheme
to 'oc4ids'.relationship
to 'replacement'.
{
"id": "oc4ids-bu3kcz-123456789",
"title": "Otahuhu B Power Station",
"type": "decommissioning",
"relatedProjects": [
{
"id": "oc4ids-bu3kcz-987654321",
"scheme": "oc4ids",
"title": "Otahuhu C Power Station",
"relationship": "replacement"
}
]
}
CoST IDS element
Intended start and end dates of decommissioning.
OC4IDS mapping
Project level:
Map to decommissioningPeriod
.
{
"decommissioningPeriod": {
"startDate": "2040-07-01T00:00:00Z",
"endDate": "2041-06-30T00:00:00Z"
}
}
CoST IDS element
Disclose the technical plan for decommissioning.
OC4IDS mapping
CoST IDS element
Disclose the evaluation of CO2 savings as a result of decommissioning.
OC4IDS mapping
Project level:
Set the metric's
.title
to "Greenhouse gas emissions reduction (carbon dioxide equivalent)" and map the methodology clarification to its.description
.Add an
Observation
object to the metric's.observations
array and:
Map the amount of greenhouse gas emission savings in tonnes of CO2 equivalent to the observation's
.measure
Set the
.unit.name
to "Tonne (metric ton)",.unit.scheme
to 'UNCEFACT' and.unit.id
to "TNE"Set
.period
to the period covered by the calculation.
If supporting documentation is available, Add a project document and set its
.documentType
to 'ghgEmissionsReduction'.
{
"id": "oc4ids-bu3kcz-123456789",
"forecasts": [
{
"id": "1",
"title": "Greenhouse gas emissions reduction (carbon dioxide equivalent)",
"description": "Emission reduction forecasts are calculated using the following methodology...",
"observations": [
{
"id": "1",
"period": {
"startDate": "2024-01-01T00:00:00Z",
"endDate": "2049-12-31T00:00:00Z"
},
"measure": 1000000,
"unit": {
"name": "Tonne (metric ton)",
"scheme": "UNCEFACT",
"id": "TNE"
}
}
]
}
],
"documents": [
{
"id": "1",
"documentType": "ghgEmissionsReduction",
"url": "http://example.com/GhgEmissionsReduction.pdf"
}
]
}
CoST IDS element
Disclose mitigation plan for people and communities affected by decommissioning.
OC4IDS mapping
Project level:
Add a project document and set its .documentType
to 'socialImpact'.
{
"id": "oc4ids-bu3kcz-123456789",
"documents": [
{
"id": "1",
"documentType": "socialImpact",
"url": "http://example.com/socialImpact.pdf",
"pageStart": "13",
"pageEnd": "14"
}
]
}
Institutional¶
CoST IDS element
Disclose documentation that evidences that the project is part of, or aligned with existing plans and policies, providing further details on the project's policy alignment. Consider alignment with:
SDGs
National plan or strategy
Infrastructure plan or strategy
Sector plan or strategy
Procuring entity plan or strategy
Paris Agreement
Nationally Determined Contributions (NDCs)
National Adaptation Plans
Medium-term fiscal/budget frameworks
Annual budgets
Pipeline of infrastructure projects
OC4IDS mapping
Project level:
For each plan or policy to which the project is aligned, add a code from the open policyAlignment codelist to the
policyAlignment.policies
array and add a further explanation of the alignment topolicyAlignment.description
.For each United Nations Sustainable Development Goal to which the project is aligned, add a
Classification
object to theadditionalClassifications
array and set its:
.scheme
to 'sdg'.id
to the goal's number.description
to the goal's title.
For each United Nations Sustainable Development Goal Target to which the project is aligned, add a
Classification
object to theadditionalClassifications
array and set its:
.scheme
to 'sdgTarget'.id
to the target's number.description
to the target's title.
If further documentation of the project's policy alignment is available, add a project document and set its
.documentType
to 'policyAlignment'.
{
"additionalClassifications": [
{
"scheme": "sdg",
"id": "6",
"description": "Ensure availability and sustainable management of water and sanitation for all"
},
{
"scheme": "sdgTarget",
"id": "6.3",
"description": "By 2030, improve water quality by reducing pollution, eliminating dumping and minimizing release of hazardous chemicals and materials, halving the proportion of untreated wastewater and substantially increasing recycling and safe reuse globally"
}
],
"policyAlignment": {
"policies": [
"infrastructurePlan"
],
"description": "The project is intended to contribute towards the goals set out in the 2021 Australian Infrastructure Plan."
},
"documents": [
{
"id": "1",
"documentType": "policyAlignment",
"url": "http://example.com/infrastructurePlanAlignment.pdf"
}
]
}
CoST IDS element
Disclose Freedom of Information (FoI) requests that have been presented in relation to the project. Note that FoI requests can also be known as access to information requests.
OC4IDS mapping
Project level:
For each freedom of information request, add a project document and set its .documentType
to 'informationRequest'.
{
"documents": [
{
"id": "1",
"documentType": "informationRequest",
"url": "http://example.com/foiRequest-1.pdf"
}
]
}
CoST IDS element
Disclose the responses provided by authorities to Freedom of Information (FoI) requests related to the project. Note that FoI requests may also be known as access to information requests.
OC4IDS mapping
Project level:
For each freedom of information request response, add a project document and set its .documentType
to 'informationRequestResponse'.
{
"documents": [
{
"id": "1",
"documentType": "informationRequestResponse",
"url": "http://example.com/foiRequest-1.pdf"
}
]
}
CoST IDS element
Disclose the occurrence of meetings with interested groups, including the number of participants, date, location and minutes of these meetings, as well as the name and job title of the person representing the public office present at the meeting.
OC4IDS mapping
Project Level:
For each meeting:
Publish the meeting details:
Add a
Meeting
object to thelobbyingMeetings
array and set:
.id
incrementally.date
to the date of the meeting.address
to the address of the meeting.numberOfParticipants
to the number of people present at the meeting.publicOffice.person.name
to the name of the person representing the public office present at the meeting.publicOffice.jobTitle
to the job title of the person representing the public office present at the meeting.
Get the
Organization
inparties
that represents the public office. If none exists yet, add an organization.Set the meeting's
.publicOffice.organization
to the.id
and.name
of the organization.
Publish the meeting minutes: add a project document and set its .documentType
to 'minutes.lobbyingMeeting'.
{
"lobbyingMeetings": [
{
"id": "1",
"date": "2024-01-01T00:00:00Z",
"address": {
"streetAddress": "1600 Amphitheatre Pkwy",
"locality": "London",
"region": "London",
"postalCode": "WC1 8HG",
"countryName": "United Kingdom"
},
"numberOfParticipants": 4,
"publicOffice": {
"person": {
"name": "Brett Gliddon"
},
"organization": {
"name": "Motorways UK",
"id": "GB-GOR-XX1234"
},
"jobTitle": "Group General Manager Transport Services"
}
}
],
"documents": [
{
"id": "2",
"documentType": "minutes.lobbyingMeeting",
"url": "http://example.com/lobbyingMeetingMinutes.pdf"
}
]
}
CoST IDS element
Disclose the beneficial owners of the contractors and suppliers appointed in the project.
OC4IDS mapping
Project level:
For each beneficial owner:
Get the
Organization
inparties
that represents the contractor or supplier.Add a
Person
object to the organization's.beneficialOwners
array.Set the person's:
.id
incrementally.name
to the beneficial owner's name.identifier
to the beneficial owner's identifier
{
"parties": [
{
"id": "1",
"beneficialOwners": [
{
"id": "1",
"name": "Juan Perez",
"identifier": {
"scheme": "PRY-IDCARD",
"id": "12345"
}
}
]
}
]
}
CoST IDS element
Identify the presence of sustainability and non-price attributes in the award criteria.
OC4IDS mapping
Contracting process level:
Add a Sustainability
object to the summary.tender.sustainability
array and add 'awardCriteria' to its .strategies
array.
{
"contractingProcesses": [
{
"id": "1",
"summary": {
"tender": {
"sustainability": [
{
"strategies": [
"awardCriteria"
]
}
]
}
}
}
]
}
CoST IDS element
Disclose anti-corruption certifications of the project, such as ISO 37001 on Anti-Bribery Management Systems Standard.
OC4IDS mapping
Project Level:
Add a project document and set its .documentType
to 'antiCorruptionCertification'.
{
"documents": [
{
"id": "1",
"documentType": "antiCorruptionCertification",
"url": "http://example.com/ISO37001Certification.pdf"
}
]
}
CoST IDS element
Identify the entities acting as independent monitors of the project.
OC4IDS mapping
Project level:
Add an organization for the independent monitor and add 'independentMonitor' to its .roles
array.
{
"parties": [
{
"id": "1",
"name": "Transparency International New Zealand",
"roles": [
"independentMonitor"
]
}
]
}
CoST IDS element
Disclose Key Performance Indicators adopted by the project.
OC4IDS mapping
CoST IDS element
Disclose risk management plans prepared for the project.
OC4IDS mapping
Project Level:
Add a project document and set its .documentType
to 'riskProvisions'.
{
"documents": [
{
"id": "1",
"documentType": "riskProvisions",
"url": "http://example.com/riskManagementPlan.pdf"
}
]
}
CoST IDS element
Identify relevant sub-sectors related to the project scope. Select from a list (non-exhaustive):
Renewable energy
Solar
Wind
Hydropower
Biomass
Geothermal
Water and wastewater management
Transport
Low carbon transport
Natural resource management
Flood protection
Free text to add not mentioned sub-sectors
OC4IDS mapping
Social¶
CoST IDS element
Indicate the number of direct and indirect project beneficiaries. Beneficiaries are the individuals who benefit directly or indirectly from the project; they are the target group of the infrastructure project and their needs are addressed by the intervention.
OC4IDS mapping
Project level:
Add a
Benefit
object to thebenefits
array.Add a
Beneficiary
object to the benefit's.beneficiaries
array, set its.description
to "Direct beneficiaries" and set its.numberOfPeople
to the number of direct beneficiaries.Add a
Beneficiary
object to the benefit's.beneficiaries
array, set its.description
to "Indirect beneficiaries" and set its.numberOfPeople
to the number of indirect beneficiaries.CoST IDS element
Clarify whether gender, people with disabilities, and vulnerable and disadvantaged populations were considered in the project design and project implementation, providing details on how the design and implementation practices meet inclusion goals.
OC4IDS mapping
Project level:
Add a project document, set its
.documentType
to 'inclusiveDesign' and map any free text to its.description
.Add a project document, set its
.documentType
to 'inclusiveImplementation' and map any free text to its.description
.CoST IDS element
Identify whether the project is located or cut through indigenous land. Use the information at the LandMark - Global Platform of Indigenous and Community Lands on both databases Indigenous Lands Acknowledged by Government and Not Acknowledged by Government (customary tenure or with formal land claim submitted) to disclose the information.
OC4IDS mapping
Project level:
If the project is located in or cuts through indigenous land:
Set
social.inIndigenousLand
totrue
.Add a ()" substituting and for the name and land category from the Landmark database.
Location
object to thelocations
array, set its.id
incrementally and set its description to "Indigenous land:If the project is not located in and does not cut through indigenous land, set
social.inIndigenousLand
tofalse
.CoST IDS element
Disclose the occurrence of public meetings with communities and impacted groups including meeting invite, the number of the participants, dates and location of these meetings.
OC4IDS mapping
Project Level:
For each meeting:
Publish the meeting invite: add a project document and set its
.documentType
to 'consultationMeetingInvitation'.Publish the meeting details: add a
Meeting
object to thesocial.consultationMeetings
array and set its:.id
incrementally.date
to the date of the meeting.address
to the address of the meeting.numberOfParticipants
to the number of people that participated in the meeting.Publish the meeting minutes: add a project document and set its
.documentType
to 'minutes.consultationMeeting'.CoST IDS element
Disclose budget allocated to fund land compensation.
OC4IDS mapping
Project Level:
Map to
social.landCompensationBudget
.CoST IDS element
Disclose labor obligations in the construction contract. This can include, without limitation, the following:
minimum wage
overtime
prohibition of forced labor
prohibition of child labor
equal opportunity
non-discrimination
freedom of association
grievance mechanism
working at height
underground work
handling of materials/equipment
monitoring of accidents
traffic management
accommodation
protective equipment
others (explain)
OC4IDS mapping
Contracting process level:
Publish a summary of the labor obligations:
For each labor obligation, add the relevant code from the open laborObligations codelist to the
.summary.social.laborObligations.obligations
array.Optionally, add a further explanation of the labor obligations to
summary.social.laborObligations.description
.Publish the bidding documents that specify labor obligations: add a contracting process document and set its
.documentType
to 'biddingDocuments'.Publish the signed contract that includes labor obligations: add a contracting process document and set its
.documentType
to 'contractSigned'.CoST IDS element
Disclose the amount allocated by the main contractor to cover for labor costs.
OC4IDS mapping
Contracting process level:
Map to
summary.social.laborBudget
.CoST IDS element
Disclose summary statistics on accidents and fatalities involving construction workers, and an explanation of these events.
OC4IDS mapping
Project level:
Publish summary statistics on worker accidents:
Add a
Metric
object to themetrics
array, set its.id
incrementally and set its.title
to "Worker accidents".For each reporting period, add an
Observation
object to the metric's.observations
array and set its:.id
incrementally.period
to the reporting period.measure
to the number of accidents.If further details are available, add them to the observation's
.notes
field.Publish summary statistics on worker fatalities:
Add a
Metric
object to themetrics
array, set its.id
incrementally and set its.title
to "Worker fatalities".For each reporting period, add an
Observation
object to the metric's.observations
array set its:.id
incrementally.period
to the reporting period.measure
to the number of fatalities.If further details available, add them to the observation's
.notes
field.CoST IDS element
Disclose labor related certifications issued in relation to project contractors and subcontractors such as ISO 45001 for Health and Safety.
OC4IDS mapping
Contracting process level:
Add a contracting process document and set its
.documentType
to 'supplierHealthAndSafetyCertification'.CoST IDS element
Disclose construction materials tests performed during project implementation. This can include, without limitation, the following:
asphalt
aggregate and rock
bricks
cement
concrete
coarse and fine aggregate
masonry
metallic materials
mortar
plywood
timber
resin and polymer
soil
stone
others (explain).
OC4IDS mapping
Project level:
Publish a summary of the material tests:
For each material test, add a code from the open constructionMaterial codelist to the
social.healthAndSafety.materialTests.tests
array.Add any further explanation of the tests to
social.healthAndSafety.materialTests.tests
, including the international or national standards that the tests conform to.Publish test results: For each test result, add a project document and set its
.documentType
to 'materialTestResults'.CoST IDS element
Disclose building inspections during project implementation.
OC4IDS mapping
Project Level:
Add a project document and set its
.documentType
to 'buildingInspectionReport'.CoST IDS element
Disclose estimated and actual jobs (direct/indirect) during project implementation and estimated and actual jobs during operation (direct/indirect).
OC4IDS mapping
Project level:
Publish job creation estimates:
Add a
Metric
object to theforecasts
array and set its.title
to "Jobs created".For each job relationship - stage pair, add an
Observation
object to the metric's.observations
array and set its:.id
incrementally.dimensions.relationship
to the relationship ("direct" or "indirect").dimensions.stage
to the stage ("implementation" or "operation").measure
to the number of jobs.Publish actual jobs created:
Add a
Metric
object to themetrics
array and set its.title
to 'Jobs created'.For each job relationship - stage pair, add an
Observation
object to the metric's.observations
array and set its:.id
incrementally.dimensions.relationship
to the relationship ("direct" or "indirect").dimensions.stage
to the stage ("implementation" or "operation").measure
to the number of jobs