A list, optional parts, and referring to (?&name) parts that will be in the final expression are all problems with composing it as individual (working) qr's.
I have all of those.
Comment on Re^2: differences between parsing qr, qq, and q string contents