     ("\\<\\(signature\\)\\s-+\\(\\sw+\\)"
      (1 font-lock-keyword-face)
      (2 font-lock-interface-def-face))
+
+    ("<\\(\\sw+\\)[^>]*>"
+     (1 font-lock-tag-face))
+    ("</\\(\\sw+\\)[^>]*>"
+     (1 font-lock-tag-face))
     
     (,urweb-keywords-regexp . font-lock-keyword-face)
     (,urweb-sql-keywords-regexp . font-lock-sql-face)


(defconst urweb-font-lock-keywords
  `(;;(urweb-font-comments-and-strings)
    (,(concat "\\<\\(fun\\|and\\)\\s-+\\(\\sw+\\)\\s-+[^ \t\n=]")
     (1 font-lock-keyword-face)
     (2 font-lock-function-name-face))
    (,(concat "\\<\\(\\(data\\)?type\\|con\\|class\\)\\s-+\\(\\sw+\\)")
     (1 font-lock-keyword-face)
     (3 font-lock-type-def-face))
    ("\\<\\(val\\|table\\|sequence\\)\\s-+\\(\\sw+\\>\\s-*\\)?\\(\\sw+\\)\\s-*[=:]"

(defvar font-lock-sql-face 'font-lock-sql-face
  "Face name to use for SQL keywords.")

(defface font-lock-cvariable-face
  '((t (:foreground "dark blue")))
  "Font Lock mode face used to highlight capitalized identifiers."
  :group 'font-lock-highlighting-faces)
(defvar font-lock-cvariable-face 'font-lock-cvariable-face
  "Face name to use for capitalized identifiers.")

(defface font-lock-tag-face
  '((t (:bold t)))
  "Font Lock mode face used to highlight XML tags."
  :group 'font-lock-highlighting-faces)
(defvar font-lock-tag-face 'font-lock-tag-face
  "Face name to use for XML tags.")

;;
;; Code to handle nested comments and unusual string escape sequences
