-
Notifications
You must be signed in to change notification settings - Fork 0
Add energy domain value sets with SWEET ontology mappings #34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
New value sets for DOE Genesis Mission energy domains: - Geothermal: system types, reservoir types, well types, applications, temperature classification - Hydrogen: color classification (green, blue, grey, etc.), production methods, storage, applications - Bioenergy: feedstock types, biofuel types, generation classification, bioconversion processes Enhanced existing schemas: - energy.yaml: Added SWEET mappings and CapabilityStatus enum for facility lifecycle - structural_biology.yaml: Added ontology mappings (CHMO, MOD, MI, FBbi, EDAM) Mapping predicates used intentionally: - exact_mappings: Exactly equivalent concepts - close_mappings: Nearly equivalent (e.g., ETHANOL→sweet:matrEnergy/Ethanol) - broad_mappings: Target is more general (e.g., HYDROGEN fuel→sweet:matrElement/Hydrogen) - narrow_mappings: Target is more specific - related_mappings: Conceptually related but different aspect Added enum-report script for generating CSV mapping statistics. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
|
Claude finished @cmungall's task —— View job Code Review CompleteI've conducted a comprehensive review of this PR that adds energy domain value sets with SWEET ontology mappings. Here's my detailed analysis: Review Checklist
Overall Assessment: Excellent Work ⭐This is a high-quality PR that demonstrates excellent LinkML schema design, thoughtful ontology mappings, and good engineering practices. 🟢 StrengthsSchema Design & Structure
Ontology Mappings - Outstanding Quality
Technical Implementation
🟡 Areas for ImprovementMinor Issues
Enhancement Suggestions
🔧 Code Quality AssessmentPython Generated Code ✅
Enum Report Script ✅ (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request adds comprehensive value sets for DOE Genesis Mission renewable energy domains (geothermal, hydrogen, bioenergy) with SWEET ontology mappings, enhances structural biology schemas with additional ontology mappings (CHMO, MOD, MI, FBbi, EDAM), adds a CapabilityStatus enum for facility lifecycle tracking, and introduces an enum-report script for generating CSV mapping statistics.
Key Changes
- New renewable energy value sets with 14 enums covering geothermal (5 enums), hydrogen (4 enums), and bioenergy (4 enums)
- SWEET ontology mappings added across energy schemas using intentional predicate selection (close_mappings, broad_mappings, narrow_mappings, related_mappings)
- Enhanced structural_biology.yaml with 40+ new ontology mappings from CHMO, MOD, MI, FBbi, and EDAM
- CapabilityStatus enum added for facility lifecycle tracking (5 states)
- New enum-report script for generating CSV mapping statistics
Reviewed changes
Copilot reviewed 19 out of 19 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| src/valuesets/schema/valuesets.yaml | Added imports for 3 new renewable energy schemas |
| src/valuesets/schema/energy/renewable/hydrogen.yaml | New schema with 4 enums (HydrogenType, HydrogenProductionMethod, HydrogenStorageMethod, HydrogenApplication) and SWEET mappings |
| src/valuesets/schema/energy/renewable/geothermal.yaml | New schema with 5 enums for geothermal systems, reservoirs, wells, applications, and temperature classifications |
| src/valuesets/schema/energy/renewable/bioenergy.yaml | New schema with 4 enums covering biomass feedstocks (19 types), biofuels (11 types), generations (4), and conversion processes (11) |
| src/valuesets/schema/energy/energy.yaml | Added SWEET mappings to existing energy sources and new CapabilityStatus enum |
| src/valuesets/schema/bio/structural_biology.yaml | Enhanced with CHMO, MOD, MI, FBbi, EDAM mappings; removed ncit_variants annotations in favor of direct meaning mappings |
| scripts/generate_enum_report.py | New utility script for generating CSV reports of enum mapping statistics |
| Generated Python files | Auto-generated enum classes reflecting schema changes |
| """Generate a CSV report of all enums in the valuesets schema.""" | ||
|
|
||
| import csv | ||
| import re |
Copilot
AI
Dec 6, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Import of 're' is not used.
| import re |
## New Ontology Prefixes - OEO (Open Energy Ontology): http://openenergy-platform.org/ontology/oeo/OEO_ - Brick: https://brickschema.org/schema/Brick# ## OEO Mappings Added to EnergySource - SOLAR → OEO:00000384 (solar energy) - WIND → OEO:00000446 (wind energy) - HYDROELECTRIC → OEO:00000218 (hydro energy) - GEOTHERMAL → OEO:00000191 (geothermal energy) - BIOMASS → OEO:00010258 (bioenergy) - BIOFUEL → OEO:00000072 (biofuel) - TIDAL → OEO:00010100, OEO:00010102 (marine tidal/wave energy) - HYDROGEN → OEO:00000220 (hydrogen) - COAL → OEO:00000088 (coal) - NATURAL_GAS → OEO:00000292 (natural gas) - PETROLEUM → OEO:00000115 (crude oil) - DIESEL → OEO:00010242 (diesel fuel) - GASOLINE → OEO:00010241 (gasoline fuel) - NUCLEAR_FISSION → OEO:00000302 (nuclear fuel) ## New BatteryType Enum Dedicated enum for battery chemistries with enum-level mappings: - exact_mappings: OEO:00000068 (battery), brick:Battery Values: LITHIUM_ION, LITHIUM_IRON_PHOSPHATE, LITHIUM_POLYMER, LEAD_ACID, NICKEL_METAL_HYDRIDE, NICKEL_CADMIUM, SODIUM_ION, SOLID_STATE, VANADIUM_REDOX_FLOW, ZINC_BROMINE_FLOW, IRON_AIR, ZINC_AIR ## New PVCellType Enum Photovoltaic cell technologies with see_also: OEO:00000348 (PV panel) Values: MONOCRYSTALLINE_SILICON, POLYCRYSTALLINE_SILICON, PASSIVATED_EMITTER_REAR_CELL (PERC), HETEROJUNCTION (HJT), TUNNEL_OXIDE_PASSIVATED_CONTACT (TOPCon), INTERDIGITATED_BACK_CONTACT (IBC), CADMIUM_TELLURIDE, COPPER_INDIUM_GALLIUM_SELENIDE (CIGS), AMORPHOUS_SILICON, GALLIUM_ARSENIDE, PEROVSKITE, ORGANIC, TANDEM ## New PVSystemType Enum PV installation types with exact_mappings: OEO:00000324 Values: ROOFTOP_RESIDENTIAL, ROOFTOP_COMMERCIAL, GROUND_MOUNTED, FLOATING, BUILDING_INTEGRATED (BIPV), AGRIVOLTAICS, CARPORT, TRACKER_SINGLE_AXIS, TRACKER_DUAL_AXIS, CONCENTRATING (CPV) ## EnergyStorageType Simplified Consolidated battery types into single BATTERY value with proper ontology mappings; specific chemistries now in BatteryType enum 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <[email protected]>
Added OEO and Brick Ontology Mappings + New EnumsNew Ontology Prefixes
OEO MappingsAdded mappings for EnergySource values to OEO terms (solar energy, wind energy, hydro energy, biofuel, coal, natural gas, etc.) New EnumsBatteryType - Battery chemistries with enum-level mappings to
PVCellType - Photovoltaic cell technologies
PVSystemType - PV installation types with OEO mappings
EnergyStorageType RefactoredConsolidated individual battery types into single |
|
Claude finished @cmungall's task —— View job PR Review: Energy Domain Value Sets with SWEET Ontology MappingsCompleted comprehensive review of this excellent PR that adds energy domain value sets with sophisticated ontology mappings. Here's my detailed analysis: Review Checklist
Overall Assessment: Excellent Work ⭐⭐⭐⭐⭐This is an outstanding PR that demonstrates sophisticated domain knowledge, excellent technical implementation, and thoughtful engineering practices. 🟢 Major StrengthsSchema Design Excellence
Outstanding Ontology MappingsThis is the standout feature of this PR. The ontology mappings demonstrate exceptional semantic precision:
New Enum QualityBatteryType Enum (
|
Update test to expect NCIT:C17021 mapping instead of None, reflecting the actual ontology mapping in the schema. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <[email protected]>
|
Claude finished @cmungall's task —— View job PR Review: Energy Domain Value Sets with SWEET Ontology MappingsCompleted comprehensive review of this excellent PR that adds energy domain value sets with sophisticated ontology mappings. Here's my detailed analysis: Review Checklist
Overall Assessment: Excellent Work ⭐⭐⭐⭐⭐This is an outstanding PR that demonstrates sophisticated domain knowledge, excellent technical implementation, and thoughtful engineering practices. 🟢 Major StrengthsSchema Design Excellence
Outstanding Ontology MappingsThis is the standout feature of this PR. The ontology mappings demonstrate exceptional semantic precision:
New Enum QualityBatteryType Enum (
|
Summary
close_mappingsfor nearly equivalent conceptsbroad_mappingswhen target is more generalnarrow_mappingswhen target is more specificrelated_mappingsfor conceptually related but different aspectsjust enum-report) for generating CSV mapping statisticsTest plan
just sitevalidates without errors🤖 Generated with Claude Code