You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by "Dave Thompson (Jira)" <ji...@apache.org> on 2021/03/18 16:38:00 UTC

[jira] [Closed] (DAFFODIL-1520) Unset variables referenced from dfdl:outputValueCalc expression should block/delay until they get a value.

     [ https://issues.apache.org/jira/browse/DAFFODIL-1520?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dave Thompson closed DAFFODIL-1520.
-----------------------------------

Verified as part of DAFFODIL-2429.

> Unset variables referenced from dfdl:outputValueCalc expression should block/delay until they get a value.
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: DAFFODIL-1520
>                 URL: https://issues.apache.org/jira/browse/DAFFODIL-1520
>             Project: Daffodil
>          Issue Type: Bug
>          Components: DFDL Language, Unparsing
>            Reporter: Mike Beckerle
>            Priority: Major
>             Fix For: 3.1.0
>
>
> This needs clarification in the DFDL spec from the DFDL workgroup.
> However,.... it seems pretty clear that an outputValueCalc expression needs to be able to refer to a variable (otherwise you can't use variables to decouple parts of schemas from each other.)
> And the variable needs to be able to be unbound until the future existence of things that give it a value. 
> As an example, one could have a length field in a header.
> One wants this lengh field to be computed based on the length of some body that comes after the header, and where the header's DFDL schema does not reference the body DFDL schema. They are separate schemas. 
> To do this one should use variables. The header needs a length from the body, then that length should come from a variable, which variable being set by the body. Since the body comes later, the variable needs to be set after the header OVC element has been encountered. So we have to be able to evaluate an OVC expression and block waiting for the variable to get its value.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)