We don't yet have JSON schema validation built in, though it is a good idea for future improvement.
In the meantime you can include one of these libraries as part of your smart filter code, and then call it from filtertransaction(). There's no problem including additional functions in a filter.
If you want to experiment with this easily, the MultiChain Web Demo might be helpful. You should of course test the performance of the filter using the testtxfilter command, hopefully it should run fast because of the V8 engine compilation and caching.