added json schema support