I want to call Custom action, which is a deferred C# method, with key/value pair that contains XPath and therefore brackets.
I define action as
<CustomAction Id= 'action1.smth' Property='action1' Value="TARGETXPATH=/configuration/application[\[]@name='xService'[\]]/@address/>
Logging verbose installation I can see custom action is called as
Executing op: CustomActionSchedule ... TARGETXPATH=/configuration/application[@name='xService']/@address
Great, but when same value is session.log-ed I get
'/configuration/application/@address'