Configuring the Template Attribute Resolver to consult its dependencies.

Rod Widdowson rdw at steadingsoftware.com
Mon Nov 19 06:32:53 EST 2018


> > I assumed (probably erroneously) as I read the code that the attributes were
> > access by index. ($1, $2 etc), not by name ($foo, $bar).  If the template is by
> > name then I withdraw my concern.
> 
> Not to my knowledge. Don't think the documentation mentions that as a feature.

You are correct (of course) I mis-remembered the resolution stage and didn't go into the code to double check.

So, based on that, the general direction is non-controversial.  But allow me to check the details:

In the next release (3.4.2 or 4.0)

	- Template free operation (whereby the template is inferred from the input attributes) is marked as deprecated 
	- The <SourceAttribute > element is deprecated
	- If <SourceAttribute> *is* specified, but the attribute names are not visible
		o Explicitly via an <InputAttributeDefinition ref="attr">
		o Explicitly via an <InputDataConnector attributeNames="attr">
		o Implicitly via an <InputDataConnector allAttributes="true">
	  Then a WARN will be issued (to help people migrate their resolver files)

In 4.0
	- Template free operation is removed (regardless of whether we ship a 3.4.2 or not)
	- The <SourceAttribute > Element remains deprecated, but supported (it's too big a step to take without a minor release)
	- The warning described above remains

In 5.0
	- The <SourceAttribute > Element is removed.


If this makes sense I'll put in specific cases for these three stages.



More information about the dev mailing list