(*
* implementazione delle funzioni dublin core
*)
-let rec property_ex rop path inv = function
+let rec property_ex handle rop path inv = function
[] -> []
| s::tl -> let mprop = fst path in
prerr_endline mprop;
prerr_endline mprop;
let mpid = getpid mprop in
let res =
- let c = pgc () in
+ let c = MQIConn.pgc handle in
let quoted_s =
Str.global_substitute (Str.regexp "'")
(function _ -> "\\'") s in
prerr_endline q;
pgresult_to_string_list (c#exec q)
in
- append (res,(property_ex rop path inv tl))
+ append (res,(property_ex handle rop path inv tl))
(*Rimane da capire cosa restituire nelle inverse!!!!*)
| "refSort" ->
if inv then (* restituisco gli uri che il valore della prop richiesta uguale a s *)
let res =
- let c = pgc () in
+ let c = MQIConn.pgc handle in
let q = ("select distinct h" ^ mprop ^ ".uri from h" ^ mprop ^ " where h" ^ mprop ^ "." ^ prop ^ "= '" ^ s ^ "' order by h" ^ mprop ^ ".uri") in
prerr_endline q;
pgresult_to_string_list (c#exec q)
in
- append (res,(property_ex rop path inv tl))
+ append (res,(property_ex handle rop path inv tl))
else
let res = (* restituisco il valore della prop relativo all'uri rappresentato da s*)
- let c = pgc () in
+ let c = MQIConn.pgc handle in
let quoted_s =
Str.global_substitute (Str.regexp "'")
(function _ -> "\\'") s in
let q = ("select distinct h" ^ mprop ^ "." ^ prop ^" from h" ^ mprop ^ " where h" ^ mprop ^ ".uri = '" ^ quoted_s ^ "' order by h" ^ mprop ^ "." ^ prop) in
pgresult_to_string_list (c#exec q)
in
- append (res,(property_ex rop path inv tl))
+ append (res,(property_ex handle rop path inv tl))
| _ -> (* metadati DC !!!! Controllare se i nomi delle tabelle cominciano con h !!!!*)
prerr_endline "DC";
if inv then
let res =
- let c = pgc () in
+ let c = MQIConn.pgc handle in
let q = ("select " ^ mprop ^ ".uri from " ^ mprop ^ " where " ^ mprop ^ ".value = '" ^ s ^ "'") in
prerr_endline q;
pgresult_to_string_list (c#exec q)
in
- append (res,(property_ex rop path inv tl))
+ append (res,(property_ex handle rop path inv tl))
else
let res =
- let c = pgc () in
+ let c = MQIConn.pgc handle in
let quoted_s =
Str.global_substitute (Str.regexp "'")
(function _ -> "\\'") s in
let q = ("select " ^ mprop ^ ".value from " ^ mprop ^ " where " ^ mprop ^ ".uri = '" ^ quoted_s ^ "'") in
pgresult_to_string_list (c#exec q)
in
- append (res,(property_ex rop path inv tl))
+ append (res,(property_ex handle rop path inv tl))
;;