the second target is actually created but you have to "store" it somewhere.
This rule only link a linkType1 with the atl1 target and the atl2 target is not directly linked.
You either have to use resolveTemp to get to atl2 in another rule or you can link atl2 to something in the imperative section of the createMultipleRules rule.
Can you please tell me how to "store" the second target? Because the second target (atl2) is supposed to create a rule in the output for me, so accessing it from resolveTemp or imperative part will not help me.
Another question is that why we don't need to link all targets in normal atl transformation but we have to do it in HOT.
rules are stored in a module (aka transformation).
You probably have another rule that transforms something into a module or a transformation and then the linkTypes are referenced.
They will be transformed to rules so everything is working well.
Except that a linkType is transformed only to one other thing by default : the first target element ('atl1' here).
So as I said, you have to also add 'atl2' in the module, either by using resolveTemp or using the imperative part.
At the moment the second rule is created but is useless because it's not stored in a module.