Clover Coverage Report
Coverage timestamp: Fri May 24 2013 13:47:27 UTC
0   110   0   -
0   17   -   0
0     -  
1    
 
  NodeBo       Line # 28 0 0 - -1.0
 
No Tests
 
1    /* This file is part of the project "Hilbert II" - http://www.qedeq.org
2    *
3    * Copyright 2000-2013, Michael Meyling <mime@qedeq.org>.
4    *
5    * "Hilbert II" is free software; you can redistribute
6    * it and/or modify it under the terms of the GNU General Public
7    * License as published by the Free Software Foundation; either
8    * version 2 of the License, or (at your option) any later version.
9    *
10    * This program is distributed in the hope that it will be useful,
11    * but WITHOUT ANY WARRANTY; without even the implied warranty of
12    * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13    * GNU General Public License for more details.
14    */
15   
16    package org.qedeq.kernel.bo.common;
17   
18    import org.qedeq.kernel.se.base.list.Element;
19    import org.qedeq.kernel.se.common.ModuleContext;
20    import org.qedeq.kernel.se.dto.module.NodeVo;
21    import org.qedeq.kernel.se.visitor.QedeqNumbers;
22   
23    /**
24    * Represents a node and its properties.
25    *
26    * @author Michael Meyling
27    */
 
28    public interface NodeBo {
29   
30    /**
31    * Get parent the node is in.
32    *
33    * @return Parent module for this node.
34    */
35    public QedeqBo getParentQedeqBo();
36   
37    /**
38    * Get numbers of node.
39    *
40    * @return Node numbers.
41    */
42    public QedeqNumbers getNumbers();
43   
44    /**
45    * Get module context the node is within.
46    *
47    * @return The module context the node is within.
48    */
49    public ModuleContext getModuleContext();
50   
51    /**
52    * Was this node checked successfully for formal correctness? This means checking the formal
53    * syntax of the node formulas. This includes all formulas. LaTeX correctness doesn't play any
54    * role. Nodes without formal formulas return always <code>true</code>.
55    *
56    * @return <code>true</code> if the check was successful.
57    */
58    public boolean isWellFormed();
59   
60    /**
61    * Was this node checked unsuccessfully for formal correctness? This means checking the formal
62    * syntax of the node formulas. This includes all formulas. LaTeX correctness doesn't play any
63    * role. Nodes without formal formulas return always <code>false</code>.
64    *
65    * @return <code>true</code> if the check was not successful.
66    */
67    public boolean isNotWellFormed();
68   
69    /**
70    * This means that at least one formal proof was successfully checked for correctness and a
71    * rule declaration was possible.
72    * If we have no proposition and no rule we always get <code>true</code>.
73    *
74    * @return <code>true</code> if the check was successful.
75    */
76    public boolean isProved();
77   
78    /**
79    * This means for propositions that at least not even one formal proof could be successfully
80    * checked for correctness. For rules we get the question answered if a declaration is ok.
81    * If we have no proposition and no rule we always get <code>false</code>.
82    *
83    * @return <code>true</code> if the check was not successful.
84    */
85    public boolean isNotProved();
86   
87    /**
88    * Has this node a formula?
89    *
90    * @return Formula.
91    */
92    public boolean hasFormula();
93   
94    /**
95    * Get formula of node. Can only be not <code>null</code> if this node is an Axiom,
96    * PredicateDefinition, FunctionDefinition or Proposition.
97    *
98    * @return Node formula.
99    */
100    public Element getFormula();
101   
102    /**
103    * Get node.
104    *
105    * @return Node.
106    */
107    public NodeVo getNodeVo();
108   
109    }
110