Well well I think my comment above doesn't make sense :)

Gunnar suggested to use *provided*; effect seems to be the same but I think I prefer your proposal for *optional* as it avoids visibility to clients.