X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fhelena%2Fsrc%2Fxml%2FxmlLibrary.ml;h=4667b3aa57db8fd9009d17b1416a2fab6c7866c4;hb=f7d7f2459b3b0409be5f168822be3b836ccc929b;hp=3c77fe68bc3edb36620323035601e17ef76725a1;hpb=67686e04702688cc822e809e5168f765bf69d7cb;p=helm.git diff --git a/helm/software/helena/src/xml/xmlLibrary.ml b/helm/software/helena/src/xml/xmlLibrary.ml index 3c77fe68b..4667b3aa5 100644 --- a/helm/software/helena/src/xml/xmlLibrary.ml +++ b/helm/software/helena/src/xml/xmlLibrary.ml @@ -18,6 +18,8 @@ module H = Hierarchy module N = Layer module E = Entity +IFDEF OBJECTS THEN + (* internal functions *******************************************************) let base = "xml" @@ -88,6 +90,9 @@ let void = "Void" let position i = "position", string_of_int i +let depth i = + "depth", string_of_int i + let uri u = "uri", U.string_of_uri u @@ -96,14 +101,23 @@ let name a = let f n r = "name", if r then n else "-" ^ n in E.name err f a -let apix a = - "position", string_of_int a.E.n_apix - let layer st n = "layer", N.to_string st n -let kind a = - "position", string_of_int a.E.n_sort +let main a = + let sort, degr = a.E.b_main in + ["main-position", string_of_int sort; + "main-degree", string_of_int degr; + ] + +let side a = + let sort, degr = a.E.b_side in + ["side-position", string_of_int sort; + "side-degree", string_of_int degr; + ] + +let apix a = + "level", string_of_int a.E.n_apix let meta a = let map = function @@ -126,8 +140,8 @@ let export_entity pp_term (ra, na, u, b) = let och = open_out (path ^ ext) in let out = output_string och in xml out "1.0" "UTF-8"; doctype out obj_root system; - let na = {na with E.n_name = Some (U.name_of_uri u, true)} in - let attrs = uri u :: name na :: apix na :: meta ra :: info ra in + let ba = E.bind_attrs ~name:(U.name_of_uri u, true) () in + let attrs = uri u :: name ba :: apix na :: meta ra :: info ra in let contents = match b with | E.Abst w -> tag "GDec" attrs ~contents:(pp_term w) | E.Abbr v -> tag "GDef" attrs ~contents:(pp_term v) @@ -138,3 +152,5 @@ let export_entity pp_term (ra, na, u, b) = let attrs = [xmlns; "hierarchy", shp; "options", opts] in tag obj_root attrs ~contents out 0; close_out och + +END