frankframework / frankframework/frankframework

Remove `ifParam`, `ifValue`, `onlyIfValue`, `unlessValue`, `ifParameter` keep `onlyIfSessionKey` & `unlessSessionKey`

Open
#11,343 1 comment 0 reactions 0 assignees View on GitHub
Developer Experience Technical Debt
Dominant language
Java
Stars
167
Forks
87
Avg merge
1d 2h
Merged PRs (30d)
206

Description

### Discussed in https://github.com/frankframework/frankframework/discussions/10516

Originally posted by **nielsm5** March 9, 2026
The following attributes determine the flow of application data. Yet it's difficult to see the flow while writing or debugging the application:
- ifParam
- ifValue
- onlyIfValue
- onlyIfSessionKey
- unlessSessionKey
- unlessValue

Hence this discussion, what are potential reasons to keep these attributes?

----

Arguments to keep these attributes:
* You require less pipes in your `Configuration.xml`

Counterarguments:
* Not immediately visible in the configuration
* Not immediately visible in Ladybug (you have to click the “i” icon of the pipe configuration)
* Not easy to configure in the FF! Flow
* Not visible in the FF! Console Flow diagrams
* Error-prone: what does “equals” mean? Does something need to have the same content? (Are you then only looking at the message and not the context / file format?)
* XSD becomes clearer
* Functionality is limited (you can do significantly more with the IfPipe and SwitchPipe)

## In scope
- [x] Deprecated in version 10.3
- [ ] Removed in version 11.x ?

Contributor guide

Open the contributing guide

Research direction

Start by reading discussion 10516 and the issue’s deprecation note for version 10.3. Trace where ifParam, ifValue, onlyIfValue, unlessValue, and ifParameter are defined and used, while checking that onlyIfSessionKey and unlessSessionKey remain. Done means the five listed attributes are removed for version 11.x without removing the two retained session-key attributes.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.