(* *)
(***********************************************************************)
-(*
- Time-stamp: <Last modified on 2013-02-14 15:38:56 CET by Kim Nguyen>
-*)
-
open Xpath_internal_parser
module L = Ulexing
let return_loc i j tok = (tok, (i,j))
let regexp ncname_char =
- xml_letter | xml_digit | [ '-' '_' ] | xml_combining_char | xml_extender | "\\."
+ xml_letter | xml_digit | [ '-' '_' '.'] | xml_combining_char | xml_extender
let hexa_digit = function
| '0'..'9' as c -> (Char.code c) - (Char.code '0')
| ">=" -> GTE
| "=" -> EQ
| "!=" -> NEQ
+ | ".." -> DOTDOT
+ | "." -> DOT
| "node()" -> NODE
| "text()" -> TEXT
+ | "comment()" -> COMMENT
+ | '@' ncname -> ATTNAME (L.utf8_lexeme lexbuf)
+ | "processing-instruction()" -> PI ""
+ | "processing-instruction('"ncname"')"
+ | "processing-instruction(\""ncname"\")"->
+ let s = L.utf8_lexeme lexbuf in
+ PI (String.sub s 24 (String.length s - 26))
| ncname -> keyword_or_tag (L.utf8_lexeme lexbuf)
| float ->
let s = L.utf8_lexeme lexbuf in
| _ ->
store_lexeme lexbuf;
string start double lexbuf
-
-