type of a mutual inductive types block, the returned URI is now the URI of
the type (with the fragment identifier!) and not the one of the block (without).
)
)
-let locate s = Mqint.execute (locate_query s)
-let locate_html s = build_result (locate_query s)
+let locate s =
+ (*CSC: the code should be: Mqint.execute (locate_query s) *)
+ (*CSC: what follows is the patch to map mutual inductive definition blocks *)
+ (*CSC: URIs (i.e. no fragment identifier at all) to the URIs of the first *)
+ (*CSC: mutual inductive type of their block. *)
+ let MQRefs uris = Mqint.execute (locate_query s) in
+ MQRefs
+ (List.map
+ (function uri ->
+ if String.sub uri (String.length uri - 4) 4 = ".con" then uri else
+ uri ^ "#1/1"
+ ) uris)
+;;
+
+let locate_html s = build_result (locate_query s);;
let levels e c t =
env := e; cont := c;