+ * implementazione delle funzioni dublin core
+ *)
+let func_dc (value, name) =
+ let c = pgc ()
+ and p = helm_property_id name in
+ pgresult_to_string (c#exec ("select t" ^ p ^ ".att1 from t" ^ p ^ " where " ^ "t" ^ p ^ ".att0 = '" ^ value ^ "'"))
+;;
+
+(*
+ *
+ *)
+let apply_func f value =
+ match f with
+ MQName -> func_name value
+ | MQTheory -> func_theory value
+ | MQTitle -> func_dc (value, "title")
+ | MQContributor -> func_dc (value, "contributor")
+ | MQCreator -> func_dc (value, "creator")
+ | MQPublisher -> func_dc (value, "publisher")
+ | MQSubject -> func_dc (value, "subject")
+ | MQDescription -> func_dc (value, "description")
+ | MQDate -> func_dc (value, "date")
+ | MQType -> func_dc (value, "type")
+ | MQFormat -> func_dc (value, "format")
+ | MQIdentifier -> func_dc (value, "identifier")
+ | MQLanguage -> func_dc (value, "language")
+ | MQRelation -> func_dc (value, "relation")
+ | MQSource -> func_dc (value, "source")
+ | MQCoverage -> func_dc (value, "coverage")
+ | MQRights -> func_dc (value, "rights")
+ | MQInstitution -> func_dc (value, "institution")
+ | MQContact -> func_dc (value, "contact")
+ | MQFirstVersion -> func_dc (value, "firstversion")
+ | MQModified -> func_dc (value, "modified")
+;;
+