very early impl of schema DSL