map_prodcom.dlog 1.3 KB

123456789101112131415161718192021222324252627
  1. :DirectObservation[?ID] ,
  2. [?ID, :objectDirectlyDefinedBy, ?PRCCode] ,
  3. # TODO Generalise the region (not just the UK)
  4. [?ID, :hasRegion, gnd:2635167] ,
  5. [?ID, :hasTimePeriod, ?TimePeriod] ,
  6. [?ID, :hasRole, :SoldProduction] ,
  7. [?ID, :partOfDataset, ?Dataset] ,
  8. [?ID, :bound, :ExactBound] ,
  9. [?ID, :metric, quantitykind:Mass] ,
  10. ufu:NG(?ID, ufu:unit, ?UnitID)
  11. :- ufrd:PRODCOM_DATA(?IDstring, ?PRCCODEstring, ?PRODQNT, ?QNTUNIT),
  12. [:CurrentImport, :hasTimePeriod, ?TimePeriod],
  13. [:CurrentImport, :partOfDataset, ?Dataset],
  14. [:CurrentImport, :useDataPrefix, ?DataPrefix], # STR(ufpcd2016:)
  15. [:CurrentImport, :useObjectPrefix, ?ObjectPrefix], # STR(ufpc2016:)
  16. # TODO Fix the prefix with the year
  17. BIND(IRI(CONCAT(STR(?DataPrefix), "Observation-", SHA256(?IDstring))) AS ?ID) ,
  18. BIND(IRI(CONCAT(STR(?ObjectPrefix), "Object-", SHA256(?PRCCODEstring))) AS ?PRCCode) ,
  19. BIND(IRI(CONCAT(STR(:), "Unit-", SHA256(?QNTUNIT))) AS ?UnitID) .
  20. # if ?PRODQNT is not "absent"
  21. ufu:NG(?ID, ufu:measurementUnit, ?PRODQNT)
  22. :- ufrd:PRODCOM_DATA(?IDstring, ?PRCCODEstring, ?PRODQNT, ?QNTUNIT), FILTER(BOUND(?PRODQNT)),
  23. [:CurrentImport, :useDataPrefix, ?DataPrefix], # STR(ufpcd2016:)
  24. BIND(IRI(CONCAT(STR(?DataPrefix), "Observation-", SHA256(?IDstring))) AS ?ID) .