
Welcome to the home of the open source model for
We are developing an open-source framework for pre-budget analysis that integrates real resource constraints, human needs, and planetary boundary impacts into public financial decision-making. By connecting budget allocations to economic activities and environmental pressures, the framework makes the biophysical consequences of fiscal policy visible before spending decisions are made. The aim is to improve government decision-making by aligning fiscal policy with both resource realities and ecological sustainability.
Version 1.6.2 is the first public baseline release of the Real Capital Canonical Data Model. It establishes the core structure for representing real capital, its maturity, stewardship and relationship to financial allocations. It is released for public examination and practical testing. The model is not considered final, and the project invites proposals for improvement.
01 · ABOUT
Why the model exists
Explain the problem: governments manage real resources, but financial budgets do not by themselves describe the condition, capacity or ecological implications of those resources.
02 · THE MODEL
Explore the structure
Introduce the four capital types, the asset register, maturity, lifecycle activities and the relationship to budgeting.
03 · DOCUMENTATION
Read Version 1
Publish the specification, glossary, diagrams, examples and implementation guidance.
04 · PARTICIPATE
Help develop the model
Invite comments, questions, corrections, proposed changes and practical testing.
05 · GOVERNANCE
How the model is maintained
Explain ownership, administration, decision-making, versioning and the review process.
06 · RELEASES
Follow development
Provide the current release, previous releases, proposed changes and the development roadmap.
erDiagram
AssetPortfolio ||--o{ AssetManagementObjective : "has"
AssetPortfolio ||--o{ AssetPerformanceRecord : "has"
AssetPortfolio ||--o{ AssetHealthIndicator : "has"
AssetPortfolio ||--o{ AssetRisk : "has"
AssetPortfolio ||--o{ LifecycleActivity : "has"
AssetPortfolio ||--o{ AssetPressure : "experiences"
AssetPortfolio ||--o{ AssetMaturityHistory : "tracks"
LifecycleActivity }o--|| AssetPerformanceRecord : "targets (if performance)"
LifecycleActivity ||--o{ FinancialResourceAllocation : "funded_by"
LifecycleActivity ||--o{ RealResourceConstraint : "requires"
LifecycleActivity ||--o{ InflationMonitoring : "monitored_by"
AssetPressure }o--|| EconomicActivity : "caused_by"
AssetPressure }o--|| UnitOfMeasure : "measured_in"
RealEstate ||--o| AssetPortfolio : "hosts"
RealEstate }o--|| Region : "belongs_to"
Region ||--o{ LandUseProfile : "has"
EnumMapping }o--|| AssetPortfolio : "translates"
ReconciliationRules }o--|| AssetPortfolio : "reconciles"
AssetManagementObjective }o--|| MaturityScale : "targets"
AssetPortfolio }o--|| MaturityScale : "currently_at"/
SELECT
a.official_name,
(o.target_maturity_level - a.current_maturity_level) AS maturity_gap,
apr.performance_gap,
la.activity_description,
la.target_entity_type,
fra.allocated_amount
FROM AssetPortfolio a
JOIN AssetManagementObjective o ON a.asset_id = o.linked_asset_id
JOIN AssetPerformanceRecord apr ON a.asset_id = apr.asset_id
JOIN LifecycleActivity la ON a.asset_id = la.asset_id
JOIN FinancialResourceAllocation fra ON la.activity_id = fra.activity_id
WHERE (o.target_maturity_level - a.current_maturity_level) > 0
AND apr.performance_gap < 0
AND la.target_entity_type = 'Maturity';