pub struct Entity {
// private fields
}pub struct Graph {
// private fields
}fn Graph::require_interpretation(self : Graph, _operation : Interpretation) -> Unit raise ModelErrorpub struct Record {
// private fields
}pub(all) enum Reference {
Resolved(ResolvedRef)
Unresolved(String, String, String)
} derive(Eq, Debug)pub struct Relationship {
// private fields
}pub struct Source {
// private fields
}pub struct TraitApplication {
// private fields
}fn TraitApplication::interpretation(self : TraitApplication) -> TraitInterpretation raise ModelErrorpub struct TraitDefinition {
// private fields
}pub(all) enum TraitTarget {
ModelTarget(Snapshot)
ModuleTarget(Snapshot, String)
EntityTarget(TraitTargetKind, Reference)
ProfileTarget(TraitTargetKind, Id, Reference)
UnknownTarget(Record)
}pub(all) enum TraitTargetKind {
ConceptTarget
TypeTarget
MemberTarget
FunctionTarget
OperationTarget
ServiceBindingTarget
} derive(Eq)