Pure SELECT/CONSTRUCT compiler for public-ontology semantic value spaces.
Inputs may be public IRIs, a list of IRI/profile entries, or a JSON-compatible
map containing types. All paths converge on AshR2RML.SemanticType.Plan.
This module performs no filesystem writes, migrations, network access, or production actuation.
Summary
Functions
Construct an explicit RDF IRI semantic type without inventing an ontology class.
Functions
@spec admit_property(AshR2RML.SemanticType.t(), atom() | module()) :: :ok | {:error, AshR2RML.Refusal.t()}
@spec compile( term(), keyword() ) :: {:ok, [AshR2RML.SemanticType.t()]} | {:error, [AshR2RML.Refusal.t()]}
@spec diff( AshR2RML.SemanticType.Plan.t() | map(), AshR2RML.SemanticType.Plan.t() | map() ) :: AshR2RML.SemanticType.Diff.t()
@spec iri_type(keyword()) :: {:ok, AshR2RML.SemanticType.t()} | {:error, AshR2RML.Refusal.t()}
Construct an explicit RDF IRI semantic type without inventing an ontology class.
@spec manifest(AshR2RML.SemanticType.Plan.t()) :: map()
@spec manifest_json(AshR2RML.SemanticType.Plan.t()) :: {:ok, String.t()} | {:error, Jason.EncodeError.t()}
@spec plan( term(), keyword() ) :: {:ok, AshR2RML.SemanticType.Plan.t()} | {:error, [AshR2RML.Refusal.t()]}
@spec resolve( String.t(), keyword() ) :: {:ok, AshR2RML.SemanticType.t()} | {:error, AshR2RML.Refusal.t()}
@spec round_trip(AshR2RML.SemanticType.t(), term()) :: {:ok, map()} | {:error, AshR2RML.Refusal.t()}
@spec verify(AshR2RML.SemanticType.Plan.t() | [AshR2RML.SemanticType.t()]) :: :ok | {:error, [AshR2RML.Refusal.t()]}