ConciseXML Encoding Specification

The specification is currently described by test cases.

The following test is also available as a single XML file and a visualization of the parsed data.

<?xml version="1.0"?>
<do>
<foo a_attribute_value="10">
  a_string="10"
  a_string_with_line_feed="xx
yyy"
  a_integer=10000000
  a_decimal=10.0
  ignore_space_around_equal     =
  10
  a_single_quoted_string='10'
  "a_quoted_key"=10
  a_boolean=true
  a_null=null          <!-- embedded comment -->
  a_call=<some_call> "some unkeyed value" </some_call>
  a_CDATA=<![CDATA[wierd characters like <> ]]>
  a_call_with_path=<foo.bar> "some unkeyed value" </foo.bar>
  
  "unkeyed string in key 0"
  "unkeyed string in key 1"
  100  <!-- integer in key 2 -->
  <some_call/>   <!-- object in key 3 -->

  <!-- support for paths and symbols -->
  a_symbol=xxx
  a_path=path_part_0.path_part_1.path_part_2
  a_path_with_integers=path_part_0.0
  a_path_starting_with_dot=.path_part0.path_part1
  a_path_starting_with_dot2=.0
  a_path_with_call=xxx.<a_call/>

  'a "single-quoted" key with embedded quotes'=10
  <some_call> "key may be a call" </some_call>=10
  a_path_with_quoted_part=path_part_0."0"
  dash-in-key=10
  00011.00="leading zeros in number key are ignored"
  -11="negative integer as key"
</foo>

<foo>
</foo>
 
</do>
a foo
_parent foo
a_attribute_value 10
a_boolean true
a_call
a some_call
_parent some_call
0 some unkeyed value
a_call_with_path
a bar
_parent bar
x some unkeyed value
a_CDATA wierd characters like <>
a_decimal 10.00
a_integer 10000000
a_null null
a_path path_part_0.path_part_1.path_part_2
a_path_starting_with_dot _subject.path_part0.path_part1
a_path_starting_with_dot2 _subject.0
a_path_with_call xxx.<a_call/>
a_path_with_integers path_part_0.0
a_quoted_key 10
a_single_quoted_string 10
a_string 10
a_string_with_line_feed xx yyy
a_symbol xxx
ignore_space_around_equal 10
0 unkeyed string in key 0
1 unkeyed string in key 1
2 100
3
a some_call
_parent some_call