The Parsimonious XML Shorthand Language (PXSL or pixel) is a convenient shorthand for writing markup-heavy XML documents (ExtensibleMarkupLanguage). Created by TomMoertel.
There is a program written in HaskellLanguage which will translate from PXSL to XML. The idea is that PXSL is much easier to edit and so the user can maintain a file in PXSL which is translated when needed into XML.
The web pages referenced here have some examples. Here is one for MathML (MathMl) taken from http://community.moertel.com/pxsl/
MathML example in XML
f
x
x
2
x
3
MathML example in PXSL
declare -type=fn
ci << f >>
lambda
bvar
ci << x >>
apply
plus
apply
power
ci << x >>
cn << 2 >>
ci << x >>
cn << 3 >>
And the obvious question is: How does PXSL handle namespaces? And how CDATA? Any examples for that?
It has a structure for CDATA (see http://community.moertel.com/pxsl/ for more details).
It is also allowed to have XML in PXSL.
There is a longer example of useage here: http://www.kuro5hin.org/story/2003/6/4/12434/75716
How about :-)
fn(f,
lambda(
bvar(x)
x^2 + x + 3
)
)
On WikiPedia (http://en.wikipedia.org/wiki/MathML#Content_MathML) is the example for
ax^2 + bx + c
in content MathMl
The following PXSL will generate the same XML:
math
apply
plus
apply
times
ci <>
apply
power
ci <>
cn <<2>>
apply
times
ci <>
ci <>
ci <>
using the tool pxslcc which can be downloaded.