Dataset I/O

Dataset and named-graph serialization.

triplemodel.io.dataset.parse_into_dataset(source=None, *, data=None, format=None, base=None, bind_prefixes=None, jsonld_context=None, lenient=False, without_named_graphs=False, rename_blank_nodes=False, **format_kwargs)[source]

Parse RDF into a new in-memory RdfDataset.

Return type:

RdfDataset

Parameters:
triplemodel.io.dataset.parse_url_into_dataset(url, *, format=None, base=None, timeout=30.0, bind_prefixes=None, jsonld_context=None, lenient=False, without_named_graphs=False, rename_blank_nodes=False, **format_kwargs)[source]

Parse RDF from a URL into a RdfDataset.

Return type:

RdfDataset

Parameters:
triplemodel.io.dataset.load_dataset(source=None, *, data=None, format=None, base=None, bind_prefixes=None, jsonld_context=None, **format_kwargs)[source]

Parse RDF into an in-memory dataset (alias for parse_into_dataset()).

Return type:

RdfDataset

Parameters:
triplemodel.io.dataset.dump_dataset(dataset, destination=None, *, format='trig', jsonld_context=None, **format_kwargs)[source]

Serialize dataset to a string, bytes, or file.

Return type:

str | bytes | None

Parameters:
triplemodel.io.dataset.model_to_dataset(model, dataset=None, *, uri=None, config=None, graph_iri=None, mode=None, bind=None, resolver=None, registry=<triplemodel.terms.registry.LiteralRegistry object>, skolemize=None)[source]

Add triples for model to the appropriate named graph in dataset.

Return type:

RdfDataset

Parameters:
triplemodel.io.dataset.models_to_dataset(models, dataset=None, *, mode='add', resolver=None, registry=<triplemodel.terms.registry.LiteralRegistry object>)[source]

Serialize multiple model instances into named graphs by resolve_graph_iri.

Return type:

RdfDataset

Parameters:
triplemodel.io.dataset.sync_to_dataset(model, dataset, *, uri=None, graph_iri=None, mode=None, config=None, bind=True, resolver=None, registry=<triplemodel.terms.registry.LiteralRegistry object>, skolemize=None)[source]

Sync model into the resolved named graph within dataset.

Return type:

RdfDataset

Parameters:
triplemodel.io.dataset.graph_to_model_from_dataset(dataset, model_cls, uri, *, graph_iri=None, config=None, validate_type=True, on_duplicate='warn', resolver=None, registry=<triplemodel.terms.registry.LiteralRegistry object>, de_skolemize=None)[source]

Construct an instance from triples in the model’s named graph context.

Return type:

TypeVar(T, bound= BaseModel)

Parameters:
triplemodel.io.dataset.graph_to_models_from_dataset(dataset, model_cls, *, graph_iri=None, type_uri=None, config=None, validate_type=True, on_duplicate='warn', resolver=None, registry=<triplemodel.terms.registry.LiteralRegistry object>, de_skolemize=None)[source]

Load all resources of this type from the model’s named graph context.

Return type:

list[TypeVar(T, bound= BaseModel)]

Parameters:
triplemodel.io.dataset.all_from_dataset(dataset, model_cls, **kwargs)[source]

Load every resource of this model’s RDF type from its named graph context.

Return type:

list[TypeVar(T, bound= BaseModel)]

Parameters:
  • dataset (RdfDataset)

  • model_cls (type[T])

  • kwargs (Any)

triplemodel.io.dataset.load_models_from_dataset(dataset, *model_classes, **kwargs)[source]

Load multiple model classes from one dataset (each uses its Rdf.graph_iri).

Return type:

dict[type[TypeVar(TModel, bound= BaseModel)], list[TypeVar(TModel, bound= BaseModel)]]

Parameters:
  • dataset (RdfDataset)

  • model_classes (type[TModel])

  • kwargs (Any)

triplemodel.io.dataset.quads_in_context(dataset, graph_iri)[source]

Iterate quads in a named graph (or default graph when graph_iri is None).

Return type:

Iterator[tuple[NamedNode | BlankNode | Literal, NamedNode | BlankNode | Literal, NamedNode | BlankNode | Literal, NamedNode | BlankNode | Literal]]

Parameters:
  • dataset (RdfDataset)

  • graph_iri (str | None)

triplemodel.io.dataset.iter_model_quads(model, *, uri=None, graph_iri=None, config=None, resolver=None, registry=<triplemodel.terms.registry.LiteralRegistry object>)[source]

Yield (subject, predicate, object, graph_iri) rows for model.

Return type:

Iterator[tuple[str | NamedNode | BlankNode | Literal, str, Any, str | None]]

Parameters:

Configuration

triplemodel.config.get_graph_context(container, graph_iri=None)[source]

Return the named-graph view for triple I/O within container.

Return type:

RdfGraph

Parameters:
  • container (RdfGraph | RdfDataset)

  • graph_iri (str | None)

triplemodel.config.resolve_graph_iri(model, cfg=None)[source]

Return the named graph IRI for model (class config, then instance override).

Return type:

str | None

Parameters:
triplemodel.io.files.is_quad_format(fmt)[source]

Return True when fmt is a quad-aware format (TriG, N-Quads).

Return type:

bool

Parameters:

fmt (str)