fixed schema recursion