Data Types
Data Types
are the fundamental pieces of storage that
Adaptive Framework uses to represent a type of data. They are
implementations of the afw_data_type
interface,
created and registered by the core, or by extensions. Some of the
features of a Data Type include storing the value internally, providing
an external representation, a way to declare it in JSON and JSONSchema
format, and a function to compare two values.
The following data types are defined by core:
Data Type | Description |
---|---|
x500Name | Data type x500Name hold a X.500 distinguished name. |
rfc822Name | Data type rfc822Name holds a string value that conforms to RFC822: local-part@domain |
implied | Any value can be assigned as the value of data type "implied". The actual data type is the data type of the value. Most "type check" errors can be detected during compile to reduce the number of errors detected during evaluation. |
time | Data type time is ISO 8601 extended format hh:mm:ss with an optional time zone. |
template | Data type template holds the source for an adaptive template. |
any | Any value can be assigned as the value of data type "any". The actual data type is the data type of the value. Data type "implied" is preferred over data type "any" since "any" only detects type check errors during evaluation. |
script | Data type script holds the source for an adaptive script. |
password | Data type password hold a secret series of characters that enables a user to access a file, computer, or program. |
function | This is an Adaptive Script function definition, an ExpressionTupleOperation_lambda, the name of a built-in Adaptive function, or the name of a qualified variable that holds a function value. If dataTypeParameterType is specified, the function must match that signature. |
ipAddress | Data type ipAddress holds an Internet Protocol address (IP address). |
dnsName | Data type dnsName is Domain Name System (DNS) name. |
list | Data type list holds a list of adaptive value. The list can have value all of one data type or of different data types. |
date | Data type date holds a calendar date in format CCYY-MM-DD. |
regexp | Data type regexp holds the source for a regular expression conforming to XML Schemas Part 2 Datatype Appendix F. |
objectId | Data type objectId holds an adaptive object's object id. This is an association with another adaptive object by objectId that has the same adaptor id and object type id. |
hexBinary | Data type hexBinary holds binary data. Its string value is character hex encoded. |
integer | Data type integer hold a positive or negative whole numbers. The string value of a negative integer is preceded with a minus sign ('-'). A positive integer is displayed without a sign but can optionally be preceded by a plus sign ('+') on input. |
string | Data type string hold a sequence of Unicode code points as defined at http://www.unicode.org. |
object | Data type object holds an adaptive object. |
expression | Data type expression holds the source for an adaptive expression. |
base64Binary | Data type base64Binary holds binary data. Its string value is base64 encoded. |
boolean | Data type boolean holds a boolean value. Its to_string() value is "true" or "false". Its from_string() true value can be mixed case "t", "true" or "1". Its from_string() false value can be mixed case "f", "false" or "0". |
double | Data type double holds a double-precision 64-bit floating point number. It also can hold the values 0, -0, INF, -INF and NaN. |
dateTime | Data type dateTime is ISO 8601 extended format CCYY-MM-DDThh:mm:ss with an optional time zone. |
anyURI | Data type anyURI holds a Uniform Resource Identifier Reference (URI). The URI can be absolute or relative, and may have an optional fragment identifier. |
hybrid | Data type hybrid can be a string containing the source for an adaptive expression tuple, an adaptive script, or an adaptive template. It can also be a literal (evaluated value) such as boolean, double, integer, list, object, or string. If the value is a string that begins with a square bracket ('['), the string is the source for an expressionTuple. If the value is a string that begins with a shebang ('#!'), the string is the source for a script. If not either of these, but the string contains a substitution ( ${...} ), the string is a source for a template. In other cases, the string is a string literal. |
ia5String | Data type ia5String holds a string restricted to the ASN.1 notation. It is used to represent ISO 646 (IA5) characters. which contains precisely 128 characters. |
unevaluated | This is a value produced by any of the Adaptive compile functions that can be evaluated using the evaluate() function. |
yearMonthDuration | Data type yearMonthDuration an ISO 8601 extended format PnYnMn. |
dayTimeDuration | Data type dayTimeDuration is an ISO 8601 extended format DTnHnMnS |
xpathExpression | Data type xpathExpression holds an XML Path Language (XPath) expression. An xpath expression provides the ability to navigate around the tree representation of an XML document. |
null | Data type null is a special data type that represents no value. |
objectPath | Data type objectPath is the path within the same instance of Adaptive Framework of an object. Its for is /<adaptorId>/<objectType>/<objectId> where <adaptorId> is an adaptor id, <objectType> is the object id of an object type, and <objectId> is the id of an object. |