Synalize It only recognizes first instance of element in custom grammar?

0 votes
asked Nov 26 in Grammars by patrickl (120 points)

Hi, I'm trying to use Synalize It to help me design a file format for a college project, but have the issue that it only recognizes the first instance of the data, and concludes the rest of the file is just padding. I have repeat settings set correctly (I think), but can't figure out the cause of the problem! Any help or suggestions are appreciated, Thanks!

Here's the contents of the grammar file:
"<?xml version="1.0" encoding="UTF-8"?>
<ufwb version="1.17">
   <grammar name="SmartShelf Metadata" start="id:197" author="Patrick L">
       <description>Grammar for the Mech 90 SmartShelf Metadata</description>
       <structure name="BinContainer" id="213" encoding="ISO_8859-1:1987" endian="big" signed="no" order="variable">
           <structure name="Bin" id="197" length="64" alignment="1" repeatmax="-1" encoding="ISO_8859-1:1987" endian="big" signed="no">
               <binary name="Magic_Number" mustmatch="yes" id="198" strokecolor="FF0000" length="1">
                   <fixedvalues>
                       <fixedvalue name="Magic Number" value="B1"/>
                   </fixedvalues>
               </binary>
               <number name="Bin_ID" id="199" fillcolor="0000FF" type="integer" length="1"/>
               <number name="Offset_Steps" id="200" strokecolor="0000FF" type="integer" length="1"/>
               <number name="Steps_From_Home" id="201" strokecolor="00F1FF" type="integer" length="2"/>
               <number name="Protocol_Version" id="202" type="integer" length="1">
                   <fixedvalues>
                       <fixedvalue name="V1" value="1"/>
                   </fixedvalues>
               </number>
               <number name="<reserved>" id="203" strokecolor="999999" repeatmin="4" repeatmax="4" type="integer" length="1"/>
               <string name="Bin_Name" id="204" fillcolor="21D2C4" type="fixed-length" length="20"/>
               <string name="Bin_Description" id="205" fillcolor="A2FFFF" type="fixed-length" length="30"/>
               <binary name="Padding" mustmatch="yes" id="206" repeatmin="0" repeatmax="-1" length="1">
                   <fixedvalues>
                       <fixedvalue name="Padding" value="77"/>
                   </fixedvalues>
               </binary>
           </structure>
           <structure name="ExtendedBinData" id="208" length="64" disabled="yes" alignment="0" repeatmax="-1" encoding="ISO_8859-1:1987" endian="big" signed="no">
               <binary name="Magic_Number" id="209" length="remaining">
                   <fixedvalues>
                       <fixedvalue name="Magic_Number" value="B3"/>
                   </fixedvalues>
               </binary>
               <number name="Bin_ID" id="210" type="integer" length="1"/>
               <number name="<reserved>" id="211" repeatmax="-1" type="integer" length="1"/>
           </structure>
       </structure>
   </grammar>
</ufwb>
",
and here's enough my test file, consisting of two identical "Bin" Elements, and padded with 0xFFs:
"B1012000200100000000534D4420636F6D706F6E656E74732E000000000053757266616365204D6F756E74205265736973746F72732C20657463000077777777B1012000200100000000534D4420636F6D706F6E656E74732E000000000053757266616365204D6F756E74205265736973746F72732C20657463000077777777FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"

Please log in or register to answer this question.

...