Hmmm...
 
I wasn't around for 'occursStopValueKind', so excuse me if I miss the point.
 
Here's a question and a tentative answer I was playing with recently:
 
What's the difference between stopValue and terminator?
'terminator' can be used to scan a stream of characters or bits without parsing elements
'stopValue' can be used to scan a sequence of parsed elements. Its datatype must be the same as the array element.
If I'm right, then Steve's example is invalid because "done" is not an integer. To make it valid, either:
    - the stopValue must be an 'int' such as -1, or
    - the out-of-band value "done" or "|done" must be a terminator for an enclosing construct as follows.
 
Change this:
<element name="x" type="int" maxOccurs="unbounded" dfdl:occursSeparator="|" dfdl:occursKind="stopValue" dfdl:stopValue="done" dfdl:occursStopValueKind="literal" dfdl:representation="text"/>
to this:
<sequence dfdl:lengthKind="delimited" dfdl:terminator="|done" dfdl:applies="hereonly">
    <element name="x" type="int" maxOccurs="unbounded" dfdl:occursSeparator="|" dfdl:occursKind="endOfData" dfdl:representation="text"/>
</sequence>
 
If I'm wrong, then what is the correct answer to the question?
 
---
 
If we change the name of the property 'stopValue', then I would find these candidates consistent with similar concepts elsewhere:
    occursTerminator
    occursTerminatorValue
    terminatorValue
 
 Simon
 


From: dfdl-wg-bounces@ogf.org [mailto:dfdl-wg-bounces@ogf.org] On Behalf Of Mike Beckerle
Sent: 29 August 2007 19:52
To: Steve Hanson
Cc: dfdl-wg@ogf.org; dfdl-wg-bounces@ogf.org
Subject: Re: [DFDL-WG] V3 of length/occurs simplification proposal


Seems like occursStopValueKind="literal" only applies to representation="text".

With that caveat, I think I agree we need to be able to say

<element name="x" type="int" maxOccurs="unbounded" dfdl:occursSeparator="|" dfdl:occursKind="stopValue" dfdl:stopValue="done" dfdl:occursStopValueKind="literal" dfdl:representation="text"/>

Then this would be valid 3 occurences for element x.

2|3|4|done

I think we shoudl rename dfdl:stopValue to dfdl:occursStopValue for consistency.


Mike Beckerle
STSM, Architect, Scalable Computing
IBM Software Group
Information Platform and Solutions
Westborough, MA 01581
direct: voice and FAX 508-599-7148
assistant: Pam Riordan  
                 priordan@us.ibm.com
                 508-599-7046




Steve Hanson <smh@uk.ibm.com>

08/29/2007 01:32 PM

To
Mike Beckerle/Worcester/IBM@IBMUS
cc
dfdl-wg@ogf.org, dfdl-wg-bounces@ogf.org
Subject
Re: [DFDL-WG] V3 of length/occurs simplification proposal






Mike - looking at an old level of the spec, we had a occursStopValueKind property, with enums 'logical', 'literal' and 'missing'.  Analogous to nullvalueKInd property.  I'm sure we want to handle 'missing' differently but the literal v logical distinction is required. How are we proposing to cover this?

Regards, Steve

Steve Hanson
WebSphere Message Brokers
Hursley, UK
Internet: smh@uk.ibm.com
Phone (+44)/(0) 1962-815848


Mike Beckerle <beckerle@us.ibm.com>
Sent by: dfdl-wg-bounces@ogf.org

29/08/2007 16:29


To
dfdl-wg@ogf.org
cc
Subject
[DFDL-WG] V3 of length/occurs simplification proposal







Based on minutes from last week's meeting I've updated to v3 the proposal for simplifying length/occurs properties.

Changes are marked with comments. --
dfdl-wg mailing list
dfdl-wg@ogf.org
http://www.ogf.org/mailman/listinfo/dfdl-wg






Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU