I think we will need tags for optimizers that tell the user - and interacting parts of the framework - what types it can accept, e.g., integer/real numbers, or string/categorical.
My suggestion would be with capability:categorical? But we probably should think carefully about this, e.g., what other tags we need, or what values can be.