# `JSONSchex.Types.Schema`
[🔗](https://github.com/xinz/jsonschex/blob/main/lib/jsonschex/types.ex#L6)

A compiled JSON Schema, containing executable validation rules and a
definition registry for reference resolution.

# `t`

```elixir
@type t() :: %JSONSchex.Types.Schema{
  content_assertion: boolean(),
  defs: map() | nil,
  format_assertion: boolean(),
  loader:
    (String.t() -&gt;
       {:ok, map() | boolean()}
       | {:ok,
          %{:document =&gt; map() | boolean(), optional(:base_uri) =&gt; String.t()}}
       | {:error, term()})
    | nil,
  raw: map() | nil,
  rules: [JSONSchex.Types.Rule.t()],
  source_id: String.t() | nil
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
