|(require (planet neil/xexp:2:0))|
xexp syntax must be ordered as in SXML first normal form (1NF). For example, any attributes list must precede child elements. SXML/xexp tools may be permissive about accepting other orderings, but generally should not emit any ordering but 1NF ordering.
The SXML keyword symbols, such as *TOP* may be in lowercase (e.g., *top*)
xexp adds a special & syntax for character entity references. The syntax is (& val), where val is the symbolic name of the character as a symbol, or an integer with the numeric value of the character.
Writing HTML from SXML/xexp.
Writing HTML from SXML/xexp templates.
Permissively parsing HTML to SXML/xexp.
Example-based SXPath query generation for SXML/xexp.
XPath query language implementation for SXML, by Oleg Kiselyov.
Pattern-matching of SXML, by Jim Bender.
Parsing of XML to SXML, by Oleg Kiselyov, and maintained by Kirill Lisovsky.
Some definitions used by many SXML/xexp packages...
(struct exn:fail:invalid-xexp exn:fail ( expected context-xexp invalid-xexp) #:extra-constructor-name make-exn:fail:invalid-xexp #:transparent) expected : string? context-xexp : any/c invalid-xexp : any/c
> (make-xexp-char-ref 'rArr) (& rArr)
> (make-xexp-char-ref 151) (& 151)
> (xexp-char-ref-value '(& nbsp)) nbsp
> (xexp-char-ref-value '(& 2000)) 2000
- PLaneT 2:0 —
Somewhat heavy changes. (Previous version was labeled as in-development, as is this one.)
Converted to McFly.
Removed the typed/racket/base/no-check for now.
- Version 0.1 —
PLaneT 1:0 — 2011-08-21
Part of forked development from HtmlPrag.
Copyright 2011 – 2012 Neil Van Dyke. This program is Software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See http://www.gnu.org/licenses/ for details. For other licenses and consulting, please contact the author.