triplemodel.vocab_registry

Vocabulary registry: prefixes, type URIs, and model classes.

class triplemodel.vocab_registry.VocabularyRegistry(type_uri_to_class=<factory>, prefix_to_uri=<factory>)[source]

Bases: object

Maps RDF type IRIs and namespace prefixes to TripleModel classes.

Parameters:
type_uri_to_class: dict[str, type[BaseModel]]
prefix_to_uri: dict[str, str]
register(model_cls)[source]

Register a model class and its Rdf metadata.

Return type:

None

Parameters:

model_cls (type[BaseModel])

model_for_type_uri(type_uri)[source]
Return type:

type[BaseModel] | None

Parameters:

type_uri (str)

model_for_subject(graph, subject, *, use_subclass=True)[source]
Return type:

type[BaseModel]

Parameters:
  • graph (RdfGraph)

  • subject (NamedNode | BlankNode | Literal)

  • use_subclass (bool)

bind_vocab(graph)[source]

Bind all registered prefixes on graph.

Return type:

None

Parameters:

graph (RdfGraph)

classmethod from_registered()[source]

Build a registry snapshot from process-wide registrations.

Return type:

VocabularyRegistry

__init__(type_uri_to_class=<factory>, prefix_to_uri=<factory>)
Parameters:
Return type:

None