Nektar++
|
Public Member Functions | |
def | __init__ (self, name) |
def | __getattribute__ (self, name) |
def | METADATA_NAMES (self) |
def | STIMULUS_NAMES (self) |
def | get_rdf_from_model (self, cellml_model) |
def | remove_model (self, cellml_model) |
def | update_serialized_rdf (self, cellml_model) |
def | create_rdf_node (self, node_content=None, fragment_id=None) |
def | create_unique_id (self, cellml_model, base_id) |
def | add_statement (self, cellml_model, source, property, target) |
def | replace_statement (self, cellml_model, source, property, target) |
def | remove_statements (self, cellml_model, source, property, target) |
def | get_target (self, cellml_model, source, property) |
def | get_targets (self, cellml_model, source, property) |
def | find_variables (self, cellml_model, property, value=None) |
def | get_all_rdf (self, cellml_model) |
def | namespace_member (self, node, nsuri, not_uri_ok=False, wrong_ns_ok=False) |
Public Attributes | |
Graph | |
Private Member Functions | |
def | _debug (args) |
def | _load_ontology (self) |
def | _create_new_store (self, cellml_model) |
def | _add_rdf_element (self, cellml_model, rdf_text) |
def | _serialize (self, cellml_model) |
Private Attributes | |
_module | |
_initializing | |
_models | |
_metadata_names | |
_stimulus_names | |
Implements CellML metadata functionality using the RDFLib library.
Definition at line 61 of file cellml_metadata.py.
def CellMLToNektar.cellml_metadata.RdfProcessor.__init__ | ( | self, | |
name | |||
) |
Create the wrapper.
Definition at line 63 of file cellml_metadata.py.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor.__getattribute__().
def CellMLToNektar.cellml_metadata.RdfProcessor.__getattribute__ | ( | self, | |
name | |||
) |
Provide access to real module-level variables as though they're class properties.
Definition at line 80 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor.__init__().
|
private |
Add statements to the model's graph from the given serialized RDF.
Definition at line 143 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._models, and CellMLToNektar.cellml_metadata.RdfProcessor.Graph.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model().
|
private |
Create a new RDF store for the given CellML model. The new store will be available as self._models[cellml_model].
Definition at line 137 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._models, and CellMLToNektar.cellml_metadata.RdfProcessor.Graph.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model().
|
private |
Definition at line 93 of file cellml_metadata.py.
Referenced by CellMLToNektar.optimize.PartialEvaluator._check_retargetting(), CellMLToNektar.optimize.PartialEvaluator._do_reduce_eval_loop(), CellMLToNektar.optimize.PartialEvaluator._reduce_evaluate_expression(), CellMLToNektar.optimize.PartialEvaluator._rename_var(), CellMLToNektar.cellml_metadata.RdfProcessor.add_statement(), CellMLToNektar.cellml_metadata.RdfProcessor.find_variables(), CellMLToNektar.cellml_metadata.RdfProcessor.get_target(), CellMLToNektar.cellml_metadata.RdfProcessor.namespace_member(), CellMLToNektar.cellml_metadata.RdfProcessor.remove_model(), CellMLToNektar.cellml_metadata.RdfProcessor.remove_statements(), and CellMLToNektar.cellml_metadata.RdfProcessor.replace_statement().
|
private |
Load the Oxford metadata ontology the first time it's needed.
Definition at line 96 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._metadata_names, CellMLToNektar.cellml_metadata.RdfProcessor._stimulus_names, CellMLToNektar.cellml_metadata.RdfProcessor.Graph, and CellMLToNektar.cellml_metadata.RdfProcessor.namespace_member().
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor.METADATA_NAMES(), and CellMLToNektar.cellml_metadata.RdfProcessor.STIMULUS_NAMES().
|
private |
Serialize the RDF model for this CellML model to XML.
Definition at line 151 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._models.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor.update_serialized_rdf().
def CellMLToNektar.cellml_metadata.RdfProcessor.add_statement | ( | self, | |
cellml_model, | |||
source, | |||
property, | |||
target | |||
) |
Add a statement to the model.
Definition at line 240 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._debug(), and CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model().
def CellMLToNektar.cellml_metadata.RdfProcessor.create_rdf_node | ( | self, | |
node_content = None , |
|||
fragment_id = None |
|||
) |
Create an RDF node. node_content, if given, must either be a tuple (qname, namespace_uri), or a string, in which case it is interpreted as a literal RDF node. Alternatively, fragment_id may be given to refer to a cmeta:id within the current model. If neither are given, a blank node is created.
Definition at line 197 of file cellml_metadata.py.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor.create_unique_id(), and CellMLToNektar.cellml_metadata.RdfProcessor.find_variables().
def CellMLToNektar.cellml_metadata.RdfProcessor.create_unique_id | ( | self, | |
cellml_model, | |||
base_id | |||
) |
Create a fragment identifier that hasn't already been used. If base_id hasn't been used, it will be returned. Otherwise, underscores will be added until a unique id is obtained.
Definition at line 227 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor.create_rdf_node(), and CellMLToNektar.cellml_metadata.RdfProcessor.get_targets().
def CellMLToNektar.cellml_metadata.RdfProcessor.find_variables | ( | self, | |
cellml_model, | |||
property, | |||
value = None |
|||
) |
Find variables in the cellml_model with the given property, and optionally value. property (and value if given) should be a suitable input for create_rdf_node. Will return a list of cellml_variable instances.
Definition at line 298 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._debug(), CellMLToNektar.cellml_metadata.RdfProcessor.create_rdf_node(), and CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model().
def CellMLToNektar.cellml_metadata.RdfProcessor.get_all_rdf | ( | self, | |
cellml_model | |||
) |
Return an iterator over all RDF triples in the model.
Definition at line 321 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model().
def CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model | ( | self, | |
cellml_model | |||
) |
Get the RDF graph of the given CellML model. If this model is already in our map, return the existing RDF store. Otherwise, extract metadata from all RDF elements in the cellml_model, create a new RDF graph from these, and delete the original elements.
Definition at line 155 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._add_rdf_element(), CellMLToNektar.cellml_metadata.RdfProcessor._create_new_store(), and CellMLToNektar.cellml_metadata.RdfProcessor._models.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor.add_statement(), CellMLToNektar.cellml_metadata.RdfProcessor.find_variables(), CellMLToNektar.cellml_metadata.RdfProcessor.get_all_rdf(), CellMLToNektar.cellml_metadata.RdfProcessor.get_target(), CellMLToNektar.cellml_metadata.RdfProcessor.get_targets(), CellMLToNektar.cellml_metadata.RdfProcessor.remove_statements(), and CellMLToNektar.cellml_metadata.RdfProcessor.replace_statement().
def CellMLToNektar.cellml_metadata.RdfProcessor.get_target | ( | self, | |
cellml_model, | |||
source, | |||
property | |||
) |
Get the target of property from source. Returns None if no such target exists. Throws if there is more than one match. If the target is a literal node, returns its string value. Otherwise returns an RDF node.
Definition at line 264 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._debug(), and CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model().
def CellMLToNektar.cellml_metadata.RdfProcessor.get_targets | ( | self, | |
cellml_model, | |||
source, | |||
property | |||
) |
Get a list of all targets of property from source. If no such targets exist, returns an empty list. If property is None, targets of any property will be returned. Alternatively if source is None, targets of the given property from any source will be found. For each target, if it is a literal node then its string value is given. Otherwise the list will contain an RDF node.
Definition at line 281 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model().
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor.create_unique_id().
def CellMLToNektar.cellml_metadata.RdfProcessor.METADATA_NAMES | ( | self | ) |
Fake a module-level constant as a property for lazy loading.
Definition at line 124 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._load_ontology(), and CellMLToNektar.cellml_metadata.RdfProcessor._metadata_names.
def CellMLToNektar.cellml_metadata.RdfProcessor.namespace_member | ( | self, | |
node, | |||
nsuri, | |||
not_uri_ok = False , |
|||
wrong_ns_ok = False |
|||
) |
Given a URI reference RDF node and namespace URI, return the local part. Will raise an exception if node is not a URI reference unless not_uri_ok is True. Will raise an exception if the node doesn't live in the given namespace, unless wrong_ns_ok is True. In both cases, if the error is suppressed the empty string will be returned instead.
Definition at line 327 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._debug().
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor._load_ontology().
def CellMLToNektar.cellml_metadata.RdfProcessor.remove_model | ( | self, | |
cellml_model | |||
) |
The given model is being deleted / no longer needed.
Definition at line 171 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._debug(), and CellMLToNektar.cellml_metadata.RdfProcessor._models.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor.update_serialized_rdf().
def CellMLToNektar.cellml_metadata.RdfProcessor.remove_statements | ( | self, | |
cellml_model, | |||
source, | |||
property, | |||
target | |||
) |
Remove all statements matching (source,property,target). Any of these may be None to match anything.
Definition at line 255 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._debug(), and CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model().
def CellMLToNektar.cellml_metadata.RdfProcessor.replace_statement | ( | self, | |
cellml_model, | |||
source, | |||
property, | |||
target | |||
) |
Add a statement to the model, avoiding duplicates. Any existing statements with the same source and property will first be removed.
Definition at line 246 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._debug(), and CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model().
def CellMLToNektar.cellml_metadata.RdfProcessor.STIMULUS_NAMES | ( | self | ) |
Fake a module-level constant as a property for lazy loading.
Definition at line 131 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._load_ontology(), and CellMLToNektar.cellml_metadata.RdfProcessor._stimulus_names.
def CellMLToNektar.cellml_metadata.RdfProcessor.update_serialized_rdf | ( | self, | |
cellml_model | |||
) |
Ensure the RDF serialized into the given CellML model is up-to-date. If we have done any metadata processing on the given model, will serialize our RDF store into the rdf:RDF element child of the model.
Definition at line 177 of file cellml_metadata.py.
References CellMLToNektar.cellml_metadata.RdfProcessor._models, CellMLToNektar.cellml_metadata.RdfProcessor._serialize(), and CellMLToNektar.cellml_metadata.RdfProcessor.remove_model().
|
private |
Definition at line 68 of file cellml_metadata.py.
|
private |
Definition at line 72 of file cellml_metadata.py.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor._load_ontology(), and CellMLToNektar.cellml_metadata.RdfProcessor.METADATA_NAMES().
|
private |
Definition at line 70 of file cellml_metadata.py.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor._add_rdf_element(), CellMLToNektar.cellml_metadata.RdfProcessor._create_new_store(), CellMLToNektar.cellml_metadata.RdfProcessor._serialize(), CellMLToNektar.cellml_metadata.RdfProcessor.get_rdf_from_model(), CellMLToNektar.cellml_metadata.RdfProcessor.remove_model(), and CellMLToNektar.cellml_metadata.RdfProcessor.update_serialized_rdf().
|
private |
Definition at line 66 of file cellml_metadata.py.
|
private |
Definition at line 72 of file cellml_metadata.py.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor._load_ontology(), and CellMLToNektar.cellml_metadata.RdfProcessor.STIMULUS_NAMES().
CellMLToNektar.cellml_metadata.RdfProcessor.Graph |
Definition at line 76 of file cellml_metadata.py.
Referenced by CellMLToNektar.cellml_metadata.RdfProcessor._add_rdf_element(), CellMLToNektar.cellml_metadata.RdfProcessor._create_new_store(), and CellMLToNektar.cellml_metadata.RdfProcessor._load_ontology().