# `DCATR.RepositoryManifestGraph`
[🔗](https://github.com/dcat-r/dcatr-ex/blob/v0.1.0/lib/dcatr/model/graph_types/repository_manifest_graph.ex#L1)

A `DCATR.ManifestGraph` containing the DCAT catalog description of a `DCATR.Repository`.

Repository manifest graphs contain the DCAT descriptions of the repository itself,
including metadata about the dataset and all graphs. This manifest is part of the
repository distribution and shared across all service instances.

This graph exhibits controlled self-reference - it describes the repository of
which it is part. The graph MUST have its own URI distinct from the repository
URI to avoid identifier collision, e.g.:

- `{repository-uri}/manifest`
- `{repository-uri}/metadata`

# `t`

```elixir
@type t() :: %DCATR.RepositoryManifestGraph{
  __additional_statements__: term(),
  __id__: term()
}
```

# `build`

# `build`

# `build!`

# `build!`

# `build_id`

# `from`

```elixir
@spec from(Grax.Schema.t()) :: {:ok, t()} | {:error, any()}
```

# `from!`

```elixir
@spec from!(Grax.Schema.t()) :: t()
```

# `load`

```elixir
@spec load(
  RDF.Graph.t() | RDF.Description.t(),
  RDF.IRI.coercible() | RDF.BlankNode.t(),
  opts :: keyword()
) :: {:ok, t()} | {:error, any()}
```

# `load!`

```elixir
@spec load!(
  RDF.Graph.t() | RDF.Description.t(),
  RDF.IRI.coercible() | RDF.BlankNode.t(),
  opts :: keyword()
) :: t()
```

# `new`

# `new!`

---

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