Hello folks.

 

I am reaching out for a sanity check please. 

I am seeing a regular expression behavior that was driving me mad, but may
actually be a bug?

 

The example below is a simplified version for illustration:

 

The goal is to check that a line of text starts with a string and ends with
another string in parenthesis.

Using the following data and subsequent schema, only the first line should
pass validation. So I expect to see 5  validation failures. However only the
last line is failed.

Then just to keep things interesting, copy the first line to the end of the
file, and then there are no validation failures at all.

It appears that the assertion is being checked against only the last element
in the sequence. Is that the intended behavior?

I have tried this with 3.6 and 3.9 and get the same results both times.

 

aaa(111)

bbb

(222)

ccc(333)XXX

()

(444)

 

 

  <element name="sample">

    <complexType>

      <sequence dfdl:separator="%NL;" >

        <element name="line" dfdl:lengthKind="delimited" type="xs:string"
dfdl:occursCountKind="implicit" maxOccurs="unbounded" >

            <annotation>

                <appinfo source="http://www.ogf.org/dfdl/";>

                    <dfdl:assert testKind="pattern"
failureType="recoverableError"

                        testPattern=".+\(.+\)" />

                </appinfo>

            </annotation>

        </element>

      </sequence>

    </complexType>

  </element>

 

 

Thank you for the help.

 

Mark Kozak

Director of Engineering

Adeptus Cyber Solutions

Adeptus-CS.com

 

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to