{"package":"DEMAND_FORECASTS","pdr_config":{"mappings":[{"REPORT_NAME":"DEMAND","REPORT_SUB_TYPE":"ROOFTOP_PV_FCST_P5_RUN","VERSION":1}],"transaction_type":"INSERT"},"documentation_urls":["https://nemweb.com.au/Reports/Current/MMSDataModelReport/Electricity/ElectricityDataModelReport_files/Elec18.htm#165"],"comment":"Contains forecast runs for rooftop PV areas, with a 5-minute resolution over the hour-ahead DS/P5MIN timeframe. This is the parent table to the child table ROOFTOP_PV_FCST_P5_PRED, which contains the corresponding forecast predictions over the full horizon.","primary_keys":["AREAID","FORECAST_PRIORITY","FORECAST_RUN_DATETIME","OFFERDATETIME","PROVIDERID"],"columns":{"AREAID":{"sql_type":"VARCHAR2(10)","pl_type":"pl.Categorical","mandatory":true,"comment":"Area identifier, aligning with the load forecasting areas.","is_categorical":true},"FORECAST_PRIORITY":{"sql_type":"NUMBER(10,0)","pl_type":"pl.UInt64","mandatory":true,"comment":"Priority of forecast run, higher number is used in preference to lower number for the same provider.","is_integer":true,"unsigned_int":true,"num_int_bits":64},"FORECAST_RUN_DATETIME":{"sql_type":"DATE","pl_type":"pl.Datetime()","mandatory":true,"comment":"Datetime (interval ending) when this forecast run is valid. It aligns with run_datetime in downstream processes, unless a forecast run is missed, in this case the previous run is used.","examples":["2026/01/20 00:05:00"],"parse_csv_as_string":true,"is_s_datetime":true},"OFFERDATETIME":{"sql_type":"DATE","pl_type":"pl.Datetime()","mandatory":true,"comment":"Datetime when this forecast submission was loaded.","examples":["2026/01/20 00:05:00"],"parse_csv_as_string":true,"is_s_datetime":true},"PROVIDERID":{"sql_type":"VARCHAR2(20)","pl_type":"pl.Categorical","mandatory":true,"comment":"Forecast provider identifier, for example, AEMO, PROVIDER_A and so on.","is_categorical":true},"INSTALLED_CAPACITY":{"sql_type":"NUMBER(18,8)","pl_type":"pl.Float64","mandatory":false,"comment":"Installed rooftop PV capacity that was used for the forecast run, in MW.","is_float":true},"LASTCHANGED":{"sql_type":"DATE","pl_type":"pl.Datetime()","mandatory":false,"comment":"Datetime when the forecast run was written into AEMO database.","examples":["2026/01/20 00:05:00"],"parse_csv_as_string":true,"is_s_datetime":true},"MODEL_USED":{"sql_type":"VARCHAR2(30)","pl_type":"str","mandatory":false,"comment":"Metadata describing the model used to produce the forecast run."},"PROVIDER_TIMESTAMP":{"sql_type":"DATE","pl_type":"pl.Datetime()","mandatory":false,"comment":"Datetime when the provider created the forecast.","examples":["2026/01/20 00:05:00"],"parse_csv_as_string":true,"is_s_datetime":true},"REMARKS":{"sql_type":"VARCHAR2(300)","pl_type":"str","mandatory":false,"comment":"Comments relating to the forecast run."},"SUPPRESSED_PROVIDER":{"sql_type":"NUMBER(1,0)","pl_type":"pl.Boolean","mandatory":false,"comment":"Flag indicating if the forecast run was suppressed by the provider when submitted. Suppressed forecasts are not used by downstream systems. Suppressed = 1, Unsuppressed = 0.","is_boolean":true}},"visibility":"Public","trigger":"Every 5 minutes when a new rooftop PV forecast is available, covering the 2 hours ahead horizon with 5-minute resolution"}