DfCM representation calculus for semantic values.
Candidate preservation is separate from irreversible selection.
Summary
Functions
@spec candidates(AshR2RML.SemanticType.t()) :: [ AshR2RML.SemanticType.representation() ]
@spec select(AshR2RML.SemanticType.t()) :: {:ok, AshR2RML.SemanticType.t()} | {:error, AshR2RML.Refusal.t()}