|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.qtitools.qti.node.AbstractNode
org.qtitools.qti.node.AbstractObject
org.qtitools.qti.node.expression.AbstractExpression
org.qtitools.qti.node.expression.operator.Contains
public class Contains
The contains operator takes two sub-expressions which must both have the same base-type and cardinality — either multiple or ordered. The result is A single boolean with A value of true if the container given by the first sub-expression contains the value given by the second sub-expression and false if it doesn't. Note that the contains operator works differently depending on the cardinality of the two sub-expressions.
For unordered containers the values are compared without regard for ordering, for example, [A,B,C] contains [C,A]. Note that [A,B,C] does not contain [B,B] but that [A,B,B,C] does.
For ordered containers the second sub-expression must be A strict sub-sequence within the first. In other words, [A,B,C] does not contain [C,A] but it does contain [B,C].
If either sub-expression is NULL then the result of the operator is NULL.
Like the member operator, the contains operator should not be used on sub-expressions with A base-type of float and must not be used on sub-expressions with A base-type of duration.
Cardinality,
BaseType,
Serialized Form| Field Summary | |
|---|---|
static java.lang.String |
CLASS_TAG
Name of this class in xml schema. |
| Fields inherited from class org.qtitools.qti.node.expression.AbstractExpression |
|---|
logger |
| Fields inherited from interface org.qtitools.qti.node.expression.Expression |
|---|
DISPLAY_NAME |
| Fields inherited from interface org.qtitools.qti.node.XmlNode |
|---|
INDENT, NEW_LINE, SIMPLE_NAME_INNER_SEPARATOR, SIMPLE_NAMES_SEPARATOR |
| Constructor Summary | |
|---|---|
Contains(ExpressionParent parent)
Constructs expression. |
|
| Method Summary | |
|---|---|
protected Value |
evaluateSelf(int depth)
Evaluates this expression. |
java.lang.String |
getClassTag()
Gets QTI class name of this node. |
BaseType[] |
getRequiredBaseTypes(int index)
Gets list of all acceptable baseTypes which can child expression at given position produce. |
Cardinality[] |
getRequiredCardinalities(int index)
Gets list of all acceptable cardinalities which can child expression at given position produce. |
| Methods inherited from class org.qtitools.qti.node.expression.AbstractExpression |
|---|
evaluate, getBaseType, getCardinality, getChildren, getFirstChild, getParent, getParentRequiredBaseTypes, getParentRequiredCardinalities, getProducedBaseTypes, getProducedCardinalities, getProducedNumericalBaseTypes, getRequiredSameBaseTypes, getRequiredSameCardinalities, getSecondChild, getType, getValue, isAnyChildNull, isNull, isVariable, reset, toString, validate |
| Methods inherited from class org.qtitools.qti.node.AbstractObject |
|---|
getParentItem, getParentResult, getParentTest, setParent |
| Methods inherited from class org.qtitools.qti.node.AbstractNode |
|---|
attrToXmlString, bodyToXmlString, getAttributes, getFullName, getIndent, getNode, getNode, getNode, getNodeGroups, getParentRoot, getSimpleName, getSourceFile, getSourceNode, getSourceString, getSourceUrl, hasChildNodes, load, load, load, load, loadAttributes, readChild, readChildren, setParent, setSourceFile, setSourceNode, setSourceString, setSourceUrl, toXmlString, toXmlString, validateAttributes, validateChildren |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.qtitools.qti.node.XmlObject |
|---|
getParentItem, getParentResult, getParentTest, setParent |
| Methods inherited from interface org.qtitools.qti.node.XmlNode |
|---|
getAttributes, getFullName, getNodeGroups, getParentRoot, getSimpleName, getSourceFile, getSourceNode, getSourceString, getSourceUrl, hasChildNodes, load, load, load, load, setSourceFile, setSourceNode, setSourceString, setSourceUrl, toXmlString, toXmlString |
| Field Detail |
|---|
public static final java.lang.String CLASS_TAG
| Constructor Detail |
|---|
public Contains(ExpressionParent parent)
parent - parent of this expression| Method Detail |
|---|
public java.lang.String getClassTag()
XmlNodeQTI class name has very important role during loading/saving nodes.
For example: Java class name is AssessmentTest; QTI class name is assessmentTest.
getClassTag in interface XmlNodegetClassTag in class AbstractNodepublic Cardinality[] getRequiredCardinalities(int index)
ExpressionParentFor example delete expression returns single cardinality for index 0 and list of multiple and ordered cardinality for index 1.
Result of this method can change in time.
Static example is expression or. Expression or accepts only single cardinality for any index.
Dynamic example is expression match. Expression match accepts any cardinality of its children, but this cardinality must be same for all its children.
getRequiredCardinalities in interface ExpressionParentgetRequiredCardinalities in class AbstractExpressionindex - position of child expression in this parent
public BaseType[] getRequiredBaseTypes(int index)
ExpressionParentResult of this method can change in time.
Static example is expression or. Expression or accepts only boolean baseType for any index.
Dynamic example is expression match. Expression match accepts any baseType of its children. but this baseType must be same for all its children.
getRequiredBaseTypes in interface ExpressionParentgetRequiredBaseTypes in class AbstractExpressionindex - position of child expression in this parent
protected Value evaluateSelf(int depth)
AbstractExpression
evaluateSelf in class AbstractExpressiondepth - depth of this expression in expression tree (root's depth = 0)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||