Java Doc for FBRuleInfGraph.java in  » RSS-RDF » Jena-2.5.5 » com » hp » hpl » jena » reasoner » rulesys » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » RSS RDF » Jena 2.5.5 » com.hp.hpl.jena.reasoner.rulesys 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


com.hp.hpl.jena.reasoner.BaseInfGraph
   com.hp.hpl.jena.reasoner.rulesys.BasicForwardRuleInfGraph
      com.hp.hpl.jena.reasoner.rulesys.FBRuleInfGraph

All known Subclasses:   com.hp.hpl.jena.reasoner.rulesys.RDFSRuleInfGraph,  com.hp.hpl.jena.reasoner.rulesys.impl.oldCode.FBLPRuleInfGraph,
FBRuleInfGraph
public class FBRuleInfGraph extends BasicForwardRuleInfGraph implements BackwardRuleInfGraphI(Code)
An inference graph that uses a mixture of forward and backward chaining rules. The forward rules can create direct deductions from the source data and schema and can also create backward rules. A query is answered by consulting the union of the raw data, the forward derived results and any relevant backward rules (whose answers are tabled for future reference).
author:
   Dave Reynolds
version:
   $Revision: 1.67 $ on $Date: 2008/01/02 12:07:47 $

Inner Class :public static class RuleStore

Field Summary
protected  LPBRuleEnginebEngine
    
protected  BBRuleContextcontext
    
protected  FinderdataFind
    
public  booleanfilterFunctors
    
protected  SethiddenNodes
    
static  Loglogger
    
protected  ListpreprocessorHooks
    
protected  ListrawRules
    
protected  Listrules
    
protected  TempNodeCachetempNodecache
    
protected  TransitiveEnginetransitiveEngine
    
public static  booleanuseRETE
    
protected  booleanuseTGCCaching
    

Constructor Summary
public  FBRuleInfGraph(Reasoner reasoner, Graph schema)
     Constructor.
public  FBRuleInfGraph(Reasoner reasoner, List rules, Graph schema)
     Constructor.
public  FBRuleInfGraph(Reasoner reasoner, List rules, Graph schema, ReificationStyle style)
    
public  FBRuleInfGraph(Reasoner reasoner, List rules, Graph schema, Graph data)
     Constructor.

Method Summary
public  booleanaccept(Object tin)
     Post-filter query results to hide unwanted triples from the glare of publicity.
public  voidaddBRule(Rule brule)
     Adds a new Backward rule as a rusult of a forward rule process.
public  voidaddBRules(List rules)
    
public  voidaddDeduction(Triple t)
     Add a new deduction to the deductions graph.
public  voidaddPreprocessingHook(RulePreprocessHook hook)
     Add a new preprocessing hook defining an operation that should be run when the preparation phase is underway.
public  voidaddRuleDuringPrepare(Rule rule)
     Add a new rule to the rule set.
public  voidclose()
     Free all resources, any further use of this Graph is an error.
public  voiddeleteBRule(Rule brule)
     Deletes a new Backward rule as a rules of a forward rule process.
public  ExtendedIteratorfind(TriplePattern pattern)
     Basic pattern lookup interface.
public  ExtendedIteratorfindDataMatches(Node subject, Node predicate, Node object)
     Search the combination of data and deductions graphs for the given triple pattern.
public  ExtendedIteratorfindDataMatches(TriplePattern pattern)
     Search the combination of data and deductions graphs for the given triple pattern.
public  ExtendedIteratorfindFull(TriplePattern pattern)
     Internal variant of find which omits the filters which block illegal RDF data.
public  ExtendedIteratorfindWithContinuation(TriplePattern pattern, Finder continuation)
     Extended find interface used in situations where the implementator may or may not be able to answer the complete query.
public  ListgetBRules()
     Return an ordered list of all registered backward rules.
public  longgetNRulesFired()
     Return the number of rules fired since this rule engine instance was created and initialized.
public  ListgetRules()
     Return the originally supplied set of rules, may be a mix of forward and backward rules.
public  NodegetTemp(Node instance, Node prop, Node pclass)
     Retrieve or create a bNode representing an inferred property value.
Parameters:
  instance - the base instance node to which the property applies
Parameters:
  prop - the property node whose value is being inferred
Parameters:
  pclass - the (optional, can be null) class for the inferred value.
public  ExtendedIteratorgraphBaseFind(Node subject, Node property, Node object)
     Returns an iterator over Triples.
public  voidhideNode(Node n)
     Called to flag that a node should be hidden from external queries.
protected  voidinstantiateRuleEngine(List rules)
     Instantiate the forward rule engine to use.
public synchronized  voidperformAdd(Triple t)
     Add one triple to the data graph, run any rules triggered by the new data item, recursively adding any generated triples.
public  voidperformDelete(Triple t)
     Removes the triple t (if possible) from the set belonging to this graph.
protected  booleanpreloadDeductions(Graph preloadIn)
     Adds a set of precomputed triples to the deductions store.
public  voidprepare()
     Perform any initial processing and caching.
public  voidprintLPProfile()
     Print a profile of LP rules used since the last reset.
public  booleanprocessBuiltin(ClauseEntry clause, Rule rule, BindingEnvironment env)
    
public  voidrebind()
     Cause the inference graph to reconsult the underlying graph to take into account changes.
public  voidrebindAll()
     Cause the inference graph to reconsult both the underlying graph and the reasoner ruleset, permits the forward rule set to be dynamically changed. Causes the entire rule engine to be rebuilt from the current ruleset and reinitialized against the current data.
public  voidreset()
     Flush out all cached results.
public  voidresetLPProfile(boolean enable)
     Reset the LP engine profile.
public  voidsetDerivationLogging(boolean recordDerivations)
    
public  voidsetFunctorFiltering(boolean param)
     Set to true to cause functor-valued literals to be dropped from rule output.
public  voidsetTabled(Node predicate)
     Set a predicate to be tabled/memoized by the LP engine.
public  voidsetTraceOn(boolean state)
     Set the state of the trace flag.
public  voidsetUseTGCCache()
     Instantiate the optional caches for the subclass/suproperty lattices.
public  ValidityReportvalidate()
     Test the consistency of the bound data.

Field Detail
bEngine
protected LPBRuleEngine bEngine(Code)
The core backward rule engine which includes all the memoized results



context
protected BBRuleContext context(Code)
Single context for the reasoner, used when passing information to builtins



dataFind
protected Finder dataFind(Code)
A finder that searches across the data, schema, axioms and forward deductions



filterFunctors
public boolean filterFunctors(Code)
Flag, if true then find results will be filtered to remove functors and illegal RDF



hiddenNodes
protected Set hiddenNodes(Code)
Table of temp nodes which should be hidden from output listings



logger
static Log logger(Code)



preprocessorHooks
protected List preprocessorHooks(Code)
Optional list of preprocessing hooks to be run in sequence during preparation time



rawRules
protected List rawRules(Code)
The original rule set as supplied



rules
protected List rules(Code)
The rule list after possible extension by preprocessing hooks



tempNodecache
protected TempNodeCache tempNodecache(Code)
Cache of temporary property values inferred through getTemp calls



transitiveEngine
protected TransitiveEngine transitiveEngine(Code)
Optional precomputed cache of the subClass/subproperty lattices



useRETE
public static boolean useRETE(Code)
Static switch from Basic to RETE implementation of the forward component



useTGCCaching
protected boolean useTGCCaching(Code)
Flag, if true then subClass and subProperty lattices will be optimized using TGCs




Constructor Detail
FBRuleInfGraph
public FBRuleInfGraph(Reasoner reasoner, Graph schema)(Code)
Constructor.
Parameters:
  reasoner - the reasoner which created this inf graph instance
Parameters:
  schema - the (optional) schema graph to be included



FBRuleInfGraph
public FBRuleInfGraph(Reasoner reasoner, List rules, Graph schema)(Code)
Constructor.
Parameters:
  reasoner - the reasoner which created this inf graph instance
Parameters:
  rules - the rules to process
Parameters:
  schema - the (optional) schema graph to be included



FBRuleInfGraph
public FBRuleInfGraph(Reasoner reasoner, List rules, Graph schema, ReificationStyle style)(Code)



FBRuleInfGraph
public FBRuleInfGraph(Reasoner reasoner, List rules, Graph schema, Graph data)(Code)
Constructor.
Parameters:
  reasoner - the reasoner which created this inf graph instance
Parameters:
  rules - the rules to process
Parameters:
  schema - the (optional) schema graph to be included
Parameters:
  data - the data graph to be processed




Method Detail
accept
public boolean accept(Object tin)(Code)
Post-filter query results to hide unwanted triples from the glare of publicity. Unwanted triples are triples with Functor literals and triples with hidden nodes as subject or object.



addBRule
public void addBRule(Rule brule)(Code)
Adds a new Backward rule as a rusult of a forward rule process. Only some infgraphs support this.



addBRules
public void addBRules(List rules)(Code)
Adds a set of new Backward rules



addDeduction
public void addDeduction(Triple t)(Code)
Add a new deduction to the deductions graph.



addPreprocessingHook
public void addPreprocessingHook(RulePreprocessHook hook)(Code)
Add a new preprocessing hook defining an operation that should be run when the preparation phase is underway.



addRuleDuringPrepare
public void addRuleDuringPrepare(Rule rule)(Code)
Add a new rule to the rule set. This should only be used by implementations of RuleProprocessHook (which are called during rule system preparation phase). If called at other times the rule won't be correctly transferred into the underlying engines.



close
public void close()(Code)
Free all resources, any further use of this Graph is an error.



deleteBRule
public void deleteBRule(Rule brule)(Code)
Deletes a new Backward rule as a rules of a forward rule process. Only some infgraphs support this.



find
public ExtendedIterator find(TriplePattern pattern)(Code)
Basic pattern lookup interface. This implementation assumes that the underlying findWithContinuation will have also consulted the raw data.
Parameters:
  pattern - a TriplePattern to be matched against the data a ExtendedIterator over all Triples in the data setthat match the pattern



findDataMatches
public ExtendedIterator findDataMatches(Node subject, Node predicate, Node object)(Code)
Search the combination of data and deductions graphs for the given triple pattern. This may different from the normal find operation in the base of hybrid reasoners where we are side-stepping the backward deduction step.



findDataMatches
public ExtendedIterator findDataMatches(TriplePattern pattern)(Code)
Search the combination of data and deductions graphs for the given triple pattern. This may different from the normal find operation in the base of hybrid reasoners where we are side-stepping the backward deduction step.



findFull
public ExtendedIterator findFull(TriplePattern pattern)(Code)
Internal variant of find which omits the filters which block illegal RDF data.
Parameters:
  pattern - a TriplePattern to be matched against the data



findWithContinuation
public ExtendedIterator findWithContinuation(TriplePattern pattern, Finder continuation)(Code)
Extended find interface used in situations where the implementator may or may not be able to answer the complete query. It will attempt to answer the pattern but if its answers are not known to be complete then it will also pass the request on to the nested Finder to append more results.
Parameters:
  pattern - a TriplePattern to be matched against the data
Parameters:
  continuation - either a Finder or a normal Graph whichwill be asked for additional match results if the implementormay not have completely satisfied the query.



getBRules
public List getBRules()(Code)
Return an ordered list of all registered backward rules. Includes those generated by forward productions.



getNRulesFired
public long getNRulesFired()(Code)
Return the number of rules fired since this rule engine instance was created and initialized. The current implementation only counts forward rules and does not track dynamic backward rules needed for specific queries.



getRules
public List getRules()(Code)
Return the originally supplied set of rules, may be a mix of forward and backward rules.



getTemp
public Node getTemp(Node instance, Node prop, Node pclass)(Code)
Retrieve or create a bNode representing an inferred property value.
Parameters:
  instance - the base instance node to which the property applies
Parameters:
  prop - the property node whose value is being inferred
Parameters:
  pclass - the (optional, can be null) class for the inferred value. the bNode representing the property value



graphBaseFind
public ExtendedIterator graphBaseFind(Node subject, Node property, Node object)(Code)
Returns an iterator over Triples. This implementation assumes that the underlying findWithContinuation will have also consulted the raw data.



hideNode
public void hideNode(Node n)(Code)
Called to flag that a node should be hidden from external queries.



instantiateRuleEngine
protected void instantiateRuleEngine(List rules)(Code)
Instantiate the forward rule engine to use. Subclasses can override this to switch to, say, a RETE imlementation.
Parameters:
  rules - the rule set or null if there are not rules bound in yet.



performAdd
public synchronized void performAdd(Triple t)(Code)
Add one triple to the data graph, run any rules triggered by the new data item, recursively adding any generated triples.



performDelete
public void performDelete(Triple t)(Code)
Removes the triple t (if possible) from the set belonging to this graph.



preloadDeductions
protected boolean preloadDeductions(Graph preloadIn)(Code)
Adds a set of precomputed triples to the deductions store. These do not, themselves, fire any rules but provide additional axioms that might enable future rule firing when real data is added. Used to implement bindSchema processing in the parent Reasoner. true if the preload was able to load rules as well



prepare
public void prepare()(Code)
Perform any initial processing and caching. This call is optional. Most engines either have negligable set up work or will perform an implicit "prepare" if necessary. The call is provided for those occasions where substantial preparation work is possible (e.g. running a forward chaining rule system) and where an application might wish greater control over when this prepration is done.



printLPProfile
public void printLPProfile()(Code)
Print a profile of LP rules used since the last reset.



processBuiltin
public boolean processBuiltin(ClauseEntry clause, Rule rule, BindingEnvironment env)(Code)
Process a call to a builtin predicate
Parameters:
  clause - the Functor representing the call
Parameters:
  env - the BindingEnvironment for this call
Parameters:
  rule - the rule which is invoking this call true if the predicate succeeds



rebind
public void rebind()(Code)
Cause the inference graph to reconsult the underlying graph to take into account changes. Normally changes are made through the InfGraph's add and remove calls are will be handled appropriately. However, in some cases changes are made "behind the InfGraph's back" and this forces a full reconsult of the changed data.



rebindAll
public void rebindAll()(Code)
Cause the inference graph to reconsult both the underlying graph and the reasoner ruleset, permits the forward rule set to be dynamically changed. Causes the entire rule engine to be rebuilt from the current ruleset and reinitialized against the current data. Not needed for normal cases.



reset
public void reset()(Code)
Flush out all cached results. Future queries have to start from scratch.



resetLPProfile
public void resetLPProfile(boolean enable)(Code)
Reset the LP engine profile.
Parameters:
  enable - it true then profiling will continue with a new empty profile table,if false profiling will stop all current data lost.



setDerivationLogging
public void setDerivationLogging(boolean recordDerivations)(Code)
Set to true to enable derivation caching



setFunctorFiltering
public void setFunctorFiltering(boolean param)(Code)
Set to true to cause functor-valued literals to be dropped from rule output. Default is true.



setTabled
public void setTabled(Node predicate)(Code)
Set a predicate to be tabled/memoized by the LP engine.



setTraceOn
public void setTraceOn(boolean state)(Code)
Set the state of the trace flag. If set to true then rule firings are logged out to the Log at "INFO" level.



setUseTGCCache
public void setUseTGCCache()(Code)
Instantiate the optional caches for the subclass/suproperty lattices. Unless this call is made the TGC caching will not be used.



validate
public ValidityReport validate()(Code)
Test the consistency of the bound data. This normally tests the validity of the bound instance data against the bound schema data. a ValidityReport structure



Fields inherited from com.hp.hpl.jena.reasoner.rulesys.BasicForwardRuleInfGraph
protected OneToManyMap derivations(Code)(Java Doc)
protected FRuleEngineI engine(Code)(Java Doc)
protected FGraph fdeductions(Code)(Java Doc)
protected static Log logger(Code)(Java Doc)
protected List rules(Code)(Java Doc)
protected Graph schemaGraph(Code)(Java Doc)
protected boolean traceOn(Code)(Java Doc)

Methods inherited from com.hp.hpl.jena.reasoner.rulesys.BasicForwardRuleInfGraph
public void addBRule(Rule brule)(Code)(Java Doc)
public void addDeduction(Triple t)(Code)(Java Doc)
public void close()(Code)(Java Doc)
public Reifier constructReifier()(Code)(Java Doc)
protected Graph createDeductionsGraph()(Code)(Java Doc)
public void deleteBRule(Rule brule)(Code)(Java Doc)
public ExtendedIterator find(TriplePattern pattern)(Code)(Java Doc)
public ExtendedIterator findDataMatches(Node subject, Node predicate, Node object)(Code)(Java Doc)
public ExtendedIterator findWithContinuation(TriplePattern pattern, Finder continuation)(Code)(Java Doc)
public Graph getCurrentDeductionsGraph()(Code)(Java Doc)
public Graph getDeductionsGraph()(Code)(Java Doc)
public Iterator getDerivation(Triple t)(Code)(Java Doc)
public long getNRulesFired()(Code)(Java Doc)
public Graph getSchemaGraph()(Code)(Java Doc)
public ExtendedIterator graphBaseFind(Node subject, Node property, Node object)(Code)(Java Doc)
public int graphBaseSize()(Code)(Java Doc)
protected void instantiateRuleEngine(List rules)(Code)(Java Doc)
public void logDerivation(Triple t, Object derivation)(Code)(Java Doc)
public synchronized void performAdd(Triple t)(Code)(Java Doc)
public void performDelete(Triple t)(Code)(Java Doc)
protected boolean preloadDeductions(Graph preloadIn)(Code)(Java Doc)
public synchronized void prepare()(Code)(Java Doc)
public void rebind(Graph data)(Code)(Java Doc)
public void rebind()(Code)(Java Doc)
public void setDerivationLogging(boolean recordDerivations)(Code)(Java Doc)
public void setRuleStore(Object ruleStore)(Code)(Java Doc)
public void setTraceOn(boolean state)(Code)(Java Doc)
public boolean shouldLogDerivations()(Code)(Java Doc)
public boolean shouldTrace()(Code)(Java Doc)
public void silentAdd(Triple t)(Code)(Java Doc)

Fields inherited from com.hp.hpl.jena.reasoner.BaseInfGraph
protected FGraph fdata(Code)(Java Doc)
protected boolean isPrepared(Code)(Java Doc)
protected Reasoner reasoner(Code)(Java Doc)
protected boolean recordDerivations(Code)(Java Doc)
protected volatile int version(Code)(Java Doc)

Methods inherited from com.hp.hpl.jena.reasoner.BaseInfGraph
public InfGraph cloneWithPremises(Graph premises)(Code)(Java Doc)
public void close()(Code)(Java Doc)
public Reifier constructReifier()(Code)(Java Doc)
protected void discardState()(Code)(Java Doc)
public ExtendedIterator find(Node subject, Node property, Node object, Graph param)(Code)(Java Doc)
public ExtendedIterator find(TriplePattern pattern)(Code)(Java Doc)
abstract public ExtendedIterator findWithContinuation(TriplePattern pattern, Finder continuation)(Code)(Java Doc)
public BulkUpdateHandler getBulkUpdateHandler()(Code)(Java Doc)
public Capabilities getCapabilities()(Code)(Java Doc)
public Graph getDeductionsGraph()(Code)(Java Doc)
public Iterator getDerivation(Triple triple)(Code)(Java Doc)
public Node getGlobalProperty(Node property)(Code)(Java Doc)
public PrefixMapping getPrefixMapping()(Code)(Java Doc)
public Graph getRawGraph()(Code)(Java Doc)
public Reasoner getReasoner()(Code)(Java Doc)
abstract public Graph getSchemaGraph()(Code)(Java Doc)
public TransactionHandler getTransactionHandler()(Code)(Java Doc)
public int getVersion()(Code)(Java Doc)
public ExtendedIterator graphBaseFind(TripleMatch m)(Code)(Java Doc)
public ExtendedIterator graphBaseFind(Node subject, Node property, Node object)(Code)(Java Doc)
public int graphBaseSize()(Code)(Java Doc)
public boolean isEmpty()(Code)(Java Doc)
public boolean isPrepared()(Code)(Java Doc)
public synchronized void performAdd(Triple t)(Code)(Java Doc)
public void performDelete(Triple t)(Code)(Java Doc)
public void prepare()(Code)(Java Doc)
public void rebind(Graph data)(Code)(Java Doc)
public void rebind()(Code)(Java Doc)
public void reset()(Code)(Java Doc)
public void setDerivationLogging(boolean logOn)(Code)(Java Doc)
public boolean testGlobalProperty(Node property)(Code)(Java Doc)
public ValidityReport validate()(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.