Test results for Linux |
Test for element sequence number handling, wildcard handling, and hierarchical element handling with element records that have more than one structure in a complex RNC schema. This test also ensures the element helpers are working.
Pass
cat _INPUT_DATA_ ¦ xmlfy -S schema.rnc -A1 number
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 1 2 3 4 5 6 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10 11 1 2 3 4 5 6 7 8 9 10 11 12 1 2 3 4 5 6 7 8 9 10 11 12 13 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
start = multitree
multitree = element multitree { line_eg* }
line_eg = element line_eg { c }
line_eg ¦= element line_eg { line_eg1, b, c, line_eg2 }
line_eg1 = element line_eg1 { b }
line_eg1 ¦= element line_eg1 { line_eg1_1, b }
line_eg1_1 = element line_eg1_1 { b }
line_eg1_1 ¦= element line_eg1_1 { c }
line_eg2 = element line_eg2 { line_eg2_1, a }
line_eg2 ¦= element line_eg2 { line_eg2_2, a }
line_eg2_1 = element line_eg2_1 { a }
line_eg2_1 ¦= element line_eg2_1 { b }
line_eg2_2 = element line_eg2_2 { a }
line_eg2_2 ¦= element line_eg2_2 { line_eg2_2_1, b }
line_eg2_2 ¦= element line_eg2_2 { b }
line_eg2_2_1 = element line_eg2_2_1 { b }
line_eg2_2_1 ¦= element line_eg2_2_1 { c }
a = element a { text }
b = element b { text }
c = element c { text }
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE multitree SYSTEM "schema.rnc">
<multitree>
<line_eg number="1">
<c>1</c>
</line_eg>
<line_eg number="2">
<line_eg1>
<b>1</b>
</line_eg1>
<b>2</b>
<c>3</c>
<line_eg2>
<line_eg2_1>
<a>4</a>
</line_eg2_1>
<a>5</a>
</line_eg2>
</line_eg>
<line_eg number="3">
<line_eg1>
<b>1</b>
</line_eg1>
<b>2</b>
<c>3</c>
<line_eg2>
<line_eg2_2>
<line_eg2_2_1>
<b>4</b>
</line_eg2_2_1>
<b>5</b>
</line_eg2_2>
<a>6</a>
</line_eg2>
</line_eg>
<line_eg number="4">
<line_eg1>
<line_eg1_1>
<b>1</b>
</line_eg1_1>
<b>2</b>
</line_eg1>
<b>3</b>
<c>4</c>
<line_eg2>
<line_eg2_2>
<line_eg2_2_1>
<b>5</b>
</line_eg2_2_1>
<b>6</b>
</line_eg2_2>
<a>7</a>
</line_eg2>
</line_eg>
</multitree>