iXML Community Group Test Suite

01 Jun 2022 (03 Jun 2022)

Top-level catalog for tests in the iXML Community Group Test Suite.

Tests have been contributed from several sources, but the core of the test collection are the tests contributed by Steven Pemberton in December 2021.

Tests producing parse trees

01 Jun 2022

Tests provided by Steven Pemberton in December 2021, with corrections of 21 December. Reorganized by Norm Tovey-Walsh, February 2022.

ixml tests

Created 16 Dec 2021 by SP

Updated 21 Dec 2021 by SP

Corrected input, grammar, or output for 5 tests

Updated 30 Dec 2021 by MSM

Updated catalog, corrected many tests.

Updated 30 May 2022 by MSM

Add whitespace-and-delimiters test sets.

address

Created 16 Dec 2021 by SP

Invisible XML Grammar

address: person, lf, street, lf, postcode, city, lf, country, lf; 
         person, lf, street, lf, city, postcode, lf, country, lf.
person: (title, S?)?, (initials; given, S), surname, S?.
title: "Mr."; "Mrs."; "Dr."; "Ms.".
initials: initial+.
initial: LETTER, ".", S?.
surname: name.
given: name.
-name: LETTER, letters.
street: no, S?, streetname; streetname, S?, no, S?.
streetname: name, S; name, S, name.
city: name, S; name, S, name, S.
country: name, S?; name, S, name, S?.
postcode: digits, S, LETTER, LETTER, S?; 
          LETTER, LETTER, digits, S, digit, LETTER, LETTER, S?.
no: digits.
-LETTER: ["A"-"Z"].
-letters: ["a"-"z"]*.
-digit: ["0"-"9"].
-digits: ["0"-"9"]+.
-S: " "+.
-lf: -#a | -#d, -#a .

Test case: address

Repository URI: …/tests/correct/test-catalog.xml

Created 16 Dec 2021 by SP

Updated 30 Dec 2021 by MSM

remove all but one trailing LF from input

Updated 01 Jan 2022 by MSM

remove nonsignificant whitespace from expected result

Input string (68 characters)

Steven Pemberton
21 Sandridge Road
St Albans AL1 4BY
United Kingdom

Expected result

<address>
   <person>
      <given>Steven</given>
      <surname>Pemberton</surname>
   </person>
   <street>
      <no>21</no>
      <streetname>Sandridge Road</streetname>
   </street>
   <city>St Albans </city>
   <postcode>AL1 4BY</postcode>
   <country>United Kingdom</country>
</address>