SXML

by Daniel Pimentel — Fri 05 May 2006

SXML is an alternative syntax for writing XML data (more precisely, XML Infosets[1]) as S-expressions, to facilitate working with XML data in Lisp and Scheme. An associated suite of tools[which?] implements XPath, SAX and XSLT for SXML in Scheme and are available in the GNU Guile implementation of that language.

xml.sxml

(tag (@ (attr1 
"value1")
        (attr2 
"value2"))
  (nested "Text node")
  (empty))

html.sxml

(*TOP* (@ (*NAMESPACES* (x "http://www.w3.org/1999/xhtml")))
  (x:html (@ (xml:lang "en") (lang "en"))
    (x:head
       (x:title "An example page"))
    (x:body
       (x:h1 (@ (id "greeting")) "Hi, there")
       (x:p  "This is just an >>example<< to show XHTML & SXML."))))
SXML
2000-2016 by Daniel Pimentel under GFDL