add support for nested schemas