]> matita.cs.unibo.it Git - helm.git/commitdiff
Merging of the modifications of Lorenzo on the main branch. They
authorClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Wed, 30 Oct 2002 14:05:59 +0000 (14:05 +0000)
committerClaudio Sacerdoti Coen <claudio.sacerdoticoen@unibo.it>
Wed, 30 Oct 2002 14:05:59 +0000 (14:05 +0000)
implement the Fun constructor in a uniform way.

helm/ocaml/mathql_interpreter/.depend
helm/ocaml/mathql_interpreter/func.ml
helm/ocaml/mathql_interpreter/mqint.ml

index 72a3dd440c059093fc40a9d469a2c8881013deeb..5629c47dffdb58a3df94aa5a317a71b31c6c2a73 100644 (file)
@@ -16,7 +16,7 @@ intersect.cmo: intersect.cmi
 intersect.cmx: intersect.cmi 
 func.cmo: dbconn.cmi intersect.cmi utility.cmi func.cmi 
 func.cmx: dbconn.cmx intersect.cmx utility.cmx func.cmi 
-mqint.cmo: context.cmo dbconn.cmi diff.cmi intersect.cmi meet.cmi \
+mqint.cmo: context.cmo dbconn.cmi diff.cmi func.cmi intersect.cmi meet.cmi \
     relation.cmi sub.cmi union.cmi mqint.cmi 
-mqint.cmx: context.cmx dbconn.cmx diff.cmx intersect.cmx meet.cmx \
+mqint.cmx: context.cmx dbconn.cmx diff.cmx func.cmx intersect.cmx meet.cmx \
     relation.cmx sub.cmx union.cmx mqint.cmi 
index 1338af00899bdfd7332cdf2e047d20e23503b0f4..921a85da5eab56f24f63b542eaca3d3e5f0bef12 100644 (file)
@@ -34,23 +34,17 @@ open Intersect;;
 (*
  * implementazione delle funzioni dublin core
  *)
-let rec func_dc tab outv inv = function
+let rec fun_ex tab = function
     [] -> []
-  | s::tl -> let res =
-             let c = pgc () in
-            let q = ("select " ^ tab ^ "." ^ outv ^ " from " ^ tab ^ " where " ^ tab ^ "." ^ inv ^ " = '" ^ s ^ "'") in
-             pgresult_to_string_list (c#exec q)
-             in
-             append (res,(func_dc tab outv inv tl))
-;;
-
-(*
- *
- *)
-let fun_ex f value =
- match f with
-   "name" -> func_dc "names" "name" "uri" value
- | "reference" -> func_dc "names" "uri" "name" value
- | _ -> []
+  | s::tl ->
+     let res =
+      let c = pgc () in
+      let q =
+       "select objectName.uri from objectName where objectName.value = '" ^
+        s ^ "'"
+      in
+       pgresult_to_string_list (c#exec q)
+     in
+      append (res,(fun_ex tab tl))
 ;;
 
index 54dc0e05c40d44c6fbedcf184f8109a5d8e547d4..ee757f3f0c6f2d6cd01dd9a075f0b161bb600e6c 100644 (file)
@@ -87,7 +87,7 @@ let rec exec_set_exp c = function
         let ll1 = string_of_int (List.length rs1) in
         let ll2 = string_of_int (List.length rs2) in
         let diff = string_of_float (after -. before) in
-       if ! stat then
+       if !stat then
         (print_endline("INTERSECT(" ^ ll1 ^ "," ^ ll2 ^ ") = " ^ string_of_int (List.length res) ^
          ": " ^ diff ^ "s");
          flush stdout);
@@ -97,7 +97,7 @@ let rec exec_set_exp c = function
        let res = union_ex (exec_set_exp c sexp1) (exec_set_exp c sexp2) in
        let after = Sys.time() in
        let diff = string_of_float (after -. before) in
-        if ! stat then
+        if !stat then
        (print_endline ("UNION: " ^ diff ^ "s");
          flush stdout);
         res                    
@@ -130,7 +130,7 @@ let rec exec_set_exp c = function
          res)
        else
         (let res = relation_galax_ex rop path (exec_set_exp c sexp) attl in
-         if ! stat then
+         if !stat then
          (print_string ("RELATION-GALAX " ^ (List.hd path) ^ " = " ^ string_of_int(List.length res) ^ ": ");
           print_endline (string_of_float (Sys.time() -. before) ^ "s");
           flush stdout);