Scroll to navigation

Attean::API::MutableModel(3pm) User Contributed Perl Documentation Attean::API::MutableModel(3pm)

NAME

Attean::API::MutableModel - Role representing mutable models

VERSION

This document describes Attean::API::MutableModel version 0.021

SYNOPSIS

  use v5.14;
  use Attean;

DESCRIPTION

This is a Moo role that mutable models consume. It defines the required methods for updating data, and provides default functionality.

ROLES

This role consumes the Attean::API::Model role.

REQUIRED METHODS

Classes consuming this role must provide the following methods:
"add_quad( $quad )"
Adds the Attean::API::Quad $quad to the model.
"remove_quad( $quad )"
Removes the Attean::API::Quad $quad from the model.
"create_graph( $graph )"
Creates a new, empty graph in the model with the Attean::API::BlankOrIRI identifier $graph. If the model does not support empty graphs, this operation may be a no-op.
"drop_graph( $graph )"
Removes the graph in the model with the Attean::API::BlankOrIRI identifier $graph.
"clear_graph( $graph )"
Removes all quads that belong to the graph in the model with the Attean::API::BlankOrIRI identifier $graph. If the model does not support empty graphs, this operation may be an alias for "drop_graph( $graph )".

METHODS

This role provides default implementations of the following methods:
"load_triples( $format, $graph => $data )"
Parses the serialized triples contained in the string $data using the $format parser (see "get_parser" in Attean). Triples resulting from parsing are turned into quads using the $graph identifier, and added to the model.
"add_iter( $iter )"
Adds all the quads from the Attean::API::QuadIterator $iter to the model.
"add_list( $graph, @elements )"
Adds an rdf:List encoded list of @elements to the model in the $graph. Returns the Attean::API::Blank head of the list.

BUGS

Please report any bugs or feature requests to through the GitHub web interface at <https://github.com/kasei/attean/issues>.

SEE ALSO

AUTHOR

Gregory Todd Williams "<gwilliams@cpan.org>"

COPYRIGHT

Copyright (c) 2014--2018 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
2019-02-13 perl v5.28.1