X-Git-Url: http://git.nguyen.vg/gitweb/?p=tatoo.git;a=blobdiff_plain;f=src%2FqName.ml;h=4a3aac4a312c99768673d417a1350f81425d563e;hp=5d419439a62065a4b734a2cd35b78bade3c1087d;hb=974dacbf4f625bfd8ea83db69d6b346050141fea;hpb=cba2938d929fd5119b1491686ddc224d5af618c6 diff --git a/src/qName.ml b/src/qName.ml index 5d41943..4a3aac4 100644 --- a/src/qName.ml +++ b/src/qName.ml @@ -13,6 +13,10 @@ (* *) (***********************************************************************) +(* + Time-stamp: +*) + include Hcons.Make (struct include String let hash s = Hashtbl.hash s @@ -26,8 +30,18 @@ let to_string = node let document = of_string "#document" let text = of_string "#text" -let cdata_section = of_string "#cdata-section" let comment = of_string "#comment" -let document_fragment = of_string "#document-fragment" -let attribute_map = of_string "#attribute-map" let nil = of_string "#" + +let attribute t = of_string ( "@" ^ (to_string t)) +let processing_instruction t = of_string ( "?" ^ (to_string t)) + +let remove_prefix t = + let s = to_string t in + let lens = String.length s in + if lens == 0 then t + else + if s.[0] == '@' || s.[0] == '?' then + of_string (String.sub s 1 (lens-1)) + else + t