Hello everyone,
I'd like to once again tap into the collective knowledge of the community – this time it's about Conditional Build Expressions. I'm using RoboHelp 2022 (Update 5) and I'm currently trying to figure out which (logical) combinations can be used to generate output.
For example, I have:
- Text A (with Condition A)
- Text B (with Condition B)
- Text A + B (with Condition A and Condition B)
- Text C (with Condition C)
- Text D (with Condition D)
- Text C and D (with Condition C and D)
In my case, I have several groups of conditions: A and B are market-specific (e.g., EU and US), while C and D are functionality-specific (Feature C and D of a software).
What I would like (a Christmas wish list 😉) is the ability to group conditional tags by type and logically link them together.
For example:
- Show everything labeled with Market A (including Text A + B)
- Hide everything that only concerns Market B
- Independently of that, show everything with Feature C
- But always hide Feature D (i.e., hide Text C + D)
I've played around a bit with the expressions (UI, *.expn file, and generated output) and unfortunately, I can't figure out how to interpret these.
If I create an expression like:
include A
OR
exclude B
It looks like this:
<expr>
<group flag="Include" op="AND">
<tag name="Market" value="A" flag="Include" op="OR"></tag>
<tag name="Market" value="B" flag="Exclude" op="OR"></tag>
</group>
</expr>
The output is generated as follows:
Included: Text A, Text A+B, Text C, Text D, Text C+D
Not included: Text B
If I rewrite the expression to:
include A
AND
exclude B
It looks like this:
<expr>
<group flag="Include" op="AND">
<tag name="Market" value="A" flag="Include" op="AND"></tag>
<tag name="Market" value="B" flag="Exclude" op="OR"></tag>
</group>
</expr>
The output is generated as follows:
Included: Text A
Excluded: Text B, Text A+B, Text C, Text D, Text C+D
So even though I make no statement about tags C and D, they are included in one case and excluded in the other.
Does anyone know how these expressions are logically interpreted?
Another open question for me is how to read the "group" (<group flag="Include" op="AND"> in the *.expn file). As far as I can see, it doesn't matter whether you specify Exclude or Include, OR or AND. It's also not possible to create multiple groups – no matter what combination I tried, RoboHelp only responds to the first group specified.
Do you have any tips on how to possibly create multiple groups and logically link them together?
I suspect that groups are intended as "brackets" for logical operations, but I can't seem to get it to work.