llyn
index
/Users/yosi/CVSROOT/WWW/2000/10/swap/llyn.py

$Id: llyn.py,v 1.183 2007/06/26 02:36:15 syosi Exp $
 
 
RDF Store and Query engine
 
Logic Lookup: Yet another Name
 
(also, in Wales, a lake - a storage area at the centre of the valley?)
 
This is an engine which knows a certian amount of stuff and can manipulate it.
It is a (forward chaining) query engine, not an (backward chaining) inference engine:
that is, it will apply all rules it can
but won't figure out which ones to apply to prove something.  It is not
optimized particularly.
 
Used by cwm - the closed world machine.
See:  http://www.w3.org/DesignIssues/Notation3
 
Interfaces
==========
 
This store stores many formulae, where one formula is what in
straight RDF implementations is known as a "triple store".
So look at the Formula class for a triple store interface.
 
See also for comparison, a python RDF API for the Redland library (in C):
   http://www.redland.opensource.ac.uk/docs/api/index.html 
and the redfoot/rdflib interface, a python RDF API:
   http://rdflib.net/latest/doc/triple_store.html
 
    
Copyright ()  2000-2004 World Wide Web Consortium, (Massachusetts Institute
of Technology, European Research Consortium for Informatics and Mathematics,
Keio University). All Rights Reserved. This work is distributed under the
W3C Software License [1] in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 FOR A PARTICULAR PURPOSE.

 
Modules
       
StringIO
binascii
diag
httplib
md5
notation3
re
reify
string
sys
time
types
uripath
urllib
weakref
webAccess
xml

 
Classes
       
RDFSink.RDFSink
RDFStore
__builtin__.object
Disjoint_set
exceptions.ValueError(exceptions.StandardError)
URISyntaxError
formula.Formula(term.AnonymousNode, term.CompoundTerm)
IndexedFormula
DataObject
term.Function(term.BuiltIn)
BI_EqualTo(term.LightBuiltIn, term.Function, term.ReverseFunction)
BI_EqualTo(term.LightBuiltIn, term.Function, term.ReverseFunction)
BI_conclusion(term.HeavyBuiltIn, term.Function)
BI_conjunction(term.LightBuiltIn, term.Function)
BI_content(term.HeavyBuiltIn, term.Function)
BI_dtlit(term.LightBuiltIn, term.Function)
BI_filter(term.LightBuiltIn, term.Function)
BI_n3String(term.LightBuiltIn, term.Function)
BI_parsedAsN3(term.HeavyBuiltIn, term.Function)
BI_racine(term.LightBuiltIn, term.Function)
BI_rawType(term.LightBuiltIn, term.Function)
BI_reification(term.HeavyBuiltIn, term.Function, term.ReverseFunction)
BI_semantics(term.HeavyBuiltIn, term.Function)
BI_semanticsOrError
BI_semanticsWithImportsClosure(term.HeavyBuiltIn, term.Function)
BI_uri(term.LightBuiltIn, term.Function, term.ReverseFunction)
BI_rawUri
BI_vars(term.LightBuiltIn, term.Function)
BI_xmlTree(term.HeavyBuiltIn, term.Function)
term.HeavyBuiltIn(term.GenericBuiltIn)
BI_conclusion(term.HeavyBuiltIn, term.Function)
BI_content(term.HeavyBuiltIn, term.Function)
BI_includes
BI_notIncludes
BI_notIncludesWithBuiltins
BI_parsedAsN3(term.HeavyBuiltIn, term.Function)
BI_reification(term.HeavyBuiltIn, term.Function, term.ReverseFunction)
BI_semantics(term.HeavyBuiltIn, term.Function)
BI_semanticsOrError
BI_semanticsWithImportsClosure(term.HeavyBuiltIn, term.Function)
BI_supports
BI_xmlTree(term.HeavyBuiltIn, term.Function)
term.LightBuiltIn(term.GenericBuiltIn)
BI_EqualTo(term.LightBuiltIn, term.Function, term.ReverseFunction)
BI_EqualTo(term.LightBuiltIn, term.Function, term.ReverseFunction)
BI_conjunction(term.LightBuiltIn, term.Function)
BI_dtlit(term.LightBuiltIn, term.Function)
BI_filter(term.LightBuiltIn, term.Function)
BI_n3String(term.LightBuiltIn, term.Function)
BI_notEqualTo
BI_racine(term.LightBuiltIn, term.Function)
BI_rawType(term.LightBuiltIn, term.Function)
BI_uri(term.LightBuiltIn, term.Function, term.ReverseFunction)
BI_rawUri
BI_vars(term.LightBuiltIn, term.Function)
term.RDFBuiltIn(term.LightBuiltIn)
BI_enforceUniqueBinding
BI_existentialVariableName
BI_universalVariableName
term.ReverseFunction(term.BuiltIn)
BI_EqualTo(term.LightBuiltIn, term.Function, term.ReverseFunction)
BI_EqualTo(term.LightBuiltIn, term.Function, term.ReverseFunction)
BI_reification(term.HeavyBuiltIn, term.Function, term.ReverseFunction)
BI_uri(term.LightBuiltIn, term.Function, term.ReverseFunction)
BI_rawUri

 
class BI_EqualTo(term.LightBuiltIn, term.Function, term.ReverseFunction)
    
Method resolution order:
BI_EqualTo
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.ReverseFunction
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)
evalObj(self, subj, queue, bindings, proof, query)
evalSubj(self, obj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
BI_SameAs = class BI_EqualTo(term.LightBuiltIn, term.Function, term.ReverseFunction)
    
Method resolution order:
BI_EqualTo
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.ReverseFunction
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)
evalObj(self, subj, queue, bindings, proof, query)
evalSubj(self, obj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_conclusion(term.HeavyBuiltIn, term.Function)
    Deductive Closure
 
Closure under Forward Inference, equivalent to cwm's --think function.
This is a function, so the object is calculated from the subject.
 
 
Method resolution order:
BI_conclusion
term.HeavyBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_conjunction(term.LightBuiltIn, term.Function)
    The conjunction of a set of formulae is the set of statements which is
just the union of the sets of statements
modulo non-duplication of course.
 
 
Method resolution order:
BI_conjunction
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_content(term.HeavyBuiltIn, term.Function)
    
Method resolution order:
BI_content
term.HeavyBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_dtlit(term.LightBuiltIn, term.Function)
    built a datatype literal from a string and a uri
 
 
Method resolution order:
BI_dtlit
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evaluateObject(self, subj_py)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)
evalObj(self, subj, queue, bindings, proof, query)
This function which has access to the store, unless overridden,
calls a simpler one which uses python conventions.
 
To reduce confusion, the inital ones called with the internals available
use abreviations "eval", "subj" etc while the python-style ones use "evaluate", "subject", etc.

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_enforceUniqueBinding(term.RDFBuiltIn)
    Is the mapping from the variable in the subject to the name in the object unique?
 
 
Method resolution order:
BI_enforceUniqueBinding
term.RDFBuiltIn
term.LightBuiltIn
term.GenericBuiltIn
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_existentialVariableName(term.RDFBuiltIn)
    Is the object the name of a existential variable in the subject?
Can be used as a test, or returns a sequence of values.
Currently gives BNode names too.  Maybe we make sep function for that?
 
 
Method resolution order:
BI_existentialVariableName
term.RDFBuiltIn
term.LightBuiltIn
term.GenericBuiltIn
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_filter(term.LightBuiltIn, term.Function)
    Filtering of formulae
 
 
Method resolution order:
BI_filter
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_includes(term.HeavyBuiltIn)
    Check that one formula does include the other.
This limits the ability to bind a variable by searching inside another
context. This is quite a limitation in some ways. @@ fix
 
 
Method resolution order:
BI_includes
term.HeavyBuiltIn
term.GenericBuiltIn
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_n3String(term.LightBuiltIn, term.Function)
    The n3 string for a formula is what you get when you
express it in the N3 language without using any URIs.
Note that there is no guarantee that two implementations will
generate the same thing, but whatever they generate should
parse back using parsedAsN3 to exaclty the same original formula.
If we *did* have a canonical form it would be great for signature
A canonical form is possisble but not simple.
 
 
Method resolution order:
BI_n3String
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_notEqualTo(term.LightBuiltIn)
    
Method resolution order:
BI_notEqualTo
term.LightBuiltIn
term.GenericBuiltIn
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_notIncludes(term.HeavyBuiltIn)
    Check that one formula does not include the other.
 
notIncludes is a heavy function not only because it may take more time than
a simple search, but also because it must be performed after other work so that
the variables within the object formula have all been subsituted.  It makes no sense
to ask a notIncludes question with variables, "Are there any ?x for which
F does not include foo bar ?x" because of course there will always be an
infinite number for any finite F.  So notIncludes can only be used to check, when a
specific case has been found, that it does not exist in the formula.
This means we have to know that the variables do not occur in obj.
 
As for the subject, it does make sense for the opposite reason.  If F(x)
includes G for all x, then G would have to be infinite.
 
 
Method resolution order:
BI_notIncludes
term.HeavyBuiltIn
term.GenericBuiltIn
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_notIncludesWithBuiltins(term.HeavyBuiltIn)
    
Method resolution order:
BI_notIncludesWithBuiltins
term.HeavyBuiltIn
term.GenericBuiltIn
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_parsedAsN3(term.HeavyBuiltIn, term.Function)
    
Method resolution order:
BI_parsedAsN3
term.HeavyBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_racine(term.LightBuiltIn, term.Function)
    
Method resolution order:
BI_racine
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_rawType(term.LightBuiltIn, term.Function)
    The raw type is a type from the point of view of the langauge: is
it a formula, list, and so on. Needed for test for formula in finding subformulae
eg see test/includes/check.n3
 
 
Method resolution order:
BI_rawType
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_rawUri(BI_uri)
    This is like  uri except that it allows you to get the internal
identifiers for anonymous nodes and formuale etc.
 
 
Method resolution order:
BI_rawUri
BI_uri
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.ReverseFunction
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from BI_uri:
evaluateSubject(self, object)
Return the object which has this string as its URI
 
#@@hm... check string for URI syntax?
# or at least for non-uri chars, such as space?
Note that relative URIs can be OK as the whole process
has a base, which may be irrelevant. Eg see roadmap-test in retest.sh

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Methods inherited from term.ReverseFunction:
evalSubj(self, obj, queue, bindings, proof, query)
This function which has access to the store, unless overridden,
calls a simpler one which uses python conventions

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_reification(term.HeavyBuiltIn, term.Function, term.ReverseFunction)
    
Method resolution order:
BI_reification
term.HeavyBuiltIn
term.GenericBuiltIn
term.Function
term.ReverseFunction
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)
evalSubj(self, obj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_semantics(term.HeavyBuiltIn, term.Function)
    The semantics of a resource are its machine-readable meaning, as an
N3 forumula.  The URI is used to find a representation of the resource in
bits which is then parsed according to its content type.
 
 
Method resolution order:
BI_semantics
term.HeavyBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_semanticsOrError(BI_semantics)
    Either get and parse to semantics or return an error message on any error
 
 
Method resolution order:
BI_semanticsOrError
BI_semantics
term.HeavyBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_semanticsWithImportsClosure(term.HeavyBuiltIn, term.Function)
    The semantics of a resource are its machine-readable meaning,
as an N3 forumula.  The URI is used to find a representation of
the resource in bits which is then parsed according to its content
type.  Extension : It also loads all imported URIs
 
 
Method resolution order:
BI_semanticsWithImportsClosure
term.HeavyBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_supports(term.HeavyBuiltIn)
    A more managable version of log:conclusion
The real version of this should appear in query.py
 
 
Method resolution order:
BI_supports
term.HeavyBuiltIn
term.GenericBuiltIn
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_universalVariableName(term.RDFBuiltIn)
    Is the object the name of a universal variable in the subject?
Runs even without interpretBuitins being set.  
Used internally in query.py for testing for 
Can be used as a test, or returns a sequence of values.
 
 
Method resolution order:
BI_universalVariableName
term.RDFBuiltIn
term.LightBuiltIn
term.GenericBuiltIn
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
eval(self, subj, obj, queue, bindings, proof, query)
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_uri(term.LightBuiltIn, term.Function, term.ReverseFunction)
    
Method resolution order:
BI_uri
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.ReverseFunction
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)
evaluateSubject(self, object)
Return the object which has this string as its URI
 
#@@hm... check string for URI syntax?
# or at least for non-uri chars, such as space?
Note that relative URIs can be OK as the whole process
has a base, which may be irrelevant. Eg see roadmap-test in retest.sh

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Methods inherited from term.ReverseFunction:
evalSubj(self, obj, queue, bindings, proof, query)
This function which has access to the store, unless overridden,
calls a simpler one which uses python conventions

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_vars(term.LightBuiltIn, term.Function)
    Get only the variables from a formula
 
 
Method resolution order:
BI_vars
term.LightBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class BI_xmlTree(term.HeavyBuiltIn, term.Function)
    
Method resolution order:
BI_xmlTree
term.HeavyBuiltIn
term.GenericBuiltIn
term.Function
term.BuiltIn
term.Fragment
term.LabelledNode
term.Node
term.Term
__builtin__.object

Methods defined here:
evalObj(self, subj, queue, bindings, proof, query)

Methods inherited from term.GenericBuiltIn:
__init__(self, resource, fragid)

Methods inherited from term.Function:
eval(self, subj, obj, queue, bindings, proof, query)

Static methods inherited from term.BuiltIn:
__new__(cls, *args, **keywords)

Data and other attributes inherited from term.BuiltIn:
all = []

Methods inherited from term.Fragment:
compareTerm(self, other)
dereference(self, mode='', workingContext=None)
dereference an identifyer, finding the semantics of its schema if any
 
Returns None if it cannot be retreived.
generated(self)
A generated identifier?
This arises when a document is parsed and a arbitrary
name is made up to represent a node with no known URI.
It is useful to know that its ID has no use outside that
context.
representation(self, base=None)
Optimize output if prefixes available
uriref(self)
uriref2(self, base)

Methods inherited from term.LabelledNode:
classOrder(self)
flatten(self, sink, why=None)
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
 
[ reify:uri "http://example.org/whatever"]

Methods inherited from term.Term:
__repr__(self)
This method only used for debugging output - it can be ambiguous,
as it is is deliberately short to make debug printout readable.
 
output as XML qnames [http://www.w3.org/TR/REC-xml-names/#NT-QName].
This could be beefed up to guarantee unambiguity.
asPair(self)
Representation in an earlier format, being phased out 2002/08
 
The first part of the pair is a constant number represnting the type
see RDFSink.py.  the second is the value -- uri for symbols,
string for literals
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
debugString(self, already=[])
doesNodeAppear(self, symbol)
Does that node appear within this one
 
This non-overloaded function will simply return if I'm equal to him
freeVariables(self)
occurringIn(self, vars)
substituteEquals(self, bindings, newRedirections)
Return this or a version of me with substitution made
substitution(self, bindings, why=None, cannon=False)
Return this or a version of me with subsitution made
unflatten(self, sink, bNodes, why=None)
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source=55, n2Source=55)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class DataObject
    The info about a term in the context of a specific formula
It is created by being passed the formula and the term, and is
then accessed like a python dictionary of sequences of values. Example:
 
F = myWorkingFormula
x = F.theObject(pred=rdfType obj=fooCar)
for y in x[color][label]
 
  Methods defined here:
__getItem__(pred)
__init__(context, term)

 
class Disjoint_set(__builtin__.object)
     Methods defined here:
__init__(self)
add(self, f)
connected(self, f, g)
merge(self, s1, s2)

Data and other attributes defined here:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Disjoint_set' objects>
list of weak references to the object (if defined)
disjoint_set_node = <class 'llyn.disjoint_set_node'>

 
class IndexedFormula(formula.Formula)
    A formula which has indexes to facilitate queries.
 
A formula is either open or closed.  Initially, it is open. In this
state is may be modified - for example, triples may be added to it.
When it is closed, note that a different interned version of itself
may be returned. From then on it is a constant.
 
Only closed formulae may be mentioned in statements in other formuale.
 
There is a reopen() method but it is not recommended, and if desperate should
only be used immediately after a close().
 
 
Method resolution order:
IndexedFormula
formula.Formula
term.AnonymousNode
term.Node
term.CompoundTerm
term.Term
__builtin__.object

Methods defined here:
__init__(self, store, uri=None)
add(self, subj, pred, obj, why=None)
Add a triple to the formula.
 
The formula must be open.
subj, pred and obj must be objects as for example generated by Formula.newSymbol()
and newLiteral(), or else literal values which can be interned.
why     may be a reason for use when a proof will be required.
any(self, subj=None, pred=None, obj=None)
Return None or the value filing the blank in the called parameters.
 
Specifiy exactly two of the arguments.
color = f.any(pred=pantoneColor, subj=myCar)
somethingRed = f.any(pred=pantoneColor, obj=red)
 
Note difference from the old store.any!!
Note SPO order not PSO.
To aboid confusion, use named parameters.
canonicalize(F, cannon=False)
If this formula already exists, return the master version.
If not, record this one and return it.
Call this when the formula is in its final form, with all its
statements.  Make sure no one else has a copy of the pointer to the
smushed one.  In canonical form,
 - the statments are ordered
 - the lists are all internalized as lists
 
Store dependency: Uses store._formulaeOfLength
checkClosure(self, subj, pred, obj)
Check the closure of the formula given new contents
 
The s p o flags cause llyn to follow those parts of the new statement.
i asks it to follow owl:imports
r ask it to follow doc:rules
checkClosureDocument(self, x)
checkClosureOfSymbol(self, y)
contains(self, pred=None, subj=None, obj=None)
Return boolean true iff formula contains statement(s) matching the parts given
 
For example:
if f.contains(pred=pantoneColor):
    print "We've got one statement about something being some color"
debugString(self, already=[])
A simple dump of a formula in debug form.
 
This formula is dumped, using ids for nested formula.
Then, each nested formula mentioned is dumped.
each(self, subj=None, pred=None, obj=None)
Return a list of values value filing the blank in the called parameters
 
Examples:
colors = f.each(pred=pantoneColor, subj=myCar)
 
for redthing in f.each(pred=pantoneColor, obj=red): ...
newCanonicalize(F)
outputStrings(self, channel=None, relation=None)
Fetch output strings from store, sort and output
 
To output a string, associate (using the given relation) with a key
such that the order of the keys is the order in which you want the corresponding
strings output.
removeStatement(self, s)
Removes a statement The formula must be open.
 
This implementation is alas slow, as removal of items from tha hash is slow.
The above statement is false. Removing items from a hash is easily over five times
faster than removing them from a list.
Also, truth mainainance is not done.  You can't undeclare things equal.
This is really a low-level method, used within add() and for cleaning up the store
to save space in purge() etc.
reopen(self)
Make a formula which was once closed oopen for input again.
 
NOT Recommended.  Dangers: this formula will be, because of interning,
the same objet as a formula used elsewhere which happens to have the same content.
You mess with this one, you mess with that one.
Much better to keep teh formula open until you don't needed it open any more.
The trouble is, the parsers close it at the moment automatically. To be fixed.
searchable(self, subj=None, pred=None, obj=None)
A pair of the difficulty of searching and a statement iterator of found statements
 
The difficulty is a store-portable measure of how long the store
thinks (in arbitrary units) it will take to search.
This will only be used for choisng which part of the query to search first.
If it is 0 there is no solution to the query, we know now.
 
In this implementation, we use the length of the sequence to be searched.
setClosureMode(self, x)
statementsMatching(self, pred=None, subj=None, obj=None)
Return a READ-ONLY list of StoredStatement objects matching the parts given
 
For example:
for s in f.statementsMatching(pred=pantoneColor):
    print "We've got one which is ", `s[OBJ]`
    
If none, returns []
substituteEqualsInPlace(self, redirections, why=None)
Slow ... does not use indexes
the(self, subj=None, pred=None, obj=None)
Return None or the value filing the blank in the called parameters
 
This is just like any() except it checks that there is only
one answer in the store. It wise to use this when you expect only one.
 
color = f.the(pred=pantoneColor, subj=myCar)
redCar = f.the(pred=pantoneColor, obj=red)
unifySecondary(self, other, env1, env2, vars, universals, existentials, n1Source, n2Source)

Methods inherited from formula.Formula:
__iter__(self)
The internal method which allows one to iterate over the statements
as though a formula were a sequence.
__len__(self)
How many statements?
__repr__(self)
asPair(self)
Return an old representation. Obsolete
bind(self, prefix, uri)
Give a prefix and associated URI as a hint for output
 
The store does not use prefixes internally, but keeping track
of those usedd in the input data makes for more human-readable output.
classOrder(self)
close(self)
No more to add. Please return interned value.
NOTE You must now use the interned one, not the original!
compareTerm(self, other)
Assume is also a Formula - see function compareTerm below
declareExistential(self, v)
declareUniversal(self, v, key=None)
doesNodeAppear(self, symbol)
Does that particular node appear anywhere in this formula
 
This function is necessarily recursive, and is useful for the pretty printer
It will also be useful for the flattener, when we write it.
existentials(self)
Return a list of existential variables with this formula as scope.
 
Implementation:
we may move to an internal storage rather than these pseudo-statements
flatten(self, sink, why=None)
freeVariables(self)
generated(self)
Yes, any identifier you see for this is arbitrary.
intern(self, value)
loadFormulaWithSubstitution(self, old, bindings={}, why=None, cannon=False)
Load information from another formula, subsituting as we go
returns number of statements added (roughly)
n3EntailedBy(pattern, kb, vars=set([]), existentials=set([]), bindings={})
See Term.unify() and term.matchSet()
 
KB is a stronger statement han other.
Bindings map variables in pattern onto kb.
Self n3-entails other.
Criteria:  Subset of self statements must match other statements.
  Self's exisetntials must be subset of other's
  Self's universals must be superset.
n3String(self, base=None, flags='')
Dump the formula to an absolute string in N3
newBlankNode(self, uri=None, why=None)
Create a new unnamed node with this formula as context.
 
The URI is typically omitted, and the system will make up an internal idnetifier.
If given is used as the (arbitrary) internal identifier of the node.
newExistential(self, uri=None, why=None)
Create a named variable existentially qualified within this formula
 
See also: existentials()  and newBlankNode().
newFormula(self, uri=None)
Create a new open, empty, formula in the same store as this one.
 
The URI is typically omitted, and the system will make up an internal idnetifier.
If given is used as the (arbitrary) internal identifier of the formula.
newList(self, list)
newLiteral(self, str, dt=None, lang=None)
Create or reuse the internal representation of the RDF literal whose string is given
 
The literal is created in the same store as the formula.
newSymbol(self, uri)
Create or reuse the internal representation of the RDF node whose uri is given
 
The symbol is created in the same store as the formula.
newUniversal(self, uri=None, why=None)
Create a named variable universally qualified within this formula
 
See also: universals()
newXMLLiteral(self, doc)
Create or reuse the internal representation of the RDF literal whose string is given
 
The literal is created in the same store as the formula.
objects(self, pred=None, subj=None)
Obsolete - use each(subj=..., pred=...)
occurringIn(self, vars)
Which variables in the list occur in this?
predicates(self, subj=None, obj=None)
Obsolete - use each(subj=..., obj=...)
rdfString(self, base=None, flags='')
Dump the formula to an absolute string in RDF/XML
reification(self, sink, bnodeMap={}, why=None)
Describe myself in RDF to the given context
renameVars(self)
size(self)
Return the number statements.
Obsolete: use len(F).
subSet(self, statements, why=None)
subjects(self, pred=None, obj=None)
Obsolete - use each(pred=..., obj=...)
substituteEquals(self, bindings, newBindings)
Return this or a version of me with subsitution made
 
Subsitution of = for = does NOT happen inside a formula,
as the formula is a form of quotation.
substitution(self, bindings, why=None, cannon=False, keepOpen=False)
Return this or a version of me with subsitution made
universals(self)
Return a set of variables universally quantified with this formula as scope.
 
Implementation:
We may move to an internal storage rather than these statements.
variables(self)
Return a set of all variables quantified within this scope.

Static methods inherited from formula.Formula:
resetRenames(reset=True)

Methods inherited from term.AnonymousNode:
unflatten(self, sink, bNodes, why=None)
uriref(self)

Methods inherited from term.Term:
compareAnyTerm(self, other)
Compare two langauge items
This is a cannoncial ordering in that is designed to allow
the same graph always to be printed in the same order.
This makes the regression tests possible.
The literals are deemed smaller than symbols, which are smaller
than formulae.  This puts the rules at the botom of a file where
they tend to take a lot of space anyway.
Formulae have to be compared as a function of their sorted contents.
 
@@ Anonymous nodes have to, within a given Formula, be compared as
a function of the sorted information about them in that context.
This is not done yet
representation(self, base=None)
The string represnting this in N3
unify(self, other, env1=Env({}), env2=Env({}), vars=set([]), universals=set([]), existentials=set([]), n1Source=32, n2Source=32)
value(self)
As a python value - by default, none exists, use self

Data and other attributes inherited from term.Term:
__dict__ = <dictproxy object>
dictionary for instance variables (if defined)
__weakref__ = <attribute '__weakref__' of 'Term' objects>
list of weak references to the object (if defined)

 
class RDFStore(RDFSink.RDFSink)
    Absorbs RDF stream and saves in triple store
 
  Methods defined here:
__init__(self, genPrefix=None, metaURI=None, argv=None, crypto=0)
any(self, q)
Query the store for the first match.
 
Quad contains one None as wildcard. Returns first value
matching in that position.
bind(self, prefix, uri)
checkNewId(self, urirefString)
Raise an exception if the id is not in fact new.
 
This is useful because it is usfeul
to generate IDs with useful diagnostic ways but this lays them
open to possibly clashing in pathalogical cases.
clear(self)
Remove all formulas from the store     @@@ DOESN'T ACTUALLY DO IT/BROKEN
copyFormula(self, old, new, why=None)
dumpBySubject(self, context, sink, sorting=1)
Dump by order of subject except forSome's first for n3=a mode
dumpChronological(self, context, sink)
Fast as possible. Only dumps data. No formulae or universals.
dumpNested(self, context, sink, flags='')
Iterates over all URIs ever seen looking for statements
endDoc(self, rootFormulaPair)
genId(self)
Generate a new identifier
 
This uses the inherited class, but also checks that we haven't for some pathalogical reason
ended up generating the same one as for example in another run of the same system.
intern(self, what, dt=None, lang=None, why=None)
find-or-create a Fragment or a Symbol or Literal or list as appropriate
 
returns URISyntaxError if, for example, the URIref has
two #'s.
 
This is the way they are actually made.
internURI(self, str, why=None)
load(store, uri=None, openFormula=None, asIfFrom=None, contentType=None, remember=1, flags='', referer=None, why=None, topLevel=False)
Get and parse document.  Guesses format if necessary.
 
uri:      if None, load from standard input.
remember: if 1, store as metadata the relationship between this URI and this formula.
 
Returns:  top-level formula of the parsed document.
Raises:   IOError, SyntaxError, DocumentError
 
This was and could be an independent function, as it is fairly independent
of the store. However, it is natural to call it as a method on the store.
And a proliferation of APIs confuses.
loadMany(self, uris, openFormula=None, referer=None)
Get, parse and merge serveral documents, given a list of URIs. 
 
Guesses format if necessary.
Returns top-level formula which is the parse result.
Raises IOError, SyntaxError
makeComment(self, str)
makeStatement(self, tuple, why=None)
Add a quad to the store, each part of the quad being in pair form.
newBlankNode(self, context, uri=None, why=None)
Create or reuse, in the default store, a new unnamed node within the given
formula as context, and return it for future use
newExistential(self, context, uri=None, why=None)
Create or reuse, in the default store, a new named variable
existentially qualified within the given
formula as context, and return it for future use
newFormula(self, uri=None)
newList(self, value, context=None)
newLiteral(self, str, dt=None, lang=None)
Interned version: generate new literal object as stored in this store
newSet(self, iterator=[], context=None)
newSymbol(self, uri)
newUniversal(self, context, uri=None, why=None)
Create or reuse, in the default store, a named variable
universally qualified within the given
formula as context, and return it for future use
newXMLLiteral(self, dom)
purge(self, context, boringClass=None)
Clean up intermediate results
 
Statements in the given context that a term is a Chaff cause
any mentions of that term to be removed from the context.
purgeExceptData(self, context)
Remove anything which can't be expressed in plain RDF
purgeSymbol(self, context, subj)
Purge all triples in which a symbol occurs.
reopen(self, F)
reset(self, metaURI)
startDoc(self)
storeQuad(self, q, why=None)
intern quads, in that dupliates are eliminated.
 
subject, predicate and object are terms - or atomic values to be interned.
Builds the indexes and does stuff for lists.
Deprocated: use Formula.add()
symbol(self, str, why=None)
Intern a URI for a symvol, returning a symbol object

Methods inherited from RDFSink.RDFSink:
countNamespace(self, namesp)
On output, count how many times each namespace is used
namespaceCounts(self)
setDefaultNamespace(self, uri)
Pass on a binding hint for later use in output
 
This really is just a hint. The parser calls this to pass on
the default namespace which it came across, as this is a
useful hint for a human readable prefix for output of the same
namespace. Otherwise, output processors will have to invent or
avoid useing namespaces, which will look ugly.
setGenPrefix(self, genPrefix)

 
class URISyntaxError(exceptions.ValueError)
    A parameter is passed to a routine that requires a URI reference
 
 
Method resolution order:
URISyntaxError
exceptions.ValueError
exceptions.StandardError
exceptions.Exception

Methods inherited from exceptions.Exception:
__getitem__(...)
__init__(...)
__str__(...)

 
Functions
       
arg_hash(arg)
comparePair(self, other)
Used only in outputString
isString(x)
loadToStore(term, types)
load content from the web and keep it in the store's experience.
return resulting literal term
 
raises IOError
 
<DanC> the log:content built-in could keep an HTTP response
       object around a la tabulator too.
<timbl> yes.
<timbl> You learn a lot from a recode.
memoize(f)

 
Data
        ALL4 = (0, 1, 2, 3)
ANONYMOUS = 3
BOOL_DATATYPE = 'http://www.w3.org/2001/XMLSchema#boolean'
CONTEXT = 0
DAML_sameAs_URI = 'http://www.w3.org/2002/07/owl#sameAs'
DECIMAL_DATATYPE = 'http://www.w3.org/2001/XMLSchema#decimal'
Delta_NS = 'http://www.w3.org/2004/delta#'
FLOAT_DATATYPE = 'http://www.w3.org/2001/XMLSchema#double'
FORMULA = 1
INTEGER_DATATYPE = 'http://www.w3.org/2001/XMLSchema#integer'
LITERAL = 2
LITERAL_DT = 21
LITERAL_LANG = 22
LITERAL_URI_prefix = 'data:application/rdf+n3-literal;'
List_NS = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'
Logic_NS = 'http://www.w3.org/2000/10/swap/log#'
META_NS_URI = 'http://www.w3.org/2000/10/swap/meta#'
META_mergedWith = 'http://www.w3.org/2000/10/swap/meta#mergedWith'
META_run = 'http://www.w3.org/2000/10/swap/meta#run'
META_source = 'http://www.w3.org/2000/10/swap/meta#source'
N3_Empty = (0, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#Empty')
N3_List = (0, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#List')
N3_first = (0, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#first')
N3_li = (0, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#li')
N3_nil = (0, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#nil')
N3_rest = (0, 'http://www.w3.org/1999/02/22-rdf-syntax-ns#rest')
OBJ = 3
OWL_NS = 'http://www.w3.org/2002/07/owl#'
PARTS = (1, 2, 3)
PRED = 1
RDF_NS_URI = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'
RDF_type_URI = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type'
STRING_NS_URI = 'http://www.w3.org/2000/10/swap/string#'
SUBJ = 2
SYMBOL = 0
becauseSubexpression = <why.BecauseSubexpression instance>
cvsRevision = '$Revision: 1.183 $'
doMeta = 0
forAllSym = 'http://www.w3.org/2000/10/swap/log#forAll'
forSomeSym = 'http://www.w3.org/2000/10/swap/log#forSome'
generators = _Feature((2, 2, 0, 'alpha', 1), (2, 3, 0, 'final', 0), 4096)
tracking = 0