* MA 02111-1307, USA.
*
* For details, see the HELM World-Wide-Web page,
- * http://cs.unibo.it/helm/.
+ * http://www.cs.unibo.it/helm/.
*)
(*
* implementazione del comando SELECT
*)
-
+(*
open MathQL;;
open Func;;
open Utility;;
| MQFunc (f, rvar) ->
let {S.uri = uri} = List.assoc rvar env in
apply_func f uri
- | MQRVar rvar ->
+ | MQStringRVar rvar ->
let {S.uri = uri} = List.assoc rvar env in
uri
- | MQSVar svar ->
+ | MQStringSVar svar ->
let (_,{S.attributes = attributes}) = List.hd env in
List.assoc svar attributes
| MQMConclusion ->
in
let ul1 = set_of_result (None,!execute env q1) in
let ul2 = set_of_result (None,!execute env q2) in
-prerr_endline ("MQSETEQUAL(" ^ string_of_int (List.length (!execute env q1)) ^ ">" ^ string_of_int (List.length ul1) ^ "," ^ string_of_int (List.length (!execute env q2)) ^ ">" ^ string_of_int (List.length ul2) ^ ")") ; flush stderr ;
+ print_endline ("MQSETEQUAL(" ^
+ string_of_int (List.length (!execute env q1)) ^ ">" ^
+ string_of_int (List.length ul1) ^ "," ^
+ string_of_int (List.length (!execute env q2)) ^ ">" ^
+ string_of_int (List.length ul2) ^ ")") ;
+ flush stdout ;
(try
List.fold_left2 (fun b uri1 uri2 -> b && uri1=uri2) true ul1 ul2
with
in
let ul1 = set_of_result (None,!execute env q1) in
let ul2 = set_of_result (None,!execute env q2) in
-prerr_endline ("MQSUBSET(" ^ string_of_int (List.length (!execute env q1)) ^ ">" ^ string_of_int (List.length ul1) ^ "," ^ string_of_int (List.length (!execute env q2)) ^ ">" ^ string_of_int (List.length ul2) ^ ")") ; flush stderr ;
+ print_endline ("MQSUBSET(" ^
+ string_of_int (List.length (!execute env q1)) ^ ">" ^
+ string_of_int (List.length ul1) ^ "," ^
+ string_of_int (List.length (!execute env q2)) ^ ">" ^
+ string_of_int (List.length ul2) ^ ")") ;
+ flush stdout ;
let rec is_subset s1 s2 =
match s1,s2 with
[],_ -> true
*)
let select_ex env avar alist abool =
let _ = print_string ("SELECT = ")
- and t = Unix.time () in
+ and t = Sys.time () in
let result =
List.filter (function entry -> is_good ((avar,entry)::env) abool) alist
in
print_string (string_of_int (List.length result) ^ ": ") ;
- print_endline (string_of_float (Unix.time () -. t) ^ "s") ;
+ print_endline (string_of_float (Sys.time () -. t) ^ "s") ;
flush stdout ;
result
-;;
+;; *)
+
+let select_ex rvar rset bexp
+