-- Commodity dimension: conforms identifiers across source systems. -- -- This is the ontology. Each row is a commodity tracked by BeanFlows. -- As new sources are added (ICO, futures prices, satellite), their -- commodity identifiers are added as columns here — not as separate tables. -- As new commodities are added (cocoa, sugar), rows are added here. -- -- References: -- usda_commodity_code → raw.psd_alldata.commodity_code (numeric string, e.g. '0711100') -- cftc_commodity_code → raw.cot_disaggregated.cftc_commodity_code (3-char, e.g. '083') -- -- NOTE: Defined as FULL model (not SEED) to guarantee leading-zero preservation. -- Pandas CSV loading converts '083' → 83 even with varchar column declarations. MODEL ( name foundation.dim_commodity, kind FULL ); SELECT usda_commodity_code, cftc_commodity_code, ticker, ice_stock_report_code, commodity_name, commodity_group FROM (VALUES ('0711100', '083', 'KC=F', 'COFFEE-C', 'Coffee, Green', 'Softs') ) AS t(usda_commodity_code, cftc_commodity_code, ticker, ice_stock_report_code, commodity_name, commodity_group)