document #327

Required escapeBlockStart and escapeBlockEnd feature, or initiator/terminator mode.

Added by Michael Beckerle almost 2 years ago. Updated over 1 year ago.

Status:submitted Start date:08/18/2017
Priority:Normal Due date:
Assignee:- % Done:

0%

Category:-
Target version:DFDL v2.0
Document Type:Proposed Recommendation

Description

For future DFDL version.

The syslogd format specifies data that looks like this:

identifier="string contents" anotherIdentifier="yet more string contents"

This is a sequence separated by spaces and terminated by newline.

Each item in the sequence is a pair of a name and a value, separated by "="

The quotation marks are required.
The quotation marks must be at the beginning, and the end of the content.

The spaces inside the quotation marks are not escaped. Hence, the quotation marks cannot be modeled as dfdl:initiator and dfdl:terminator,
as DFDL v1.0 behavior would require the interior spaces to then be escaped.

So they must be modeled as escapeBlockStart and escapeBlockEnd.

Using DFDL v1.0 generateBlockEscape="always", we can insist these escape block start/end are always generated, but we cannot insist on them being present when parsing. Furthermore, DFDL v1.0 cannot distinguish these:

identifier=foo
identifier="foo"
identifier="fo"o

A DFDL feature is needed to either control existence and placement of escapeBlockStart/End, or to provide for initiator/terminator where, because there is definitely a terminator to be found, no escaping of the enclosing sequence's delimiters is required.

History

Updated by Steve Hanson over 1 year ago

  • Target version set to DFDL v2.0

Also available in: Atom PDF