jsdai.lang
Class Value

java.lang.Object
  extended byjsdai.lang.Value

public class Value
extends java.lang.Object

This class represents instances of any data type defined in EXPRESS language and their values. The data types may be simple, such as integer, double, string and so on, entities, aggregates including nested, and defined data types. These instances are used not only as values of entity attributes but also may implement other items of the Express code, for example, expressions and identifiers. Moreover, objects of this class are used to represent parameters and return type for functions and procedures written in EXPRESS. For all EXPRESS operators, built-in functions and built-in procedures the corresponding methods are included in this class. Within the class, the following two data types are defined:

The actual data type shall coincide with the declared data type or be in a specialization relation with it (as specified in ISO 10303-11::9.2.6 Specialization). Additionally, the type of the value represented by the class is characterized by the type indicator, which is an integer constant. This indicator can be accessed using getActualJavaType method. The specific constants indicating the supported data types are as follows: The term "compatible" used above follows the EXPRESS specialization definition (clause 9.2.6) with some analogous extensions.

The JSDAI-ExpressCompiler is using objects of Value to implement expressions, defined in EXPRESS functions, procedures, where-rules and derived attributes. Within EXPRESS expressions methods of this class implementing operators are used.


Field Summary
static int INDETERMINATE
          Represents indeterminate (denoted as ?) in Express language.
 int tag
          The type of a value wrapped in an object of this class.
 
Constructor Summary
Value(java.lang.Class provided_class)
          Creates an object of this class and attaches simple entity data type to it.
Value(jsdai.dictionary.EEntity_definition edef)
          Creates an object of this class and attaches simple entity data type to it.
Value(EntityValue eval)
           
 
Method Summary
 Value abs(Value val)
          Implements built-in function "Abs" of Express language.
 Value aCos(Value val)
          Implements built-in function "ACos" of Express language.
 Value addComplex(Value val)
          Adds a partial complex entity value to already existing complex entity instance represented by the current object of this class.
 void addMember(SdaiContext context, Value val)
          Adds a new member to the aggregate represented by an object of this class.
 Value addOrUnionOrConcatenate(SdaiContext context, Value val1, Value val2)
          Implements addition, union, string concatenation and binary concatenation operators of Express language.
 Value addParameter(Value val)
          Adjoins value of an attribute to a partial complex entity value being formed (and represented by the current object of this class).
static Value alloc()
          Produces an object of this class.
static Value alloc(jsdai.dictionary.EData_type type)
          Produces an object of this class prepared to wrap values of the specified data type.
static Value alloc(Value v)
          Produces an object of this class prepared to wrap values of the specified data type (or its specializations).
 Value AND(SdaiContext context, Value val1, Value val2)
          Implements AND operator of Express language.
 Value aSin(Value val)
          Implements built-in function "ASin" of Express language.
 Value aTan(Value val1, Value val2)
          Implements built-in function "ATan" of Express language.
 Value bagToSet(SdaiContext context, Value bag)
          Implements conversion of an aggregate of Express BAG OF GENERIC type to an aggregate of Express SET OF GENERIC type.
 Value bLength(Value val)
          Implements built-in function "BLength" of Express language.
 Value check_selection(SdaiContext context, jsdai.dictionary.EData_type type)
          Verifies if the value wrapped in the object of this class is of type (or of its specialization) specified by the method's second parameter.
 Value check(SdaiContext context, jsdai.dictionary.EData_type type)
          Verifies if the value wrapped in the object of this class is of type (or of its specialization) specified by the method's second parameter.
 void checkRedefine(CEntity inst, jsdai.dictionary.EAttribute attr)
          Prints a warning message to the log file in the case where a submitted attribute of an entity instance is redefined, yet it has a value assigned, which is meaningless.
 Value cos(Value val)
          Implements built-in function "Cos" of Express language.
 Value create()
          Initializes the current object of this class to represent an empty aggregate.
 Value dec()
          Decreases the value of integer type wrapped by an object of this class by 1.
 Value dec(Value delta)
          Decreases the value of integer type wrapped by an object of this class by a specified integer.
 Value DIV(SdaiContext context, Value numerator, Value denominator)
          Implements integer division operator of Express language.
 Value divide(SdaiContext context, Value numerator, Value denominator)
          Implements real division operator of Express language.
 Value equal(SdaiContext context, Value val1, Value val2)
          Implements "equal" - a value comparison operator of Express language.
static int equalInt(SdaiContext context, Value val1, Value val2)
          Implements "equal" - a value comparison operator of Express language.
 Value exists(Value val)
          Implements built-in function "Exists" of Express language.
 Value exp(Value val)
          Implements built-in function "Exp" of Express language.
 Value exponent(SdaiContext context, Value base, Value power)
          Implements exponentiation operator of Express language.
 Value extent(SdaiContext context, Value data_type)
          Implements built-in function "Extent" of Express-X language.
 Value format(Value number, Value form_str)
          Implements built-in function "Format" of Express language.
 Value gequal(SdaiContext context, Value val1, Value val2)
          It is a shortcut to gequalOrSuperset method.
static int gequalInt(SdaiContext context, Value val1, Value val2)
          Implements "greater than or equal" - a value comparison operator of Express language.
 Value gequalOrSuperset(SdaiContext context, Value val1, Value val2)
          Implements "greater than or equal" - a value comparison operator and also superset operator of Express language.
 int getActualJavaType()
          Returns an indicator specifying actual data type attached to this object of Value.
 jsdai.dictionary.EData_type getActualType()
          Returns actual data type attached to this object of Value.
 boolean getAsBoolean()
          Converts logical value represented by an integer to boolean according to the following rule: if TRUE (integer value 2), then true, if FALSE or UNKNOWN (integer values 1 and 3, respectively), then false is returned.
 Value getAttribute(jsdai.dictionary.EAttribute attr)
          Returns an object of this class wrapping the value of the specified attribute.
 Value getAttribute(jsdai.dictionary.EAttribute attr, SdaiContext context)
          Returns an object of this class wrapping the value of the specified attribute.
 Value getAttribute(java.lang.String attrName, SdaiContext context)
          Returns an object of this class wrapping the value of the attribute specified by its name.
 Value getByIndex(int index)
          Returns the value (of type Value) of the member at the specified index position in an aggregate wrapped in an object of this class.
 Binary getBinary()
          Returns a binary value wrapped in an object of this class.
 A_binary getBinaryAggregate()
          Returns an aggregate of binary values wrapped in an object of this class.
 A_binary getBinaryAggregate(EEntity owner)
          Returns an aggregate of binary values that is wrapped in an object of this class.
 int getBoolean()
          Returns an integer representing the boolean value wrapped in an object of this class.
 Aa_boolean getBoolean2Aggregate()
          Returns a double-nesting aggregate of boolean values wrapped in an object of this class.
 Aa_boolean getBoolean2Aggregate(EEntity owner)
          Returns a double-nesting aggregate of boolean values that is wrapped in an object of this class.
 A_boolean getBooleanAggregate()
          Returns an aggregate of boolean values wrapped in an object of this class.
 A_boolean getBooleanAggregate(EEntity owner)
          Returns an aggregate of boolean values that is wrapped in an object of this class.
 jsdai.dictionary.EData_type getDeclaredType()
          Returns declared data type attached to this object of Value.
 double getDouble()
          Returns a real value wrapped in an object of this class.
 Aa_double getDouble2Aggregate()
          Returns a double-nesting aggregate of real values wrapped in an object of this class.
 Aa_double getDouble2Aggregate(EEntity owner)
          Returns a double-nesting aggregate of real values that is wrapped in an object of this class.
 Aaa_double getDouble3Aggregate()
          Returns a triple-nesting aggregate of real values wrapped in an object of this class.
 Aaa_double getDouble3Aggregate(EEntity owner)
          Returns a triple-nesting aggregate of real values that is wrapped in an object of this class.
 A_double getDoubleAggregate()
          Returns an aggregate of real values wrapped in an object of this class.
 A_double getDoubleAggregate(EEntity owner)
          Returns an aggregate of real values that is wrapped in an object of this class.
 int getEnumeration()
          Returns an integer representing enumeration value wrapped in an object of this class.
 Aa_enumeration getEnumeration2Aggregate()
          Returns a double-nesting aggregate of enumeration values wrapped in an object of this class.
 Aa_enumeration getEnumeration2Aggregate(EEntity owner)
          Returns a double-nesting aggregate of enumeration values that is wrapped in an object of this class.
 A_enumeration getEnumerationAggregate()
          Returns an aggregate of enumeration values wrapped in an object of this class.
 A_enumeration getEnumerationAggregate(EEntity owner)
          Returns an aggregate of enumeration values that is wrapped in an object of this class.
 EEntity getInstance()
          Returns an entity instance wrapped in an object of this class.
 Aggregate getInstanceAggregate()
          Returns an aggregate of entity instances wrapped in an object of this class.
 Aggregate getInstanceAggregate(EEntity owner)
          Returns an aggregate of entity instances that is wrapped in an object of this class.
 int getInteger()
          Returns an integer value wrapped in an object of this class.
 Aa_integer getInteger2Aggregate()
          Returns a double-nesting aggregate of integer values wrapped in an object of this class.
 Aa_integer getInteger2Aggregate(EEntity owner)
          Returns a double-nesting aggregate of integer values that is wrapped in an object of this class.
 A_integer getIntegerAggregate()
          Returns an aggregate of integer values wrapped in an object of this class.
 A_integer getIntegerAggregate(EEntity owner)
          Returns an aggregate of integer values that is wrapped in an object of this class.
 int getLogical()
          Returns an integer representing the logical value wrapped in an object of this class.
 Aa_integer getLogical2Aggregate()
          Returns a double-nesting aggregate of logical values wrapped in an object of this class.
 Aa_integer getLogical2Aggregate(EEntity owner)
          Returns a double-nesting aggregate of logical values that is wrapped in an object of this class.
 A_enumeration getLogicalAggregate()
          Returns an aggregate of logical values wrapped in an object of this class.
 A_enumeration getLogicalAggregate(EEntity owner)
          Returns an aggregate of logical values that is wrapped in an object of this class.
 int getMemberCount()
          Returns the number of elements in an aggregate wrapped in an object of this class.
 Aggregate getMixedAggregate()
          Returns an aggregate of values of select data type wrapped in an object of this class.
 Aggregate getMixedAggregate(EEntity owner)
          Returns an aggregate of values of select data type that is wrapped in an object of this class.
 java.lang.String getString()
          Returns a string value wrapped in an object of this class.
 Aa_string getString2Aggregate()
          Returns a double-nesting aggregate of string values wrapped in an object of this class.
 Aa_string getString2Aggregate(EEntity owner)
          Returns a double-nesting aggregate of string values that is wrapped in an object of this class.
 A_string getStringAggregate()
          Returns an aggregate of string values wrapped in an object of this class.
 A_string getStringAggregate(EEntity owner)
          Returns an aggregate of string values that is wrapped in an object of this class.
 Value greater(SdaiContext context, Value val1, Value val2)
          Implements "greater than" - a value comparison operator of Express language.
static int greaterInt(SdaiContext context, Value val1, Value val2)
          Implements "greater than" - a value comparison operator of Express language.
 Value groupReference(SdaiContext context, java.lang.Class provided_class)
          Returns a partial complex entity value within a complex entity instance represented by the current object of this class.
 Value groupReference(SdaiContext context, jsdai.dictionary.EEntity_definition edef)
          Returns a partial complex entity value within a complex entity instance represented by the current object of this class.
 Value hiBound(Value val)
          Implements built-in function "HiBound" of Express language.
 Value hiIndex(Value val)
          Implements built-in function "HiIndex" of Express language.
 Value IN(SdaiContext context, Value val1, Value val2)
          Implements membership operator IN of Express language.
 Value inc()
          Increments the value of integer type wrapped by an object of this class by 1.
 Value inc(Value delta)
          Increments the value of integer type wrapped by an object of this class by a specified integer.
 Value indexing(int index1, int index2)
          Implements Aggregate indexing, String indexing and Binary indexing operators of Express language.
 Value indexing(Value index1, Value index2)
          Implements Aggregate indexing, String indexing and Binary indexing operators of Express language.
static int INInt(SdaiContext context, Value val1, Value val2)
          Implements membership operator IN of Express language.
 Value init(jsdai.dictionary.EData_type type)
          Initializes the current object of this class to wrap values of the specified data type.
 Value initAggregate(jsdai.dictionary.EAggregation_type type, EEntity owner)
          Initializes the current object of this class to wrap aggregates of the specified aggregation type.
 Value initAggregateMember(int index, jsdai.dictionary.EAggregation_type type)
          Initializes an object of this class for the member of the aggregate represented by the current object of Value to wrap values of the specified aggregation type.
 void insert(SdaiContext context, Value val, Value index)
          Implements built-in procedure "Insert" of Express language.
 void insert(SdaiContext context, Value list, Value new_member, Value index)
          Implements built-in procedure "Insert" of Express language.
 Value instanceEqual(SdaiContext context, Value val1, Value val2)
          Implements "instance equal" - an instance comparison operator of Express language.
static int instanceEqualInt(SdaiContext context, Value val1, Value val2)
          Implements "instance equal" - an instance comparison operator of Express language.
 Value instanceNotEqual(SdaiContext context, Value val1, Value val2)
          Implements "instance not equal" - an instance comparison operator of Express language.
static int instanceNotEqualInt(SdaiContext context, Value val1, Value val2)
          Implements "instance not equal" - an instance comparison operator of Express language.
 boolean isIndeterminate()
          Returns true if and only if the current object of Value class wraps Express indeterminate value ("?").
 Value length(Value val)
          Implements built-in function "Length" of Express language.
 Value lequal(SdaiContext context, Value val1, Value val2)
          It is a shortcut to lequalOrSubset method.
static int lequalInt(SdaiContext context, Value val1, Value val2)
          Implements "less than or equal" - a value comparison operator of Express language.
 Value lequalOrSubset(SdaiContext context, Value val1, Value val2)
          Implements "less than or equal" - a value comparison operator and also subset operator of Express language.
 Value less(SdaiContext context, Value val1, Value val2)
          Implements "less than" - a value comparison operator of Express language.
static int lessInt(SdaiContext context, Value val1, Value val2)
          Implements "less than" - a value comparison operator of Express language.
 Value LIKE(SdaiContext context, Value val1, Value val2)
          Implements LIKE operator of Express language.
 Value loBound(Value val)
          Implements built-in function "LoBound" of Express language.
 Value log(Value val)
          Implements built-in function "Log" of Express language.
 Value log10(Value val)
          Implements built-in function "Log10" of Express language.
 Value log2(Value val)
          Implements built-in function "Log2" of Express language.
 Value loIndex(Value val)
          Implements built-in function "LoIndex" of Express language.
 Value makeInstance(SdaiContext context)
          Creates an instance of the entity described by the current object of this class.
 Value MOD(SdaiContext context, Value val1, Value val2)
          Implements modulo operator of Express language.
 Value mulOrIntersect(SdaiContext context, Value val1, Value val2)
          Implements multiplication and aggregate intersection operators of Express language.
 Value negation(Value val)
          Implements arithmetic negation (-) operator of Express language.
 Value nequal(SdaiContext context, Value val1, Value val2)
          Implements "not equal" - a value comparison operator of Express language.
static int nequalInt(SdaiContext context, Value val1, Value val2)
          Implements "not equal" - a value comparison operator of Express language.
 Value NOT(Value val)
          Implements NOT operator of Express language.
 Value NVL(SdaiContext context, Value val, Value substitute)
          Implements built-in function "NVL" of Express language.
 Value odd(Value val)
          Implements built-in function "Odd" of Express language.
 Value OR(SdaiContext context, Value val1, Value val2)
          Implements OR operator of Express language.
 void remove(Value index)
          Implements built-in procedure "Remove" of Express language.
 void remove(Value list, Value index)
          Implements built-in procedure "Remove" of Express language.
 Value replaceByAlreadyExistingAndDelete(SdaiContext _context, java.lang.Class entity_extent, SdaiModel entity_model)
          Checks if the specified entity instance is value-equal to another entity instance in the specified SdaiModel.
 Value replaceRange(int index1, int index2, Value repl)
          Implements assignment statement when the object being assigned to is range qualified.
 Value replaceRange(Value index1, Value index2, Value repl)
          Implements assignment statement when the object being assigned to is range qualified.
 Value rolesOf(Value val)
          Implements built-in function "RolesOf" of Express language.
 Value set(SdaiContext context, Aggregate aggr)
          Wraps an aggregate (also nested) in an object of this class.
 Value set(SdaiContext context, Binary val)
          Wraps a value of binary type in an object of this class.
 Value set(SdaiContext context, double val)
          Wraps a value of real type in an object of this class.
 Value set(SdaiContext context, EEntity val)
          Wraps an entity instance in an object of this class.
 Value set(SdaiContext context, int val)
          Wraps a value of integer type in an object of this class.
 Value set(SdaiContext context, java.lang.Object val)
          Writes the value submitted as a method's second parameter to the current object of this class provided the value to be written conforms to the data type declared, using, for example, alloc(EData_type) method, in the current object.
 Value set(SdaiContext context, java.lang.String val)
          Wraps a value of string type in an object of this class.
 Value set(SdaiContext context, java.lang.String val, java.lang.String schema_name)
          Wraps a value of string type in an object of this class.
 Value set(SdaiContext context, Value val)
          Writes the value wrapped in the object of Value submitted as a method's second parameter to the current object of this class provided the value to be written conforms to the data type declared, using, for example, alloc(EData_type) method, in the current object.
 Value set(Value val)
          Writes the value wrapped in the object of Value submitted as a method's parameter to the current object of this class without checking whether the value to be written conforms to the data type declared for the current Value object.
 Value setAttribute(jsdai.dictionary.EExplicit_attribute attr, Value val)
          Assigns the submitted value to the specified attribute of the entity instance wrapped in this object of type Value.
 Value setEnum(SdaiContext context, java.lang.String val)
          Wraps a value of enumeration type in an object of this class.
 Value setInstancesAggregate(SdaiContext context, AEntity aggr)
          Wraps an aggregate of entity instances in an object of this class.
 Value setLB(SdaiContext context, int val)
          Wraps a value of either logical or boolean type in an object of this class.
 Value setLB(SdaiContext context, Value val)
          Wraps a value of either logical or boolean type in an object of this class.
 void setMember(SdaiContext context, Value val, int index)
          Assigns a new value to a member of the aggregate represented by an object of this class located at the specified index position.
 Value sin(Value val)
          Implements built-in function "Sin" of Express language.
 Value sizeOf(Value val)
          Implements built-in function "SizeOf" of Express language.
 Value sizeOfExt(SdaiContext context, Value val)
          Implements built-in function "SizeOf" of Express language.
 Value sizeOfExt0(SdaiContext context, Value val)
          Implements built-in function "SizeOf" of Express language.
 Value sqrt(Value val)
          Implements built-in function "Sqrt" of Express language.
 Value subbinary(Value val, int index1, int index2)
          Implements binary indexing operator of Express language.
 Value substractOrDifference(SdaiContext context, Value val1, Value val2)
          Implements subtraction and aggregate difference operators of Express language.
 Value substring(Value val, int index)
          Implements string indexing operator of Express language.
 Value substring(Value val, int index1, int index2)
          Implements string indexing operator of Express language.
 Value tan(Value val)
          Implements built-in function "Tan" of Express language.
 A_string typeOf(SdaiContext context)
          Implements built-in function "TypeOf" of Express language.
 Value typeOfV(SdaiContext context)
          Implements built-in function "TypeOf" of Express language.
 java.lang.String toString()
          Returns a description of this value as a String.
 Value unionEnlarge(Value val, SdaiContext context)
          Implements Express language operation A:=A+e, where A is an aggregate, e is an element, and plus stands for the aggregate union operator.
 Value unnest()
          Performs a conversion of the nested aggregate to a one-dimensional aggregate of entity instances.
 Value unset()
          Makes an object of this class representing no value, that is, attaches INDETERMINATE to it.
 Value usedIn(Value instance, Value role)
          Implements built-in function "UsedIn" of Express language.
 Value value_in(SdaiContext context, Value aggr, Value el)
          Implements built-in function "Value_in" of Express language.
 Value value_unique(SdaiContext context, Value aggr)
          Implements built-in function "Value_unique" of Express language.
 Value value(Value val)
          Implements built-in function "Value" of Express language.
 Value XOR(SdaiContext context, Value val1, Value val2)
          Implements XOR operator of Express language.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

tag

public int tag
The type of a value wrapped in an object of this class.


INDETERMINATE

public static final int INDETERMINATE
Represents indeterminate (denoted as ?) in Express language.

See Also:
Constant Field Values
Constructor Detail

Value

public Value(jsdai.dictionary.EEntity_definition edef)
Creates an object of this class and attaches simple entity data type to it. The latter is submitted through the parameter of the constructor. This constructor is related to an implementation of complex entity instance construction operator of Express language.

Parameters:
edef - simple entity data type for which an object of type Value is asked.
See Also:
"ISO 10303-11::12.10 Complex entity instance construction operator"

Value

public Value(java.lang.Class provided_class)
      throws SdaiException
Creates an object of this class and attaches simple entity data type to it. The latter is submitted through the parameter of the constructor. This constructor is related to an implementation of complex entity instance construction operator of Express language.

Parameters:
provided_class - Java class for the simple entity data type for which an object of type Value is asked.
See Also:
"ISO 10303-11::12.10 Complex entity instance construction operator"

Value

public Value(EntityValue eval)
Method Detail

getDeclaredType

public jsdai.dictionary.EData_type getDeclaredType()
Returns declared data type attached to this object of Value.

Returns:
declared data type.
See Also:
getActualType(), getActualJavaType()

getActualType

public jsdai.dictionary.EData_type getActualType()
Returns actual data type attached to this object of Value. The value (provided not INDETERMINATE) of this type is wrapped in the object. If value is INDETERMINATE, then null is returned.

Returns:
actual data type.
See Also:
getDeclaredType(), getActualJavaType()

getActualJavaType

public int getActualJavaType()
Returns an indicator specifying actual data type attached to this object of Value. The specific constants indicating the supported data types are as follows:

Returns:
an integer constant specifying actual data type.
See Also:
getDeclaredType(), getActualType()

getInteger

public int getInteger()
               throws SdaiException
Returns an integer value wrapped in an object of this class. To represent unset case, Integer.MIN_VALUE is used.

Returns:
integer value described by this class.
Throws:
SdaiException

getDouble

public double getDouble()
                 throws SdaiException
Returns a real value wrapped in an object of this class. To represent unset case, Double.NaN is used.

Returns:
real value described by this class.
Throws:
SdaiException

getString

public java.lang.String getString()
                           throws SdaiException
Returns a string value wrapped in an object of this class. In the case of unset, null is returned.

Returns:
string value described by this class.
Throws:
SdaiException

getLogical

public int getLogical()
               throws SdaiException
Returns an integer representing the logical value wrapped in an object of this class. The following integers are possible:

Returns:
a constant representing the logical value described by this class.
Throws:
SdaiException

getBoolean

public int getBoolean()
               throws SdaiException
Returns an integer representing the boolean value wrapped in an object of this class. The following integers are possible:

Returns:
a constant representing the boolean value described by this class.
Throws:
SdaiException

getEnumeration

public int getEnumeration()
                   throws SdaiException
Returns an integer representing enumeration value wrapped in an object of this class. In the case of unset, 0 is returned.

Returns:
a constant representing enumeration value described by this class.
Throws:
SdaiException

getBinary

public Binary getBinary()
                 throws SdaiException
Returns a binary value wrapped in an object of this class. In the case of unset, null is returned.

Returns:
binary value described by this class.
Throws:
SdaiException

checkRedefine

public void checkRedefine(CEntity inst,
                          jsdai.dictionary.EAttribute attr)
                   throws SdaiException
Prints a warning message to the log file in the case where a submitted attribute of an entity instance is redefined, yet it has a value assigned, which is meaningless.

Parameters:
inst - given entity instance.
attr - the attribute to be checked.
Throws:
SdaiException
Since:
4.1.2

getIntegerAggregate

public A_integer getIntegerAggregate(EEntity owner)
                              throws SdaiException
Returns an aggregate of integer values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
aggregate of integers described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getIntegerAggregate

public A_integer getIntegerAggregate()
                              throws SdaiException
Returns an aggregate of integer values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
aggregate of integers described by this class.
Throws:
SdaiException

getDoubleAggregate

public A_double getDoubleAggregate(EEntity owner)
                            throws SdaiException
Returns an aggregate of real values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
aggregate of reals described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getDoubleAggregate

public A_double getDoubleAggregate()
                            throws SdaiException
Returns an aggregate of real values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
aggregate of reals described by this class.
Throws:
SdaiException

getStringAggregate

public A_string getStringAggregate(EEntity owner)
                            throws SdaiException
Returns an aggregate of string values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
aggregate of strings described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getStringAggregate

public A_string getStringAggregate()
                            throws SdaiException
Returns an aggregate of string values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
aggregate of strings described by this class.
Throws:
SdaiException

getLogicalAggregate

public A_enumeration getLogicalAggregate(EEntity owner)
                                  throws SdaiException
Returns an aggregate of logical values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
aggregate of logical values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getLogicalAggregate

public A_enumeration getLogicalAggregate()
                                  throws SdaiException
Returns an aggregate of logical values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
aggregate of logical values described by this class.
Throws:
SdaiException

getBooleanAggregate

public A_boolean getBooleanAggregate(EEntity owner)
                              throws SdaiException
Returns an aggregate of boolean values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
aggregate of boolean values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getBooleanAggregate

public A_boolean getBooleanAggregate()
                              throws SdaiException
Returns an aggregate of boolean values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
aggregate of boolean values described by this class.
Throws:
SdaiException

getEnumerationAggregate

public A_enumeration getEnumerationAggregate(EEntity owner)
                                      throws SdaiException
Returns an aggregate of enumeration values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
aggregate of enumeration values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getEnumerationAggregate

public A_enumeration getEnumerationAggregate()
                                      throws SdaiException
Returns an aggregate of enumeration values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
aggregate of enumeration values described by this class.
Throws:
SdaiException

getBinaryAggregate

public A_binary getBinaryAggregate(EEntity owner)
                            throws SdaiException
Returns an aggregate of binary values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
aggregate of binary values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getBinaryAggregate

public A_binary getBinaryAggregate()
                            throws SdaiException
Returns an aggregate of binary values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
aggregate of binary values described by this class.
Throws:
SdaiException

getInstanceAggregate

public Aggregate getInstanceAggregate(EEntity owner)
                               throws SdaiException
Returns an aggregate of entity instances that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
aggregate of entity instances described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getInstanceAggregate

public Aggregate getInstanceAggregate()
                               throws SdaiException
Returns an aggregate of entity instances wrapped in an object of this class. In the case of unset, null is returned.

Returns:
aggregate of entity instances described by this class.
Throws:
SdaiException

getMixedAggregate

public Aggregate getMixedAggregate(EEntity owner)
                            throws SdaiException
Returns an aggregate of values of select data type that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
aggregate of values of select data type described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getMixedAggregate

public Aggregate getMixedAggregate()
                            throws SdaiException
Returns an aggregate of values of select data type wrapped in an object of this class. In the case of unset, null is returned.

Returns:
aggregate of values of select data type described by this class.
Throws:
SdaiException

getInteger2Aggregate

public Aa_integer getInteger2Aggregate(EEntity owner)
                                throws SdaiException
Returns a double-nesting aggregate of integer values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
double-nesting aggregate of integer values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getInteger2Aggregate

public Aa_integer getInteger2Aggregate()
                                throws SdaiException
Returns a double-nesting aggregate of integer values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
double-nesting aggregate of integer values described by this class.
Throws:
SdaiException

getDouble2Aggregate

public Aa_double getDouble2Aggregate(EEntity owner)
                              throws SdaiException
Returns a double-nesting aggregate of real values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
double-nesting aggregate of real values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getDouble2Aggregate

public Aa_double getDouble2Aggregate()
                              throws SdaiException
Returns a double-nesting aggregate of real values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
double-nesting aggregate of real values described by this class.
Throws:
SdaiException

getString2Aggregate

public Aa_string getString2Aggregate(EEntity owner)
                              throws SdaiException
Returns a double-nesting aggregate of string values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
double-nesting aggregate of string values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getString2Aggregate

public Aa_string getString2Aggregate()
                              throws SdaiException
Returns a double-nesting aggregate of string values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
double-nesting aggregate of string values described by this class.
Throws:
SdaiException

getLogical2Aggregate

public Aa_integer getLogical2Aggregate(EEntity owner)
                                throws SdaiException
Returns a double-nesting aggregate of logical values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
double-nesting aggregate of logical values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getLogical2Aggregate

public Aa_integer getLogical2Aggregate()
                                throws SdaiException
Returns a double-nesting aggregate of logical values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
double-nesting aggregate of logical values described by this class.
Throws:
SdaiException

getBoolean2Aggregate

public Aa_boolean getBoolean2Aggregate(EEntity owner)
                                throws SdaiException
Returns a double-nesting aggregate of boolean values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
double-nesting aggregate of boolean values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getBoolean2Aggregate

public Aa_boolean getBoolean2Aggregate()
                                throws SdaiException
Returns a double-nesting aggregate of boolean values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
double-nesting aggregate of boolean values described by this class.
Throws:
SdaiException

getEnumeration2Aggregate

public Aa_enumeration getEnumeration2Aggregate(EEntity owner)
                                        throws SdaiException
Returns a double-nesting aggregate of enumeration values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
double-nesting aggregate of enumeration values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getEnumeration2Aggregate

public Aa_enumeration getEnumeration2Aggregate()
                                        throws SdaiException
Returns a double-nesting aggregate of enumeration values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
double-nesting aggregate of enumeration values described by this class.
Throws:
SdaiException

getDouble3Aggregate

public Aaa_double getDouble3Aggregate(EEntity owner)
                               throws SdaiException
Returns a triple-nesting aggregate of real values that is wrapped in an object of this class. In the case of unset, null is returned.

This method is used when dealing with Express expressions. It is invoked in Express compiler generated classes.

Parameters:
owner - the entity instance owning the returned aggregate.
Returns:
triple-nesting aggregate of real values described by this class.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0

getDouble3Aggregate

public Aaa_double getDouble3Aggregate()
                               throws SdaiException
Returns a triple-nesting aggregate of real values wrapped in an object of this class. In the case of unset, null is returned.

Returns:
triple-nesting aggregate of real values described by this class.
Throws:
SdaiException

alloc

public static Value alloc()
Produces an object of this class.

Returns:
an object of this class.

alloc

public static Value alloc(jsdai.dictionary.EData_type type)
Produces an object of this class prepared to wrap values of the specified data type.

Parameters:
type - data type values of which (or of which specializations) are allowed to be described by the created object of this class.
Returns:
an object of this class.
See Also:
alloc(Value), init(EData_type)

alloc

public static Value alloc(Value v)
Produces an object of this class prepared to wrap values of the specified data type (or its specializations).

Parameters:
v - an object of Value the data type attached to which is borrowed to specify values which are allowed to be described by the created object of this class.
Returns:
an object of this class.
See Also:
alloc(EData_type)

getInstance

public EEntity getInstance()
                    throws SdaiException
Returns an entity instance wrapped in an object of this class. In the case of unset, null is returned.

Returns:
instance of the entity data type described by this class.
Throws:
SdaiException

init

public Value init(jsdai.dictionary.EData_type type)
Initializes the current object of this class to wrap values of the specified data type.

Parameters:
type - data type values of which (or of which specializations) are allowed to be described by this object of Value.
Returns:
an object of this class with the data type attached.
See Also:
alloc(EData_type)

initAggregate

public Value initAggregate(jsdai.dictionary.EAggregation_type type,
                           EEntity owner)
                    throws SdaiException
Initializes the current object of this class to wrap aggregates of the specified aggregation type.

Parameters:
type - aggregation type specifying aggregates which are allowed to be described by this object of Value.
owner - the instance (if null, then none) owning the aggregate wrapped.
Returns:
an object of this class with the aggregation type and, possibly, the aggregate owner attached.
Throws:
SdaiException

initAggregateMember

public Value initAggregateMember(int index,
                                 jsdai.dictionary.EAggregation_type type)
                          throws SdaiException
Initializes an object of this class for the member of the aggregate represented by the current object of Value to wrap values of the specified aggregation type.

Parameters:
index - the index for the member of interest within the aggregate wrapped.
type - aggregation type specifying aggregates which are allowed to be in the role of the member of the aggregate at the specified position.
Returns:
an object of this class prepared to describe the required member of the aggregate.
Throws:
SdaiException

create

public Value create()
             throws SdaiException
Initializes the current object of this class to represent an empty aggregate.

Returns:
this object of Value with empty aggregate wrapped.
Throws:
SdaiException - SY_ERR, underlying system error.

getMemberCount

public int getMemberCount()
                   throws SdaiException
Returns the number of elements in an aggregate wrapped in an object of this class.

Returns:
the size of the aggregate.
Throws:
SdaiException - SY_ERR, underlying system error.

getByIndex

public Value getByIndex(int index)
                 throws SdaiException
Returns the value (of type Value) of the member at the specified index position in an aggregate wrapped in an object of this class. Indexing starts from 1.

Parameters:
index - the index or position from which the value is asked.
Returns:
the value at the specified position in the aggregate.
Throws:
SdaiException - SY_ERR, underlying system error.

getAttribute

public Value getAttribute(jsdai.dictionary.EAttribute attr)
                   throws SdaiException
Returns an object of this class wrapping the value of the specified attribute. In the case when the attribute is a derived one, for calculation of its value the default context of the session is used.

Parameters:
attr - an attribute the value of which is asked.
Returns:
the value of the attribute.
Throws:
SdaiException - AT_NDEF, attribute not defined.
SdaiException - SY_ERR, underlying system error.

getAttribute

public Value getAttribute(jsdai.dictionary.EAttribute attr,
                          SdaiContext context)
                   throws SdaiException
Returns an object of this class wrapping the value of the specified attribute.

Parameters:
attr - an attribute the value of which is asked.
context - context in which the value of the attribute is calculated (provided this attribute is a derived one).
Returns:
the value of the attribute.
Throws:
SdaiException - AT_NDEF, attribute not defined.
SdaiException - SY_ERR, underlying system error.

getAttribute

public Value getAttribute(java.lang.String attrName,
                          SdaiContext context)
                   throws SdaiException
Returns an object of this class wrapping the value of the attribute specified by its name.

Parameters:
attrName - the name of an attribute the value of which is asked.
context - context in which the value of the attribute is calculated (provided this attribute is a derived one).
Returns:
the value of the attribute.
Throws:
SdaiException - AT_NDEF, attribute not defined.
SdaiException - SY_ERR, underlying system error.

setAttribute

public Value setAttribute(jsdai.dictionary.EExplicit_attribute attr,
                          Value val)
                   throws SdaiException
Assigns the submitted value to the specified attribute of the entity instance wrapped in this object of type Value.

Parameters:
attr - an attribute the value to which is assigned.
val - the value to be assigned.
Returns:
an object of this class describing an entity instance to the specified attribute of which the value is assigned.
Throws:
SdaiException - AT_NDEF, attribute not defined.
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.

check

public Value check(SdaiContext context,
                   jsdai.dictionary.EData_type type)
            throws SdaiException
Verifies if the value wrapped in the object of this class is of type (or of its specialization) specified by the method's second parameter. In the case of the negative verdict, SdaiException SY_ERR with an additional explanation will be thrown.

Parameters:
context - context in which the value is checked.
type - data type against which the value is checked.
Returns:
the current object of this class.
Throws:
SdaiException - SY_ERR, underlying system error.

check_selection

public Value check_selection(SdaiContext context,
                             jsdai.dictionary.EData_type type)
                      throws SdaiException
Verifies if the value wrapped in the object of this class is of type (or of its specialization) specified by the method's second parameter. In the case of the negative verdict null is returned.

Parameters:
context - context in which the value is checked.
type - data type against which the value is checked.
Returns:
the current object of this class.
Throws:
SdaiException - SY_ERR, underlying system error.

set

public Value set(SdaiContext context,
                 Value val)
          throws SdaiException
Writes the value wrapped in the object of Value submitted as a method's second parameter to the current object of this class provided the value to be written conforms to the data type declared, using, for example, alloc(EData_type) method, in the current object.

Parameters:
context - context in which the value is checked for conformance.
val - the value to be written.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
set(SdaiContext, Object), set(Value)

set

public Value set(Value val)
          throws SdaiException
Writes the value wrapped in the object of Value submitted as a method's parameter to the current object of this class without checking whether the value to be written conforms to the data type declared for the current Value object. Upon termination of the method's run the declared and actual data types of the latter become equivalent to those of the supplied parameter.

This method is used in special cases when dealing with Express functions. It is invoked in Express compiler generated classes.

Parameters:
val - the value to be written.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
Since:
3.6.0
See Also:
set(SdaiContext, Value), set(SdaiContext, Object)

set

public Value set(SdaiContext context,
                 java.lang.Object val)
          throws SdaiException
Writes the value submitted as a method's second parameter to the current object of this class provided the value to be written conforms to the data type declared, using, for example, alloc(EData_type) method, in the current object.

Parameters:
context - context in which the value is checked for conformance.
val - the value to be written.
Returns:
the current object of this class.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
set(SdaiContext, Value), set(Value)

set

public Value set(SdaiContext context,
                 int val)
          throws SdaiException
Wraps a value of integer type in an object of this class. Unset value to be supplied to the method is also allowed. The type of the value is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
val - the value to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.

set

public Value set(SdaiContext context,
                 double val)
          throws SdaiException
Wraps a value of real type in an object of this class. Unset value to be supplied to the method is also allowed. The type of the value is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
val - the value to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.

set

public Value set(SdaiContext context,
                 java.lang.String val)
          throws SdaiException
Wraps a value of string type in an object of this class. null as an unset value is also allowed. The value is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
val - the value to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.

set

public Value set(SdaiContext context,
                 java.lang.String val,
                 java.lang.String schema_name)
          throws SdaiException
Wraps a value of string type in an object of this class. null as an unset value is also allowed. The value is checked against the data type attached to this object of class Value. This method also stores the name of the schema in which the string (for example, the name of an entity data type) is defined. The method is invoked in compiler generated code implementing Express expressions.

Parameters:
context - an object of type SdaiContext.
val - string value to be assigned.
schema_name - the name of the schema.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.

setLB

public Value setLB(SdaiContext context,
                   int val)
            throws SdaiException
Wraps a value of either logical or boolean type in an object of this class. Unset value to be supplied to the method is also allowed. The following integers represent values of logical or boolean types: The type of the value is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
val - the value to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.
See Also:
setLB(SdaiContext, Value)

setLB

public Value setLB(SdaiContext context,
                   Value val)
            throws SdaiException
Wraps a value of either logical or boolean type in an object of this class. Unset value to be supplied to the method is also allowed. The following integers represent values of logical or boolean types: The type of the value is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
val - the value to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VA_NVLD, value invalid.
SdaiException - VT_NVLD, value type invalid.
See Also:
setLB(SdaiContext, int)

setEnum

public Value setEnum(SdaiContext context,
                     java.lang.String val)
              throws SdaiException
Wraps a value of enumeration type in an object of this class. null as an unset value is also allowed. The value is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
val - the value to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.

set

public Value set(SdaiContext context,
                 Binary val)
          throws SdaiException
Wraps a value of binary type in an object of this class. null as an unset value is also allowed. The value is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
val - the value to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.

set

public Value set(SdaiContext context,
                 EEntity val)
          throws SdaiException
Wraps an entity instance in an object of this class. null as an unset value is also allowed. The entity definition of the instance is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
val - the entity instance to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.

set

public Value set(SdaiContext context,
                 Aggregate aggr)
          throws SdaiException
Wraps an aggregate (also nested) in an object of this class. null as an unset value is also allowed. The aggregation type of the aggregate submitted is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
aggr - the aggregate to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.

setInstancesAggregate

public Value setInstancesAggregate(SdaiContext context,
                                   AEntity aggr)
                            throws SdaiException
Wraps an aggregate of entity instances in an object of this class. null as an unset value is also allowed. The aggregation type of the aggregate submitted is checked against the data type attached to this object of class Value.

Parameters:
context - context in which the value is checked for conformance.
aggr - the aggregate to be assigned.
Returns:
the current object of this class.
Throws:
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.

unset

public Value unset()
Makes an object of this class representing no value, that is, attaches INDETERMINATE to it.

Returns:
the current object of this class.

indexing

public Value indexing(Value index1,
                      Value index2)
               throws SdaiException
Implements Aggregate indexing, String indexing and Binary indexing operators of Express language. An aggregate or string or binary, depending on the operator, is given by the current object of type Value, while indices are given by objects of type Value submitted through parameters. For Aggregate indexing, the member of the aggregate at the position specified by the first method's parameter is returned. The second parameter is ignored. For String indexing and Binary indexing, the sequence of characters or, respectively, bits at position index1 through index2 inclusive is taken as a result. The value to be returned is wrapped in a newly created object of this class.

Parameters:
index1 - index of the aggregate member asked or position of the first character or bit in the case of string and, respectively, binary indexing.
index2 - position of the last character or bit in string and, respectively, binary indexing.
Returns:
the object of this class wrapping either aggregate member or substring or subbinary.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.3.1 Binary indexing", "ISO 10303-11::12.5.1 String indexing", "ISO 10303-11::12.6.1 Aggregate indexing", indexing(int, int)

indexing

public Value indexing(int index1,
                      int index2)
               throws SdaiException
Implements Aggregate indexing, String indexing and Binary indexing operators of Express language. An aggregate or string or binary, depending on the operator, is given by the current object of type Value. For Aggregate indexing, the member of the aggregate at the position specified by the first method's parameter is returned. The second parameter is ignored. For String indexing and Binary indexing, the sequence of characters or, respectively, bits at position index1 through index2 inclusive is taken as a result. The value to be returned is wrapped in a newly created object of this class.

Parameters:
index1 - index of the aggregate member asked or position of the first character or bit in the case of string and, respectively, binary indexing.
index2 - position of the last character or bit in string and, respectively, binary indexing.
Returns:
the object of this class wrapping either aggregate member or substring or subbinary.
Throws:
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.3.1 Binary indexing", "ISO 10303-11::12.5.1 String indexing", "ISO 10303-11::12.6.1 Aggregate indexing", indexing(Value, Value)

replaceRange

public Value replaceRange(Value index1,
                          Value index2,
                          Value repl)
                   throws SdaiException
Implements assignment statement when the object being assigned to is range qualified. This case is possible only for Express STRING and BINARY data types (see ISO 10303-11::13.3.2 Assignment compatibility). The string or binary to the left of the range qualifier is given by the current object of type Value, while indices are given by objects of type Value submitted through the first two parameters. The value of the expression to the right of the assignment statement is submitted through the last parameter. This value replaces the elements originally between specified indices (inclusively). For example, the result of the expression 'max_noteq_sat'[4:10] := '2' is 'max2sat'. The result of the statement execution is wrapped into the current object of this class. If the type of the data represented by this object differs from STRING and BINARY, then the method ignores the last parameter and makes a call to indexing(Value, Value).

Parameters:
index1 - index of the first element of STRING or BINARY to be replaced.
index2 - index of the last element of STRING or BINARY to be replaced.
repl - value which replaces the specified part of STRING or BINARY.
Returns:
this object of Value wrapping the result of the replacement operation.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
Since:
4.1.2
See Also:
"ISO 10303-11::13.3.2 Assignment compatibility", replaceRange(int, int, Value)

replaceRange

public Value replaceRange(int index1,
                          int index2,
                          Value repl)
                   throws SdaiException
Implements assignment statement when the object being assigned to is range qualified. This case is possible only for Express STRING and BINARY data types (see ISO 10303-11::13.3.2 Assignment compatibility). The string or binary to the left of the range qualifier is given by the current object of type Value, while indices are given by the first two parameters. The value of the expression to the right of the assignment statement is submitted through the last parameter. This value replaces the elements originally between specified indices (inclusively). For example, the result of the expression 'max_noteq_sat'[4:10] := '2' is 'max2sat'. The result of the statement execution is wrapped into the current object of this class. If the type of the data represented by this object differs from STRING and BINARY, then the method ignores the last parameter and makes a call to indexing(int, int).

Parameters:
index1 - index of the first element of STRING or BINARY to be replaced.
index2 - index of the last element of STRING or BINARY to be replaced.
repl - value which replaces the specified part of STRING or BINARY.
Returns:
this object of Value wrapping the result of the replacement operation.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
Since:
4.1.2
See Also:
"ISO 10303-11::13.3.2 Assignment compatibility", replaceRange(Value, Value, Value)

inc

public Value inc(Value delta)
          throws SdaiException
Increments the value of integer type wrapped by an object of this class by a specified integer.

Parameters:
delta - positive integer value (given by an object of type Value) by which a wrapped integer is enlarged.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
inc(jsdai.lang.Value)

inc

public Value inc()
          throws SdaiException
Increments the value of integer type wrapped by an object of this class by 1.

Returns:
the current object of this class.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
inc(Value)

dec

public Value dec(Value delta)
          throws SdaiException
Decreases the value of integer type wrapped by an object of this class by a specified integer.

Parameters:
delta - positive integer value (given by an object of type Value) by which a wrapped integer is diminished.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
dec(jsdai.lang.Value)

dec

public Value dec()
          throws SdaiException
Decreases the value of integer type wrapped by an object of this class by 1.

Returns:
the current object of this class.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
dec(Value)

getAsBoolean

public boolean getAsBoolean()
                     throws SdaiException
Converts logical value represented by an integer to boolean according to the following rule: if TRUE (integer value 2), then true, if FALSE or UNKNOWN (integer values 1 and 3, respectively), then false is returned. This method is disallowed for data types different than LOGICAL and BOOLEAN.

Returns:
boolean value for integer representation of LOGICAL.
Throws:
SdaiException - VT_NVLD, value type invalid.

addMember

public void addMember(SdaiContext context,
                      Value val)
               throws SdaiException
Adds a new member to the aggregate represented by an object of this class. Its position is at the end of the aggregate.

Parameters:
context - context in which the new member is checked for conformance.
val - an element (wrapped in an object of type Value) to be added.
Throws:
SdaiException - VT_NVLD, value type invalid.

setMember

public void setMember(SdaiContext context,
                      Value val,
                      int index)
               throws SdaiException
Assigns a new value to a member of the aggregate represented by an object of this class located at the specified index position. The indexing of members starts from 1.

Parameters:
context - context in which the new value is checked for conformance.
val - a value (wrapped in an object of type Value) to be set.
index - a position for the member whose value is set.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VT_NVLD, value type invalid.

addOrUnionOrConcatenate

public Value addOrUnionOrConcatenate(SdaiContext context,
                                     Value val1,
                                     Value val2)
                              throws SdaiException
Implements addition, union, string concatenation and binary concatenation operators of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands and the type of the result for each of the above operators are defined in "ISO 10303-11". If any operand is indeterminate, then as a result of the operator unset value is taken. The result of an operator is stored in the current object of this class.

Parameters:
context - context in which an operation is performed.
val1 - the first operand of an operator: of numeric type in the case of addition; an aggregate or a new element in the case of union; string or binary in the case of string and binary concatenation, respectively.
val2 - the second operand of an operator (of the same type definition as for the first one).
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.1 Arithmetic operators", "ISO 10303-11::12.3.2 Binary concatenation operator", "ISO 10303-11::12.5.2 String concatenation operator", "ISO 10303-11::12.6.3 Union operator"

bagToSet

public Value bagToSet(SdaiContext context,
                      Value bag)
               throws SdaiException
Implements conversion of an aggregate of Express BAG OF GENERIC type to an aggregate of Express SET OF GENERIC type. Both aggregates are wrapped in objects of type Value. If such value for BAG is Express INDETERMINATE, then this method returns INDETERMINATE.

Parameters:
context - context in which an operation is performed.
bag - the bag to be converted to a set.
Returns:
the current object of this class that wraps the resulting set.
Throws:
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
Since:
4.1.0

unionEnlarge

public Value unionEnlarge(Value val,
                          SdaiContext context)
                   throws SdaiException
Implements Express language operation A:=A+e, where A is an aggregate, e is an element, and plus stands for the aggregate union operator. The operands of the union operator are wrapped in objects of type Value. The aggregate is represented by this Value object, whereas the element being added by the first parameter submitted to the method. If any operand is indeterminate, then as a result of the operation indeterminate value is returned.

Parameters:
val - the element to be added to the aggregate.
context - context in which operation is performed.
Returns:
the aggregate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
Since:
4.1.1
See Also:
"ISO 10303-11::12.6.3 Union operator"

negation

public Value negation(Value val)
               throws SdaiException
Implements arithmetic negation (-) operator of Express language. The operand is wrapped in an object of type Value submitted through the parameter of the method. The result is stored in the current object of this class. The allowed types of the operand are NUMBER, INTEGER and REAL. If the operand is indeterminate, then as a result of the operator unset value is taken.

Parameters:
val - the number whose sign has to be changed.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.1 Arithmetic operators"

substractOrDifference

public Value substractOrDifference(SdaiContext context,
                                   Value val1,
                                   Value val2)
                            throws SdaiException
Implements subtraction and aggregate difference operators of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands and the type of the result for each of above two operators are defined in "ISO 10303-11". If any operand is indeterminate, then as a result of the operator unset value is taken. The result of an operator is stored in the current object of this class.

Parameters:
context - context in which an operation is performed.
val1 - the first operand of an operator: of numeric type in the case of subtraction; SET or BAG in the case of difference.
val2 - the second operand of an operator: of numeric type in the case of subtraction; SET, BAG or a new element in the case of difference.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.1 Arithmetic operators", "ISO 10303-11::12.6.4 Difference operator"

mulOrIntersect

public Value mulOrIntersect(SdaiContext context,
                            Value val1,
                            Value val2)
                     throws SdaiException
Implements multiplication and aggregate intersection operators of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands and the type of the result for each of above two operators are defined in "ISO 10303-11". If any operand is indeterminate, then as a result of the operator unset value is taken. The result of an operator is stored in the current object of this class.

Parameters:
context - context in which an operation is performed.
val1 - the first operand of an operator: of numeric type in the case of multiplication; SET or BAG in the case of intersection.
val2 - the second operand of an operator (of the same type definition as for the first one).
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.1 Arithmetic operators", "ISO 10303-11::12.6.2 Intersection operator"

divide

public Value divide(SdaiContext context,
                    Value numerator,
                    Value denominator)
             throws SdaiException
Implements real division operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are NUMBER, INTEGER and REAL. If any operand is indeterminate, then as a result of the operator unset value is taken. The result of the operator is stored in the current object of this class.

Parameters:
context - context in which the operation is performed.
numerator - the numerator in the real division expression.
denominator - the denominator in the real division expression.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.1 Arithmetic operators"

exponent

public Value exponent(SdaiContext context,
                      Value base,
                      Value power)
               throws SdaiException
Implements exponentiation operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are NUMBER, INTEGER and REAL. If any operand is indeterminate, then as a result of the operator unset value is taken. The result of the operator is stored in the current object of this class.

Parameters:
context - context in which the operation is performed.
base - the base in the exponentiation expression.
power - the power in the exponentiation expression.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.1 Arithmetic operators"

DIV

public Value DIV(SdaiContext context,
                 Value numerator,
                 Value denominator)
          throws SdaiException
Implements integer division operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are NUMBER, INTEGER and REAL. If any operand is indeterminate, then as a result of the operator unset value is taken. The result of the operator is stored in the current object of this class.

Parameters:
context - context in which the operation is performed.
numerator - the numerator in the integer division expression.
denominator - the denominator in the integer division expression.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.1 Arithmetic operators"

MOD

public Value MOD(SdaiContext context,
                 Value val1,
                 Value val2)
          throws SdaiException
Implements modulo operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are NUMBER, INTEGER and REAL. If any operand is indeterminate, then as a result of the operator unset value is taken. The result of the operator is stored in the current object of this class.

Parameters:
context - context in which the operation is performed.
val1 - the first operand in the modulo expression.
val2 - the second operand in the modulo expression.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.1 Arithmetic operators"

equalInt

public static int equalInt(SdaiContext context,
                           Value val1,
                           Value val2)
                    throws SdaiException
Implements "equal" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary, enumeration, aggregate and entity data types. The two operands of a value comparison operator shall be data type compatible. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
1 if the comparison expression evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
equal(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

equal

public Value equal(SdaiContext context,
                   Value val1,
                   Value val2)
            throws SdaiException
Implements "equal" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary, enumeration, aggregate and entity data types. The two operands of a value comparison operator shall be data type compatible. The result evaluates to the logical value represented by the current object of type Value. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
equalInt(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

nequalInt

public static int nequalInt(SdaiContext context,
                            Value val1,
                            Value val2)
                     throws SdaiException
Implements "not equal" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary, enumeration, aggregate and entity data types. The two operands of a value comparison operator shall be data type compatible. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
1 if the comparison expression evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
nequal(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

nequal

public Value nequal(SdaiContext context,
                    Value val1,
                    Value val2)
             throws SdaiException
Implements "not equal" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary, enumeration, aggregate and entity data types. The two operands of a value comparison operator shall be data type compatible. The result evaluates to the logical value represented by the current object of type Value. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
nequalInt(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

greaterInt

public static int greaterInt(SdaiContext context,
                             Value val1,
                             Value val2)
                      throws SdaiException
Implements "greater than" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary and enumeration. The two operands of a value comparison operator shall be data type compatible. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
1 if the comparison expression evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
greater(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

greater

public Value greater(SdaiContext context,
                     Value val1,
                     Value val2)
              throws SdaiException
Implements "greater than" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary and enumeration. The two operands of a value comparison operator shall be data type compatible. The result evaluates to the logical value represented by the current object of type Value. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
greaterInt(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

lessInt

public static int lessInt(SdaiContext context,
                          Value val1,
                          Value val2)
                   throws SdaiException
Implements "less than" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary and enumeration. The two operands of a value comparison operator shall be data type compatible. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
1 if the comparison expression evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
less(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

less

public Value less(SdaiContext context,
                  Value val1,
                  Value val2)
           throws SdaiException
Implements "less than" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary and enumeration. The two operands of a value comparison operator shall be data type compatible. The result evaluates to the logical value represented by the current object of type Value. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
lessInt(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

gequalInt

public static int gequalInt(SdaiContext context,
                            Value val1,
                            Value val2)
                     throws SdaiException
Implements "greater than or equal" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary and enumeration. The two operands of a value comparison operator shall be data type compatible. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
1 if the comparison expression evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
gequal(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

gequalOrSuperset

public Value gequalOrSuperset(SdaiContext context,
                              Value val1,
                              Value val2)
                       throws SdaiException
Implements "greater than or equal" - a value comparison operator and also superset operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary and enumeration in the case of value comparison and Express SET or BAG in the case of superset operator. The operands shall be of compatible types. The result evaluates to the logical value represented by the current object of type Value. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first operand.
val2 - the second operand.
Returns:
the current object of this class representing logical value being a result of comparison or superset operator.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
Since:
4.0.0
See Also:
gequalInt(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators", "ISO 10303-11::12.6.6 Superset operator"

gequal

public Value gequal(SdaiContext context,
                    Value val1,
                    Value val2)
             throws SdaiException
It is a shortcut to gequalOrSuperset method.

Throws:
SdaiException

lequalInt

public static int lequalInt(SdaiContext context,
                            Value val1,
                            Value val2)
                     throws SdaiException
Implements "less than or equal" - a value comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary and enumeration. The two operands of a value comparison operator shall be data type compatible. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
1 if the comparison expression evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
lequal(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators"

lequalOrSubset

public Value lequalOrSubset(SdaiContext context,
                            Value val1,
                            Value val2)
                     throws SdaiException
Implements "less than or equal" - a value comparison operator and also subset operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary and enumeration in the case of value comparison and Express SET or BAG in the case of subset operator. The operands shall be of compatible types. The result evaluates to the logical value represented by the current object of type Value. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first operand.
val2 - the second operand.
Returns:
the current object of this class representing logical value being a result of comparison or subset operator.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
Since:
4.0.0
See Also:
lequalInt(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.1 Value comparison operators", "ISO 10303-11::12.6.5 Subset operator"

lequal

public Value lequal(SdaiContext context,
                    Value val1,
                    Value val2)
             throws SdaiException
It is a shortcut to lequalOrSubset method.

Throws:
SdaiException

instanceEqualInt

public static int instanceEqualInt(SdaiContext context,
                                   Value val1,
                                   Value val2)
                            throws SdaiException
Implements "instance equal" - an instance comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary, enumeration, aggregate and entity data types. The two operands of an instance comparison operator shall be data type compatible. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
1 if the comparison expression evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
instanceEqual(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.2 Instance comparison operators"

instanceEqual

public Value instanceEqual(SdaiContext context,
                           Value val1,
                           Value val2)
                    throws SdaiException
Implements "instance equal" - an instance comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary, enumeration, aggregate and entity data types. The two operands of an instance comparison operator shall be data type compatible. The result evaluates to the logical value represented by the current object of type Value. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
instanceEqualInt(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.2 Instance comparison operators"

instanceNotEqualInt

public static int instanceNotEqualInt(SdaiContext context,
                                      Value val1,
                                      Value val2)
                               throws SdaiException
Implements "instance not equal" - an instance comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary, enumeration, aggregate and entity data types. The two operands of an instance comparison operator shall be data type compatible. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
1 if the comparison expression evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
instanceNotEqual(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.2 Instance comparison operators"

instanceNotEqual

public Value instanceNotEqual(SdaiContext context,
                              Value val1,
                              Value val2)
                       throws SdaiException
Implements "instance not equal" - an instance comparison operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The allowed types of the operands are numeric, logical, string, binary, enumeration, aggregate and entity data types. The two operands of an instance comparison operator shall be data type compatible. The result evaluates to the logical value represented by the current object of type Value. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the first value to be compared.
val2 - the second value to be compared.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
instanceNotEqualInt(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.2 Instance comparison operators"

INInt

public static int INInt(SdaiContext context,
                        Value val1,
                        Value val2)
                 throws SdaiException
Implements membership operator IN of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The right-hand operand shall be a value of an aggregation data type. The left-hand operand shall be compatible with the base type of this aggregation type. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the left-hand operand (an element to be tested for membership in an aggregate submitted through the second parameter).
val2 - the right-hand operand (aggregate value).
Returns:
1 if the membership expression evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
IN(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.3 Membership operator"

IN

public Value IN(SdaiContext context,
                Value val1,
                Value val2)
         throws SdaiException
Implements membership operator IN of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The right-hand operand shall be a value of an aggregation data type. The left-hand operand shall be compatible with the base type of this aggregation type. The result evaluates to the logical value represented by the current object of type Value. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the left-hand operand (an element to be tested for membership in an aggregate submitted through the second parameter).
val2 - the right-hand operand (aggregate value).
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
INInt(jsdai.lang.SdaiContext, jsdai.lang.Value, jsdai.lang.Value), "ISO 10303-11::12.2.3 Membership operator"

LIKE

public Value LIKE(SdaiContext context,
                  Value val1,
                  Value val2)
           throws SdaiException
Implements LIKE operator of Express language. The operands are wrapped in objects of type Value submitted through the parameters of the method. The left-hand operand (first parameter) is the target string, whereas the right-hand operand (second parameter) is the pattern string. If either operand evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
context - context in which the operation is performed.
val1 - the target string.
val2 - the pattern string.
Returns:
1 if comparison of pattern and target strings evaluates to FALSE, 2 if it evaluates to TRUE, and 3 if it evaluates to indeterminate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.2.5 Like operator"

subbinary

public Value subbinary(Value val,
                       int index1,
                       int index2)
                throws SdaiException
Implements binary indexing operator of Express language. The binary value is wrapped in an object of type Value submitted through the first parameter of the method. The indices specifying a sequence of bits to be returned shall be supplied explicitly as positive integers. If either of the indices evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
val - the binary value.
index1 - position of the first bit in the binary value being indexed.
index2 - position of the last bit in the binary value being indexed.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.3.1 Binary indexing"

AND

public Value AND(SdaiContext context,
                 Value val1,
                 Value val2)
          throws SdaiException
Implements AND operator of Express language. The operands, both logical, are wrapped in objects of type Value submitted through the parameters of the method. The result evaluates to the logical value represented by the current object of type Value. If either of the operands evaluates to indeterminate, that operand is dealt with as if it were logical value UNKNOWN.

Parameters:
context - context in which the operation is performed.
val1 - the first logical operand.
val2 - the second logical operand.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.4.2 AND operator"

OR

public Value OR(SdaiContext context,
                Value val1,
                Value val2)
         throws SdaiException
Implements OR operator of Express language. The operands, both logical, are wrapped in objects of type Value submitted through the parameters of the method. The result evaluates to the logical value represented by the current object of type Value. If either of the operands evaluates to indeterminate, that operand is dealt with as if it were logical value UNKNOWN.

Parameters:
context - context in which the operation is performed.
val1 - the first logical operand.
val2 - the second logical operand.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.4.3 OR operator"

XOR

public Value XOR(SdaiContext context,
                 Value val1,
                 Value val2)
          throws SdaiException
Implements XOR operator of Express language. The operands, both logical, are wrapped in objects of type Value submitted through the parameters of the method. The result evaluates to the logical value represented by the current object of type Value. If either of the operands evaluates to indeterminate, that operand is dealt with as if it were logical value UNKNOWN.

Parameters:
context - context in which the operation is performed.
val1 - the first logical operand.
val2 - the second logical operand.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.4.4 XOR operator"

NOT

public Value NOT(Value val)
          throws SdaiException
Implements NOT operator of Express language. The logical operand is wrapped in an object of type Value submitted through the parameter of the method. The result evaluates to the logical value represented by the current object of type Value. If the operand evaluates to indeterminate, it is dealt with as if it were logical value UNKNOWN.

Parameters:
val - the logical operand.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.4.1 NOT operator"

substring

public Value substring(Value val,
                       int index1,
                       int index2)
                throws SdaiException
Implements string indexing operator of Express language. The string value is wrapped in an object of type Value submitted through the first parameter of the method. The indices specifying a sequence of characters to be returned shall be supplied explicitly as positive integers. If either of the indices evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
val - the string value.
index1 - position of the first character in the string being indexed.
index2 - position of the last character in the string being indexed.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
substring(Value, int), "ISO 10303-11::12.5.1 String indexing"

substring

public Value substring(Value val,
                       int index)
                throws SdaiException
Implements string indexing operator of Express language. The string value is wrapped in an object of type Value submitted through the first parameter of the method. The index specifying a character asked shall be supplied explicitly as a positive integer. If this index evaluates to indeterminate, then as a result of the operator unset value is taken.

Parameters:
val - the string value.
index - position of the character asked.
Returns:
the current object of this class.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
substring(Value, int, int), "ISO 10303-11::12.5.1 String indexing"

addComplex

public Value addComplex(Value val)
                 throws SdaiException
Adds a partial complex entity value to already existing complex entity instance represented by the current object of this class. Thus, an instance of the entity containing one more simple entity data type is obtained. The values of the attributes of this simple entity are supplied by an object of type Value submitted through the parameter of the method. This method is related to an implementation of complex entity instance construction operator of Express language.

Parameters:
val - partial complex entity value.
Returns:
the current object of this class representing extended complex entity instance.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.10 Complex entity instance construction operator"

groupReference

public Value groupReference(SdaiContext context,
                            jsdai.dictionary.EEntity_definition edef)
                     throws SdaiException
Returns a partial complex entity value within a complex entity instance represented by the current object of this class. This partial value is also wrapped in an object of type Value. The method is related to an implementation of group references operator of Express language.

Parameters:
context - context in which the operation is performed.
edef - simple entity data type of which a partial complex entity value is asked.
Returns:
partial complex entity value.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
groupReference(SdaiContext, Class), "ISO 10303-11::12.7.4 Group references"

groupReference

public Value groupReference(SdaiContext context,
                            java.lang.Class provided_class)
                     throws SdaiException
Returns a partial complex entity value within a complex entity instance represented by the current object of this class. This partial value is also wrapped in an object of type Value. The method is related to an implementation of group references operator of Express language.

Parameters:
context - context in which the operation is performed.
provided_class - Java class for the simple entity data type of which a partial complex entity value is asked.
Returns:
partial complex entity value.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
groupReference(SdaiContext, EEntity_definition), "ISO 10303-11::12.7.4 Group references"

addParameter

public Value addParameter(Value val)
                   throws SdaiException
Adjoins value of an attribute to a partial complex entity value being formed (and represented by the current object of this class). To construct a partial complex entity value, this method shall be applied repeatedly, once for each attribute of the corresponding simple entity data type. The order of invocations of the method shall strictly conform the order of appearance of attributes in the definition of the entity in an Express schema. The method is related to an implementation of complex entity instance construction operator of Express language.

Parameters:
val - value of an attribute of the simple entity data type.
Returns:
the current object of this class representing partial complex entity value.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.10 Complex entity instance construction operator"

makeInstance

public Value makeInstance(SdaiContext context)
                   throws SdaiException
Creates an instance of the entity described by the current object of this class. The values of the attributes of the entity are also set. The created instance is wrapped in an object of type Value. The parameter of the method is used to get an SdaiModel to make it owning for the instance created. The method is related to an implementation of complex entity instance construction operator of Express language.

Parameters:
context - an object of type SdaiContext.
Returns:
an object of this class representing instance created.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::12.10 Complex entity instance construction operator"

abs

public Value abs(Value val)
          throws SdaiException
Implements built-in function "Abs" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - the number the absolute value of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.1 Abs - arithmetic function"

aCos

public Value aCos(Value val)
           throws SdaiException
Implements built-in function "ACos" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - a cosine the angle of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.2 ACos - arithmetic function"

aSin

public Value aSin(Value val)
           throws SdaiException
Implements built-in function "ASin" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - a sine the angle of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.3 ASin - arithmetic function"

aTan

public Value aTan(Value val1,
                  Value val2)
           throws SdaiException
Implements built-in function "ATan" of Express language. The parameters (of type NUMBER) are wrapped in the objects of type Value submitted to the method. If either of the parameters is indeterminate, then as a result of the function unset value is taken.

Parameters:
val1 - numerator in the ratio specifying tangent the angle of which is asked.
val2 - denominator in the ratio specifying tangent the angle of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.4 ATan - arithmetic function"

bLength

public Value bLength(Value val)
              throws SdaiException
Implements built-in function "BLength" of Express language. The parameter (of type BINARY) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - binary the number of bits in which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.5 BLength - binary function"

cos

public Value cos(Value val)
          throws SdaiException
Implements built-in function "Cos" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - an angle the cosine of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.6 Cos - arithmetic function"

exists

public Value exists(Value val)
             throws SdaiException
Implements built-in function "Exists" of Express language. The parameter (of Express type GENERIC) is wrapped in an object of type Value submitted to the method.

Parameters:
val - a variable or the result of an expression of any type.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist (since JSDAI 4.1.0).
See Also:
"ISO 10303-11::15.7 Exists - general function"

exp

public Value exp(Value val)
          throws SdaiException
Implements built-in function "Exp" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - the power of the exponent.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.8 Exp - arithmetic function"

format

public Value format(Value number,
                    Value form_str)
             throws SdaiException
Implements built-in function "Format" of Express language. The parameters (of type NUMBER and STRING, respectively) are wrapped in the objects of type Value submitted to the method. If either of the parameters is indeterminate, then as a result of the function unset value is taken.

Parameters:
number - an integer or real number to be formatted.
form_str - a string containing formatting commands.
Returns:
the current object of this class wrapping the result of the function - a string representation of the number.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.9 Format - general function"

hiBound

public Value hiBound(Value val)
              throws SdaiException
Implements built-in function "HiBound" of Express language. The parameter (of Express type AGGREGATE OF GENERIC) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - an aggregate the upper index (if ARRAY) or upper bound (if BAG, LIST or SET) of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.10 HiBound - arithmetic function"

hiIndex

public Value hiIndex(Value val)
              throws SdaiException
Implements built-in function "HiIndex" of Express language. The parameter (of Express type AGGREGATE OF GENERIC) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - an aggregate the upper index (if ARRAY) or the number of elements (if BAG, LIST or SET) of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.11 HiIndex - arithmetic function"

length

public Value length(Value val)
             throws SdaiException
Implements built-in function "Length" of Express language. The parameter (of type STRING) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - a string the the number of characters in which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.12 Length - string function"

loBound

public Value loBound(Value val)
              throws SdaiException
Implements built-in function "LoBound" of Express language. The parameter (of Express type AGGREGATE OF GENERIC) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - an aggregate the lower index (if ARRAY) or lower bound (if BAG, LIST or SET) of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.13 LoBound - arithmetic function"

log

public Value log(Value val)
          throws SdaiException
Implements built-in function "Log" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - a number the natural logarithm of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.14 Log - arithmetic function"

log2

public Value log2(Value val)
           throws SdaiException
Implements built-in function "Log2" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - a number the base two logarithm of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.15 Log2 - arithmetic function"

log10

public Value log10(Value val)
            throws SdaiException
Implements built-in function "Log10" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - a number the base ten logarithm of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.16 Log10 - arithmetic function"

loIndex

public Value loIndex(Value val)
              throws SdaiException
Implements built-in function "LoIndex" of Express language. The parameter (of Express type AGGREGATE OF GENERIC) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - an aggregate the lower index (if ARRAY) of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.17 LoIndex - arithmetic function"

NVL

public Value NVL(SdaiContext context,
                 Value val,
                 Value substitute)
          throws SdaiException
Implements built-in function "NVL" of Express language. The parameters (of Express type GENERIC) are wrapped in the objects of type Value submitted to the method. If both parameters are indeterminate, then as a result of the function unset value is taken.

Parameters:
context - context in which the function is considered.
val - the main input value (which is returned by the function provided this value exists).
substitute - an alternate value (which is returned if the main value is unset).
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.18 NVL - null value function"

odd

public Value odd(Value val)
          throws SdaiException
Implements built-in function "Odd" of Express language. The parameter (of type INTEGER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function UNKNOWN value is returned.

Parameters:
val - a number which is checked whether it is odd.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.19 Odd - arithmetic function"

rolesOf

public Value rolesOf(Value val)
              throws SdaiException
Implements built-in function "RolesOf" of Express language. The parameter (of Express type GENERIC) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - an entity instance the names of the roles played by which are asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.20 RolesOf - general function"

sin

public Value sin(Value val)
          throws SdaiException
Implements built-in function "Sin" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - an angle the sine of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.21 Sin - arithmetic function"

sizeOf

public Value sizeOf(Value val)
             throws SdaiException
Implements built-in function "SizeOf" of Express language. The parameter (of Express type AGGREGATE OF GENERIC) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then indeterminate value of size is returned.

Parameters:
val - an aggregate the number of elements of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
sizeOfExt(jsdai.lang.SdaiContext, jsdai.lang.Value), sizeOfExt0(jsdai.lang.SdaiContext, jsdai.lang.Value), "ISO 10303-11::15.22 SizeOf - aggregate function"

sizeOfExt

public Value sizeOfExt(SdaiContext context,
                       Value val)
                throws SdaiException
Implements built-in function "SizeOf" of Express language. The aggregate (of Express type AGGREGATE OF GENERIC) is wrapped in an object of type Value submitted to the method as the second parameter. If this parameter is indeterminate, then indeterminate value of size is returned. Through the context parameter, this method transfers some data to the where rule validation methods.

Parameters:
context - context in which the function is considered.
val - an aggregate the number of elements of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
Since:
4.1.0
See Also:
sizeOf(jsdai.lang.Value), sizeOfExt0(jsdai.lang.SdaiContext, jsdai.lang.Value), "ISO 10303-11::15.22 SizeOf - aggregate function"

sizeOfExt0

public Value sizeOfExt0(SdaiContext context,
                        Value val)
                 throws SdaiException
Implements built-in function "SizeOf" of Express language. The aggregate (of Express type AGGREGATE OF GENERIC) is wrapped in an object of type Value submitted to the method as the second parameter. If this parameter is indeterminate, then indeterminate value of size is returned. Through the context parameter, this method transfers some data to the where rule validation methods.

Parameters:
context - context in which the function is considered.
val - an aggregate the number of elements of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
Since:
4.1.0
See Also:
sizeOf(jsdai.lang.Value), sizeOfExt(jsdai.lang.SdaiContext, jsdai.lang.Value), "ISO 10303-11::15.22 SizeOf - aggregate function"

sqrt

public Value sqrt(Value val)
           throws SdaiException
Implements built-in function "Sqrt" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - a number the non-negative square root of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.23 Sqrt - arithmetic function"

tan

public Value tan(Value val)
          throws SdaiException
Implements built-in function "Tan" of Express language. The parameter (of type NUMBER) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - an angle the tangent of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.24 Tan - arithmetic function"

typeOf

public A_string typeOf(SdaiContext context)
                throws SdaiException
Implements built-in function "TypeOf" of Express language. The parameter (a value of Express type GENERIC) of this function is wrapped in the current object of this class. If the parameter is indeterminate, then as a result of the function an empty set is returned.

Parameters:
context - context in which the function is considered.
Returns:
a set of the names of all types the specified value is a member of.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
typeOfV(jsdai.lang.SdaiContext), "ISO 10303-11::15.25 TypeOf - general function"

typeOfV

public Value typeOfV(SdaiContext context)
              throws SdaiException
Implements built-in function "TypeOf" of Express language. The parameter (a value of Express type GENERIC) of this function is wrapped in the current object of this class. The result evaluates to the list of strings represented by the newly created object of type Value. If the parameter is indeterminate, then as a result of the function an empty list is returned.

Parameters:
context - context in which the function is considered.
Returns:
a list of the names of all types the specified value is a member of.
Throws:
SdaiException - SY_ERR, underlying system error.
See Also:
typeOf(jsdai.lang.SdaiContext), "ISO 10303-11::15.25 TypeOf - general function"

usedIn

public Value usedIn(Value instance,
                    Value role)
             throws SdaiException
Implements built-in function "UsedIn" of Express language. The parameters (of Express type GENERIC and STRING, respectively) are wrapped in the objects of type Value submitted to the method. If either of the parameters is indeterminate, then as a result of the function unset value is taken.

Parameters:
instance - an entity instance the usage of which is reported.
role - the name of the attribute playing the role in which the specified instance is used.
Returns:
the current object of this class representing the result of the function - a bag of instances that use the specified instance in the specified role.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.26 UsedIn - general function"

value

public Value value(Value val)
            throws SdaiException
Implements built-in function "Value" of Express language. The parameter (of type STRING) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function unset value is taken.

Parameters:
val - a string the numeric representation of which is asked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.27 Value - arithmetic function"

value_in

public Value value_in(SdaiContext context,
                      Value aggr,
                      Value el)
               throws SdaiException
Implements built-in function "Value_in" of Express language. The parameters (of Express type AGGREGATE OF GENERIC and GENERIC, respectively) are wrapped in the objects of type Value submitted to the method. If either of the parameters is indeterminate, then as a result of the function UNKNOWN value is returned.

Parameters:
context - context in which the function is considered.
aggr - an aggregate.
el - a value whose membership to the specified aggregate is checked.
Returns:
the current object of this class representing the result of the function - a logical value depending on whether or not the specified value is a member of the specified aggregate.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.28 Value_in - membership function"

value_unique

public Value value_unique(SdaiContext context,
                          Value aggr)
                   throws SdaiException
Implements built-in function "Value_unique" of Express language. The parameter (of Express type AGGREGATE OF GENERIC) is wrapped in an object of type Value submitted to the method. If the parameter is indeterminate, then as a result of the function UNKNOWN value is returned.

Parameters:
context - context in which the function is considered.
aggr - an aggregate the uniqueness of which elements is checked.
Returns:
the current object of this class representing the result of the function.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
"ISO 10303-11::15.29 Value_unique - uniqueness function"

insert

public void insert(SdaiContext context,
                   Value val,
                   Value index)
            throws SdaiException
Implements built-in procedure "Insert" of Express language. The parameters (of Express type GENERIC and INTEGER, respectively) are wrapped in the objects of type Value submitted to the method. The aggregate itself (of Express type LIST OF GENERIC) is represented by the current object of Value class.

Parameters:
context - context in which the procedure is considered.
val - an element to be inserted into the list.
index - an integer giving the position in the list at which the specified element is to be inserted.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
See Also:
insert(SdaiContext, Value, Value, Value), "ISO 10303-11::16.1 Insert"

insert

public void insert(SdaiContext context,
                   Value list,
                   Value new_member,
                   Value index)
            throws SdaiException
Implements built-in procedure "Insert" of Express language. The parameters (of Express type GENERIC and INTEGER, respectively) are wrapped in the objects of type Value submitted to the method. The aggregate itself (of Express type LIST OF GENERIC) is also represented by the object of Value class identified as the second parameter of the method.

Parameters:
context - context in which the procedure is considered.
list - a list into which the element is to be inserted.
new_member - an element to be inserted into the list.
index - an integer giving the position in the list at which the specified element is to be inserted.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
See Also:
insert(SdaiContext, Value, Value), "ISO 10303-11::16.1 Insert"

remove

public void remove(Value index)
            throws SdaiException
Implements built-in procedure "Remove" of Express language. The parameter (of Express type INTEGER) is wrapped in an object of type Value submitted to the method. The aggregate itself (of Express type LIST OF GENERIC) is represented by the current object of Value class.

Parameters:
index - an integer giving a position of an element in the list to be removed.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
remove(Value, Value), "ISO 10303-11::16.2 Remove"

remove

public void remove(Value list,
                   Value index)
            throws SdaiException
Implements built-in procedure "Remove" of Express language. The parameter (of Express type INTEGER) is wrapped in an object of type Value submitted to the method. The aggregate itself (of Express type LIST OF GENERIC) is also represented by the object of Value class identified as the first parameter of the method.

Parameters:
list - a list from which the element has to be removed.
index - an integer giving a position of an element in the list to be removed.
Throws:
SdaiException - VA_NEXS, value does not exist.
SdaiException - SY_ERR, underlying system error.
See Also:
remove(Value), "ISO 10303-11::16.2 Remove"

isIndeterminate

public boolean isIndeterminate()
                        throws SdaiException
Returns true if and only if the current object of Value class wraps Express indeterminate value ("?").

Returns:
true if current Value represents Express "?", and false otherwise.
Throws:
SdaiException

replaceByAlreadyExistingAndDelete

public Value replaceByAlreadyExistingAndDelete(SdaiContext _context,
                                               java.lang.Class entity_extent,
                                               SdaiModel entity_model)
                                        throws SdaiException
Checks if the specified entity instance is value-equal to another entity instance in the specified SdaiModel. If such an entity instance is found, then the submitted instance is deleted and the found instance is returned. Otherwise, the replacement operation is not performed, and the method returns the submitted entity instance. The input entity instance is wrapped in the current object of Value.

Parameters:
entity_extent - Java class for the entity of which instances are searched.
entity_model - SdaiModel whose content is searched.
Returns:
entity instance that is either the replacement of the specified instance or specified instance itself.
Throws:
SdaiException - MX_NRW, SDAI-model access not read-write.
SdaiException - EI_NEXS, entity instance does not exist.
SdaiException - SY_ERR, underlying system error.
Since:
4.1.2

unnest

public Value unnest()
             throws SdaiException
Performs a conversion of the nested aggregate to a one-dimensional aggregate of entity instances. Entity instances of all types found in the nested aggregate are stored in the result aggregate. Elements which are not entity instances are bypassed. The Express type of the resulting aggregate is AGGREGATE OF GENERIC.

Returns:
the aggregate of entity instances.
Throws:
SdaiException - SY_ERR, underlying system error.
Since:
4.1.2

extent

public Value extent(SdaiContext context,
                    Value data_type)
             throws SdaiException
Implements built-in function "Extent" of Express-X language. The parameter (of Express type STRING) is wrapped in an object of type Value submitted to the method. The resulting aggregate (of Express type SET OF GENERIC) is represented by the current object of Value class.

Parameters:
context - context in which the function is considered.
data_type - the string representing the name of an entity data type.
Throws:
SdaiException - VT_NVLD, value type invalid.
SdaiException - SY_ERR, underlying system error.
Since:
4.1.2
See Also:
"ISO 10303-14::11.1 Extent - general function"

toString

public java.lang.String toString()
Returns a description of this value as a String.

Returns:
a description of the current object of Value class.

Copyright © LKSoftWare GmbH, 1999-2008