Parsimonious Xml Shorthand Language

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






a


x
2




b
x

c


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.


CategoryXml MarkupLanguage