@hestia-earth/guide 0.0.17 → 0.0.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (791) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/content/guide/aggregation-engine/content.json +1 -1
  3. package/dist/content/guide/aggregation-engine/crop.json +1 -1
  4. package/dist/content/guide/aggregation-engine/distribution.json +1 -0
  5. package/dist/content/guide/aggregation-engine/generalProcess.json +1 -0
  6. package/dist/content/guide/aggregation-engine/processedFood.json +1 -1
  7. package/dist/content/guide/applying-models/file-validation.json +1 -1
  8. package/dist/content/guide/data-validation/content.json +1 -0
  9. package/dist/content/guide/data-validation/cycle.json +1 -0
  10. package/dist/content/guide/data-validation/impact-assessment.json +1 -0
  11. package/dist/content/guide/data-validation/organisation.json +1 -0
  12. package/dist/content/guide/data-validation/site.json +1 -0
  13. package/dist/content/guide/file-upload/concepts.json +1 -0
  14. package/dist/content/guide/file-upload/deletion.json +1 -0
  15. package/dist/content/guide/file-upload/examples/content.json +1 -0
  16. package/dist/content/guide/file-upload/examples/example-1.json +1 -0
  17. package/dist/content/guide/file-upload/examples/example-2.json +1 -0
  18. package/dist/content/guide/file-upload/examples/example-3.json +1 -0
  19. package/dist/content/guide/file-upload/examples/example-4.json +1 -0
  20. package/dist/content/guide/file-upload/prepare-file.json +1 -1
  21. package/dist/content/guide/file-upload/special-cases.json +1 -0
  22. package/dist/content/index.json +1 -1
  23. package/dist/content/models/cycleAnimals/animal-fatContent/content.json +1 -0
  24. package/dist/content/models/cycleAnimals/animal-fatContent/ipcc2019.json +1 -0
  25. package/dist/content/models/cycleAnimals/animal-hoursWorkedPerDay/content.json +1 -0
  26. package/dist/content/models/cycleAnimals/animal-hoursWorkedPerDay/ipcc2019.json +1 -0
  27. package/dist/content/models/cycleAnimals/animal-liveweightGain/content.json +1 -0
  28. package/dist/content/models/cycleAnimals/animal-liveweightGain/ipcc2019.json +1 -0
  29. package/dist/content/models/cycleAnimals/animal-liveweightPerHead/content.json +1 -1
  30. package/dist/content/models/cycleAnimals/animal-liveweightPerHead/ipcc2019.json +1 -1
  31. package/dist/content/models/cycleAnimals/animal-milkYieldPerAnimal/content.json +1 -0
  32. package/dist/content/models/cycleAnimals/animal-milkYieldPerAnimal/ipcc2019.json +1 -0
  33. package/dist/content/models/cycleAnimals/animal-pregnancyRateTotal/content.json +1 -0
  34. package/dist/content/models/cycleAnimals/animal-pregnancyRateTotal/ipcc2019.json +1 -0
  35. package/dist/content/models/cycleAnimals/animal-trueProteinContent/content.json +1 -0
  36. package/dist/content/models/cycleAnimals/animal-trueProteinContent/ipcc2019.json +1 -0
  37. package/dist/content/models/cycleAnimals/animal-weightAtMaturity/content.json +1 -0
  38. package/dist/content/models/cycleAnimals/animal-weightAtMaturity/ipcc2019.json +1 -0
  39. package/dist/content/models/cycleAnimals/cycle-animal-input-hestiaAggregatedData/content.json +1 -1
  40. package/dist/content/models/cycleAnimals/cycle-animal-input-hestiaAggregatedData/cycle.json +1 -1
  41. package/dist/content/models/cycleAnimals/cycle-animal-input-properties/content.json +1 -1
  42. package/dist/content/models/cycleAnimals/cycle-animal-input-properties/cycle.json +1 -1
  43. package/dist/content/models/cycleAnimals/ipcc2019-animal-pastureGrass/content.json +1 -1
  44. package/dist/content/models/cycleAnimals/ipcc2019-animal-pastureGrass/ipcc2019.json +1 -1
  45. package/dist/content/models/cycleCompleteness/cycle-completeness-animalFeed/content.json +1 -1
  46. package/dist/content/models/cycleCompleteness/cycle-completeness-animalFeed/cycle.json +1 -1
  47. package/dist/content/models/cycleCompleteness/cycle-completeness-cropResidue/content.json +1 -1
  48. package/dist/content/models/cycleCompleteness/cycle-completeness-cropResidue/cycle.json +1 -1
  49. package/dist/content/models/cycleCompleteness/cycle-completeness-electricityFuel/content.json +1 -1
  50. package/dist/content/models/cycleCompleteness/cycle-completeness-electricityFuel/cycle.json +1 -1
  51. package/dist/content/models/cycleCompleteness/cycle-completeness-excreta/content.json +1 -1
  52. package/dist/content/models/cycleCompleteness/cycle-completeness-excreta/cycle.json +1 -1
  53. package/dist/content/models/cycleCompleteness/cycle-completeness-freshForage/content.json +1 -1
  54. package/dist/content/models/cycleCompleteness/cycle-completeness-freshForage/cycle.json +1 -1
  55. package/dist/content/models/cycleCompleteness/cycle-completeness-material/content.json +1 -1
  56. package/dist/content/models/cycleCompleteness/cycle-completeness-material/cycle.json +1 -1
  57. package/dist/content/models/cycleCompleteness/cycle-completeness-soilAmendment/content.json +1 -1
  58. package/dist/content/models/cycleCompleteness/cycle-completeness-soilAmendment/cycle.json +1 -1
  59. package/dist/content/models/cycleEmissions/animal/ch4ToAirEntericFermentation/content.json +1 -1
  60. package/dist/content/models/cycleEmissions/animal/ch4ToAirEntericFermentation/ipcc2019.json +1 -1
  61. package/dist/content/models/cycleEmissions/animal/ch4ToAirExcreta/ipcc2019.json +1 -1
  62. package/dist/content/models/cycleEmissions/aquaculture/ch4ToAirAquacultureSystems/content.json +1 -1
  63. package/dist/content/models/cycleEmissions/aquaculture/ch4ToAirAquacultureSystems/ipcc2019.json +1 -1
  64. package/dist/content/models/cycleEmissions/aquaculture/ch4ToAirAquacultureSystems/pooreNemecek2018.json +1 -1
  65. package/dist/content/models/cycleEmissions/aquaculture/n2OToAirAquacultureSystemsDirect/content.json +1 -1
  66. package/dist/content/models/cycleEmissions/aquaculture/n2OToAirAquacultureSystemsDirect/pooreNemecek2018.json +1 -1
  67. package/dist/content/models/cycleEmissions/aquaculture/n2ToAirAquacultureSystems/content.json +1 -1
  68. package/dist/content/models/cycleEmissions/aquaculture/n2ToAirAquacultureSystems/pooreNemecek2018.json +1 -1
  69. package/dist/content/models/cycleEmissions/aquaculture/nh3ToAirAquacultureSystems/content.json +1 -1
  70. package/dist/content/models/cycleEmissions/aquaculture/nh3ToAirAquacultureSystems/pooreNemecek2018.json +1 -1
  71. package/dist/content/models/cycleEmissions/aquaculture/noxToAirAquacultureSystems/content.json +1 -1
  72. package/dist/content/models/cycleEmissions/aquaculture/noxToAirAquacultureSystems/pooreNemecek2018.json +1 -1
  73. package/dist/content/models/cycleEmissions/fuel/blackCarbonToAirFuelCombustion/content.json +1 -0
  74. package/dist/content/models/cycleEmissions/fuel/blackCarbonToAirFuelCombustion/emepEea2019.json +1 -0
  75. package/dist/content/models/cycleEmissions/fuel/ch4ToAirFuelCombustion/content.json +1 -0
  76. package/dist/content/models/cycleEmissions/fuel/ch4ToAirFuelCombustion/emepEea2019.json +1 -0
  77. package/dist/content/models/cycleEmissions/fuel/coToAirFuelCombustion/content.json +1 -0
  78. package/dist/content/models/cycleEmissions/fuel/coToAirFuelCombustion/emepEea2019.json +1 -0
  79. package/dist/content/models/cycleEmissions/fuel/nmvocToAirFuelCombustion/content.json +1 -0
  80. package/dist/content/models/cycleEmissions/fuel/nmvocToAirFuelCombustion/emepEea2019.json +1 -0
  81. package/dist/content/models/cycleEmissions/fuel/pm10ToAirFuelCombustion/content.json +1 -0
  82. package/dist/content/models/cycleEmissions/fuel/pm10ToAirFuelCombustion/emepEea2019.json +1 -0
  83. package/dist/content/models/cycleEmissions/fuel/pm25ToAirFuelCombustion/content.json +1 -0
  84. package/dist/content/models/cycleEmissions/fuel/pm25ToAirFuelCombustion/emepEea2019.json +1 -0
  85. package/dist/content/models/cycleEmissions/fuel/tspToAirFuelCombustion/content.json +1 -0
  86. package/dist/content/models/cycleEmissions/fuel/tspToAirFuelCombustion/emepEea2019.json +1 -0
  87. package/dist/content/models/cycleEmissions/inputs/cycle-inputs-background-emissions/content.json +1 -1
  88. package/dist/content/models/cycleEmissions/inputs/cycle-inputs-background-emissions/ecoaliMv9.json +1 -1
  89. package/dist/content/models/cycleEmissions/inputs/cycle-inputs-background-emissions/ecoinventv3.json +1 -1
  90. package/dist/content/models/cycleEmissions/inputs/cycle-inputs-background-emissions/ecoinventv3AndEmberClimate.json +1 -1
  91. package/dist/content/models/cycleEmissions/landUseChange/co2ToAirAboveGroundBiomassStockChange/content.json +1 -1
  92. package/dist/content/models/cycleEmissions/landUseChange/co2ToAirAboveGroundBiomassStockChange/ipcc2019.json +1 -1
  93. package/dist/content/models/cycleEmissions/landUseChange/co2ToAirBelowGroundBiomassStockChange/content.json +1 -1
  94. package/dist/content/models/cycleEmissions/landUseChange/co2ToAirBelowGroundBiomassStockChange/ipcc2019.json +1 -1
  95. package/dist/content/models/cycleEmissions/landUseChange/emissionsToAirOrganicSoilBurning/content.json +1 -0
  96. package/dist/content/models/cycleEmissions/landUseChange/emissionsToAirOrganicSoilBurning/ipcc2019.json +1 -0
  97. package/dist/content/models/cycleEmissions/landUseChange/nonCo2EmissionsToAirNaturalVegetationBurning/content.json +1 -1
  98. package/dist/content/models/cycleEmissions/landUseChange/nonCo2EmissionsToAirNaturalVegetationBurning/ipcc2019.json +1 -0
  99. package/dist/content/models/cycleEmissions/organicSoil/ch4ToAirOrganicSoilCultivation/content.json +1 -1
  100. package/dist/content/models/cycleEmissions/organicSoil/ch4ToAirOrganicSoilCultivation/ipcc2019.json +1 -1
  101. package/dist/content/models/cycleEmissions/organicSoil/co2ToAirOrganicSoilCultivation/content.json +1 -1
  102. package/dist/content/models/cycleEmissions/organicSoil/co2ToAirOrganicSoilCultivation/ipcc2019.json +1 -1
  103. package/dist/content/models/cycleEmissions/organicSoil/n2OToAirOrganicSoilCultivationDirect/content.json +1 -1
  104. package/dist/content/models/cycleEmissions/organicSoil/n2OToAirOrganicSoilCultivationDirect/ipcc2019.json +1 -1
  105. package/dist/content/models/cycleEmissions/pesticide/content.json +1 -0
  106. package/dist/content/models/cycleEmissions/pesticide/pesticideToAirPesticideApplication/content.json +1 -0
  107. package/dist/content/models/cycleEmissions/pesticide/pesticideToAirPesticideApplication/pefcrGuidanceDocument2017.json +1 -0
  108. package/dist/content/models/cycleEmissions/pesticide/pesticideToSoilPesticideApplication/content.json +1 -0
  109. package/dist/content/models/cycleEmissions/pesticide/pesticideToSoilPesticideApplication/pefcrGuidanceDocument2017.json +1 -0
  110. package/dist/content/models/cycleEmissions/pesticide/pesticideToWaterPesticideApplication/content.json +1 -0
  111. package/dist/content/models/cycleEmissions/pesticide/pesticideToWaterPesticideApplication/pefcrGuidanceDocument2017.json +1 -0
  112. package/dist/content/models/cycleEmissions/soil/co2ToAirBiocharStockChange/content.json +1 -1
  113. package/dist/content/models/cycleEmissions/soil/co2ToAirBiocharStockChange/ipcc2019.json +1 -1
  114. package/dist/content/models/cycleEmissions/soil/co2ToAirSoilOrganicCarbonStockChange/content.json +1 -0
  115. package/dist/content/models/cycleEmissions/soil/co2ToAirSoilOrganicCarbonStockChange/ipcc2019.json +1 -0
  116. package/dist/content/models/cycleGeneral/cycle-endDate/content.json +1 -1
  117. package/dist/content/models/cycleGeneral/cycle-endDate/cycle.json +1 -1
  118. package/dist/content/models/cycleGeneral/cycle-otherSitesUnusedDuration/content.json +1 -1
  119. package/dist/content/models/cycleGeneral/cycle-otherSitesUnusedDuration/cycle.json +1 -1
  120. package/dist/content/models/cycleGeneral/cycle-siteUnusedDuration/content.json +1 -1
  121. package/dist/content/models/cycleGeneral/cycle-siteUnusedDuration/cycle.json +1 -1
  122. package/dist/content/models/cycleGeneral/cycle-startDate/content.json +1 -1
  123. package/dist/content/models/cycleGeneral/cycle-startDate/cycle.json +1 -1
  124. package/dist/content/models/cycleGeneral/cycle-startDateDefinition/content.json +1 -1
  125. package/dist/content/models/cycleGeneral/cycle-startDateDefinition/cycle.json +1 -1
  126. package/dist/content/models/cycleInputs/cycle-input-hestiaAggregatedData/content.json +1 -1
  127. package/dist/content/models/cycleInputs/cycle-input-hestiaAggregatedData/cycle.json +1 -1
  128. package/dist/content/models/cycleInputs/cycle-input-properties/content.json +1 -1
  129. package/dist/content/models/cycleInputs/cycle-input-properties/cycle.json +1 -1
  130. package/dist/content/models/cycleInputs/cycle-input-value/content.json +1 -1
  131. package/dist/content/models/cycleInputs/cycle-input-value/cycle.json +1 -1
  132. package/dist/content/models/cycleInputs/ipcc2019-pastureGrass/content.json +1 -1
  133. package/dist/content/models/cycleInputs/ipcc2019-pastureGrass/ipcc2019.json +1 -1
  134. package/dist/content/models/cycleInputs/machineryInfrastructureDepreciatedAmountPerCycle/agribalyse2016.json +1 -1
  135. package/dist/content/models/cycleInputs/machineryInfrastructureDepreciatedAmountPerCycle/content.json +1 -1
  136. package/dist/content/models/cycleInputs/saplingsDepreciatedAmountPerCycle/pooreNemecek2018.json +1 -1
  137. package/dist/content/models/cycleInputs/seed/faostat2018.json +1 -1
  138. package/dist/content/models/cyclePractices/cycle-practice-value/content.json +1 -1
  139. package/dist/content/models/cyclePractices/cycle-practice-value/cycle.json +1 -1
  140. package/dist/content/models/cyclePractices/hestia-pastureSystem/content.json +1 -1
  141. package/dist/content/models/cyclePractices/hestia-pastureSystem/hestia.json +1 -1
  142. package/dist/content/models/cyclePractices/koble2014-cropResidueManagement/content.json +1 -1
  143. package/dist/content/models/cyclePractices/koble2014-cropResidueManagement/koble2014.json +1 -1
  144. package/dist/content/models/cyclePractices/pastureGrass/content.json +1 -1
  145. package/dist/content/models/cyclePractices/pastureGrass/hestia.json +1 -1
  146. package/dist/content/models/cycleProducts/aboveGroundCropResidue/content.json +1 -1
  147. package/dist/content/models/cycleProducts/aboveGroundCropResidue/hestia.json +1 -1
  148. package/dist/content/models/cycleProducts/aboveGroundCropResidueTotal/hestia.json +1 -1
  149. package/dist/content/models/cycleProducts/cycle-product-value/content.json +1 -1
  150. package/dist/content/models/cycleProducts/cycle-product-value/cycle.json +1 -1
  151. package/dist/content/models/cycleProducts/excretaKgN/pooreNemecek2018.json +1 -1
  152. package/dist/content/models/cycleProducts/excretaKgVs/pooreNemecek2018.json +1 -1
  153. package/dist/content/models/cycleTransformations/transformation-input-max/content.json +1 -1
  154. package/dist/content/models/cycleTransformations/transformation-input-max/transformation.json +1 -1
  155. package/dist/content/models/cycleTransformations/transformation-input-min/content.json +1 -1
  156. package/dist/content/models/cycleTransformations/transformation-input-min/transformation.json +1 -1
  157. package/dist/content/models/cycleTransformations/transformation-input-properties/content.json +1 -1
  158. package/dist/content/models/cycleTransformations/transformation-input-properties/transformation.json +1 -1
  159. package/dist/content/models/cycleTransformations/transformation-input-sd/content.json +1 -1
  160. package/dist/content/models/cycleTransformations/transformation-input-sd/transformation.json +1 -1
  161. package/dist/content/models/cycleTransformations/transformation-input-value/content.json +1 -1
  162. package/dist/content/models/cycleTransformations/transformation-input-value/transformation.json +1 -1
  163. package/dist/content/models/cycleTransport/haversineFormula-transport-distance/content.json +1 -1
  164. package/dist/content/models/cycleTransport/haversineFormula-transport-distance/haversineformula.json +1 -1
  165. package/dist/content/models/impactAssessmentEmissions/impact-assessment-emissions/content.json +1 -1
  166. package/dist/content/models/impactAssessmentEmissions/impact-assessment-emissions/impactAssessment.json +1 -1
  167. package/dist/content/models/impactAssessmentGeneral/impact-assessment-irrigated/content.json +1 -1
  168. package/dist/content/models/impactAssessmentGeneral/impact-assessment-irrigated/impactAssessment.json +1 -1
  169. package/dist/content/models/impactAssessmentGeneral/impact-assessment-organic/content.json +1 -1
  170. package/dist/content/models/impactAssessmentGeneral/impact-assessment-organic/impactAssessment.json +1 -1
  171. package/dist/content/models/impactAssessmentGeneral/impact-assessment-product-economicValueShare/content.json +1 -1
  172. package/dist/content/models/impactAssessmentGeneral/impact-assessment-product-economicValueShare/impactAssessment.json +1 -1
  173. package/dist/content/models/impactAssessmentGeneral/impact-assessment-product-value/content.json +1 -1
  174. package/dist/content/models/impactAssessmentGeneral/impact-assessment-product-value/impactAssessment.json +1 -1
  175. package/dist/content/models/impactAssessmentImpacts/damageToHumanHealthParticulateMatterFormation/fantkeetal2016.json +1 -1
  176. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/abioticResourceDepletionFossilFuels/cml2001Baseline.json +1 -0
  177. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/abioticResourceDepletionFossilFuels/content.json +1 -0
  178. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/abioticResourceDepletionMineralsAndMetals/cml2001Baseline.json +1 -0
  179. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/abioticResourceDepletionMineralsAndMetals/content.json +1 -0
  180. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/content.json +1 -0
  181. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/environmentalFootprintSingleOverallScore/content.json +1 -0
  182. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/environmentalFootprintSingleOverallScore/environmentalFootprintv31.json +1 -0
  183. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/ionisingRadiationKbqU235Eq/content.json +1 -0
  184. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/ionisingRadiationKbqU235Eq/frischknechtetal2000.json +1 -0
  185. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/photochemicalOzoneCreationPotentialHumanHealthNmvocEq/content.json +1 -0
  186. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/photochemicalOzoneCreationPotentialHumanHealthNmvocEq/lotosEuroSmodel.json +1 -0
  187. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/soilQualityIndexLandOccupation/content.json +1 -0
  188. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/soilQualityIndexLandOccupation/environmentalFootprintv31.json +1 -0
  189. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/soilQualityIndexLandTransformation/content.json +1 -0
  190. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/soilQualityIndexLandTransformation/environmentalFootprintv31.json +1 -0
  191. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/soilQualityIndexTotalLandUseEffects/content.json +1 -0
  192. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/soilQualityIndexTotalLandUseEffects/environmentalFootprintv31.json +1 -0
  193. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/terrestrialAcidificationPotentialAccumulatedExceedance/content.json +1 -0
  194. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/terrestrialAcidificationPotentialAccumulatedExceedance/poschetal2008.json +1 -0
  195. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/terrestrialEutrophicationPotentialAccumulatedExceedance/content.json +1 -0
  196. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintv31/terrestrialEutrophicationPotentialAccumulatedExceedance/poschetal2008.json +1 -0
  197. package/dist/content/models/impactAssessmentImpacts/freshwaterEcotoxicityPotentialCtue/environmentalFootprintv31.json +1 -1
  198. package/dist/content/models/impactAssessmentImpacts/gwp100/ipcc2021.json +1 -1
  199. package/dist/content/models/impactAssessmentImpacts/marineEutrophicationPotential/eutrenDmodel.json +1 -0
  200. package/dist/content/models/impactAssessmentImpacts/ozoneDepletionPotential/content.json +1 -1
  201. package/dist/content/models/impactAssessmentImpacts/ozoneDepletionPotential/edip2003.json +1 -1
  202. package/dist/content/models/impactAssessmentImpacts/scarcityWeightedWaterUse/environmentalFootprintv31.json +1 -1
  203. package/dist/content/models/impactAssessmentResourceUse/landTransformation/landTransformation20YearAverageDuringCycle/content.json +1 -1
  204. package/dist/content/models/impactAssessmentResourceUse/landTransformation/landTransformation20YearAverageDuringCycle/hestia.json +1 -1
  205. package/dist/content/models/siteGeneral/site-measurement-value/content.json +1 -1
  206. package/dist/content/models/siteGeneral/site-measurement-value/site.json +1 -1
  207. package/dist/content/models/siteManagement/landUse/hestia-management/content.json +1 -1
  208. package/dist/content/models/siteManagement/landUse/hestia-management/hestia.json +1 -1
  209. package/dist/content/models/siteMeasurements/climate/ecoClimateZone/content.json +1 -1
  210. package/dist/content/models/siteMeasurements/climate/ecoClimateZone/geospatialDatabase.json +1 -1
  211. package/dist/content/models/siteMeasurements/climate/heavyWinterPrecipitation/geospatialDatabase.json +1 -1
  212. package/dist/content/models/siteMeasurements/climate/potentialEvapotranspirationAnnual/geospatialDatabase.json +1 -1
  213. package/dist/content/models/siteMeasurements/climate/potentialEvapotranspirationMonthly/geospatialDatabase.json +1 -1
  214. package/dist/content/models/siteMeasurements/climate/precipitationAnnual/geospatialDatabase.json +1 -1
  215. package/dist/content/models/siteMeasurements/climate/precipitationLongTermAnnualMean/geospatialDatabase.json +1 -1
  216. package/dist/content/models/siteMeasurements/climate/precipitationMonthly/geospatialDatabase.json +1 -1
  217. package/dist/content/models/siteMeasurements/climate/temperatureAnnual/geospatialDatabase.json +1 -1
  218. package/dist/content/models/siteMeasurements/climate/temperatureLongTermAnnualMean/geospatialDatabase.json +1 -1
  219. package/dist/content/models/siteMeasurements/climate/temperatureMonthly/geospatialDatabase.json +1 -1
  220. package/dist/content/models/siteMeasurements/landUseChange/aboveGroundBiomass/content.json +1 -1
  221. package/dist/content/models/siteMeasurements/landUseChange/aboveGroundBiomass/ipcc2019.json +1 -1
  222. package/dist/content/models/siteMeasurements/landUseChange/belowGroundBiomass/content.json +1 -1
  223. package/dist/content/models/siteMeasurements/landUseChange/belowGroundBiomass/ipcc2019.json +1 -1
  224. package/dist/content/models/siteMeasurements/other/nutrientLossToAquaticEnvironment/geospatialDatabase.json +1 -1
  225. package/dist/content/models/siteMeasurements/soil/histosol/geospatialDatabase.json +1 -1
  226. package/dist/content/models/siteMeasurements/soil/organicCarbonPerHa/content.json +1 -1
  227. package/dist/content/models/siteMeasurements/soil/organicCarbonPerHa/hestia.json +1 -1
  228. package/dist/content/models/siteMeasurements/soil/organicCarbonPerHa/ipcc2019Tier1.json +1 -1
  229. package/dist/content/models/siteMeasurements/soil/organicCarbonPerHa/ipcc2019Tier2.json +1 -1
  230. package/dist/content/models/siteMeasurements/soil/organicCarbonPerHa/overview.json +1 -1
  231. package/dist/content/models/siteMeasurements/soil/siltContent/geospatialDatabase.json +1 -1
  232. package/dist/content/models/siteMeasurements/soil/soilClassification/content.json +1 -1
  233. package/dist/content/models/siteMeasurements/soil/soilClassification/hestia.json +1 -1
  234. package/dist/content/models/siteMeasurements/soil/totalPhosphorusPerKgSoil/geospatialDatabase.json +1 -1
  235. package/json_models/agribalyse2016/fuelElectricity.py.json +26 -0
  236. package/json_models/agribalyse2016/machineryInfrastructureDepreciatedAmountPerCycle.py.json +31 -0
  237. package/json_models/akagiEtAl2011/ch4ToAirCropResidueBurning.py.json +35 -0
  238. package/json_models/akagiEtAl2011/nh3ToAirCropResidueBurning.py.json +35 -0
  239. package/json_models/akagiEtAl2011/noxToAirCropResidueBurning.py.json +35 -0
  240. package/json_models/akagiEtAl2011/pm25ToAirCropResidueBurning.py.json +35 -0
  241. package/json_models/akagiEtAl2011/so2ToAirCropResidueBurning.py.json +35 -0
  242. package/json_models/aware/scarcityWeightedWaterUse.py.json +45 -0
  243. package/json_models/aware2_0/scarcityWeightedWaterUse.py.json +45 -0
  244. package/json_models/chaudharyBrooks2018/damageToTerrestrialEcosystemsLandOccupation.py.json +86 -0
  245. package/json_models/chaudharyBrooks2018/damageToTerrestrialEcosystemsLandTransformation.py.json +47 -0
  246. package/json_models/chaudharyBrooks2018/damageToTerrestrialEcosystemsTotalLandUseEffects.py.json +34 -0
  247. package/json_models/cml2001Baseline/abioticResourceDepletionFossilFuels.py.json +41 -0
  248. package/json_models/cml2001Baseline/abioticResourceDepletionMineralsAndMetals.py.json +39 -0
  249. package/json_models/cml2001Baseline/eutrophicationPotentialExcludingFate.py.json +21 -0
  250. package/json_models/cml2001Baseline/resourceUseEnergyDepletionDuringCycle.py.json +52 -0
  251. package/json_models/cml2001Baseline/resourceUseEnergyDepletionInputsProduction.py.json +46 -0
  252. package/json_models/cml2001Baseline/resourceUseMineralsAndMetalsDuringCycle.py.json +25 -0
  253. package/json_models/cml2001Baseline/resourceUseMineralsAndMetalsInputsProduction.py.json +46 -0
  254. package/json_models/cml2001Baseline/terrestrialAcidificationPotentialIncludingFateAverageEurope.py.json +21 -0
  255. package/json_models/cml2001NonBaseline/eutrophicationPotentialIncludingFateAverageEurope.py.json +21 -0
  256. package/json_models/cml2001NonBaseline/terrestrialAcidificationPotentialExcludingFate.py.json +21 -0
  257. package/json_models/cycle/aboveGroundCropResidueTotal.py.json +26 -0
  258. package/json_models/cycle/animal/input/hestiaAggregatedData.py.json +47 -0
  259. package/json_models/cycle/animal/input/properties.py.json +49 -0
  260. package/json_models/cycle/animal/milkYield.py.json +33 -0
  261. package/json_models/cycle/animal/properties.py.json +25 -0
  262. package/json_models/cycle/completeness/animalFeed.py.json +19 -0
  263. package/json_models/cycle/completeness/cropResidue.py.json +48 -0
  264. package/json_models/cycle/completeness/electricityFuel.py.json +26 -0
  265. package/json_models/cycle/completeness/excreta.py.json +29 -0
  266. package/json_models/cycle/completeness/freshForage.py.json +47 -0
  267. package/json_models/cycle/completeness/material.py.json +24 -0
  268. package/json_models/cycle/completeness/seed.py.json +32 -0
  269. package/json_models/cycle/completeness/soilAmendment.py.json +23 -0
  270. package/json_models/cycle/cycleDuration.py.json +30 -0
  271. package/json_models/cycle/endDate.py.json +13 -0
  272. package/json_models/cycle/input/hestiaAggregatedData.py.json +72 -0
  273. package/json_models/cycle/input/properties.py.json +39 -0
  274. package/json_models/cycle/input/value.py.json +20 -0
  275. package/json_models/cycle/otherSitesArea.py.json +34 -0
  276. package/json_models/cycle/otherSitesUnusedDuration.py.json +29 -0
  277. package/json_models/cycle/post_checks/cache.py.json +8 -0
  278. package/json_models/cycle/post_checks/otherSites.py.json +21 -0
  279. package/json_models/cycle/post_checks/site.py.json +17 -0
  280. package/json_models/cycle/practice/landCover.py.json +58 -0
  281. package/json_models/cycle/practice/value.py.json +20 -0
  282. package/json_models/cycle/pre_checks/cache_sources.py.json +8 -0
  283. package/json_models/cycle/pre_checks/otherSites.py.json +21 -0
  284. package/json_models/cycle/pre_checks/site.py.json +17 -0
  285. package/json_models/cycle/product/currency.py.json +23 -0
  286. package/json_models/cycle/product/economicValueShare.py.json +35 -0
  287. package/json_models/cycle/product/price.py.json +32 -0
  288. package/json_models/cycle/product/primary.py.json +19 -0
  289. package/json_models/cycle/product/properties.py.json +36 -0
  290. package/json_models/cycle/product/revenue.py.json +26 -0
  291. package/json_models/cycle/product/value.py.json +20 -0
  292. package/json_models/cycle/siteArea.py.json +35 -0
  293. package/json_models/cycle/siteDuration.py.json +27 -0
  294. package/json_models/cycle/siteUnusedDuration.py.json +24 -0
  295. package/json_models/cycle/startDate.py.json +14 -0
  296. package/json_models/cycle/startDateDefinition.py.json +20 -0
  297. package/json_models/cycle/transformation.py.json +26 -0
  298. package/json_models/dammgen2009/noxToAirExcreta.py.json +21 -0
  299. package/json_models/data/hestiaAggregatedData/__init__.py.json +3 -0
  300. package/json_models/deRuijterEtAl2010/nh3ToAirCropResidueDecomposition.py.json +38 -0
  301. package/json_models/ecoalimV9/cycle.py.json +54 -0
  302. package/json_models/ecoalimV9/impact_assessment.py.json +55 -0
  303. package/json_models/ecoinventV3/cycle.py.json +57 -0
  304. package/json_models/ecoinventV3AndEmberClimate/cycle.py.json +71 -0
  305. package/json_models/edip2003/ozoneDepletionPotential.py.json +23 -0
  306. package/json_models/emepEea2019/blackCarbonToAirFuelCombustion.py.json +33 -0
  307. package/json_models/emepEea2019/ch4ToAirFuelCombustion.py.json +33 -0
  308. package/json_models/emepEea2019/co2ToAirFuelCombustion.py.json +33 -0
  309. package/json_models/emepEea2019/coToAirFuelCombustion.py.json +33 -0
  310. package/json_models/emepEea2019/n2OToAirFuelCombustionDirect.py.json +33 -0
  311. package/json_models/emepEea2019/nh3ToAirExcreta.py.json +40 -0
  312. package/json_models/emepEea2019/nh3ToAirFuelCombustion.py.json +33 -0
  313. package/json_models/emepEea2019/nh3ToAirInorganicFertiliser.py.json +69 -0
  314. package/json_models/emepEea2019/nmvocToAirFuelCombustion.py.json +33 -0
  315. package/json_models/emepEea2019/noxToAirFuelCombustion.py.json +33 -0
  316. package/json_models/emepEea2019/pm10ToAirAnimalHousing.py.json +39 -0
  317. package/json_models/emepEea2019/pm10ToAirFuelCombustion.py.json +33 -0
  318. package/json_models/emepEea2019/pm25ToAirAnimalHousing.py.json +39 -0
  319. package/json_models/emepEea2019/pm25ToAirFuelCombustion.py.json +33 -0
  320. package/json_models/emepEea2019/so2ToAirFuelCombustion.py.json +33 -0
  321. package/json_models/emepEea2019/tspToAirAnimalHousing.py.json +39 -0
  322. package/json_models/emepEea2019/tspToAirFuelCombustion.py.json +33 -0
  323. package/json_models/emissionNotRelevant/__init__.py.json +33 -0
  324. package/json_models/environmentalFootprintV3_1/environmentalFootprintSingleOverallScore.py.json +26 -0
  325. package/json_models/environmentalFootprintV3_1/freshwaterEcotoxicityPotentialCtue.py.json +25 -0
  326. package/json_models/environmentalFootprintV3_1/marineEutrophicationPotential.py.json +21 -0
  327. package/json_models/environmentalFootprintV3_1/photochemicalOzoneCreationPotentialHumanHealthNmvocEq.py.json +21 -0
  328. package/json_models/environmentalFootprintV3_1/scarcityWeightedWaterUse.py.json +27 -0
  329. package/json_models/environmentalFootprintV3_1/soilQualityIndexLandOccupation.py.json +37 -0
  330. package/json_models/environmentalFootprintV3_1/soilQualityIndexLandTransformation.py.json +54 -0
  331. package/json_models/environmentalFootprintV3_1/soilQualityIndexTotalLandUseEffects.py.json +25 -0
  332. package/json_models/epa2014/no3ToGroundwaterExcreta.py.json +24 -0
  333. package/json_models/fantkeEtAl2016/damageToHumanHealthParticulateMatterFormation.py.json +21 -0
  334. package/json_models/faostat2018/coldCarcassWeightPerHead.py.json +38 -0
  335. package/json_models/faostat2018/coldDressedCarcassWeightPerHead.py.json +38 -0
  336. package/json_models/faostat2018/liveweightPerHead.py.json +46 -0
  337. package/json_models/faostat2018/product/price.py.json +45 -0
  338. package/json_models/faostat2018/readyToCookWeightPerHead.py.json +38 -0
  339. package/json_models/faostat2018/seed.py.json +29 -0
  340. package/json_models/frischknechtEtAl2000/ionisingRadiationKbqU235Eq.py.json +38 -0
  341. package/json_models/geospatialDatabase/altitude.py.json +36 -0
  342. package/json_models/geospatialDatabase/awareWaterBasinId.py.json +29 -0
  343. package/json_models/geospatialDatabase/awareWaterBasinId_v1.py.json +29 -0
  344. package/json_models/geospatialDatabase/clayContent.py.json +43 -0
  345. package/json_models/geospatialDatabase/croppingIntensity.py.json +56 -0
  346. package/json_models/geospatialDatabase/drainageClass.py.json +34 -0
  347. package/json_models/geospatialDatabase/ecoClimateZone.py.json +38 -0
  348. package/json_models/geospatialDatabase/ecoregion.py.json +29 -0
  349. package/json_models/geospatialDatabase/erodibility.py.json +34 -0
  350. package/json_models/geospatialDatabase/heavyWinterPrecipitation.py.json +34 -0
  351. package/json_models/geospatialDatabase/histosol.py.json +50 -0
  352. package/json_models/geospatialDatabase/longFallowRatio.py.json +56 -0
  353. package/json_models/geospatialDatabase/nutrientLossToAquaticEnvironment.py.json +34 -0
  354. package/json_models/geospatialDatabase/organicCarbonPerKgSoil.py.json +31 -0
  355. package/json_models/geospatialDatabase/potentialEvapotranspirationAnnual.py.json +38 -0
  356. package/json_models/geospatialDatabase/potentialEvapotranspirationLongTermAnnualMean.py.json +31 -0
  357. package/json_models/geospatialDatabase/potentialEvapotranspirationMonthly.py.json +37 -0
  358. package/json_models/geospatialDatabase/precipitationAnnual.py.json +38 -0
  359. package/json_models/geospatialDatabase/precipitationLongTermAnnualMean.py.json +31 -0
  360. package/json_models/geospatialDatabase/precipitationMonthly.py.json +37 -0
  361. package/json_models/geospatialDatabase/region.py.json +19 -0
  362. package/json_models/geospatialDatabase/sandContent.py.json +43 -0
  363. package/json_models/geospatialDatabase/siltContent.py.json +32 -0
  364. package/json_models/geospatialDatabase/slope.py.json +34 -0
  365. package/json_models/geospatialDatabase/slopeLength.py.json +34 -0
  366. package/json_models/geospatialDatabase/soilPh.py.json +31 -0
  367. package/json_models/geospatialDatabase/temperatureAnnual.py.json +38 -0
  368. package/json_models/geospatialDatabase/temperatureLongTermAnnualMean.py.json +31 -0
  369. package/json_models/geospatialDatabase/temperatureMonthly.py.json +37 -0
  370. package/json_models/geospatialDatabase/totalNitrogenPerKgSoil.py.json +31 -0
  371. package/json_models/geospatialDatabase/totalPhosphorusPerKgSoil.py.json +36 -0
  372. package/json_models/geospatialDatabase/utils.py.json +12 -0
  373. package/json_models/geospatialDatabase/waterDepth.py.json +34 -0
  374. package/json_models/globalCropWaterModel2008/rootingDepth.py.json +43 -0
  375. package/json_models/haversineFormula/transport/distance.py.json +39 -0
  376. package/json_models/hestia/aboveGroundCropResidue.py.json +26 -0
  377. package/json_models/hestia/aboveGroundCropResidueTotal.py.json +27 -0
  378. package/json_models/hestia/brackishWater.py.json +21 -0
  379. package/json_models/hestia/cationExchangeCapacityPerKgSoil.py.json +33 -0
  380. package/json_models/hestia/coldCarcassWeightPerHead.py.json +38 -0
  381. package/json_models/hestia/coldDressedCarcassWeightPerHead.py.json +38 -0
  382. package/json_models/hestia/concentrateFeed.py.json +46 -0
  383. package/json_models/hestia/cropResidueManagement.py.json +21 -0
  384. package/json_models/hestia/croppingIntensity.py.json +18 -0
  385. package/json_models/hestia/default_emissions.py.json +32 -0
  386. package/json_models/hestia/default_resourceUse.py.json +34 -0
  387. package/json_models/hestia/energyContentLowerHeatingValue.py.json +34 -0
  388. package/json_models/hestia/excretaKgMass.py.json +26 -0
  389. package/json_models/hestia/excretaKgN.py.json +22 -0
  390. package/json_models/hestia/excretaKgVs.py.json +24 -0
  391. package/json_models/hestia/feedConversionRatio/feedConversionRatioCarbon.py.json +83 -0
  392. package/json_models/hestia/feedConversionRatio/feedConversionRatioDryMatter.py.json +89 -0
  393. package/json_models/hestia/feedConversionRatio/feedConversionRatioEnergy.py.json +83 -0
  394. package/json_models/hestia/feedConversionRatio/feedConversionRatioFedWeight.py.json +80 -0
  395. package/json_models/hestia/feedConversionRatio/feedConversionRatioNitrogen.py.json +93 -0
  396. package/json_models/hestia/flowingWater.py.json +20 -0
  397. package/json_models/hestia/freshWater.py.json +21 -0
  398. package/json_models/hestia/histosol.py.json +28 -0
  399. package/json_models/hestia/inorganicFertiliser.py.json +38 -0
  400. package/json_models/hestia/irrigatedTypeUnspecified.py.json +35 -0
  401. package/json_models/hestia/landCover.py.json +65 -0
  402. package/json_models/hestia/landOccupationDuringCycle.py.json +50 -0
  403. package/json_models/hestia/landTransformation100YearAverageDuringCycle.py.json +47 -0
  404. package/json_models/hestia/landTransformation20YearAverageDuringCycle.py.json +47 -0
  405. package/json_models/hestia/liveAnimal.py.json +44 -0
  406. package/json_models/hestia/longFallowRatio.py.json +25 -0
  407. package/json_models/hestia/management.py.json +76 -0
  408. package/json_models/hestia/materialAndSubstrate.py.json +42 -0
  409. package/json_models/hestia/milkYield.py.json +51 -0
  410. package/json_models/hestia/netPrimaryProduction.py.json +21 -0
  411. package/json_models/hestia/organicCarbonPerHa.py.json +42 -0
  412. package/json_models/hestia/organicCarbonPerKgSoil.py.json +24 -0
  413. package/json_models/hestia/organicCarbonPerM3Soil.py.json +24 -0
  414. package/json_models/hestia/organicMatterPerKgSoil.py.json +24 -0
  415. package/json_models/hestia/organicMatterPerM3Soil.py.json +24 -0
  416. package/json_models/hestia/pToSurfaceWaterAquacultureSystems.py.json +82 -0
  417. package/json_models/hestia/pastureGrass.py.json +16 -0
  418. package/json_models/hestia/pastureSystem.py.json +27 -0
  419. package/json_models/hestia/potentialEvapotranspirationAnnual.py.json +22 -0
  420. package/json_models/hestia/potentialEvapotranspirationMonthly.py.json +21 -0
  421. package/json_models/hestia/precipitationAnnual.py.json +22 -0
  422. package/json_models/hestia/precipitationMonthly.py.json +21 -0
  423. package/json_models/hestia/rainfallAnnual.py.json +22 -0
  424. package/json_models/hestia/rainfallMonthly.py.json +21 -0
  425. package/json_models/hestia/readyToCookWeightPerHead.py.json +38 -0
  426. package/json_models/hestia/residueBurnt.py.json +26 -0
  427. package/json_models/hestia/residueIncorporated.py.json +37 -0
  428. package/json_models/hestia/residueLeftOnField.py.json +26 -0
  429. package/json_models/hestia/residueRemoved.py.json +50 -0
  430. package/json_models/hestia/salineWater.py.json +21 -0
  431. package/json_models/hestia/seed_emissions.py.json +68 -0
  432. package/json_models/hestia/slope.py.json +26 -0
  433. package/json_models/hestia/slopeLength.py.json +26 -0
  434. package/json_models/hestia/soilClassification.py.json +42 -0
  435. package/json_models/hestia/soilMeasurement.py.json +31 -0
  436. package/json_models/hestia/stockingDensityAnimalHousingAverage.py.json +23 -0
  437. package/json_models/hestia/temperatureAnnual.py.json +22 -0
  438. package/json_models/hestia/temperatureMonthly.py.json +21 -0
  439. package/json_models/hestia/totalNitrogenPerKgSoil.py.json +23 -0
  440. package/json_models/hestia/unknownPreSeasonWaterRegime.py.json +27 -0
  441. package/json_models/hestia/waterDepth.py.json +13 -0
  442. package/json_models/hestia/waterSalinity.py.json +49 -0
  443. package/json_models/impact_assessment/allocationMethod.py.json +19 -0
  444. package/json_models/impact_assessment/emissions.py.json +35 -0
  445. package/json_models/impact_assessment/irrigated.py.json +22 -0
  446. package/json_models/impact_assessment/organic.py.json +22 -0
  447. package/json_models/impact_assessment/post_checks/cycle.py.json +17 -0
  448. package/json_models/impact_assessment/post_checks/site.py.json +17 -0
  449. package/json_models/impact_assessment/pre_checks/cycle.py.json +17 -0
  450. package/json_models/impact_assessment/pre_checks/site.py.json +17 -0
  451. package/json_models/impact_assessment/product/economicValueShare.py.json +26 -0
  452. package/json_models/impact_assessment/product/value.py.json +26 -0
  453. package/json_models/ipcc2006/aboveGroundCropResidueRemoved.py.json +32 -0
  454. package/json_models/ipcc2006/aboveGroundCropResidueTotal.py.json +35 -0
  455. package/json_models/ipcc2006/belowGroundCropResidue.py.json +36 -0
  456. package/json_models/ipcc2006/n2OToAirCropResidueDecompositionDirect.py.json +43 -0
  457. package/json_models/ipcc2006/n2OToAirCropResidueDecompositionIndirect.py.json +32 -0
  458. package/json_models/ipcc2006/n2OToAirExcretaDirect.py.json +31 -0
  459. package/json_models/ipcc2006/n2OToAirExcretaIndirect.py.json +32 -0
  460. package/json_models/ipcc2006/n2OToAirInorganicFertiliserDirect.py.json +50 -0
  461. package/json_models/ipcc2006/n2OToAirInorganicFertiliserIndirect.py.json +64 -0
  462. package/json_models/ipcc2006/n2OToAirOrganicFertiliserDirect.py.json +46 -0
  463. package/json_models/ipcc2006/n2OToAirOrganicFertiliserIndirect.py.json +60 -0
  464. package/json_models/ipcc2006/utils.py.json +14 -0
  465. package/json_models/ipcc2013ExcludingFeedbacks/gwp100.py.json +21 -0
  466. package/json_models/ipcc2013IncludingFeedbacks/gwp100.py.json +21 -0
  467. package/json_models/ipcc2019/aboveGroundBiomass.py.json +76 -0
  468. package/json_models/ipcc2019/aboveGroundCropResidueTotal.py.json +37 -0
  469. package/json_models/ipcc2019/animal/fatContent.py.json +41 -0
  470. package/json_models/ipcc2019/animal/hoursWorkedPerDay.py.json +43 -0
  471. package/json_models/ipcc2019/animal/liveweightGain.py.json +43 -0
  472. package/json_models/ipcc2019/animal/liveweightPerHead.py.json +43 -0
  473. package/json_models/ipcc2019/animal/milkYieldPerAnimal.py.json +44 -0
  474. package/json_models/ipcc2019/animal/pastureGrass.py.json +164 -0
  475. package/json_models/ipcc2019/animal/pregnancyRateTotal.py.json +43 -0
  476. package/json_models/ipcc2019/animal/trueProteinContent.py.json +41 -0
  477. package/json_models/ipcc2019/animal/weightAtMaturity.py.json +52 -0
  478. package/json_models/ipcc2019/belowGroundBiomass.py.json +65 -0
  479. package/json_models/ipcc2019/belowGroundCropResidue.py.json +43 -0
  480. package/json_models/ipcc2019/biocharOrganicCarbonPerHa.py.json +49 -0
  481. package/json_models/ipcc2019/biomass_utils.py.json +30 -0
  482. package/json_models/ipcc2019/burning_utils.py.json +8 -0
  483. package/json_models/ipcc2019/carbonContent.py.json +56 -0
  484. package/json_models/ipcc2019/ch4ToAirAquacultureSystems.py.json +36 -0
  485. package/json_models/ipcc2019/ch4ToAirEntericFermentation.py.json +112 -0
  486. package/json_models/ipcc2019/ch4ToAirExcreta.py.json +49 -0
  487. package/json_models/ipcc2019/ch4ToAirFloodedRice.py.json +105 -0
  488. package/json_models/ipcc2019/ch4ToAirOrganicSoilCultivation.py.json +107 -0
  489. package/json_models/ipcc2019/co2ToAirAboveGroundBiomassStockChange.py.json +37 -0
  490. package/json_models/ipcc2019/co2ToAirBelowGroundBiomassStockChange.py.json +38 -0
  491. package/json_models/ipcc2019/co2ToAirBiocharStockChange.py.json +38 -0
  492. package/json_models/ipcc2019/co2ToAirCarbonStockChange_utils.py.json +6 -0
  493. package/json_models/ipcc2019/co2ToAirLimeHydrolysis.py.json +26 -0
  494. package/json_models/ipcc2019/co2ToAirOrganicSoilCultivation.py.json +104 -0
  495. package/json_models/ipcc2019/co2ToAirSoilOrganicCarbonStockChange.py.json +38 -0
  496. package/json_models/ipcc2019/co2ToAirUreaHydrolysis.py.json +29 -0
  497. package/json_models/ipcc2019/croppingDuration.py.json +45 -0
  498. package/json_models/ipcc2019/emissionsToAirOrganicSoilBurning.py.json +66 -0
  499. package/json_models/ipcc2019/ligninContent.py.json +56 -0
  500. package/json_models/ipcc2019/n2OToAirAquacultureSystemsIndirect.py.json +54 -0
  501. package/json_models/ipcc2019/n2OToAirCropResidueBurningDirect.py.json +32 -0
  502. package/json_models/ipcc2019/n2OToAirCropResidueBurningIndirect.py.json +49 -0
  503. package/json_models/ipcc2019/n2OToAirCropResidueDecompositionDirect.py.json +70 -0
  504. package/json_models/ipcc2019/n2OToAirCropResidueDecompositionIndirect.py.json +53 -0
  505. package/json_models/ipcc2019/n2OToAirExcretaDirect.py.json +34 -0
  506. package/json_models/ipcc2019/n2OToAirExcretaIndirect.py.json +53 -0
  507. package/json_models/ipcc2019/n2OToAirFuelCombustionIndirect.py.json +49 -0
  508. package/json_models/ipcc2019/n2OToAirInorganicFertiliserDirect.py.json +87 -0
  509. package/json_models/ipcc2019/n2OToAirInorganicFertiliserIndirect.py.json +53 -0
  510. package/json_models/ipcc2019/n2OToAirNaturalVegetationBurningIndirect.py.json +49 -0
  511. package/json_models/ipcc2019/n2OToAirOrganicFertiliserDirect.py.json +87 -0
  512. package/json_models/ipcc2019/n2OToAirOrganicFertiliserIndirect.py.json +53 -0
  513. package/json_models/ipcc2019/n2OToAirOrganicSoilBurningIndirect.py.json +49 -0
  514. package/json_models/ipcc2019/n2OToAirOrganicSoilCultivationDirect.py.json +101 -0
  515. package/json_models/ipcc2019/n2OToAirOrganicSoilCultivationIndirect.py.json +49 -0
  516. package/json_models/ipcc2019/nh3ToAirInorganicFertiliser.py.json +58 -0
  517. package/json_models/ipcc2019/nh3ToAirOrganicFertiliser.py.json +55 -0
  518. package/json_models/ipcc2019/nitrogenContent.py.json +56 -0
  519. package/json_models/ipcc2019/no3ToGroundwaterCropResidueDecomposition.py.json +56 -0
  520. package/json_models/ipcc2019/no3ToGroundwaterExcreta.py.json +68 -0
  521. package/json_models/ipcc2019/no3ToGroundwaterInorganicFertiliser.py.json +71 -0
  522. package/json_models/ipcc2019/no3ToGroundwaterOrganicFertiliser.py.json +67 -0
  523. package/json_models/ipcc2019/nonCo2EmissionsToAirNaturalVegetationBurning.py.json +68 -0
  524. package/json_models/ipcc2019/noxToAirInorganicFertiliser.py.json +58 -0
  525. package/json_models/ipcc2019/noxToAirOrganicFertiliser.py.json +55 -0
  526. package/json_models/ipcc2019/organicCarbonPerHa.py.json +150 -0
  527. package/json_models/ipcc2019/organicCarbonPerHa_tier_1.py.json +150 -0
  528. package/json_models/ipcc2019/organicCarbonPerHa_tier_2.py.json +256 -0
  529. package/json_models/ipcc2019/organicSoilCultivation_utils.py.json +10 -0
  530. package/json_models/ipcc2019/pastureGrass.py.json +168 -0
  531. package/json_models/ipcc2021/gwp100.py.json +21 -0
  532. package/json_models/jarvisAndPain1994/n2ToAirExcreta.py.json +21 -0
  533. package/json_models/koble2014/cropResidueManagement.py.json +28 -0
  534. package/json_models/koble2014/residueBurnt.py.json +28 -0
  535. package/json_models/koble2014/residueLeftOnField.py.json +14 -0
  536. package/json_models/koble2014/residueRemoved.py.json +25 -0
  537. package/json_models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsClimateChange.py.json +21 -0
  538. package/json_models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsFreshwaterEcotoxicity.py.json +25 -0
  539. package/json_models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsFreshwaterEutrophication.py.json +28 -0
  540. package/json_models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsPdfYear.py.json +24 -0
  541. package/json_models/lcImpactAllEffects100Years/damageToFreshwaterEcosystemsWaterStress.py.json +28 -0
  542. package/json_models/lcImpactAllEffects100Years/damageToHumanHealth.py.json +24 -0
  543. package/json_models/lcImpactAllEffects100Years/damageToHumanHealthClimateChange.py.json +21 -0
  544. package/json_models/lcImpactAllEffects100Years/damageToHumanHealthHumanToxicityCancerogenic.py.json +25 -0
  545. package/json_models/lcImpactAllEffects100Years/damageToHumanHealthHumanToxicityNonCancerogenic.py.json +25 -0
  546. package/json_models/lcImpactAllEffects100Years/damageToHumanHealthParticulateMatterFormation.py.json +28 -0
  547. package/json_models/lcImpactAllEffects100Years/damageToHumanHealthPhotochemicalOzoneFormation.py.json +28 -0
  548. package/json_models/lcImpactAllEffects100Years/damageToHumanHealthStratosphericOzoneDepletion.py.json +21 -0
  549. package/json_models/lcImpactAllEffects100Years/damageToHumanHealthWaterStress.py.json +33 -0
  550. package/json_models/lcImpactAllEffects100Years/damageToMarineEcosystemsMarineEcotoxicity.py.json +25 -0
  551. package/json_models/lcImpactAllEffects100Years/damageToMarineEcosystemsMarineEutrophication.py.json +28 -0
  552. package/json_models/lcImpactAllEffects100Years/damageToMarineEcosystemsPdfYear.py.json +24 -0
  553. package/json_models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsClimateChange.py.json +21 -0
  554. package/json_models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsPdfYear.py.json +24 -0
  555. package/json_models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsPhotochemicalOzoneFormation.py.json +28 -0
  556. package/json_models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsTerrestrialAcidification.py.json +28 -0
  557. package/json_models/lcImpactAllEffects100Years/damageToTerrestrialEcosystemsTerrestrialEcotoxicity.py.json +25 -0
  558. package/json_models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsClimateChange.py.json +21 -0
  559. package/json_models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsFreshwaterEcotoxicity.py.json +25 -0
  560. package/json_models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsFreshwaterEutrophication.py.json +28 -0
  561. package/json_models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsPdfYear.py.json +24 -0
  562. package/json_models/lcImpactAllEffectsInfinite/damageToFreshwaterEcosystemsWaterStress.py.json +28 -0
  563. package/json_models/lcImpactAllEffectsInfinite/damageToHumanHealth.py.json +24 -0
  564. package/json_models/lcImpactAllEffectsInfinite/damageToHumanHealthClimateChange.py.json +21 -0
  565. package/json_models/lcImpactAllEffectsInfinite/damageToHumanHealthHumanToxicityCancerogenic.py.json +25 -0
  566. package/json_models/lcImpactAllEffectsInfinite/damageToHumanHealthHumanToxicityNonCancerogenic.py.json +25 -0
  567. package/json_models/lcImpactAllEffectsInfinite/damageToHumanHealthParticulateMatterFormation.py.json +28 -0
  568. package/json_models/lcImpactAllEffectsInfinite/damageToHumanHealthPhotochemicalOzoneFormation.py.json +28 -0
  569. package/json_models/lcImpactAllEffectsInfinite/damageToHumanHealthStratosphericOzoneDepletion.py.json +21 -0
  570. package/json_models/lcImpactAllEffectsInfinite/damageToHumanHealthWaterStress.py.json +33 -0
  571. package/json_models/lcImpactAllEffectsInfinite/damageToMarineEcosystemsMarineEcotoxicity.py.json +25 -0
  572. package/json_models/lcImpactAllEffectsInfinite/damageToMarineEcosystemsMarineEutrophication.py.json +28 -0
  573. package/json_models/lcImpactAllEffectsInfinite/damageToMarineEcosystemsPdfYear.py.json +24 -0
  574. package/json_models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsClimateChange.py.json +21 -0
  575. package/json_models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsPdfYear.py.json +24 -0
  576. package/json_models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsPhotochemicalOzoneFormation.py.json +28 -0
  577. package/json_models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsTerrestrialAcidification.py.json +28 -0
  578. package/json_models/lcImpactAllEffectsInfinite/damageToTerrestrialEcosystemsTerrestrialEcotoxicity.py.json +25 -0
  579. package/json_models/lcImpactCertainEffects100Years/damageToFreshwaterEcosystemsFreshwaterEcotoxicity.py.json +25 -0
  580. package/json_models/lcImpactCertainEffects100Years/damageToFreshwaterEcosystemsFreshwaterEutrophication.py.json +28 -0
  581. package/json_models/lcImpactCertainEffects100Years/damageToFreshwaterEcosystemsPdfYear.py.json +24 -0
  582. package/json_models/lcImpactCertainEffects100Years/damageToFreshwaterEcosystemsWaterStress.py.json +28 -0
  583. package/json_models/lcImpactCertainEffects100Years/damageToHumanHealth.py.json +24 -0
  584. package/json_models/lcImpactCertainEffects100Years/damageToHumanHealthClimateChange.py.json +21 -0
  585. package/json_models/lcImpactCertainEffects100Years/damageToHumanHealthHumanToxicityCancerogenic.py.json +25 -0
  586. package/json_models/lcImpactCertainEffects100Years/damageToHumanHealthHumanToxicityNonCancerogenic.py.json +25 -0
  587. package/json_models/lcImpactCertainEffects100Years/damageToHumanHealthParticulateMatterFormation.py.json +28 -0
  588. package/json_models/lcImpactCertainEffects100Years/damageToHumanHealthPhotochemicalOzoneFormation.py.json +28 -0
  589. package/json_models/lcImpactCertainEffects100Years/damageToHumanHealthStratosphericOzoneDepletion.py.json +21 -0
  590. package/json_models/lcImpactCertainEffects100Years/damageToHumanHealthWaterStress.py.json +33 -0
  591. package/json_models/lcImpactCertainEffects100Years/damageToMarineEcosystemsMarineEcotoxicity.py.json +25 -0
  592. package/json_models/lcImpactCertainEffects100Years/damageToMarineEcosystemsMarineEutrophication.py.json +28 -0
  593. package/json_models/lcImpactCertainEffects100Years/damageToMarineEcosystemsPdfYear.py.json +24 -0
  594. package/json_models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsClimateChange.py.json +21 -0
  595. package/json_models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsPdfYear.py.json +24 -0
  596. package/json_models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsPhotochemicalOzoneFormation.py.json +28 -0
  597. package/json_models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsTerrestrialAcidification.py.json +28 -0
  598. package/json_models/lcImpactCertainEffects100Years/damageToTerrestrialEcosystemsTerrestrialEcotoxicity.py.json +25 -0
  599. package/json_models/lcImpactCertainEffectsInfinite/damageToFreshwaterEcosystemsFreshwaterEcotoxicity.py.json +25 -0
  600. package/json_models/lcImpactCertainEffectsInfinite/damageToFreshwaterEcosystemsFreshwaterEutrophication.py.json +28 -0
  601. package/json_models/lcImpactCertainEffectsInfinite/damageToFreshwaterEcosystemsPdfYear.py.json +24 -0
  602. package/json_models/lcImpactCertainEffectsInfinite/damageToFreshwaterEcosystemsWaterStress.py.json +28 -0
  603. package/json_models/lcImpactCertainEffectsInfinite/damageToHumanHealth.py.json +24 -0
  604. package/json_models/lcImpactCertainEffectsInfinite/damageToHumanHealthClimateChange.py.json +21 -0
  605. package/json_models/lcImpactCertainEffectsInfinite/damageToHumanHealthHumanToxicityCancerogenic.py.json +25 -0
  606. package/json_models/lcImpactCertainEffectsInfinite/damageToHumanHealthHumanToxicityNonCancerogenic.py.json +25 -0
  607. package/json_models/lcImpactCertainEffectsInfinite/damageToHumanHealthParticulateMatterFormation.py.json +28 -0
  608. package/json_models/lcImpactCertainEffectsInfinite/damageToHumanHealthPhotochemicalOzoneFormation.py.json +28 -0
  609. package/json_models/lcImpactCertainEffectsInfinite/damageToHumanHealthStratosphericOzoneDepletion.py.json +21 -0
  610. package/json_models/lcImpactCertainEffectsInfinite/damageToHumanHealthWaterStress.py.json +33 -0
  611. package/json_models/lcImpactCertainEffectsInfinite/damageToMarineEcosystemsMarineEcotoxicity.py.json +25 -0
  612. package/json_models/lcImpactCertainEffectsInfinite/damageToMarineEcosystemsMarineEutrophication.py.json +28 -0
  613. package/json_models/lcImpactCertainEffectsInfinite/damageToMarineEcosystemsPdfYear.py.json +24 -0
  614. package/json_models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsClimateChange.py.json +21 -0
  615. package/json_models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsPdfYear.py.json +24 -0
  616. package/json_models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsPhotochemicalOzoneFormation.py.json +28 -0
  617. package/json_models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsTerrestrialAcidification.py.json +28 -0
  618. package/json_models/lcImpactCertainEffectsInfinite/damageToTerrestrialEcosystemsTerrestrialEcotoxicity.py.json +25 -0
  619. package/json_models/linkedImpactAssessment/emissions.py.json +57 -0
  620. package/json_models/linkedImpactAssessment/freshwaterWithdrawalsInputsProduction.py.json +46 -0
  621. package/json_models/linkedImpactAssessment/landOccupationInputsProduction.py.json +47 -0
  622. package/json_models/linkedImpactAssessment/landTransformation100YearAverageInputsProduction.py.json +48 -0
  623. package/json_models/linkedImpactAssessment/landTransformation20YearAverageInputsProduction.py.json +48 -0
  624. package/json_models/mocking/build_mock_search.py.json +3 -0
  625. package/json_models/pefcrGuidanceDocument2017/pesticideToAirPesticideApplication.py.json +28 -0
  626. package/json_models/pefcrGuidanceDocument2017/pesticideToSoilPesticideApplication.py.json +28 -0
  627. package/json_models/pefcrGuidanceDocument2017/pesticideToWaterPesticideApplication.py.json +28 -0
  628. package/json_models/pooreNemecek2018/aboveGroundCropResidueTotal.py.json +17 -0
  629. package/json_models/pooreNemecek2018/belowGroundCropResidue.py.json +17 -0
  630. package/json_models/pooreNemecek2018/ch4ToAirAquacultureSystems.py.json +74 -0
  631. package/json_models/pooreNemecek2018/excretaKgN.py.json +108 -0
  632. package/json_models/pooreNemecek2018/excretaKgVs.py.json +157 -0
  633. package/json_models/pooreNemecek2018/freshwaterWithdrawalsDuringCycle.py.json +54 -0
  634. package/json_models/pooreNemecek2018/landOccupationDuringCycle.py.json +70 -0
  635. package/json_models/pooreNemecek2018/longFallowDuration.py.json +23 -0
  636. package/json_models/pooreNemecek2018/n2OToAirAquacultureSystemsDirect.py.json +45 -0
  637. package/json_models/pooreNemecek2018/n2ToAirAquacultureSystems.py.json +45 -0
  638. package/json_models/pooreNemecek2018/nh3ToAirAquacultureSystems.py.json +61 -0
  639. package/json_models/pooreNemecek2018/no3ToGroundwaterCropResidueDecomposition.py.json +55 -0
  640. package/json_models/pooreNemecek2018/no3ToGroundwaterExcreta.py.json +74 -0
  641. package/json_models/pooreNemecek2018/no3ToGroundwaterInorganicFertiliser.py.json +70 -0
  642. package/json_models/pooreNemecek2018/no3ToGroundwaterOrganicFertiliser.py.json +70 -0
  643. package/json_models/pooreNemecek2018/no3ToGroundwaterSoilFlux_utils.py.json +81 -0
  644. package/json_models/pooreNemecek2018/noxToAirAquacultureSystems.py.json +54 -0
  645. package/json_models/pooreNemecek2018/nurseryDensity.py.json +23 -0
  646. package/json_models/pooreNemecek2018/nurseryDuration.py.json +23 -0
  647. package/json_models/pooreNemecek2018/plantationDensity.py.json +23 -0
  648. package/json_models/pooreNemecek2018/plantationLifespan.py.json +23 -0
  649. package/json_models/pooreNemecek2018/plantationProductiveLifespan.py.json +23 -0
  650. package/json_models/pooreNemecek2018/rotationDuration.py.json +26 -0
  651. package/json_models/pooreNemecek2018/saplingsDepreciatedAmountPerCycle.py.json +32 -0
  652. package/json_models/poschEtAl2008/terrestrialAcidificationPotentialAccumulatedExceedance.py.json +34 -0
  653. package/json_models/poschEtAl2008/terrestrialEutrophicationPotentialAccumulatedExceedance.py.json +34 -0
  654. package/json_models/recipe2016Egalitarian/damageToFreshwaterEcosystemsSpeciesYear.py.json +24 -0
  655. package/json_models/recipe2016Egalitarian/damageToHumanHealth.py.json +24 -0
  656. package/json_models/recipe2016Egalitarian/damageToMarineEcosystemsSpeciesYear.py.json +24 -0
  657. package/json_models/recipe2016Egalitarian/damageToResourceAvailability.py.json +25 -0
  658. package/json_models/recipe2016Egalitarian/damageToTerrestrialEcosystemsSpeciesYear.py.json +24 -0
  659. package/json_models/recipe2016Egalitarian/ecosystemDamageOzoneFormation.py.json +33 -0
  660. package/json_models/recipe2016Egalitarian/fossilResourceScarcity.py.json +25 -0
  661. package/json_models/recipe2016Egalitarian/freshwaterAquaticEcotoxicityPotential14Dcbeq.py.json +25 -0
  662. package/json_models/recipe2016Egalitarian/freshwaterEutrophicationPotential.py.json +21 -0
  663. package/json_models/recipe2016Egalitarian/humanCarcinogenicToxicity.py.json +25 -0
  664. package/json_models/recipe2016Egalitarian/humanDamageOzoneFormation.py.json +33 -0
  665. package/json_models/recipe2016Egalitarian/humanNonCarcinogenicToxicity.py.json +25 -0
  666. package/json_models/recipe2016Egalitarian/marineAquaticEcotoxicityPotential14Dcbeq.py.json +25 -0
  667. package/json_models/recipe2016Egalitarian/marineEutrophicationPotential.py.json +21 -0
  668. package/json_models/recipe2016Egalitarian/ozoneDepletionPotential.py.json +21 -0
  669. package/json_models/recipe2016Egalitarian/terrestrialAcidificationPotential.py.json +21 -0
  670. package/json_models/recipe2016Egalitarian/terrestrialEcotoxicityPotential14Dcbeq.py.json +25 -0
  671. package/json_models/recipe2016Hierarchist/damageToFreshwaterEcosystemsSpeciesYear.py.json +24 -0
  672. package/json_models/recipe2016Hierarchist/damageToHumanHealth.py.json +24 -0
  673. package/json_models/recipe2016Hierarchist/damageToMarineEcosystemsSpeciesYear.py.json +24 -0
  674. package/json_models/recipe2016Hierarchist/damageToResourceAvailability.py.json +25 -0
  675. package/json_models/recipe2016Hierarchist/damageToTerrestrialEcosystemsSpeciesYear.py.json +24 -0
  676. package/json_models/recipe2016Hierarchist/ecosystemDamageOzoneFormation.py.json +33 -0
  677. package/json_models/recipe2016Hierarchist/fossilResourceScarcity.py.json +25 -0
  678. package/json_models/recipe2016Hierarchist/freshwaterAquaticEcotoxicityPotential14Dcbeq.py.json +25 -0
  679. package/json_models/recipe2016Hierarchist/freshwaterEutrophicationPotential.py.json +21 -0
  680. package/json_models/recipe2016Hierarchist/humanCarcinogenicToxicity.py.json +25 -0
  681. package/json_models/recipe2016Hierarchist/humanDamageOzoneFormation.py.json +33 -0
  682. package/json_models/recipe2016Hierarchist/humanNonCarcinogenicToxicity.py.json +25 -0
  683. package/json_models/recipe2016Hierarchist/marineAquaticEcotoxicityPotential14Dcbeq.py.json +25 -0
  684. package/json_models/recipe2016Hierarchist/marineEutrophicationPotential.py.json +21 -0
  685. package/json_models/recipe2016Hierarchist/ozoneDepletionPotential.py.json +21 -0
  686. package/json_models/recipe2016Hierarchist/terrestrialAcidificationPotential.py.json +21 -0
  687. package/json_models/recipe2016Hierarchist/terrestrialEcotoxicityPotential14Dcbeq.py.json +25 -0
  688. package/json_models/recipe2016Individualist/damageToFreshwaterEcosystemsSpeciesYear.py.json +24 -0
  689. package/json_models/recipe2016Individualist/damageToHumanHealth.py.json +24 -0
  690. package/json_models/recipe2016Individualist/damageToMarineEcosystemsSpeciesYear.py.json +24 -0
  691. package/json_models/recipe2016Individualist/damageToResourceAvailability.py.json +25 -0
  692. package/json_models/recipe2016Individualist/damageToTerrestrialEcosystemsSpeciesYear.py.json +24 -0
  693. package/json_models/recipe2016Individualist/ecosystemDamageOzoneFormation.py.json +33 -0
  694. package/json_models/recipe2016Individualist/fossilResourceScarcity.py.json +25 -0
  695. package/json_models/recipe2016Individualist/freshwaterAquaticEcotoxicityPotential14Dcbeq.py.json +25 -0
  696. package/json_models/recipe2016Individualist/freshwaterEutrophicationPotential.py.json +21 -0
  697. package/json_models/recipe2016Individualist/humanCarcinogenicToxicity.py.json +25 -0
  698. package/json_models/recipe2016Individualist/humanDamageOzoneFormation.py.json +33 -0
  699. package/json_models/recipe2016Individualist/humanNonCarcinogenicToxicity.py.json +25 -0
  700. package/json_models/recipe2016Individualist/marineAquaticEcotoxicityPotential14Dcbeq.py.json +25 -0
  701. package/json_models/recipe2016Individualist/marineEutrophicationPotential.py.json +21 -0
  702. package/json_models/recipe2016Individualist/ozoneDepletionPotential.py.json +21 -0
  703. package/json_models/recipe2016Individualist/terrestrialAcidificationPotential.py.json +21 -0
  704. package/json_models/recipe2016Individualist/terrestrialEcotoxicityPotential14Dcbeq.py.json +25 -0
  705. package/json_models/requirements.py.json +3 -0
  706. package/json_models/resourceUseNotRelevant/__init__.py.json +25 -0
  707. package/json_models/schererPfister2015/nErosionSoilFlux.py.json +82 -0
  708. package/json_models/schererPfister2015/pErosionSoilFlux.py.json +82 -0
  709. package/json_models/schererPfister2015/pToDrainageWaterSoilFlux.py.json +51 -0
  710. package/json_models/schererPfister2015/pToGroundwaterSoilFlux.py.json +39 -0
  711. package/json_models/schererPfister2015/pToSurfaceWaterSoilFlux.py.json +51 -0
  712. package/json_models/schmidt2007/ch4ToAirWasteTreatment.py.json +23 -0
  713. package/json_models/schmidt2007/h2SToAirWasteTreatment.py.json +23 -0
  714. package/json_models/schmidt2007/n2OToAirWasteTreatmentDirect.py.json +23 -0
  715. package/json_models/schmidt2007/nh3ToAirWasteTreatment.py.json +23 -0
  716. package/json_models/site/defaultMethodClassification.py.json +15 -0
  717. package/json_models/site/defaultMethodClassificationDescription.py.json +16 -0
  718. package/json_models/site/grouped_measurement.py.json +31 -0
  719. package/json_models/site/measurement/value.py.json +20 -0
  720. package/json_models/site/post_checks/cache.py.json +8 -0
  721. package/json_models/site/pre_checks/cache_geospatialDatabase.py.json +24 -0
  722. package/json_models/site/pre_checks/cache_sources.py.json +8 -0
  723. package/json_models/site/pre_checks/cache_years.py.json +8 -0
  724. package/json_models/stehfestBouwman2006/n2OToAirCropResidueDecompositionDirect.py.json +69 -0
  725. package/json_models/stehfestBouwman2006/n2OToAirExcretaDirect.py.json +90 -0
  726. package/json_models/stehfestBouwman2006/n2OToAirInorganicFertiliserDirect.py.json +86 -0
  727. package/json_models/stehfestBouwman2006/n2OToAirOrganicFertiliserDirect.py.json +86 -0
  728. package/json_models/stehfestBouwman2006/n2OToAirSoilFlux_utils.py.json +105 -0
  729. package/json_models/stehfestBouwman2006/noxToAirCropResidueDecomposition.py.json +48 -0
  730. package/json_models/stehfestBouwman2006/noxToAirExcreta.py.json +69 -0
  731. package/json_models/stehfestBouwman2006/noxToAirInorganicFertiliser.py.json +65 -0
  732. package/json_models/stehfestBouwman2006/noxToAirOrganicFertiliser.py.json +65 -0
  733. package/json_models/stehfestBouwman2006/noxToAirSoilFlux_utils.py.json +76 -0
  734. package/json_models/stehfestBouwman2006GisImplementation/noxToAirCropResidueDecomposition.py.json +40 -0
  735. package/json_models/stehfestBouwman2006GisImplementation/noxToAirExcreta.py.json +61 -0
  736. package/json_models/stehfestBouwman2006GisImplementation/noxToAirInorganicFertiliser.py.json +57 -0
  737. package/json_models/stehfestBouwman2006GisImplementation/noxToAirOrganicFertiliser.py.json +57 -0
  738. package/json_models/stehfestBouwman2006GisImplementation/noxToAirSoilFlux_utils.py.json +68 -0
  739. package/json_models/transformation/input/excreta.py.json +40 -0
  740. package/json_models/transformation/input/max.py.json +36 -0
  741. package/json_models/transformation/input/min.py.json +36 -0
  742. package/json_models/transformation/input/properties.py.json +36 -0
  743. package/json_models/transformation/input/sd.py.json +36 -0
  744. package/json_models/transformation/input/value.py.json +36 -0
  745. package/json_models/transformation/product/excreta.py.json +31 -0
  746. package/json_models/usetoxV2/freshwaterEcotoxicityPotentialCtue.py.json +25 -0
  747. package/json_models/utils/background_emissions.py.json +5 -0
  748. package/json_models/utils/feedipedia.py.json +3 -0
  749. package/json_models/webbEtAl2012AndSintermannEtAl2012/nh3ToAirOrganicFertiliser.py.json +44 -0
  750. package/package.json +2 -1
  751. package/dist/content/guide/aggregation-engine/animalProduct.json +0 -1
  752. package/dist/content/guide/faq/content.json +0 -1
  753. package/dist/content/guide/hestia-101/content.json +0 -1
  754. package/dist/content/models/cycleAnimals/fatContent/content.json +0 -1
  755. package/dist/content/models/cycleAnimals/fatContent/ipcc2019.json +0 -1
  756. package/dist/content/models/cycleAnimals/hoursWorkedPerDay/content.json +0 -1
  757. package/dist/content/models/cycleAnimals/hoursWorkedPerDay/ipcc2019.json +0 -1
  758. package/dist/content/models/cycleAnimals/ipcc2019-animal-milkYieldPerAnimal/content.json +0 -1
  759. package/dist/content/models/cycleAnimals/ipcc2019-animal-milkYieldPerAnimal/ipcc2019.json +0 -1
  760. package/dist/content/models/cycleAnimals/liveweightGain/content.json +0 -1
  761. package/dist/content/models/cycleAnimals/liveweightGain/ipcc2019.json +0 -1
  762. package/dist/content/models/cycleAnimals/pregnancyRateTotal/content.json +0 -1
  763. package/dist/content/models/cycleAnimals/pregnancyRateTotal/ipcc2019.json +0 -1
  764. package/dist/content/models/cycleAnimals/trueProteinContent/content.json +0 -1
  765. package/dist/content/models/cycleAnimals/trueProteinContent/ipcc2019.json +0 -1
  766. package/dist/content/models/cycleAnimals/weightAtMaturity/content.json +0 -1
  767. package/dist/content/models/cycleAnimals/weightAtMaturity/ipcc2019.json +0 -1
  768. package/dist/content/models/cycleEmissions/landUseChange/nonCo2EmissionsToAirNaturalVegetationBurning/overview.json +0 -1
  769. package/dist/content/models/cycleEmissions/organicSoil/co2ToAirSoilOrganicCarbonStockChange/content.json +0 -1
  770. package/dist/content/models/cycleEmissions/organicSoil/co2ToAirSoilOrganicCarbonStockChange/ipcc2019.json +0 -1
  771. package/dist/content/models/impactAssessmentImpacts/abioticResourceDepletionFossilFuels/cml2001Baseline.json +0 -1
  772. package/dist/content/models/impactAssessmentImpacts/abioticResourceDepletionFossilFuels/content.json +0 -1
  773. package/dist/content/models/impactAssessmentImpacts/abioticResourceDepletionMineralsAndMetals/cml2001Baseline.json +0 -1
  774. package/dist/content/models/impactAssessmentImpacts/abioticResourceDepletionMineralsAndMetals/content.json +0 -1
  775. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintSingleOverallScore/content.json +0 -1
  776. package/dist/content/models/impactAssessmentImpacts/environmentalFootprintSingleOverallScore/environmentalFootprintv31.json +0 -1
  777. package/dist/content/models/impactAssessmentImpacts/ionisingRadiationKbqU235Eq/content.json +0 -1
  778. package/dist/content/models/impactAssessmentImpacts/ionisingRadiationKbqU235Eq/frischknechtetal2000.json +0 -1
  779. package/dist/content/models/impactAssessmentImpacts/marineEutrophicationPotential/environmentalFootprintv31.json +0 -1
  780. package/dist/content/models/impactAssessmentImpacts/photochemicalOzoneCreationPotentialHumanHealthNmvocEq/content.json +0 -1
  781. package/dist/content/models/impactAssessmentImpacts/photochemicalOzoneCreationPotentialHumanHealthNmvocEq/environmentalFootprintv31.json +0 -1
  782. package/dist/content/models/impactAssessmentImpacts/soilQualityIndexLandOccupation/content.json +0 -1
  783. package/dist/content/models/impactAssessmentImpacts/soilQualityIndexLandOccupation/environmentalFootprintv31.json +0 -1
  784. package/dist/content/models/impactAssessmentImpacts/soilQualityIndexLandTransformation/content.json +0 -1
  785. package/dist/content/models/impactAssessmentImpacts/soilQualityIndexLandTransformation/environmentalFootprintv31.json +0 -1
  786. package/dist/content/models/impactAssessmentImpacts/soilQualityIndexTotalLandUseEffects/content.json +0 -1
  787. package/dist/content/models/impactAssessmentImpacts/soilQualityIndexTotalLandUseEffects/environmentalFootprintv31.json +0 -1
  788. package/dist/content/models/impactAssessmentImpacts/terrestrialAcidificationPotentialAccumulatedExceedance/content.json +0 -1
  789. package/dist/content/models/impactAssessmentImpacts/terrestrialAcidificationPotentialAccumulatedExceedance/poschetal2008.json +0 -1
  790. package/dist/content/models/impactAssessmentImpacts/terrestrialEutrophicationPotentialAccumulatedExceedance/content.json +0 -1
  791. package/dist/content/models/impactAssessmentImpacts/terrestrialEutrophicationPotentialAccumulatedExceedance/poschetal2008.json +0 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,24 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [0.0.18](https://gitlab.com/hestia-earth/hestia-guide/compare/v0.0.17...v0.0.18) (2025-11-11)
6
+
7
+
8
+ ### Features
9
+
10
+ * add data-validation pages ([ffeffa2](https://gitlab.com/hestia-earth/hestia-guide/commit/ffeffa280206f9589cfe818dbd4e152b7aa63c44))
11
+ * **aggregation-engine:** update aggregation guide ([71ad72f](https://gitlab.com/hestia-earth/hestia-guide/commit/71ad72f52a0e717516ccb4397ba69307f845ead0)), closes [#52](https://gitlab.com/hestia-earth/hestia-guide/issues/52)
12
+ * **file-upload:** add content from frontend ([0474673](https://gitlab.com/hestia-earth/hestia-guide/commit/04746731a2a92b46d74d64a0a95b075fa44b59f6))
13
+ * **file-upload:** update taglines ([aefc5c5](https://gitlab.com/hestia-earth/hestia-guide/commit/aefc5c5da603629775c7639ec27b2c83c736c2b6))
14
+ * **file-validation:** update schema validation command ([02472b5](https://gitlab.com/hestia-earth/hestia-guide/commit/02472b5461ba4084cc240d54afe2a9010d2f1049))
15
+ * **index:** remove `guide/hestia-101` and `guide/faq` ([e052031](https://gitlab.com/hestia-earth/hestia-guide/commit/e0520313e46c9669babf8002394abfe9528b8f35))
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * **file-validation:** fix NodeJS version ([50d065b](https://gitlab.com/hestia-earth/hestia-guide/commit/50d065bc9a4ec64d740c36377b42c38498ef44a8))
21
+ * **file-validation:** remove `API_URL` variable ([87f2900](https://gitlab.com/hestia-earth/hestia-guide/commit/87f290073fb6ef26a509e8f9e09e8420655be5a1))
22
+
5
23
  ### [0.0.17](https://gitlab.com/hestia-earth/hestia-guide/compare/v0.0.16...v0.0.17) (2025-10-09)
6
24
 
7
25
 
@@ -1 +1 @@
1
- {"tags":{"citation":["[Poore, J., & Nemecek, T. (2018). Reducing food's environmental impacts through producers and consumers. Science (New York, N.Y.), 360(6392), 987–992](https://doi.org/10.1126/science.aaq0216)"]},"content":"# HESTIA Aggregated Data\n\nLearn about how HESTIA is generating aggregated data, available in our [Data Explorer](https://hestia.earth/explorer/search?type=Aggregated%20Data).\nThe aim of aggregated data is to represent the average impact of producing a product, in a specific region and time period.\n\nAggregated data is validated by our team by checking the data is consistent with other sources, such as Poore, J., & Nemecek, T. (2018).\n\nThe process to aggregate data is different depending on the `termType` of the Product that we aggregate. Select which type you are interested to learn more.\n\n"}
1
+ {"tags":{"citation":["[Poore, J., & Nemecek, T. (2018). Reducing food's environmental impacts through producers and consumers. Science (New York, N.Y.), 360(6392), 987–992](https://doi.org/10.1126/science.aaq0216)"]},"content":"# HESTIA Aggregated Data\n\nLearn about how HESTIA is generating aggregated data, available in the [Data Explorer](/explorer/search?type=Aggregated%20Data).\n\nThe aim of aggregated data is to represent the average impact of producing a product, in a specific region and time period.\n\nAggregated data is validated by our team by checking the data is consistent with other sources, such as Poore, J., & Nemecek, T. (2018).\n\nThere is a general process for generating the aggregations, with some changes depending on the `termType` of the product aggregated. Although the logic for aggregating animal products is being developed, there have not yet been any animal product aggregations released. \n\nCurrently, including distributions of the underlying data used to produce the aggregations is being developed, and is already available for some aggregations on the platform.\n\n"}
@@ -1 +1 @@
1
- {"tags":{},"content":"# Crop aggregation\n\nAggregation of crops happens in multiple stages:\n1. We first get all public data on the platform corresponding to a certain time period, crop, and country.\n1. We then group the cycles into four groups: conventional and rainfed; conventional and irrigated; organic and irrigated; organic and rainfed. We aggregate data for each of those groups, creating four aggregations. This grouping helps us control for imbalances in our sample by stratifying at a level where differences in farming practices are substantial. We are working on adding further groupings in the future (e.g., greenhouse vs field grown).\n1. We then create a combined aggregation, by weighting each of the four aggregations by the area share of each group using data from FiBL for organic farming and AQUASTAT for irrigation.\n\nExample:\n\nWe have 8 Cycles on the platform for a specific product:\n- 2 are organic and irrigated.\n- 2 are organic and rainfed.\n- 2 are non-organic and irrigated.\n- 2 are non-organic and rainfed.\n\nWe create the following aggregated Cycles:\n- An organic - irrigated aggregation.\n- An organic - rainfed aggregation.\n- A non-organic - irrigated aggregation.\n- A non-organic - rainfed aggregation.\n- A final aggregation that combines all 4 of the above, assigning different weights for each aggregation, based on the area of production of each group for the particular country.\n\nIf one of the aggregations (e.g., organic - irrigated) is missing, we change the weighting structure so that it always sums to 100% and only takes the weighted average of the remaining groups.\n\n## General rules\n\n- We aggregate at the level of completness areas. For example, we will aggregate all of the fertiliser data for the Cycles where `completeness.fertiliser` = `true`. If a Cycle has `completeness.fertiliser` = `false`, we will not use any of the fertiliser data from that Cycle, but we will use data from that Cycle for other completness areas which are true. This approach allows us to pool data from many incomplete Cycles to create an overall complete dataset.\n- For data items with percentage units, we only use the values if the total value across the same `sumIs100Group` lookup, is equal to 100%. This is to make sure the total aggregated value will also sum to 100%, as our validation would otherwise mark the data as invalid.\n\n## Special rules\n\n### Aggregation of products\n\nThe following rules apply when aggregating the products:\n- When searching for Cycles to aggregate, we only include Cycles that have the `crop` as a `primary` Product.\n- We aggregate primary products that are marked as incomplete (e.g., `completeness.product=False`). However, we only use the `economicValueShare` of incomplete products if there is a `value` provided.\n- We rescale the product `value` when the `dryMatter` is different from HESTIA default `dryMatter` of the primary product, so all data can be compared at an equivalent `dryMatter`.\n\nFull example:\n\n| cycle.id | cycle.products.wheatGrain.value | cycle.products.wheatGrain.economicValueShare | cycle.completness.products |\n|------------------------|-------------------------------------|--------------------------|------|\n| 1 | 1000 | 20 | TRUE |\n| 2 | 5000 | - | TRUE |\n| 3 | 4000 | 100 | TRUE |\n| 4 | - | 90 | FALSE |\n| 5 | 2000 | - | FALSE |\n| 6 | 6000 | 95 | FALSE |\n| 7 | 0 | 0 | TRUE |\n| aggregated | 3000 =(1000+5000+4000+2000+6000+0)/6 | 90 =(20x1000+100x4000+95*6000)/11000 | TRUE |\n\n### Aggregation of background emissions\n\nWhen aggregating background emissions:\n- We filter the emissions based on the completeness of their `inputs`. For example, the background emissions for `diesel` will only be taken into account if `completeness.electricityFuel` is `True`.\n- We will add `0` values for Cycles that do not have an emission for a certain `input`, but are complete. For example, if we aggregated 2 compelete Cycles, and one has a background emission of `10` for `diesel`, the other one does not have any, the total will be `(10+0)/2` = `5`.\n\nFull example:\n\n| cycle.id | cycle.0.product.term.name | cycle.0.product.primary | cycle.emissions.0.term.name | cycle.emissions.0.value | cycle.emissions.0.inputs | cycle.emissions.1.term.name | cycle.emissions.1.value | cycle.emissions.1.inputs | cycle.emissions.2.term.name | cycle.emissions.2.value | cycle.emissions.2.inputs | cycle.emissions.3.term.name | cycle.emissions.3.value | cycle.emissions.3.inputs | completeness.fertiliser | completeness.pesticideVetinaryDrug | completeness.electricityFuel | cycle.emissions.0.term.name | cycle.emissions.0.value |\n|----------|---------------------------|-------------------------|--------------------------------|-------------------------|---------------------------------------------------|--------------------------------|-------------------------|----------------------------|--------------------------------|-------------------------|--------------------------|--------------------------------|-------------------------|--------------------------|-------------------------|------------------------------------|-------------------|--------------------------------|--------------------------|\n| 1 | Wheat, grain | TRUE | CO2, to air, inputs production | 30 | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | 10 | Pesticide unspecified (AI) | CO2, to air, inputs production | 10 | Maize, grain | CO2, to air, inputs production | 10 | Diesel, Urea (kg N) | TRUE | TRUE | TRUE | - | - |\n| 2 | Wheat, grain | TRUE | CO2, to air, inputs production | - | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | 30 | Pesticide unspecified (AI) | CO2, to air, inputs production | - | Maize, grain | CO2, to air, inputs production | - | Diesel, Urea (kg N) | FALSE | TRUE | TRUE | - | - |\n| 3 | Wheat, grain | TRUE | CO2, to air, inputs production | 0 | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | 0 | Pesticide unspecified (AI) | CO2, to air, inputs production | 0 | Maize, grain | CO2, to air, inputs production | 0 | Diesel, Urea (kg N) | TRUE | TRUE | TRUE | - | - |\n| 4 | Wheat, grain | TRUE | CO2, to air, inputs production | - | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | - | Pesticide unspecified (AI) | CO2, to air, inputs production | - | Maize, grain | CO2, to air, inputs production | - | Diesel, Urea (kg N) | FALSE | FALSE | FALSE | - | - |\n| aggregated | Wheat, grain | TRUE | CO2, to air, inputs production | 15 = (30 + 0)/2 | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | 13.3 = (10 + 30 + 0)/3 | Pesticide unspecified (AI) | CO2, to air, inputs production | 5 = (10 + 0)/2 | Maize, grain | CO2, to air, inputs production | 5 = (10 + 0) /2 | Diesel, Urea (kg N) | TRUE | TRUE | TRUE | CO2, to air, inputs production | 38.3 = 15 + 13.3 + 5 + 5 |"}
1
+ {"tags":{},"content":"# Crop aggregation\n\nThe parts of the aggregation process which are specific to `crop` products.\n\n## Aggregation stages\n\nAggregation of crops happens in multiple stages:\n1. First all the public Cycles on the platform corresponding to a certain time period, crop, and country are gathered.\n2. Cycles are then grouped into four groups: `conventional` and `rainfed`; `conventional` and `irrigated`; `organic` and `irrigated`, `organic` and `rainfed`. Data is aggregated within each of these groups, creating up to four sub-aggregations. These groupings mean data can be weighted to take into account substantial differences in farming practices. In the future, further groupings will be included (e.g., greenhouse vs field grown).\n3. These sub-aggregations are then combined into one aggregation, and each of the four sub-aggregation's Cycle and Site information is weighted by the area share of its group, using data from FiBL for organic farming and AQUASTAT for irrigation. Currently, these weightings are country-specific but not crop-specific. \n4. The impact assessments of the four sub-aggregations and the final country aggregation are then recalculated.\n\n**Full example**\n\nCreating an aggregation for `Quinoa, grain - Peru - 2010-2025`.\n\nAll Cycles with `primaryProduct` = `Quinoa, grain`, country=`Peru`, and `endDate` between `2010-2025` are gathered. Four different sub-aggregations can be created:\n\n- `Quinoa, grain - Peru - 2010-2025 - organic - irrigated`\n- `Quinoa, grain - Peru - 2010-2025 - organic - rainfed`\n- `Quinoa, grain - Peru - 2010-2025 - conventional - irrigated`\n- `Quinoa, grain - Peru - 2010-2025 - conventional - rainfed`\n\nThe final aggregation `Quinoa, grain - Peru - 2010-2025` is generated by assigning different weights to each sub-aggregation. According to FIBL, the average share of organic agriculture in Peru between 2010 and 2025 was `2 %`, and according to Aquastat the average share of irrigated land was `30 %`. This means that the following weights are assigned to calculate the weighted mean:\n\n| sub-aggregation | weight | \n|---------------|------|\n| organic-irrigated | 0.6 % |\n| organic-rainfed | 1.4 % |\n| conventional-irrigated | 29.4 % |\n| conventional-rainfed | 68.6 % |\n\n## Primary product\n\n- When aggregating the `primaryProduct`, values are adjusted to have equivalent `Dry matter` before averaging. The`Dry matter` value they are adjusted to, comes from the default value in the glossary, [dryMatter](/glossary/lookups/crop.csv).\n\n## World aggregations\n\n- World aggregations are created by combining verified country aggregations. The country aggregations are weighted by their production volume, based on data from FAOSTAT."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# Distributions\n\nThe process of viewing and generating distributions on aggregations.\n\n## Viewing distributions\n\n- Only a few aggregations on the platform currently contain distributions, however the aim for the next release is to have all aggregations containing distribution data.\n- The aggregations that do have distributions can be viewed by clicking on any `value`, and then selecting `Show` next to `distribution` on the tooltip.\n![Tooltip for a value, showing distribution button](/assets/aggregation-engine/show_distribution.png)\n- For emissions with multiple inputs, distributions are generated for the emission associated with each input, and the option to show them is in the right-most column in the tooltip.\n![Tooltip for an emissions value with inputs, showing distribution button](/assets/aggregation-engine/show_distribution.png)\n\n## Generating distributions\n\n- Distributions are generated for the Cycle and Site data in the underlying Cycles by randomly sampling from them 1000 times.\n- Sometimes the data in the underlying Cycles contains statistical information - `min`, `max`, `sd`, `distribution`. This is the case when a single study represents many farms but provides summary statistics instead of the data for each farm. This variation is captured by sampling from the data, assuming it is distributed normally, with a minimum of `0` where this is relevant. If a data point had `min`and `max` but not `sd`, the standard deviation would be estimated by `sd` = `(max - min)/4`.\n- To generate the distributions for the Impact Assessment, Impact Assessments are calculated for each point in the 1000-point distribution of the Cycle emissions and `primaryProduct`. For simplicity, the distribution of the `economicValueShare` is not considered.\n- Covariance matrices are also generated, which record the correlations between every data item in an aggregation. Currently these are not used, however the aim is to work on implementing a statistical method to take these into account when generating the impact assessment distribution. This will ensure the variance of the distribution is not overestimated."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# General rules\n\nThe general process that applies to all aggregations, regardless of the `termType`. \n\n## Finding cycles\n\n- Aggregations are triggered for a particular `product`, `region`, and `period`.\n- The `region` can be a country, or the region `World`.\n- The `period` is 20 years in length, examples are `1990-2009` and `2010-2025`.\n- Cycles are found by searching for Cycles where the relevant `product` is the `primaryProduct` of the Cycle. Currently, aggregations can only be created for `products` that are the `primaryProduct` of their Cycle. \n\n## Completeness\n\n- Aggregations happen at the level of completeness areas. For example, all of the fertiliser data for the Cycles where `completeness.fertiliser` = `true` will be aggregated together. If a Cycle has `completeness.fertiliser` = `false`, the fertiliser data from that Cycle will not be aggregated, but data from that Cycle for other completeness areas which are true will be aggregated. This approach allows the pooling of data from many incomplete Cycles to create an overall complete dataset.\n- Blank values occur for two reasons. One is that the user has uploaded a data item with a blank value. The other is that a data item exists in one underlying Cycle but not another. For example, Cycle A has the input `Urea (kg N)` with `value` = `70`, but Cycle B does not have the input `Urea (kg N)` but does have `completeness.fertiliser` = `TRUE`. This means Cycle B effectively has a blank value for the input `Urea (kg N)`.\n- For blank values with an associated completeness area, e.g., `fertiliser`, if the area is complete, any blank values within this completeness area will be treated as having `value` = `0`. If the area is incomplete, the blank values will be skipped.\n- For blank values without an associated completeness area, e.g., `measurement`, the general rule is that any blank values will be skipped. There are exceptions to this detailed in the Percentage terms section.\n\n## Calculation of aggregated values\n\n- Generally, an aggregated value for a data item is a simple mean of the values in the underlying cycles. For example, if there are three underlying cycles with the input `Urea (kg N)` and `value` : `20`, `30`, and `90`, the aggregated `value` for the input `Urea (kg N)` would be `(10 + 20 + 90)/3` = `40.` \n- There are two key exceptions to this, one for the `primaryProduct` in `crop` aggregations, where values are adjusted to the same `Dry matter` before the mean is calculated. The other is when there are weights to consider, and a weighted mean is calculated. For example, weights of country production are used for the world aggregations, and irrigation/organic weightings are used for the `crop` aggregations. More detail on these exceptions can be found in the pages for the relevant `termType`.\n\n## Products\n\n- Cycles without a `value` for the `primaryProduct` are not included in aggregations, this is mainly to exclude experimental data that has been collected for purposes other than yield measurement. However, Cycles with `value` = `0` for the `primaryProduct` are included in the aggregation, this is to take into account crop failures and the immature years of permanent crops.\n- Even if the product completeness area is marked as incomplete, the value of the `primaryProduct` is still aggregated. This is to reduce data loss and to improve the yield estimate.\n- `economicValueShare` is only aggregated for the `primaryProduct`, and includes `values` from cycles with `completeness.product` = `FALSE`. However, it excludes Cycles where the product `value` is `0`. There is an example below of the aggregation of product `value` and `economicValueShare`.\n\n**Full example**\n\n| cycle.id | cycle.products.wheatGrain.value | cycle.products.wheatGrain.economicValueShare | cycle.completness.products |\n|------------------------|-------------------------------------|--------------------------|------|\n| 1 | 1000 | 20 | TRUE |\n| 2 | 5000 | - | TRUE |\n| 3 | 4000 | 100 | TRUE |\n| 4 | - | 90 | FALSE |\n| 5 | 2000 | - | FALSE |\n| 6 | 6000 | 95 | FALSE |\n| 7 | 0 | 0 | TRUE |\n| aggregated | 3000 =(1000+5000+4000+2000+6000+0)/6 | 90 =(20x1000+100x4000+95*6000)/11000 | TRUE |\n\n## Practices\n\n### Percentage terms\n\n- For data items that have percentage units and are in a `sumIs100Group`, for example `waterRegime`,values are only used if the total value across the same `sumIs100Group` lookup is equal to `100`. This is to make sure the total aggregated value will also sum to `100`, as our validation would otherwise mark the data as invalid.\n- For `system` and `standardsAndLabels` data items that are not in a `sumIs100Group`, e.g., `Smallholder system`, blank values in Cycles are treated as having `0` value. This follows the same assumption used for splitting Cycles into `organic`/`conventional`, where Cycles without the practice `organic` are treated as `conventional`, i.e., having `value` = `0` for the `Organic` practice.\n\n### Number terms\n\n- For data items with number units, e.g., `number` or `days`, blank values in Cycles are skipped. This is because for the majority of these terms, the gap-fill for a missing value should not be a `0`, for example with `cropping duration`.\n\n### Boolean terms\n\n- Data items with boolean units, e.g., `Inorganic Nitrogen fertiliser used`, are not included in aggregations.\n\n## Emissions\n\n- Emissions are aggregated from the underlying Cycles, rather than being calculated from the aggregated Cycle. This is because emissions models take into account more information than is aggregated. For example, by considering specific dates or practices with boolean values. This also means user uploaded emissions can be included in the aggregation.\n\n### Tier 1 and Tier 2 emissions\n\n- For a particular emission, when all the underlying Cycles have the same `methodTier`, `tier 1` or `tier 2`, the aggregated emission will have the same `methodTier` in the aggregation. If the underlying Cycles have different `methodTier`, all tier 1 and 2 emissions are aggregated together to produce one emission with `methodTier` = `tier 1`. \n\n### Background emissons\n\n- When aggregating background emissions, emissions are filtered based on the completeness of their `inputs`. For example, the background emissions for `diesel` will only be taken into account if `completeness.electricityFuel` = `True`.\n- A `0` `value` is added for Cycles that do not have an emission for a certain `input`, but are complete. For example, if 2 complete Cycles were aggregated, and one had a background emission of `10` for `diesel`, and the other did not have any background emissions for `diesel`, the total would be `(10 + 0)/2` = `5`. \n- This completeness logic also applies to other emissions associated with specific inputs, e.g., `CO2, to air, fuel combustion`.\n\n**Full example**\n\n| cycle.id | cycle.0.product.term.name | cycle.0.product.primary | cycle.emissions.0.term.name | cycle.emissions.0.value | cycle.emissions.0.inputs | cycle.emissions.1.term.name | cycle.emissions.1.value | cycle.emissions.1.inputs | cycle.emissions.2.term.name | cycle.emissions.2.value | cycle.emissions.2.inputs | cycle.emissions.3.term.name | cycle.emissions.3.value | cycle.emissions.3.inputs | completeness.fertiliser | completeness.pesticideVetinaryDrug | completeness.electricityFuel | cycle.emissions.0.term.name | cycle.emissions.0.value |\n|----------|---------------------------|-------------------------|--------------------------------|-------------------------|---------------------------------------------------|--------------------------------|-------------------------|----------------------------|--------------------------------|-------------------------|--------------------------|--------------------------------|-------------------------|--------------------------|-------------------------|------------------------------------|-------------------|--------------------------------|--------------------------|\n| 1 | Wheat, grain | TRUE | CO2, to air, inputs production | 30 | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | 10 | Pesticide unspecified (AI) | CO2, to air, inputs production | 10 | Maize, grain | CO2, to air, inputs production | 10 | Diesel, Urea (kg N) | TRUE | TRUE | TRUE | - | - |\n| 2 | Wheat, grain | TRUE | CO2, to air, inputs production | - | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | 30 | Pesticide unspecified (AI) | CO2, to air, inputs production | - | Maize, grain | CO2, to air, inputs production | - | Diesel, Urea (kg N) | FALSE | TRUE | TRUE | - | - |\n| 3 | Wheat, grain | TRUE | CO2, to air, inputs production | 0 | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | 0 | Pesticide unspecified (AI) | CO2, to air, inputs production | 0 | Maize, grain | CO2, to air, inputs production | 0 | Diesel, Urea (kg N) | TRUE | TRUE | TRUE | - | - |\n| 4 | Wheat, grain | TRUE | CO2, to air, inputs production | - | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | - | Pesticide unspecified (AI) | CO2, to air, inputs production | - | Maize, grain | CO2, to air, inputs production | - | Diesel, Urea (kg N) | FALSE | FALSE | FALSE | - | - |\n| aggregated | Wheat, grain | TRUE | CO2, to air, inputs production | 15 = (30 + 0)/2 | Inorganic Nitrogen fertiliser, unspecified (kg N) | CO2, to air, inputs production | 13.3 = (10 + 30 + 0)/3 | Pesticide unspecified (AI) | CO2, to air, inputs production | 5 = (10 + 0)/2 | Maize, grain | CO2, to air, inputs production | 5 = (10 + 0) /2 | Diesel, Urea (kg N) | TRUE | TRUE | TRUE | CO2, to air, inputs production | 38.3 = 15 + 13.3 + 5 + 5 |\n\n## Site\n\n### Measurement\n\n- Measurements are aggregated at the depth intervals, `depthUpper` and `depthLower`, of the measurements in the underlying cycles. These can be viewed by clicking the `value` of a measurement. The `value` is a weighted average of the measurements at the different depth intervals.\n\n### Management\n\n- To aggregate site management, all the data items with dates that fall within the aggregation period are first averaged, and then given new start dates based on the aggregation period. For example, if the period is `2010-2025`, the new `startDate` would be `01-01-2010` and the new `endDate` would be `31-12-2025`.\n- The same method is used to aggregate the management terms that fall into previous aggregation periods.\n\n## Impact Assessment\n\n - During an aggregation, the impact assessment is recalculated using the aggregated Cycle, using the same method as any other Impact Assessment on the platform is calculated."}
@@ -1 +1 @@
1
- {"tags":{},"content":"# Processed food aggregation\n\nCurrently we generate aggregations for the food processing stage only at the global level to maximise data volume. For example, we pool in data describing flour milling in many countrie to generate a global milling aggregation. We then replace the background data in that aggregation (e.g., related to the crop or animal product that is processed, or related to electricity production) with country specific values. The justification for this is that food processing is relatively similar in terms of its inputs and products in different countries whereas the impacts of the agricultural inputs and energy can differ significantly by country.\n\nThe aggregation process is as follows:\n1. For a given processed food, we find we find all Cycles that has the processed food as a product, regardless of the country.\n1. We then filter those Cycles to those that have a specific list of inputs, based on the `aggregationInputTermIds` lookup. This means we identify processing Cycles where the input is what requires processing, and the product is the processed food.\n1. We aggregate all data, applying the same rules as when aggregating crop Cycles.\n1. We remove all background emissions from the aggregated Cycle.\n1. We recalculate the background emissions using the models provided in the HESTIA engine models library, like we would do on the HESTIA platform, using country-specific data where appropriate."}
1
+ {"tags":{},"content":"# Processed food aggregation\n\nThe parts of the aggregation process that are specific to `processedFood` products.\n\n## Aggregation stages\n\nAggregations for the food processing stage can either be generated at the global level (to maximimise data volume) or the country level. For example, if an aggregation for `Wheat flour (whole)` in `Italy` was triggered with the option to use global processing data, all Cycles describing flour milling, regardless of their region, are combined into one global milling aggregation. The background data in the aggregation (e.g., related to the `crop` that is processed, or related to the electricity production) are replaced with country-specific values. This is allowed because food processing can be relatively similar in terms of its inputs and products in different countries, whereas the impacts of the agricultural inputs and energy can differ significantly. If sufficient country-level processing data is available, the aggregation can be triggered to use this region-specific data.\n\nThe aggregation process is as follows:\n1. When an aggregation is triggered to not use global processing data, all public Cycles that have the `processedFood` as a `primaryProduct` for the country specified are gathered. If it is triggered to use global processing data, all Cycles are gathered regardless of their country.\n2. Cycles are then filtered to those that have a specific list of inputs, based on the [aggregationInputTermIds](/glossary/lookups/processedFood.csv) lookup. For this list of inputs, a HESTIA verified aggregation will be used to fill in the background emissions.\n3. The Cycles are rescaled to 1kg of the `primaryProduct` (more detail below) and then aggregated.\n4. All background emissions are removed from the aggregated Cycle.\n5. The background emissions are recalculated using country-specific data. For the `crop`/`processedFood` inputs, the verified aggregations for the same `period` are used for the background emissions. If no verified aggregation is available for the specified `period`, then the next closest `period` is used. \n6. The impact assessments are then recalculated.\n\n## Rescaling\n\n- All `inputs`, `products`, and `emissions` are rescaled to be relative to 1kg of the `primaryProduct`. In `practices`, only `operation` data items are rescaled."}
@@ -1 +1 @@
1
- {"tags":{},"content":"# Validate CSV/JSON files\n\nHESTIA provides some functions to validate a CSV / JSON / JSON-LD files formatted following the [HESTIA format](/upload#excelCsv).\n\n## Validating a CSV file\n\nTo validate a CSV file, you will first need to convert it to JSON.\nThis can be done using the HESTIA's `utils` package:\n\n1. Install `NodeJS` version `12`\n2. Install the utils library globally: `npm install --global @hestia-earth/schema-convert`\n3. Drop your CSV files into a specific `folder` then run:\n```bash\nhestia-convert-to-json folder\n```\n\nYou will find in the `folder` the list of CSV files converted to JSON with the `.json` extension.\nThese files can be then used for validation described below.\n\n## Validating the Terms\n\nWhen uploading data on the HESTIA platform, you will need to use our [Glossary of Terms](/glossary).\nYou can follow these steps to install a package to validate the terms:\n\n1. Install `NodeJS` version `12`\n2. Install the utils library globally: `npm install --global @hestia-earth/utils`\n3. Drop your JSON / JSON-LD files into a specific `folder` then run:\n```bash\nAPI_URL=<APIUrl> hestia-validate-terms folder\n```\n\nErrors will appear in the console if any have been found.\n\n## Validating the Schema\n\nWhen uploading data on the HESTIA platform, you will need to follow our [Schema](/schema).\nYou can follow these steps to install a package to validate the schema:\n\n1. Install `NodeJS` version `12`\n2. Install the schema validation library globally: `npm install --global @hestia-earth/schema-validation`\n3. Drop your JSON / JSON-LD files into a specific `folder` then run:\n```bash\nhestia-validate-jsonld '' folder\n```\n\nErrors will appear in the console if any have been found.\n\n## Validating the Data\n\nOne important step when uploading data on the HESTIA platform is making sure the data is consistent using the [Data Validation package](https://gitlab.com/hestia-earth/hestia-data-validation).\nYou can follow these steps to install a package to validate the data:\n\n1. Install `Python` version `3` minimum\n2. Install the data validation library: `pip install hestia_earth.validation`\n3. Drop your JSON / JSON-LD files into a specific `folder` then run:\n```bash\nAPI_URL=<APIUrl> VALIDATE_SPATIAL=false VALIDATE_EXISTING_NODES=true hestia-validate-data folder\n```\n\nErrors will appear in the console if any have been found."}
1
+ {"tags":{},"content":"# Validate CSV/JSON files\n\nHESTIA provides some functions to validate a CSV / JSON / JSON-LD files formatted following the [HESTIA format](/upload#excelCsv).\n\n## Validating a CSV file\n\nTo validate a CSV file, you will first need to convert it to JSON.\nThis can be done using the HESTIA's `utils` package:\n\n1. Install `NodeJS` version `12` minimum\n2. Install the utils library globally: `npm install --global @hestia-earth/schema-convert`\n3. Drop your CSV files into a specific `folder` then run:\n```bash\nhestia-convert-to-json folder\n```\n\nYou will find in the `folder` the list of CSV files converted to JSON with the `.json` extension.\nThese files can be then used for validation described below.\n\n## Validating the Terms\n\nWhen uploading data on the HESTIA platform, you will need to use our [Glossary of Terms](/glossary).\nYou can follow these steps to install a package to validate the terms:\n\n1. Install `NodeJS` version `12` minimum\n2. Install the utils library globally: `npm install --global @hestia-earth/utils`\n3. Drop your JSON / JSON-LD files into a specific `folder` then run:\n```bash\nhestia-validate-terms folder\n```\n\nErrors will appear in the console if any have been found.\n\n## Validating the Schema\n\nWhen uploading data on the HESTIA platform, you will need to follow our [Schema](/schema).\nYou can follow these steps to install a package to validate the schema:\n\n1. Install `NodeJS` version `12` minimum\n2. Install the schema validation library globally: `npm install --global @hestia-earth/schema-validation`\n3. Drop your JSON / JSON-LD files into a specific `folder` then run:\n```bash\nhestia-validate-jsonld folder\n```\n\nErrors will appear in the console if any have been found.\n\n## Validating the Data\n\nOne important step when uploading data on the HESTIA platform is making sure the data is consistent using the [Data Validation package](https://gitlab.com/hestia-earth/hestia-data-validation).\nYou can follow these steps to install a package to validate the data:\n\n1. Install `Python` version `3` minimum\n2. Install the data validation library: `pip install hestia_earth.validation`\n3. Drop your JSON / JSON-LD files into a specific `folder` then run:\n```bash\nVALIDATE_SPATIAL=false VALIDATE_EXISTING_NODES=true hestia-validate-data folder\n```\n\nErrors will appear in the console if any have been found."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# HESTIA Data Validation\n\nSee the complete list of validations available on the HESTIA format.\n\nEach validation is divided by node type: `Cycle`, `Site`, `ImpactAssessment`, and `Organisation`."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# Cycle validation\n\nHere is the list of validations running on a [Cycle](/schema/Cycle).\n\n## <a href=\"./#validate_functionalUnit_not_1_ha\">Validate functionalUnit</a>\n\nThis validation prevents using `1 ha` as a `functionalUnit` when the `siteType` is:\n- `agri-food processor`;\n- `retailer`.\n\n## <a href=\"./#validate_cycle_dates\">Validate Cycle Dates</a>\n\nThis validation ensures two things:\n1. The `endDate` must be later than `startDate`;\n2. The date format of `endDate` must be the same as `startDate`.\n\n## <a href=\"./#validate_sum_aboveGroundCropResidue\">Validate total of above ground crop residue</a>\n\nIf the Cycle contains `aboveGroundCropResidueTotal` and any of:\n- `aboveGroundCropResidueBurnt`\n- `aboveGroundCropResidueIncorporated`\n- `aboveGroundCropResidueLeftOnField`\n- `aboveGroundCropResidueRemoved`\n\nThen the total must be euqal to the sun of the other terms.\n\n## <a href=\"./#validate_crop_residue_complete\">Validate crop residue when it is marked as complete</a>\n\nWhen `cropResidue` is marked as complete, this validation will make sure that these terms are specified:\n- at least one `cropResidueManagement` practice;\n- the sum of \"above ground crop residue\" products is > 0;\n- and the \"below ground crop residue\" is specified.\n\nIf any of these conditions fail, then the `cropResidue` should not be set as complete.\n\n## <a href=\"./#validate_crop_residue_incomplete\">Validate crop residue when it is marked as incomplete</a>\n\nWhen `cropResidue` is marked as complete, this validation will check if these terms are specified:\n- at least one `cropResidueManagement` practice;\n- the sum of \"above ground crop residue\" products is > 0;\n- and the \"below ground crop residue\" is specified.\n\nIf any of these conditions apply, then the `cropResidue` should be set as complete, and a warning will be given.\n\n## <a href=\"./#validate_cycleDuration\">Validate cycleDuration</a>\n\nWhen the `startDate` and `endDate` of the Cycle are provided, the `cycleDuration` must be equal to the difference in days.\n\n## <a href=\"./#validate_maximum_cycleDuration\">Validate the cycleDuration</a>\n\nThis validation verifies the `cycleDuration` provided in the Cycle is not greater than our `maximumCycleDuration` lookup.\n\n## <a href=\"./#validate_riceGrainInHuskFlooded_minimum_cycleDuration\">Validate \"Rice, grain (in husk), flooded\" has a plausible cycleDuration</a>\n\nUsing the lookup `Rice_croppingDuration_days_min`, this validation will make sure that the `cycleDuration` specified in the Cycle is not below this minimum duration.\n\nNote: the minimum duration depends on the `country` specified on the Site.\n\n## <a href=\"./#validate_crop_siteDuration\">Validate siteDuration for crop only</a>\n\nThis validations ensures that for crop production cycles, if the user sets `siteDuration`, it is only equal to `cycleDuration` when `startDateDefinition = harvest of previous crop`.\n\n## <a href=\"./#validate_siteDuration\">Validate siteDuration with otherSites</a>\n\nRun multiple validation when `otherSites` is specified:\n- If there is a single site, then `siteDuration` == `cycleDuration`.\n- If there is more than one site, then `siteDuration` != `cycleDuration`.\n- If there is more than one site, then `sum(siteDuration, otherSitesDuration)` == `cycleDuration`.\n- There must be as many `otherSites` as `otherSitesDuration`.\n\n## <a href=\"./#validate_durations\">Validate otherSitesDuration and otherSitesArea</a>\n\nThis validation will encourage the user to add the following fields, for a `relative` `functionalUnit` Cycle:\n- `siteDuration`\n- `siteArea`\n- `otherSitesDuration` (when `otherSites` is set)\n- `otherSitesArea` (when `otherSites` is set)\n\n## <a href=\"./#validate_possibleCoverCrop\">Validate using crop as a cover crop</a>\n\nThis validation prevents using a `crop` Product, set as a \"cover crop\" (Practice), that can not be a crover crop. To fix this error, the Product or the Practice needs to be adjusted. This uses the lookup `possibleCoverCrop` on the Product to check if the Product can be a cover crop.\n\n## <a href=\"./#validate_set_treatment\">Validate using treatment with experimentDesign</a>\n\nWhen `experimentDesign` is used, this will encourage the user to set `treatment` as well.\n\n## <a href=\"./#validate_products_animals\">Validate using both liveAnimal and animalProduct products</a>\n\nThis validation will show a warning when both `liveAnimal` and `animalProduct` are added to the Cycle.\n\n## <a href=\"./#validate_stocking_density\">Validate Stocking density</a>\n\nIncite users to add the practice \"Stocking density\" when:\n- the `functionalUnit` is `relative`;\n- the Cycle occurs on `permanent pasture`;\n- the Cycle contains a list of `animals` as `liveAnimal` or `animalProduct`.\n\n## <a href=\"./#validate_linked_impact_assessment\">Validate that every product that should have an ImpactAssessment, actually has one.</a>\n\nIn some cases, the same product could be added multiple times with different unique properties, in which case an ImpactAssessment should exist for each.\n\nNote: on HESTIA, Impact Assessments are automatically generated during upload.\n\n## <a href=\"./#validate_animal_product_mapping\">Validate mapping between the liveAnimal in the Animal blank nodes, and the Cycle Product as animalProduct.</a>\n\nThis validation makes sure that the `liveAnimal` added as `Animal` have a corresponding `animalProduct` in the Cycle `products`.\n\n## <a href=\"./#validate_requires_substrate\">Validate substrate inputs</a>\n\nThis validation ensures that the `substrate` Inputs are added to the Cycle when the `siteType` = `glass or high accessible cover`, and a \"substrate\" practice has been set.\n\n## <a href=\"./#validate_list_min_max_lookup\">Validate the minimum and maximum value of a list of blank nodes, based on lookup values</a>\n\nFor some Terms, HESTIA has defined some minimum and maximum value. If the specified `value` does not fall within these, an error is raised.\n\n## <a href=\"./#validate_list_term_percent\">Validates the percentage of blank nodes</a>\n\nFor all Terms that are in percentages, the value must be between `0` and `100`.\n\n## <a href=\"./#validate_list_sum_100_percent\">Validate a group of blank nodes must sum to 100%</a>\n\nSome Terms are part of a group from the lookup `sumIs100Group`, meaning when summed up, their total value must be exactly `100%` (with a 5% tolerance).\n\n## <a href=\"./#validate_list_percent_requires_value\">Validate the value of some blank nodes when the units is a percentage</a>\n\nFor all Terms that are set as percentages, the `value` must be provided.\n\n## <a href=\"./#validate_list_valueType\">Validate the type of the value of blank nodes</a>\n\nUsing the lookup \"valueType\", this validation will make sure the provided value is of the correct type. Example: a Term that should be either True or False will only accept True/False value.\n\n## <a href=\"./#validate_empty_fields\">Validates empty fields</a>\n\nThis validation returns warnings when fields are added without a value (or using 'no data' for example).\n\n## <a href=\"./#validate_linked_source_privacy\">Validate the privacy of 2 linked Nodes</a>\n\nWhen adding a Source to a Cycle or an ImpactAssessment, this validation ensures that the same level of privacy is used on both.\n\nExample:\n- if the Cycle is set as `dataPrivate`=`true`, the Source it is linked to must also be `dataPrivate`=`true`;\n- if the Cycle is set as `dataPrivate`=`false`, the Source it is linked to must also be `dataPrivate`=`false`.\n\n## <a href=\"./#validate_list_model_config\">Validates a list using the engine models.</a>\n\nThis method uses a configuration to determine which `term` in the elements should run. It does not use the `methodModel` that could be found on each element.\n\n## <a href=\"./#validate_duplicated_term_units\">Validate multiple terms used with different units</a>\n\nSome of the terms in the Glossary have been added with different units, e.g., `kg` / `kg N` / `kg VS`. This validation returns a warning when those terms have been used together in the same Node.\n\n## <a href=\"./#validate_other_model\">Validate usage of \"Other model\"</a>\n\nThe \"Other model\" Term has been added in the eventuality that HESTIA has not added the required model yet. However, to use this Term, the `methodModelDescription` must be set.\n\n## <a href=\"./#validate_nested_existing_node\">Validate when a non-indexed node references indexed nodes</a>\n\nWhen uploading Cycle, Site, etc., the referenced nodes must also be uploaded. Example:\n- if the uploaded Cycle references an existing Site, a warning will be given;\n- if the uploaded Cycle references an uploaded Site, no warning is given.\n\n## <a href=\"./#validate_linked_impactAssessment\">Validate inputs impactAssessment links</a>\n\nThis validation makes sure that some inputs, mapped by the lookup `aggregationInputTermIds` on the primary product, have a corresponding `impactAssessment` linked to them. This validation can throw an error in the following cases:\n- no Impact Assessment has been found for this Input;\n- some Impact Assessment exist for the Input, but it has not been verified;\n- the lookup `aggregationInputTermIds` has not been set correctly. Please verify the primary product of the Cycle,\nand make sure the lookup `aggregationInputTermIds` has been set correctly.\n\n## <a href=\"./#validate_id\">Validate aggregated node id</a>\n\nValidate the node `id` has been correctly formatted. If this validation fails, it indicates an error in the aggregation engine, and an issue must be raised.\n\n## <a href=\"./#validate_duplicated_feed_inputs\">Validate feed inputs are not duplicated</a>\n\nThis validation ensures that the same Input marked with `isAnimalFeed` are not added in both `inputs` and `animals`.\n\n## <a href=\"./#validate_has_pregnancyRateTotal\">Validate specifying the pregnancy rate</a>\n\nUsing the lookup `productTermIdsAllowed` on the Term `pregnancyRateTotal`, this validation will recommend the user to add the property `pregnancyRateTotal` on the Animal blank node.\n\n## <a href=\"./#validate_method_not_relevant\">Validate using the emissionNotRelevant model</a>\n\nThe model `emissionNotRelevant` is reserved for the model `emissionNotRelevant`. This validation will therefore raise a warning when it is being used, and the `methodModel` should be replaced.\n\n## <a href=\"./#validate_methodTier_not_relevant\">Validate using the not relevant methodTier</a>\n\nThe methodTier `not relevant` is reserved for the model `emissionNotRelevant`. This validation will therefore raise a warning when it is being used, and the `methodTier` should be replaced.\n\n## <a href=\"./#validate_methodTier_background\">Validate methodTier for background emissions</a>\n\nOnly specific emissions can use the `methodTier`=`background`. For all emissions that are not allowed to use it, this validation will throw an error, and another `methodTier` must be used instead. Example of emission that can use it: `CO2, to air, inputs production`.\n\n## <a href=\"./#validate_waterRegime_rice_products\">Validate corresponding waterRegime practices with Rice products</a>\n\nThis validation ensures that the correct `waterRegime` practice can be used with the specified Rice product.\n\n## <a href=\"./#validate_croppingDuration_riceGrainInHuskFlooded\">Validate \"Rice, grain (in husk), flooded\" cropping duration</a>\n\nWhen \"Rice, grain (in husk), flooded\" is used as a product, this validation will check the practice `croppingDuration`, and make sure the value is between `Rice_croppingDuration_days_min` and `Rice_croppingDuration_days_max` lookup values.\n\n## <a href=\"./#validate_landCover_match_products\">Validate that at least one landCover practice matches an equivalent Product</a>\n\nWhen adding a `landCover` Practice to a Cycle, the Practice must match a Product. We use the lookup `landCoverTermId` on existing Products to match the 2 together. If no correspondance is found, an error is shown.\n\n## <a href=\"./#validate_practices_management\">Validate Cycle Practices and Site Management</a>\n\nThis validation is to ensure that the same Management and Practices added on the Site and related Cycles, with the same `term` and `startDate` + `endDate`, have the same `value`. Since HESTIA will automatically gap-fill the Management node from the Cycle, removing them will fix this error.\n\n## <a href=\"./#validate_irrigated_complete_has_inputs\">Validate irrigated Cycles with complete water have water inputs</a>\n\nWhen the Cycle `water` completeness is set to `True`, and \"irrigation\" practices are used, there must be at least 1 Input of `termType`=`water`. Otherwise, the completeness should be marked as `False`."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# Impact Assessment validation\n\nHere is the list of validations running on a [Impact Assessment](/schema/ImpactAssessment).\n\n## <a href=\"./#validate_list_min_max_lookup\">Validate the minimum and maximum value of a list of blank nodes, based on lookup values</a>\n\nFor some Terms, HESTIA has defined some minimum and maximum value. If the specified `value` does not fall within these, an error is raised.\n\n## <a href=\"./#validate_list_term_percent\">Validates the percentage of blank nodes</a>\n\nFor all Terms that are in percentages, the value must be between `0` and `100`.\n\n## <a href=\"./#validate_list_sum_100_percent\">Validate a group of blank nodes must sum to 100%</a>\n\nSome Terms are part of a group from the lookup `sumIs100Group`, meaning when summed up, their total value must be exactly `100%` (with a 5% tolerance).\n\n## <a href=\"./#validate_list_percent_requires_value\">Validate the value of some blank nodes when the units is a percentage</a>\n\nFor all Terms that are set as percentages, the `value` must be provided.\n\n## <a href=\"./#validate_list_valueType\">Validate the type of the value of blank nodes</a>\n\nUsing the lookup \"valueType\", this validation will make sure the provided value is of the correct type. Example: a Term that should be either True or False will only accept True/False value.\n\n## <a href=\"./#validate_empty_fields\">Validates empty fields</a>\n\nThis validation returns warnings when fields are added without a value (or using 'no data' for example).\n\n## <a href=\"./#validate_linked_source_privacy\">Validate the privacy of 2 linked Nodes</a>\n\nWhen adding a Source to a Cycle or an ImpactAssessment, this validation ensures that the same level of privacy is used on both.\n\nExample:\n- if the Cycle is set as `dataPrivate`=`true`, the Source it is linked to must also be `dataPrivate`=`true`;\n- if the Cycle is set as `dataPrivate`=`false`, the Source it is linked to must also be `dataPrivate`=`false`.\n\n## <a href=\"./#validate_list_model_config\">Validates a list using the engine models.</a>\n\nThis method uses a configuration to determine which `term` in the elements should run. It does not use the `methodModel` that could be found on each element.\n\n## <a href=\"./#validate_duplicated_term_units\">Validate multiple terms used with different units</a>\n\nSome of the terms in the Glossary have been added with different units, e.g., `kg` / `kg N` / `kg VS`. This validation returns a warning when those terms have been used together in the same Node.\n\n## <a href=\"./#validate_other_model\">Validate usage of \"Other model\"</a>\n\nThe \"Other model\" Term has been added in the eventuality that HESTIA has not added the required model yet. However, to use this Term, the `methodModelDescription` must be set.\n\n## <a href=\"./#validate_nested_existing_node\">Validate when a non-indexed node references indexed nodes</a>\n\nWhen uploading Cycle, Site, etc., the referenced nodes must also be uploaded. Example:\n- if the uploaded Cycle references an existing Site, a warning will be given;\n- if the uploaded Cycle references an uploaded Site, no warning is given.\n\n## <a href=\"./#validate_method_not_relevant\">Validate using the emissionNotRelevant model</a>\n\nThe model `emissionNotRelevant` is reserved for the model `emissionNotRelevant`. This validation will therefore raise a warning when it is being used, and the `methodModel` should be replaced.\n\n## <a href=\"./#validate_methodTier_not_relevant\">Validate using the not relevant methodTier</a>\n\nThe methodTier `not relevant` is reserved for the model `emissionNotRelevant`. This validation will therefore raise a warning when it is being used, and the `methodTier` should be replaced.\n\n## <a href=\"./#validate_methodTier_background\">Validate methodTier for background emissions</a>\n\nOnly specific emissions can use the `methodTier`=`background`. For all emissions that are not allowed to use it, this validation will throw an error, and another `methodTier` must be used instead. Example of emission that can use it: `CO2, to air, inputs production`.\n\n## <a href=\"./#validate_characterisedIndicator_model\">Validate methodModel used by the Indicator</a>\n\nSome `characterisedIndicator` Terms can only be used with specific `model`. This validation uses the lookup [characterisedIndicator-model-mapping.csv](/glossary/lookups/characterisedIndicator-model-mapping.csv) to verify if it is valid."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# Organisation validation\n\nHere is the list of validations running on a [Organisation](/schema/Organisation).\n\n## <a href=\"./#validate_organisation_dates\">Validate Organisation Dates</a>\n\nThis validation ensures that the `endDate` must be later than `startDate`.\n\n## <a href=\"./#validate_list_min_max_lookup\">Validate the minimum and maximum value of a list of blank nodes, based on lookup values</a>\n\nFor some Terms, HESTIA has defined some minimum and maximum value. If the specified `value` does not fall within these, an error is raised.\n\n## <a href=\"./#validate_list_term_percent\">Validates the percentage of blank nodes</a>\n\nFor all Terms that are in percentages, the value must be between `0` and `100`.\n\n## <a href=\"./#validate_list_sum_100_percent\">Validate a group of blank nodes must sum to 100%</a>\n\nSome Terms are part of a group from the lookup `sumIs100Group`, meaning when summed up, their total value must be exactly `100%` (with a 5% tolerance).\n\n## <a href=\"./#validate_list_percent_requires_value\">Validate the value of some blank nodes when the units is a percentage</a>\n\nFor all Terms that are set as percentages, the `value` must be provided.\n\n## <a href=\"./#validate_list_valueType\">Validate the type of the value of blank nodes</a>\n\nUsing the lookup \"valueType\", this validation will make sure the provided value is of the correct type. Example: a Term that should be either True or False will only accept True/False value.\n\n## <a href=\"./#validate_empty_fields\">Validates empty fields</a>\n\nThis validation returns warnings when fields are added without a value (or using 'no data' for example).\n\n## <a href=\"./#validate_linked_source_privacy\">Validate the privacy of 2 linked Nodes</a>\n\nWhen adding a Source to a Cycle or an ImpactAssessment, this validation ensures that the same level of privacy is used on both.\n\nExample:\n- if the Cycle is set as `dataPrivate`=`true`, the Source it is linked to must also be `dataPrivate`=`true`;\n- if the Cycle is set as `dataPrivate`=`false`, the Source it is linked to must also be `dataPrivate`=`false`.\n\n## <a href=\"./#validate_list_model_config\">Validates a list using the engine models.</a>\n\nThis method uses a configuration to determine which `term` in the elements should run. It does not use the `methodModel` that could be found on each element.\n\n## <a href=\"./#validate_duplicated_term_units\">Validate multiple terms used with different units</a>\n\nSome of the terms in the Glossary have been added with different units, e.g., `kg` / `kg N` / `kg VS`. This validation returns a warning when those terms have been used together in the same Node.\n\n## <a href=\"./#validate_other_model\">Validate usage of \"Other model\"</a>\n\nThe \"Other model\" Term has been added in the eventuality that HESTIA has not added the required model yet. However, to use this Term, the `methodModelDescription` must be set.\n\n## <a href=\"./#validate_nested_existing_node\">Validate when a non-indexed node references indexed nodes</a>\n\nWhen uploading Cycle, Site, etc., the referenced nodes must also be uploaded. Example:\n- if the uploaded Cycle references an existing Site, a warning will be given;\n- if the uploaded Cycle references an uploaded Site, no warning is given."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# Site validation\n\nHere is the list of validations running on a [Site](/schema/Site).\n\n## <a href=\"./#validate_cycle_dates\">Validate multiple Cycles with identical dates related to the same Site</a>\n\nThis validation prevents connecting multiple Cycles to the same Site, during the same period. If multiple products are being produced on the same Site, they should be added together in the same Cycle. Otherwise, different Site must be used.\n\nNote: this applies to the Cycles linked with `.site` and `.otherSites`.\n\n## <a href=\"./#validate_list_min_max_lookup\">Validate the minimum and maximum value of a list of blank nodes, based on lookup values</a>\n\nFor some Terms, HESTIA has defined some minimum and maximum value. If the specified `value` does not fall within these, an error is raised.\n\n## <a href=\"./#validate_list_term_percent\">Validates the percentage of blank nodes</a>\n\nFor all Terms that are in percentages, the value must be between `0` and `100`.\n\n## <a href=\"./#validate_list_sum_100_percent\">Validate a group of blank nodes must sum to 100%</a>\n\nSome Terms are part of a group from the lookup `sumIs100Group`, meaning when summed up, their total value must be exactly `100%` (with a 5% tolerance).\n\n## <a href=\"./#validate_list_percent_requires_value\">Validate the value of some blank nodes when the units is a percentage</a>\n\nFor all Terms that are set as percentages, the `value` must be provided.\n\n## <a href=\"./#validate_list_valueType\">Validate the type of the value of blank nodes</a>\n\nUsing the lookup \"valueType\", this validation will make sure the provided value is of the correct type. Example: a Term that should be either True or False will only accept True/False value.\n\n## <a href=\"./#validate_empty_fields\">Validates empty fields</a>\n\nThis validation returns warnings when fields are added without a value (or using 'no data' for example).\n\n## <a href=\"./#validate_linked_source_privacy\">Validate the privacy of 2 linked Nodes</a>\n\nWhen adding a Source to a Cycle or an ImpactAssessment, this validation ensures that the same level of privacy is used on both.\n\nExample:\n- if the Cycle is set as `dataPrivate`=`true`, the Source it is linked to must also be `dataPrivate`=`true`;\n- if the Cycle is set as `dataPrivate`=`false`, the Source it is linked to must also be `dataPrivate`=`false`.\n\n## <a href=\"./#validate_list_model_config\">Validates a list using the engine models.</a>\n\nThis method uses a configuration to determine which `term` in the elements should run. It does not use the `methodModel` that could be found on each element.\n\n## <a href=\"./#validate_duplicated_term_units\">Validate multiple terms used with different units</a>\n\nSome of the terms in the Glossary have been added with different units, e.g., `kg` / `kg N` / `kg VS`. This validation returns a warning when those terms have been used together in the same Node.\n\n## <a href=\"./#validate_other_model\">Validate usage of \"Other model\"</a>\n\nThe \"Other model\" Term has been added in the eventuality that HESTIA has not added the required model yet. However, to use this Term, the `methodModelDescription` must be set.\n\n## <a href=\"./#validate_nested_existing_node\">Validate when a non-indexed node references indexed nodes</a>\n\nWhen uploading Cycle, Site, etc., the referenced nodes must also be uploaded. Example:\n- if the uploaded Cycle references an existing Site, a warning will be given;\n- if the uploaded Cycle references an uploaded Site, no warning is given.\n\n## <a href=\"./#validate_cycles_overlap\">Prevent overlap between management dates and cycle dates</a>\n\nHESTIA will gap-fill `Management` data from the related Cycles of a Site. Adding data on the same dates of those Cycles could lead to double-counting. We will use the first Cycle `startDate`, or `endDate` - `cycleDuration`, or `endDate` - `maximumCycleDuration` lookup to determine the earliest start date of the gap-filling, and prevent using Management dates that are later than this date. You can make sure this error is not triggered by:\n- removing any Management node that describes the Cycles;\n- using day precision for the Management nodes and the Cycle `startDate` / `endDate` (e.g., `2000-01-01`);\n- making sure the `startDate` or `cycleDuration` of the first Cycle is set (so we don't use `maximumCycleDuration`)."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# Core concepts\n\nThis page describes the core concepts when uploading data on HESTIA.\n\n1. Nodes: data in HESTIA is split into nodes and all your data has to fit into one or more of these nodes. Each node has a unique identifier. If the node has already been indexed on the platform, the identifier is `@id` (e.g., `cycle.@id` ). If the node has not been indexed on the platform and you are creating it for the first time, the identifier is `id` in your upload file. You must link your nodes using identifiers (e.g., `cycle.site.id` links a Cycle to a Site).\n2. Glossary of Terms: to support data harmonization sharing we have built a Glossary of Terms containing standard names for things in the agri-food system. Data uploaded must use these Terms . You can suggest new terms here . You can refer to Terms in your upload file using their `@id` or `name`.\n3. Default Units: each Term defines the units that any data must be in (e.g., kilograms of nitrogen). Note that for terms with percentages as units, values should be on a `0` to `100` scale (e.g., `86` for 86%, not `0.86`).\n4. Data Completeness: there are thousands of possible items in the food system, and it would be impractical to create a big database with thousands of items in it and many zeros next to the items that were not used or produced. Therefore, you only need to add data describing things that were used or produced during the Cycle, and then state whether your data are a complete representation of the production Cycle by filling in a Completeness assessment.\n5. Private data: nodes can be marked as `private`, which means they can be uploaded but will only be visible to you, anyone you share the file with, and platform admins."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# Deleting indexed data\n\nLearn how to remove data you uploaded on HESTIA.\n\nIf, for any reason, you need to delete data after it has been indexed on the platform, you can email <a mailto=\"community@hestia.earth\">community@hestia.earth</a>. Please provide the identifiers or URLs of the nodes you want removing."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# Example uploads\n\nFind some example uploads to get you started."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# A survey of maize-pigeon pea farms in Myanmar\n\n## Dataset\n\nThe [Food Security Policy Project](https://dataverse.harvard.edu/dataset.xhtml?persistentId=doi:10.7910/DVN/HLJRHJ) surveyed 935 farms in the southern Shan region of Myanmar in June-October 2018. These farms cultivated maize and/or pigeon peas often using intercropping. Data were captured by interviewing farmers and asking them to recall information about the prior production cycle(s). Data were stored in an Excel spreadsheet after removing personally identifying information such as coordinates.\n\n## Conversion steps\n\n* We added a new row in the Excel sheet below the existing column headers. In this row, we added field names from the schema.\n* We restructured the dataset so each row represents one Cycle. Cycles where maize and pigeon peas were intercropped had two Products.\n* The surveyed farms had already been given a unique identifier, and we used these for `site.id` and `cycle.id`. We then linked cycles to the sites they occurred on using `cycle.site.id`.\n* Added new columns for the data Source, and added bibliographic information to it. Set this as the `defaultSource` for all Cycles and Sites.\n* Added the required fields for Cycles and Sites which were not included in the original spreadsheet. Specifically, we added `endDate` and `functionalUnit` to the Cycle, and `country.name` and `siteType` to the Site.\n* Added a new column called `site.region.name` and matched each of the townships surveyed with the most specific geographical region in the HESTIA Glossary.\n* For each Input and Product, converted the units to those defined in the HESTIA glossary (e.g., kilograms), and then expressed them per functional unit defined by the schema (here `1 ha`).\n* Requested new Terms were added to the Glossary to allow better representation of the data (e.g., Family labour, and Hired labour).\n* Added columns for the data Completeness assessment and filled them in based on the rules defined at https://hestia.earth/schema/Completeness.\n* Initially we set `dataPrivate` to `true` for all nodes, so we could check the data first without it becoming public. When we were ready to share the data publicly, we reuploaded with `dataPrivate` set to `false` .\n\n## Validation\n\nThe upload pipeline detected fields and terms had typos in which we corrected. A full stop symbol (.) was mistakenly used to mark data as not available, and we changed this to a dash (-) which represents no data in HESTIA along with blank cells.\n\n## Downloads\n\n* [Original dataset](https://cdn.hestia.earth/examples/Food%20Security%20Policy%20Project%20(2020)%20Maize%20and%20pigeon%20peas_original.xlsx)\n* [Dataset in HESTIA format](https://cdn.hestia.earth/examples/MaizePigeonPea_reformatted.xlsx)\n* [Data in the Explorer](https://www.hestia.earth/explorer/search?type=Sources&sortBy=relevance&sortOrder=desc&query=Food%20Security%20Policy%20Project%20(2020))"}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# A nitrate and ammonia leaching meta-analysis### Dataset\n\nA [meta-analysis](https://dx.doi.org/10.1126/science.aaq0216) consolidated data from 91 studies representing 559 observation of nitrate and ammonium leaching under cropland. The dataset includes possible covariates of leaching such as rainfall and crop yield.\n\n## Conversion steps\n\nWe used the steps as described in the Myanmar example, with the following additional steps:\n\n* To each Source, we only added the title of the article (`bibliography.title`) and/or the DOI (`bibliography.documentDOI`) and let the HESTIA pipeline add the rest of the bibliographic items automatically from the Mendeley library.\n* To each Source, we also added a `metaAnalysisBibliography`.\n* In the meta-analysis, crop yield was expressed as kilograms of dry matter, however in the HESTIA Glossary crops are expressed in kilograms of marketable weight (e.g., `Maize, grain` has a default dry matter of 85.8%). Therefore, to each crop Product we added the Property `Dry matter` from the Glossary with the value 100%. Adding a Property to a blank node overrides the default Property from the Glossary.\n* Some fertilisers were controlled release, or included nitrification or urease inhibitors, and this was specified by adding a Property to the fertiliser.\n* Soil Measurements had defined depth intervals, and these were added using `depthUpper` and `depthLower`.\n* Some Measurements had different Sources to the `defaultSource` of the Site (e.g., a prior study on the same Site may have reported the soil pH), and these were specified for each Measurement, creating a new `source.id` if necessary.\n* Emissions have required fields for `methodModel` and `methodTier`. The method or model used to quantify emissions can change the result and this is a critical field to record, and we identified the correct `methodModel` in the Glossary for each Emission. Methods and models can also be broadly grouped by their specificity and `methodTier` and the value for these Emissions is `measured`.\n\n## Validation\n\nThe bibliographies for seven studies were not available automatically and these were entered manually. Some coordinates were identified as being in the wrong country or region, and these were corrected (either by referring to the original study if the error was in the meta-analysis, or by using other site location data in the original study instead if the error was there). Some more coordinates were identified as erroneous where they did not intersect with known cropland (according to the MODIS land cover map) and some of these were corrected but others were accepted based on visual inspection of high-resolution satellite images. Some estimates of above ground crop residue were automatically identified as too high, were found to include below ground residue, and were corrected.\n\n## Downloads\n\n* [Dataset in HESTIA format](https://cdn.hestia.earth/examples/Poore%20and%20Nemecek%20(2018)%20Nitrate%20Leaching%20-%20Reformatted.xlsx)\n* [Data in the Explorer](https://www.hestia.earth/explorer/search?type=Sources&sortBy=relevance&sortOrder=desc&query=Poore%20%26%20Nemecek%20(2018))"}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# A nitrate leaching experiment with time-series data\n\n## Dataset\n\n[Engstrom et al. 2011](https://doi.org/10.1051/agro/2010035) reported results from an experimental field trial in Sweden which assessed the effects of different fertilization levels and crop rotations on nitrate leaching. There were two experiments with nine treatments over two years, resulting in 36 Cycles. Leaching data were provided with monthly frequency. Data were presented in tables and the text.\n\n## Conversion steps\n\nWe largely followed the same steps as the nitrate leaching meta-analysis example, with the following additional steps:\n\n* Data for many Measurements, Inputs, and Emissions were provided as arrays where each value represented the date they occurred on. For upload to HESTIA, arrays can be created in Excel or csv files by separating each value with a semicolon (e.g., `0.443;23.461`). Arrays of associated dates are added in the dates field using the ISO 8601 format (e.g., `2004-09;2004-10`, which represent September 2004 and October 2004 respectively). Missing values in arrays are represented using either a dash or a blank (e.g., `4;-;8, 4;;8`).\n* Long term rainfall and temperature data were provided as the total or average for each month averaged over the period 1961-1990. To represent these data, the `startDate` and `endDate` of the Measurements were specified as 1961 and 1990 respectively. The monthly rainfall and temperature data were added using an array. Arrays of associated dates were added in the dates field using the ISO 8601:2000 format for dates without a year (e.g., `--01;--02;...` , which represent January and February respectively).\n* The values in some arrays are additive (e.g., monthly rainfall sums to annual rainfall), whereas others are not (e.g., monthly temperature averages to annual average temperature). The nitrogen uptake by a plant is an additive over time, which means that the value for each date must be the incremental amount of uptake compared to the previous date. The uptake data in the study were already in this format and were entered directly.\n\n## Validation\n\nSoft validation errors were raised for the twelve rapeseed Cycles recommending that the crop yield was provided, however these data were not available in the study and this error was ignored. Soft validation errors were also raised where soil texture (\"sandy loam\") as provided without a depth interval and based on the article a depth interval of 0-30cm was assigned, and this was corrected.\n\n## Downloads\n\n* [Dataset in HESTIA format (note - these data are part of a larger dataset)](https://cdn.hestia.earth/examples/Poore%20and%20Nemecek%20(2018)%20Nitrate%20Leaching%20-%20Reformatted.xlsx)\n* [Data in the Explorer](https://www.hestia.earth/explorer/search?type=Sources&sortBy=relevance&sortOrder=desc&query=Engstr%C3%B6m%20et%20al%20(2011))"}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# An environmental LCA of aquaculture in Peru\n\n## Dataset\n\n[Avadí et al. 2015](https://doi.org/10.1016/j.aquaculture.2014.08.001) assessed the effects of different feeds on the environmental impacts of trout (Oncorhynchus mykiss), tilapia (Oreochromis spp.) and tambaqui (Colossoma macropomum) production in Peru. There was one fish oil and fish meal production Cycle, seven feed blending Cycles, and eight fish production Cycles.\n\n## Conversion steps\n\nWe largely followed the same steps as the Myanmar example, with the following additional steps:\n\n* We created six Sites, two for feed processing in Chile and Peru, one for the trout cage systems, one for the tambaqui pond systems, one for the semi-intensive tilapia system, and one for the intensive tilapia system. Because multiple Sites were surveyed and then aggregated, we specified the `numberOfSites`.\n* We added Infrastructure representing the cages or ponds, and specified the lifespan of the Infrastructure.\n* We created 16 Cycles, linked them to the Sites, and set the functional unit to `relative`. Relative means that the functional unit is defined by the quantity of the Products.\n* The fish processing Cycle creates two Products: fish oil and fish meal. These Products are subsequently used as Inputs into the feed blending Cycles. Cycles cannot be directly linked in HESTIA and must be linked via an Impact Assessment. Therefore, we therefore created the fish processing Cycle with multiple Products, and then created two Impact Assessments for the oil and meal.\n* We created the seven feed blending Cycles and added each Input, its quantity, and the country of origin of each Input. For the fish oil and fish meal, we also linked the Input to the Impact Assessment. We specified the Product of these Cycles as Concentrate feed blend. We used Properties to specify the nutrient composition of the blended feed. We also created seven Impact Assessments for these feed Cycles. The authors provided substantial data to populate these Impact Assessments (such as GHG emissions, ecotoxicity, land occupation) and we added these data.\n* We created the eight aquaculture Cycles and added the Inputs and Products. We linked the Concentrate feed blend Input to the Impact Assessment using `cycle.inputs.0.impactAssessment.id`.\n* The aquaculture Cycles had two Products: fish and excreta. We added them and also added the split between solid and liquid excreta.\n* Following excretion, microorganisms change the mass and composition of excreta, creating Emissions such as NH3 and CH4. A share of that excreta is sedimented at the bottom of the pond and it is often removed and stored in an excreta management system. Here, microorganisms convert it into a different Product again. To represent the transformations of excreta, we added Transformation blank nodes to the Cycles. Specifically, the name of the first Transformation is the first excreta management system, `Excretion into water body`, and the Input is `Excreta, solid and liquid, fish/crustaceans (kg N)`. The second excreta management system was not specified in the paper, so a generic term was used which was `Liquid/Slurry`, and we assumed that the amount sedimented was inputted into that system.\n\n## Validation\n\nThe phosphorus excreted was negative in the study, which was raised as a hard validation error. On inspection of the data the authors were including phosphorus uptake by the fish from sediment and water as a negative amount in the excreta. This should be entered as an Input to the fish, but insufficient data were provided to split the excreta from the uptake, so to resolve this, we simply did not add the phosphorus content of the excreta.\n\n## Downloads\n\n* [Dataset in HESTIA format](https://cdn.hestia.earth/examples/Avadi%20et%20al%20(2015).xlsx)\n* [Data in the Explorer](https://www.hestia.earth/explorer/search?type=Sources&sortBy=relevance&sortOrder=desc&query=Avadi%20et%20al%20(2015))"}
@@ -1 +1 @@
1
- {"tags":{},"content":"# Preparing a dataset\n\nThis page contains some short videos that walk you though how to prepare your dataset for uploading.\n\n## Adding Data\n\n### Source\n\n![How to add a Source](/assets/file-upload/prepare-file/source.mp4)\n\n### Site\n\n![How to add a Site](/assets/file-upload/prepare-file/site.mp4)\n\n### Cycle\n\nComing soon..."}
1
+ {"tags":{},"content":"# Preparing a dataset\n\nThis page contains information and some short videos that walk you though how to prepare your dataset for uploading.\n\n## Structuring the file\n\n* Column headers should follow the following format: `node` + `.` + `field`. For example `cycle.description`.\n* Every node you create must have an identifier. If the node exists in HESTIA, use an `@id` and then use the HESTIA identifier, for example `cycle.inputs.1.term.@id` = `electricityGridMarketMix`. If the data are new, use a temporary `id`, for example `site.id` = `site-1`.\n* Nodes are linked using their identifiers, for example to link a Site to a Cycle, use `site.cycle.id` = `site-1`.\n* To add blank nodes to a node (e.g., Inputs to a Cycle), the column header includes a number for each blank node, for example `cycle.inputs.0.term.name`, `cycle.inputs.0.value`, `cycle.inputs.1.term.name`, `cycle.inputs.1.value`.\n* Avoid rows that contain data but do not have an identifier, or columns that contain data but have no column header.\n* You can use an empty cell or a `-` to indicate no data.\n* To add arrays, separate elements using a `;` (e.g., `cycle.inputs.0.value` = `3;7.2;1.0`)\n\n## Adding Data\n\n### Adding a Source\n\n* We can automatically get bibliographic information for if you provide the `title` of the article or the `documentDOI`. It has to exist in [Mendeley](https://www.mendeley.com) for this to work.\n* If it does not exist in Mendeley, you need to provide all the required bibliographic fields as defined in the schema.\n\n![How to add a Source](/assets/file-upload/prepare-file/source.mp4)\n\n### Adding an Organisation\n\n* You don't need to add an Organisation, but they can be useful to group Sites (e.g., a farm (Organisation) might manage three fields (Sites)).\n\n### Adding a Site\n\n* A Site requires a [`defaultSource`](/Site). Link to the Source you have just added using the `id`.\n* If you added an Organisation, link the Site to the Organisation using the `id`.\n* Add the `siteType` which is a mandatory field (e.g., cropland).\n* Add the `country`, which is a required field. Data must be at least country specific to pass validation.\n* If the data has more geographic specificity than the `country` level, add the `region`. The `region` you specify should be the most specific region available in the Glossary. We use the [GADM database](https://gadm.org/) for our regions.\n* Add the `latitude` and `longitude` if you have them.\n* Add any other fields for which you have data, including Measurements and Infrastructure.\n* For many data items, you can add values as a single value or an array. For arrays, you can use the `dates` field to specify on which date the `value` occurred.\n\n![How to add a Site](/assets/file-upload/prepare-file/site.mp4)\n\n### Adding a Cycle\n\n* A Cycle also requires a `defaultSource`. Link to the Source you added earlier using the `id`.\n* Link the Cycle to the Site you created.\n* A Cycle requires a data Completeness assessment. Refer to the Schema to understand this.\n* Add Inputs, Products, Practices, and Emissions.\n* You can add specific Sources to each Input, Product, Practice, and Emission, if the Source is different to the `defaultSource`.\n\n#### Adding a Transformation:\n\n* The Transformation blank node in HESTIA is used to describe the transformation of one Product to a new Product in the same Cycle. In animal uploads, this blank node is used to display data on how excreta (\"manure\") from animals is managed.\n* There are many management practices used, as per the list of terms in the Glossary. Each transformation should have a unique identifier (a `transformationId`). If excreta is managed in multiple systems within one Cycle, the share of excreta which is managed in each system can be indicated through the `transformedShare`.\n\n### Adding an Impact Assessment\n\n* Impact Assessments can be uploaded without Cycles and Sites, and therefore have more required fields. However, its best practice to upload a corresponding Cycle and Site and link it to the Impact Assessment."}
@@ -0,0 +1 @@
1
+ {"tags":{},"content":"# Special upload cases\n\nThis page gives examples of special cases to upload.\n\n## Multiple cropping\n\n* If there are multiple harvests during the same year (excluding the case of successive gathering), a new Cycle should be created for each harvest. This is in line with the [FAO's](http://faostat.fao.org/) approach.\n\n### Successive gathering\n\n* If there is successive gathering from a crop during a year, only one Cycle should be created with one Product for that crop. This again follows the [FAO's](http://faostat.fao.org/) approach.\n* The `value` for the Product can either be the sum of the total harvest in the year, or an array in which each value in the array represents a gathering event.\n\n### Failed or unharvested crops\n\n* If crops are not harvested, e.g., due to crop disease or changing market conditions, the Site area should not change and is recorded as normal, and this represents the area cultivated or sown.\n* Area harvested should also be specified, as this will either be zero in cases of no harvest or less than area under cultivation in cases of partial harvest. Crop yield should be specified and set to zero if the crop failed completely or was not harvested. This also follows the [FAO's](https://www.fao.org/faostat/en/#data/QCL/metadata) approach.\n\n### Short fallows and similar cases\n\n* Periods between the harvest of one crop and sowing of another which last less than a year should not have their own Cycle. This follows FAOSTAT conventions. Instead any Inputs or Practices related to these periods should be included in the Cycle of the main crop that follows. This means Cycles cover the period from the harvest of the preceding crop to the harvest of the current crop, which is our recommendation for all temporary crop Cycles.\n* The land cover during this period can either be specified by adding a Management blank node to the Site, or by creating a Product in the Cycle. Any term from the land cover glossary can be used. A Property should be added to each Management node or Product to state whether the land cover is either a Cover crop, Catch crop, Ground cover crop, or Short fallow crop.\n* Add the duration of the short fallow period if available by using the `startDate` and `endDate` fields on `Management` or `Product`.\n* Note that long fallow periods, lasting greater than one year, should have their own Cycle. This follows FAOSTAT conventions.\n\n### Multiple types of seed\n\n* In HESTIA, we do not directly differentiate seed, saplings, or other immature plants by the species of plant. When uploading, each Input must be unique.\n* If seed, saplings, etc. from different species or varieties of plant were Inputs into the same Cycle, e.g., in the case of intercropping, create an Impact Assessment for each species and link it to the Input. Additionally, add a `description` to the Input to provide more information.\n\n### Animal feed\n\n* The study may give data for the specific constituents of a feed blend fed to animals. If so, create a separate Cycle to represent the blending of multiple feed ingredients into a single concentrate feed. The Inputs to this Cycle can be crops, animal products, or other blended feeds, and the Product is the feed blend. Create an `impactAssessment.id` for the concentrate feed blend. This can then be linked to the feed blend Input of the animal production Cycle using the `impactAssessment.id`.\n\n### Cycles across multiple Sites\n\n* A Cycle may occur on multiple Sites (e.g., if animals move between pasture and housing). In this case, create two or more Sites and link them to the Cycle using `cycle.site.id` and `cycle.otherSites.id`. The duration which animals spend on each Site can be indicated through the `cycle.siteDuration` and `cycle.otherSitesDuration`.\n\n### Cropping Cycles across multiple years\n\n* Sometimes, crop production data in a research article or database are averaged across multiple Cycles.\n* Following FAOSTAT conventions, for annual crops, a Cycle should be the period from harvest of the previous crop to harvest of the current crop. For permanent crops, Cycles should last one year. We will raise an error on any uploads with `cycleDuration` that does not match this. Animal or other production Cycles do not need to adhere to these conventions.\n* To handle this in your upload:\n * Ideally split the Cycle up into a Cycle for each harvest to harvest period or each year using the underlying data.\n * If this is not possible, upload a Cycle representing the period from harvest to harvest which is an average over the data. Set the dates as the average date. Set the `cycleDuration` as an average over the Cycles. Use the `uploadNotes` field to document this.\n * If this is not possible, duplicate the Cycle for each year. For example, if your data are an average over three harvests, duplicate the Cycle three times and change the `startDate`, `endDate`, and `cycleDuration` to reflect three separate periods from harvest to harvest. Use the `uploadNotes` field to document this.\n\n### Hot carcass weight\n\n* Sometimes, production quantities of animal products are provided in terms of hot carcass weight, whereas the terms in the Glossary are in cold carcass weight.\n* To handle this, convert the data from hot carcass weight to cold carcass weight using a sensible assumption (e.g., 2% to 5% mass loss). Upload the data using the terms in kg `cold carcass weight`. Then add the Property `Processing conversion, hot carcass weight to cold carcass weight` to the Input or Product defining the conversion you used.\n\n### Cover crop\n\n* Cover crops should be added in the Practice node of a Cycle using the `landCover` term corresponding to the plant (for example, Alfalfa plant), with the value being the percentage area of your Site covered by the cover crop.\n* A Property should be added to them to clarify that they are cover crops. There are four different terms in the Glossary relating to cover crops: Cover crop, Catch crop, Ground cover, and Short fallow crop (the difference between each term is explained in the term's definition in the Glossary). These terms are Properties and can be added to a crop, forage, or landCover term with `value = true` to specify that the term is a cover crop.\n* If the cover crop is harvested (this is only possible for `Catch crop`) or if the amount of biomass generated by the cover crop is known, the `crop` or `forage` term corresponding to the plant (for example, Rye, grain) should also be added in the Product node of a Cycle (in addition to the `landCover` term in the Practice node), with the value being the harvested yield or biomass created.\n* If you have further information about cover crops for years preceding the first Cycle taking place on your Site, you can add this information in the Management node of your Site using terms from the `landCover` glossary.\n* It is good practice to add a startDate and endDate specifying the time interval during which a cover crop is on the ground when `landCover` terms are used (when `crop` or `forage` terms are used in Product nodes, the startDate and endDate relate to the crop's harvest, not to the actual period during which the crop is on the ground).\n\nYou can download a simple example [here](https://cdn.hestia.earth/examples/Example%20cover%20crop%20upload.xlsx).\n\n### Sites with multiple cycles\n\n* Sometimes, multiple cycles occur on the same site.\n* To handle this in your upload, ideally change the `endDate` for each Cycle. If this is not possible, duplicate the Site for each Cycle. If the Site has an area, divide the area between the number of Cycles on that Site. For example, if your data consists of three cycles, with no specific calendar year associated with each of them, duplicate the Site three times and change the `area` to be a third of its orginial value, keeping the `startDate`, `endDate`, and `cycleDuration` of all three Cycles the same. Use the `uploadNotes` field to document this.\n\n### One time inputs for permanent crops\n\n* Permanent crop cycles can have inputs that only occur once, usually at the start of the Cycle, e.g. Saplings or Lime.\n* The impacts of these inputs should be split equally between all possible cycles in the Plantation lifespan. The number of possible cycles is the Plantation lifespan divided by the average `cycleDuration`, which is usually one year for plantations.\n* If you do not know the Plantation lifespan you can use the HESTIA suggested value, which can be found by opening the Glossary term page and looking for Plantation lifespan in the crop lookup table.\n* For seed inputs, such as Saplings, you should use the term Saplings, depreciated amount per Cycle, as an input to each crop Cycle in your upload, with the value being the total number of Saplings used over the entire Plantation lifespan divided by the number of possible cycles.\n* For other inputs, such as Lime, you should create a Cycle with the product Prepared plantation with a value of 1 ha. This Cycle should have `functionalUnit` 1 ha, and include all other one-time inputs.\n* Like with Saplings, you should use Prepared plantation, depreciated amount per Cycle as an Input to each crop Cycle in your upload, with the value being 1 ha divided by the number of possible cycles.\n* For the impact assessments to be linked, you will need to link the `impactAssessment.id` for the product Prepared plantation to the input Prepared plantation, depreciated amount per Cycle. You will also need to do this for Saplings inputs if you have a nursery Cycle with Saplings products.\n\nYou can download a simple example [here](https://cdn.hestia.earth/examples/Example%20plantation%20upload.xlsx)."}