# `Mediate.Schema.Fact`
[🔗](https://github.com/mrmeku/mediate/blob/v0.1.0/lib/mediate/schema.ex#L1)

One declared fact column. It holds the kind, the column that names the
subject, the column that names the object, and the element type of a
set-valued column. `Mediate.Schema.fact/2` records it, and the seam reads
it.

# `kind`

```elixir
@type kind() :: :subject_attribute | :object_attribute | :relationship
```

What the column says: an attribute of the subject, an attribute of the object, or a grant.

# `t`

```elixir
@type t() :: %Mediate.Schema.Fact{
  column: atom(),
  element: atom() | nil,
  kind: kind(),
  object: atom() | nil,
  subject: atom() | nil
}
```

One fact declaration, as `Mediate.Schema.fact/2` records it.

---

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