diff --git a/docs/_spec/components/schemas/array-max-monitored-elements.yaml b/docs/_spec/components/schemas/array-max-monitored-elements.yaml index 2a370be..3d396de 100644 --- a/docs/_spec/components/schemas/array-max-monitored-elements.yaml +++ b/docs/_spec/components/schemas/array-max-monitored-elements.yaml @@ -508,36 +508,38 @@ seasonal-ratings-proposal-status: seasonal-ratings-snapshot: &seasonal-rating-snapshot type: object description: A snapshot of the seasonal ratings for a monitoring set. - properties: + properties: &seasonal-rating-snapshot-props snapshot-header: - $ref: ./headers.yaml#/common-header + $ref: ./headers.yaml#/seasonal-snapshot-header ratings: <<: *max + description: Set of seasonal ratings items: $ref: ./array-max-seasons.yaml#/seasonal-rating-snapshot-item required: - snapshot-header - ratings -seasonal-ratings-snapshot-detailed: +seasonal-ratings-snapshot-detailed: &seasonal-rating-snapshot-detailed <<: *seasonal-rating-snapshot - description: A snapshot of the seasonal ratings for a monitoring set. - properties: - snapshot-header: - $ref: ./headers.yaml#/common-header - ratings: + properties: &seasonal-rating-snapshot-detailed-props + <<: *seasonal-rating-snapshot-props + provenance: <<: *max + description: Set of seasonal ratings provenance information items: - $ref: ./array-max-seasons.yaml#/seasonal-rating-snapshot-item-detailed + $ref: './array-max-seasons.yaml#/seasonal-rating-snapshot-provenance-item' + required: + - snapshot-header + - ratings + - provenance seasonal-ratings-snapshot-detailed-elide-psr: - <<: *seasonal-rating-snapshot - description: A snapshot of the seasonal ratings for a monitoring set. + <<: *seasonal-rating-snapshot-detailed properties: + <<: *seasonal-rating-snapshot-detailed-props snapshot-header: - $ref: ./headers.yaml#/base-header - ratings: - $ref: "#/seasonal-ratings-snapshot-detailed/properties/ratings" + $ref: ./headers.yaml#/seasonal-snapshot-header-elide-psr temporary-aar-exception-set: type: array diff --git a/docs/_spec/components/schemas/array-max-seasons.yaml b/docs/_spec/components/schemas/array-max-seasons.yaml index b774882..a64d3a3 100644 --- a/docs/_spec/components/schemas/array-max-seasons.yaml +++ b/docs/_spec/components/schemas/array-max-seasons.yaml @@ -78,12 +78,13 @@ seasonal-rating-snapshot-item: items: $ref: './period-limit.yaml#/seasonal-snapshot' -seasonal-rating-snapshot-item-detailed: +seasonal-rating-snapshot-provenance-item: type: object additionalProperties: false properties: resource-id: *id - periods: - <<: *schedule - items: - $ref: './period-limit.yaml#/seasonal-snapshot-detailed' + proposals-considered: + $ref: './period-limit.yaml#/seasonal-proposals-considered' + required: + - resource-id + - proposals-considered diff --git a/docs/_spec/components/schemas/headers.yaml b/docs/_spec/components/schemas/headers.yaml index 193722d..a41f573 100644 --- a/docs/_spec/components/schemas/headers.yaml +++ b/docs/_spec/components/schemas/headers.yaml @@ -196,3 +196,13 @@ seasonal-proposal-header-slim: - default-emergency-durations - power-system-resources - default-seasonal-schedule + +seasonal-snapshot-header: + <<: *common-header + description: Details about the snapshot provided by the Clearinghouse provider. + +seasonal-snapshot-header-elide-psr: + <<: *base-header + description: | + Details about the snapshot provided by the Clearinghouse provider. The + `power-system-resources` property is omitted from this header. diff --git a/docs/_spec/components/schemas/period-limit.yaml b/docs/_spec/components/schemas/period-limit.yaml index 0ed4e9d..2f17608 100644 --- a/docs/_spec/components/schemas/period-limit.yaml +++ b/docs/_spec/components/schemas/period-limit.yaml @@ -189,7 +189,7 @@ seasonal-proposal-slim: `[normal_MVA, emergency_MVA]`, we would have `[normal_MW, normal_pf, emergency_MW, emergency_pf]`, e.g., `[300, 1.0, 350, 1.0]`. -seasonal-snapshot: &seasonal-snapshot +seasonal-snapshot: <<: *forecast-snapshot description: Proposes the continuous and emergency ratings for the specified Season. title: Seasonal Rating Proposal @@ -212,29 +212,17 @@ seasonal-proposal-considered: required: - source - resource-id - -seasonal-snapshot-detailed: - <<: *seasonal-snapshot - description: Proposes the continuous and emergency ratings for the specified Season. - title: Seasonal Rating Proposal - properties: - <<: *seasonal-snapshot-props - proposals-considered: - description: | - - The seasonal ratings proposals considered when determining the - seasonal ratings of a power system resource, e.g., a line or - transformer. - - type: array - minItems: 1 - maxItems: 10 - items: - $ref: '#/seasonal-proposal-considered' - required: - - proposals-considered - period-start - period-end - continuous-operating-limit - emergency-operating-limits - additionalProperties: false + +seasonal-proposals-considered: + description: | + The proposals considered when determining the + seasonal ratings of a power system resource, e.g., a line or + transformer. + type: array + maxItems: 48 # 12 periods * 4 proposals per period + items: + $ref: '#/seasonal-proposal-considered' diff --git a/docs/example-narratives/examples/seasonal-ratings-snapshot-detailed-elide-psr.json b/docs/example-narratives/examples/seasonal-ratings-snapshot-detailed-elide-psr.json index 7803861..32bb92a 100644 --- a/docs/example-narratives/examples/seasonal-ratings-snapshot-detailed-elide-psr.json +++ b/docs/example-narratives/examples/seasonal-ratings-snapshot-detailed-elide-psr.json @@ -50,41 +50,46 @@ "mva": 180 } } - ], - "proposals-considered": [ + ] + } + ] + } + ], + "provenance":[ + { + "resource-id": "8badf00d", + "proposals-considered": [ + { + "resource-id": "8badf00d-UTILITY-A-SEG-id", + "period-start": "2024-04-01T01:00:00Z", + "period-end": "2024-07-01T01:00:00Z", + "source": { + "provider": "UTILITY-A", + "last-updated": "2023-07-12T16:00:00-07:00", + "origin-id": "8badf00d-UTILITY-A-correlation-id" + }, + "season-name": "spring", + "continuous-operating-limit": { + "mva": 160 + }, + "emergency-operating-limits": [ + { + "duration-name": "LTE", + "limit": { + "mva": 165 + } + }, { - "resource-id": "8badf00d", - "period-start": "2024-04-01T01:00:00Z", - "period-end": "2024-07-01T01:00:00Z", - "source": { - "provider": "X-AMPL", - "last-updated": "2023-07-12T16:00:00-07:00", - "origin-id": "//trolie.example.com/snapshots/2024-08-05T11%3a00%3a00-07%3a00" - }, - "season-name": "spring", - "continuous-operating-limit": { - "mva": 160 - }, - "emergency-operating-limits": [ - { - "duration-name": "LTE", - "limit": { - "mva": 165 - } - }, - { - "duration-name": "STE", - "limit": { - "mva": 170 - } - }, - { - "duration-name": "DAL", - "limit": { - "mva": 180 - } - } - ] + "duration-name": "STE", + "limit": { + "mva": 170 + } + }, + { + "duration-name": "DAL", + "limit": { + "mva": 180 + } } ] } diff --git a/docs/example-narratives/examples/seasonal-ratings-snapshot-detailed.json b/docs/example-narratives/examples/seasonal-ratings-snapshot-detailed.json index aabc6ec..4ef3d07 100644 --- a/docs/example-narratives/examples/seasonal-ratings-snapshot-detailed.json +++ b/docs/example-narratives/examples/seasonal-ratings-snapshot-detailed.json @@ -66,41 +66,46 @@ "mva": 180 } } - ], - "proposals-considered": [ + ] + } + ] + } + ], + "provenance":[ + { + "resource-id": "8badf00d", + "proposals-considered": [ + { + "resource-id": "8badf00d-UTILITY-A-SEG-id", + "period-start": "2024-04-01T01:00:00Z", + "period-end": "2024-07-01T01:00:00Z", + "source": { + "provider": "UTILITY-A", + "last-updated": "2023-07-12T16:00:00-07:00", + "origin-id": "8badf00d-UTILITY-A-correlation-id" + }, + "season-name": "spring", + "continuous-operating-limit": { + "mva": 160 + }, + "emergency-operating-limits": [ + { + "duration-name": "LTE", + "limit": { + "mva": 165 + } + }, { - "resource-id": "8badf00d", - "period-start": "2024-04-01T01:00:00Z", - "period-end": "2024-07-01T01:00:00Z", - "source": { - "provider": "X-AMPL", - "last-updated": "2023-07-12T16:00:00-07:00", - "origin-id": "//trolie.example.com/snapshots/2024-08-05T11%3a00%3a00-07%3a00" - }, - "season-name": "spring", - "continuous-operating-limit": { - "mva": 160 - }, - "emergency-operating-limits": [ - { - "duration-name": "LTE", - "limit": { - "mva": 165 - } - }, - { - "duration-name": "STE", - "limit": { - "mva": 170 - } - }, - { - "duration-name": "DAL", - "limit": { - "mva": 180 - } - } - ] + "duration-name": "STE", + "limit": { + "mva": 170 + } + }, + { + "duration-name": "DAL", + "limit": { + "mva": 180 + } } ] }