[furcas-discussion] Reference Re-Evaluation Algorithm

Uhl, Axel axel.uhl at sap.com
Tue Feb 8 13:27:45 CET 2011


> Tasks:
> 
>       * Axel will implement a ModelUpdater using to the given
> algorithm.

Done.

>       * Sebastian will write several test cases:
>               * Tests covering all branches of the algorithm.

Important corner cases:

 - multi-valued property to be updated
 - use of #context or #foreach on lookupScope (should be forbidden in referenceBy; I'll add a check)
 - model elements that are affected but whose respective property hasn't been set by that part of the mapping and therefore shouldn't be updated; subcase 1: entire element hasn't been produced by the template; subcase 2: element was produced by the template, but a different alternative inside was chosen such that the property wasn't set by the query. Ensure the property isn't updated by the model updater in those cases.

>               * A testcase where the model is constructed in memory. We
>                 will use it to test the algorithm if no TB model is
>                 available.

Exactly. See above.

>               * A set of testcases operating on the text level:
>                 search/replace in the TB model with a subsequent call
> of
>                 the incremental parser.

To be done.

> PS: Thomas, we might need your help with all this textblocks magic
> (e.g.
> find out if a reference is still bound). Expect some questions on the
> mailing list rather soon :-)

I found that out myself. In this case it was an easy reverse lookup on DocumentNode_SequenceElement using the OppositeEndFinder API.

Best,
-- Axel


More information about the Furcas-discussion mailing list