Source code for rdflib.exceptions

"""
TODO:
"""

__all__ = [
    "Error",
    "TypeCheckError",
    "SubjectTypeError",
    "PredicateTypeError",
    "ObjectTypeError",
    "ContextTypeError",
    "ParserError",
]


[docs]class Error(Exception): """Base class for rdflib exceptions."""
[docs] def __init__(self, msg=None): Exception.__init__(self, msg) self.msg = msg
[docs]class TypeCheckError(Error): """Parts of assertions are subject to type checks."""
[docs] def __init__(self, node): Error.__init__(self, node) self.type = type(node) self.node = node
[docs]class SubjectTypeError(TypeCheckError): """Subject of an assertion must be an instance of URIRef."""
[docs] def __init__(self, node): TypeCheckError.__init__(self, node) self.msg = "Subject must be instance of URIRef or BNode: %s(%s)" % ( self.node, self.type, )
[docs]class PredicateTypeError(TypeCheckError): """Predicate of an assertion must be an instance of URIRef."""
[docs] def __init__(self, node): TypeCheckError.__init__(self, node) self.msg = "Predicate must be a URIRef instance: %s(%s)" % ( self.node, self.type, )
[docs]class ObjectTypeError(TypeCheckError): """Object of an assertion must be an instance of URIRef, Literal, or BNode."""
[docs] def __init__(self, node): TypeCheckError.__init__(self, node) self.msg = ( "\ Object must be instance of URIRef, Literal, or BNode: %s(%s)" % (self.node, self.type) )
[docs]class ContextTypeError(TypeCheckError): """Context of an assertion must be an instance of URIRef."""
[docs] def __init__(self, node): TypeCheckError.__init__(self, node) self.msg = "Context must be instance of URIRef or BNode: %s(%s)" % ( self.node, self.type, )
[docs]class ParserError(Error): """RDF Parser error."""
[docs] def __init__(self, msg): Error.__init__(self, msg) self.msg = msg
[docs] def __str__(self): return self.msg
class UniquenessError(Error): """A uniqueness assumption was made in the context, and that is not true""" def __init__(self, values): Error.__init__( self, "\ Uniqueness assumption is not fulfilled. Multiple values are: %s" % values, )