logic
access
count
Description
Count parts of a compound part.
Format
access/count
Example
<part name="count" channel="inline" format="access/count" model=""> <property name="count" channel="inline" format="path/knowledge" model=".count"/> <property name="part" channel="inline" format="path/knowledge" model=".addition_application"/> <property name="selection" channel="inline" format="text/plain" model="subsequence"/> <property name="filter" channel="inline" format="text/plain" model="summand"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
count | The knowledge model in which to store the result. | true | path/* | |
part | The part whose elements to be counted. | true | path/* | number/* | |
selection | The area of the elements names, to be compared. May be one of: all, suffix, prefix, subsequence. If null the element count is compared without comparison. | false | path/* | meta/type | |
filter | String to compare the elements with. Elements will only be counted if matching the filter string. | false | path/* | meta/type |
get-channel
Description
Get a part's channel.
Format
access/get-channel
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
element | The part's element (channel). | true | path/* | |
part | The knowledge path to the part. | true | path/* | number/* |
get-encoding
Description
Get a part's encoding.
Format
access/get-encoding
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
element | The part's element (encoding). | true | path/* | |
part | The knowledge path to the part. | true | path/* | number/* |
get-format
Description
Get a part's format.
Format
access/get-format
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
element | The part's element (format). | true | path/* | |
part | The knowledge path to the part. | true | path/* | number/* |
get-language
Description
Get a part's language.
Format
access/get-language
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
element | The part's element (language). | true | path/* | |
part | The knowledge path to the part. | true | path/* | number/* |
get-model
Description
Get a part's model.
Format
access/get-model
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
element | The part's element (model). | true | path/* | |
part | The knowledge path to the part. | true | path/* | number/* |
get-name
Description
Get a part's name.
Format
access/get-name
Example
<part name="copy_name_of_part_1_into_model_of_part_2" channel="inline" format="access/get-name" model=""> <property name="element" channel="inline" format="path/knowledge" model=".part_2"/> <property name="part" channel="inline" format="path/knowledge" model=".part_1"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
element | The part's element (name). | true | path/* | |
part | The knowledge path to the part. | true | path/* | number/* |
get-properties
Description
Get a part's properties.
Format
access/get-properties
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
element | The part's element (properties). | true | path/* | |
part | The knowledge path to the part. | true | path/* | number/* |
get-reference
Description
Get a part's reference.
Format
access/get-reference
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
element | The part's element (reference). | true | path/* | |
part | The knowledge path to the part. | true | path/* | number/* |
get-type
Description
Get a part's type.
Format
access/get-type
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
element | The part's element (type). | true | path/* | |
part | The knowledge path to the part. | true | path/* | number/* |
indicate-empty
Description
Indicates if data are empty, i.e. the count is zero.
Format
access/indicate-empty
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
result | The result flag, set to true on successful comparison, left untouched otherwise. | true | path/* | |
part | The part. | true | path/* | number/* |
indicate-exists
Description
Indicates if data exist, i.e. the count is greater than zero.
Format
access/indicate-exists
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
result | The result flag, set to true on successful comparison, left untouched otherwise. | true | path/* | |
part | The part. | true | path/* | number/* |
calculate
absolute
Description
Determine the absolute value of a number.
Format
calculate/absolute
Example
<part name="absolute" channel="inline" format="calculate/absolute" model=""> <property name="result" channel="inline" format="path/knowledge" model=".result"/> <property name="operand" channel="inline" format="number/integer" model="1,2,3"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | The absolute value of the given number. | true | path/* | |
operand | ... . | true | path/* | number/* | |
type | The number type. It has to be identical for all parametres. | true | path/* | meta/type |
add
Description
Adds two numbers of the given format.
Format
calculate/add
Example
<part name="add" channel="inline" format="calculate/add" model=""> <property name="result" channel="inline" format="path/knowledge" model=".result"/> <property name="operand" channel="inline" format="number/integer" model="1,2,"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | The sum resulting from the addition. It initially contains the first summand. | true | path/* | |
operand | The second summand for the addition. | true | path/* | number/* | |
type | The number type. It has to be identical for all parametres. | true | path/* | meta/type |
divide
Description
Divides two numbers of the given format
Format
calculate/divide
Example
<part name="divide" channel="inline" format="calculate/divide" model=""> <property name="result" channel="inline" format="path/knowledge" model=".result"/> <property name="operand" channel="inline" format="number/integer" model="1,2,3"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | The quotient resulting from the divison. It initially contains the dividend. | true | path/* | |
operand | The divisor for the division. | true | path/* | number/* | |
type | The number type. It has to be identical for all parametres. | true | path/* | meta/type |
multiply
Description
Multiplies two numbers of the given format.
Format
calculate/multiply
Example
<part name="multiply" channel="inline" format="calculate/multiply" model=""> <property name="result" channel="inline" format="path/knowledge" model=".result"/> <property name="operand" channel="inline" format="number/integer" model="1,2,3"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | The product resulting from the multiplication. It initially contains the first factor. | true | path/* | |
operand | The second factor for the multiplication. | true | path/* | number/* | |
type | The number type. It has to be identical for all parametres. | true | path/* | meta/type |
negate
Description
Negates a given number.
Format
calculate/negate
Example
<part name="negate" channel="inline" format="calculate/negate" model=""> <property name="result" channel="inline" format="path/knowledge" model=".result"/> <property name="operand" channel="inline" format="number/integer" model="1,2,3"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | The output resulting from the negation. | true | path/* | |
operand | The number which is to negate. | true | path/* | number/* | |
type | The number type. It has to be identical for all parametres. | true | path/* | meta/type |
reduce
Description
Not implemented yet.
Format
calculate/reduce
Example
Properties
name | description | required | format | model |
---|
remainder
Description
Not implemented yet.
Format
calculate/remainder
Example
Properties
name | description | required | format | model |
---|
subtract
Description
Subtracts two numbers of the given format.
Format
calculate/subtract
Example
<part name="subtract" channel="inline" format="calculate/subtract" model=""> <property name="result" channel="inline" format="path/knowledge" model=".result"/> <property name="operand" channel="inline" format="number/integer" model="1,2,3"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | The difference resulting from the subtraction. It initially contains the minuend. | true | path/* | |
operand | The subtrahend for the subtraction. | true | path/* | number/* | |
type | The number type. It has to be identical for all parametres. | true | path/* | meta/type |
cast
byte
Description
Casts a value from one type to another.
Format
cast/byte
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
destination | The knowledge model to cast to. | true | path/* | |
source | The knowledge model to cast from. | true | path/* | number/* | |
type | The source type. | true | path/* | meta/type |
character
Description
Casts a value from one type to another.
Format
cast/character
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
destination | The knowledge model to cast to. | true | path/* | |
source | The knowledge model to cast from. | true | path/* | number/* | |
type | The source type. | true | path/* | meta/type |
double
Description
Casts a value from one type to another.
Format
cast/double
Example
<part name="cast_temperature_maximum_count" channel="inline" format="cast/double" model=""> <property name="destination" channel="inline" format="path/knowledge" model=".settings.temperature_maximum_count_divisor"/> <property name="source" channel="inline" format="path/knowledge" model=".settings.temperature_maximum_count"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
destination | The knowledge model to cast to. | true | path/* | |
source | The knowledge model to cast from. | true | path/* | number/* | |
type | The source type. | true | path/* | meta/type |
integer
Description
Casts a value from one type to another.
Format
cast/integer
Example
<part name="cast_high_byte" channel="inline" format="cast/integer" model=""> <property name="destination" channel="inline" format="path/knowledge" model=".settings.voltage_high_byte"/> <property name="source" channel="inline" format="path/knowledge" model=".settings.voltage_buffer_high_byte"/> <property name="type" channel="inline" format="meta/type" model="number/byte"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
destination | The knowledge model to cast to. | true | path/* | |
source | The knowledge model to cast from. | true | path/* | number/* | |
type | The source type. | true | path/* | meta/type |
command
archive-file
Description
Archives the given data into a file.
Format
command/archive_file
Example
<part name="archive_file" channel="inline" format="command/archive-file" model=""> <property name="create" channel="inline" format="logicvalue/boolean" model="true"/> <property name="update" channel="inline" format="logicvalue/boolean" model="false"/> <property name="bzip2" channel="inline" format="logicvalue/boolean" model="false"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
create | The option for creating an archive. | false | logicvalue/boolean | |
update | The option for updating an archive. | false | logicvalue/boolean | |
bzip2 | The option for using the bzip2 compression algorithm. | false | logicvalue/boolean |
change-permission
Description
Changes the permission of a file or directory.
Format
command/change-permission
Example
<part name="chmod_file" channel="inline" format="command/change-permission" model=""> <property name="path" channel="inline" format="text/plain" model="./shell_command_change_permission/example.txt"/> <property name="user" channel="inline" format="text/plain" model="rwx"/> <property name="group" channel="inline" format="text/plain" model="rwx"/> <property name="other" channel="inline" format="text/plain" model="rw"/> <property name="recursive" channel="inline" format="logicvalue/boolean" model="true"/> <property name="verbose" channel="inline" format="logicvalue/boolean" model="false"/> <property name="silent" channel="inline" format="logicvalue/boolean" model="false"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
path | The path to the file or directory. | true | text/plain | |
user | The user rights. | true | text/plain | |
group | The group rights. | true | text/plain | |
other | The rights for anyone. | true | text/plain | |
recursive | change files and directories recursively | false | text/plain | |
silent | supress most error messages | false | text/plain | |
verbose | output a diagnostic for every file processed | false | text/plain |
copy-file
Description
Copies the file resource to a destination.
Format
command/copy
Example
<part name="copy_file" channel="inline" format="command/copy" model=""> <property name="source" channel="inline" format="text/plain" model="./shell_command_copy_file/original.txt"/> <property name="destination" channel="inline" format="text/plain" model="./shell_command_copy_file/copied_and_please_do_not_commit_me.txt"/> <property name="force" channel="inline" format="logicvalue/boolean" model="false"/> <property name="interactive" channel="inline" format="logicvalue/boolean" model="false"/> <property name="preserve-all-attributes" channel="inline" format="logicvalue/boolean" model="false"/> <property name="preserve-links" channel="inline" format="logicvalue/boolean" model="false"/> <property name="recursive" channel="inline" format="logicvalue/boolean" model="false"/> <property name="update" channel="inline" format="logicvalue/boolean" model="false"/> <property name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
source | the source to be copied | true | text/plain | |
destination | the destination to copy to | true | text/plain | |
force | the force option for not asking for permission for overwriting files or directories | false | logicvalue/boolean | |
interactive | the interactive option which askes everytime for permission of overwriting a file or directory | false | logicvalue/boolean | |
preserve_all_attributes | copied files and directories will have the same attributes as the originals | false | logicvalue/boolean | |
preserve_links | preserves links so that they are not dereferenced while copying | false | logicvalue/boolean | |
recursive | the option indicating that all sub directories should be copied as well | false | logicvalue/boolean | |
update | the update option which just copies more recent data to a destination path | false | logicvalue/boolean | |
verbal | shows which files and directories are being copied | false | logicvalue/boolean |
create-folder
Description
Creates a folder.
Format
command/create-folder
Example
<part name="create_folder" channel="inline" format="command/create-folder" model=""> <property name="path" channel="inline" format="text/plain" model="./shell_command_create_folder/i_am_a_created_folder"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
path | path to the directory | true | text/plain |
diff
Description
Compares two files.
Format
command/diff
Example
<part name="diff" channel="inline" format="command/diff" model=""> <property name="file1" channel="inline" format="text/plain" model="shell_command_diff\diff1.txt"/> <property name="file2" channel="inline" format="text/plain" model="shell_command_diff\diff2.txt"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
file1 | first file to compare | true | text/plain | |
file2 | second file to compare | true | text/plain |
echo-message
Description
Echos the message to standard output.
Format
command/echo
Example
<part name="echo_message" channel="inline" format="command/echo" model=""> <property name="message" channel="inline" format="text/plain" model="hello, this is an echo over standard output"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
message | the message which should be directed to the standard output | false | text/plain |
directory-contents
Description
Lists the directory contents.
Format
command/list-directory-contents
Example
<part name="list_parent_directory_recursively" channel="inline" format="command/list-directory-contents" model=""> <property name="path" channel="inline" format="text/plain" model="./.."/> <property name="all" channel="inline" format="logicvalue/boolean" model="true"/> <property name="long" channel="inline" format="logicvalue/boolean" model="false"/> <property name="one_row_per_entry" channel="inline" format="logicvalue/boolean" model="true"/> <property name="recursive" channel="inline" format="logicvalue/boolean" model="true"/> <property name="short" channel="inline" format="logicvalue/boolean" model="false"/> <property name="sort_by_file_size" channel="inline" format="logicvalue/boolean" model="false"/> <property name="sort_by_modification" channel="inline" format="logicvalue/boolean" model="false"/> <property name="sort_by_extension" channel="inline" format="logicvalue/boolean" model="false"/> </part> <part name="list_files_in_current_directory" channel="inline" format="command/list-directory-contents" model=""> <property name="all" channel="inline" format="logicvalue/boolean" model="false"/> <property name="long" channel="inline" format="logicvalue/boolean" model="true"/> <property name="export" channel="inline" format="text/plain" model="test.txt"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
path | the listing for the given path (the default is the current directory) | false | text/plain | |
all | the list all option (showing hidden, current . and upper .. directory) | false | logicvalue/boolean | |
long | the long listing option (showing user rights etc.) | false | logicvalue/boolean | |
one row per entry | the listing for showing one file or directory per row | false | logicvalue/boolean | |
recursive | the list for all files and directories, looking up all directories recursively for additional files and directories for the listing | false | logicvalue/boolean | |
short | the short version of the files and directory listing | false | logicvalue/boolean | |
sort by file size | sorts the current listing by file size | false | logicvalue/boolean | |
sort by modification date | sorts the current listing by the file and directory modification date | false | logicvalue/boolean | |
sort by extension | sorts the current listing alphabetically by file extension | false | logicvalue/boolean |
grep
Description
Searches for pattern in file.
Format
command/grep
Example
<part name="grep" channel="inline" format="command/grep" model=""> <property name="pattern" channel="inline" format="text/plain" model="test"/> <property name="file" channel="inline" format="text/plain" model="shell_command_grep/grep.txt"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
pattern | the pattern to search for | true | text/plain | |
file | the file to search in | true | text/plain |
move-file
Description
Moving files and directories from a path to another.
Format
command/move
Example
<part name="move_file" channel="inline" format="command/move" model=""> <property name="source" channel="inline" format="text/plain" model="./shell_command_move_file/original.txt"/> <property name="destination" channel="inline" format="text/plain" model="./shell_command_move_file/moved_and_please_do_not_commit_me.txt"/> <property name="force" channel="inline" format="logicvalue/boolean" model="false"/> <property name="interactive" channel="inline" format="logicvalue/boolean" model="true"/> <property name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
source | the path of the file or the directory which sould be moved | true | text/plain | |
destination | the path of the file or the directory which sould be moved | true | text/plain | |
force | the force option (never ask for permission to move any files or directories) | false | logicvalue/boolean | |
interactive | the interactive option (askes everytime for permission of moving a file or directory) | false | logicvalue/boolean | |
verbal | the verbal option (shows what have been moved) | false | logicvalue/boolean |
ping
Description
Pings a given host.
Format
command/ping
Example
<part name="ping" channel="inline" format="command/ping" model=""> <property name="host" channel="inline" format="text/plain" model="www.google.com"/> <property name="count" channel="inline" format="text/plain" model="5"/> <property name="interface" channel="inline" format="text/plain" model="eth0"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
host | the host to be pinged | true | text/plain | |
count | count of ping packets to send | false | text/plain | |
interface | interface to send packets on | false | text/plain |
remove-file
Description
Moving files and directories from a path to another..
Format
command/remove
Example
<part name="remove_file" channel="inline" format="command/remove" model=""> <property name="path" channel="inline" format="text/plain" model="./shell_command_remove_file/do_not_commit_if_this_is_deleted.txt"/> <property name="force" channel="inline" format="logicvalue/boolean" model="true"/> <property name="interactive" channel="inline" format="logicvalue/boolean" model="true"/> <property name="recursive" channel="inline" format="logicvalue/boolean" model="false"/> <property name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
path | the path including wildcards for deleting files and directories | true | text/plain | |
interactive | the interactive option (askes everytime for permission of deleting a file or directory) | false | logicvalue/boolean | |
recursive | the recursvie option (deletes any files in the current directory and in all of its subdirectories) | false | logicvalue/boolean | |
verbal | the verbal option (shows what have been moved) | false | logicvalue/boolean |
tape-archiver
Description
Moving files and directories from a path to another..
Format
command/tape-archiver
Example
<!-- pack --> <part name="pack_text_file_with_tape_archiver" channel="inline" format="command/tape-archiver" model=""> <property name="source" channel="inline" format="text/plain" model="./shell_command_tape_archiver_pack/i_should_be_packed_soon.txt"/> <property name="destination" channel="inline" format="text/plain" model="./shell_command_tape_archiver_pack/i_am_packed_now.tar"/> <property name="force" channel="inline" format="logicvalue/boolean" model="false"/> <property name="gzip" channel="inline" format="logicvalue/boolean" model="false"/> <property name="unpack" channel="inline" format="logicvalue/boolean" model="false"/> <property name="recursive" channel="inline" format="logicvalue/boolean" model="false"/> <property name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </part> <!-- unpack --> <part name="unpack_tar_with_text_file" channel="inline" format="command/tape-archiver" model=""> <property name="source" channel="inline" format="text/plain" model="./shell_command_tape_archiver_unpack/package.tar"/> <property name="destination" channel="inline" format="text/plain" model="./shell_command_tape_archiver_unpack"/> <property name="force" channel="inline" format="logicvalue/boolean" model="false"/> <property name="gzip" channel="inline" format="logicvalue/boolean" model="false"/> <property name="unpack" channel="inline" format="logicvalue/boolean" model="true"/> <property name="recursive" channel="inline" format="logicvalue/boolean" model="false"/> <property name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
source | the source for archiving | true | text/plain | |
destination | the destination where the source is being archived | true | text/plain | |
force | the force option for not asking for permission for overwriting files or directories | false | logicvalue/boolean | |
gzip | the gunzip option to indicate gunzip compression or extraction | false | logicvalue/boolean | |
unpack | the option for unpacking / extraction or else it will pack | false | logicvalue/boolean | |
verbal | shows which files and directories are being copied | false | logicvalue/boolean |
word-count
Description
Moving files and directories from a path to another..
Format
command/word-count
Example
<part name="chmod_file" channel="inline" format="command/word-count" model=""> <property name="path" channel="inline" format="text/plain" model="./shell_command_word_count/example.txt"/> <property name="bytes" channel="inline" format="logicvalue/boolean" model="false"/> <property name="chars" channel="inline" format="logicvalue/boolean" model="true"/> <property name="lines" channel="inline" format="logicvalue/boolean" model="true"/> <property name="max-line-length" channel="inline" format="logicvalue/boolean" model="false"/> <property name="words" channel="inline" format="logicvalue/boolean" model="true"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
path | path to the file or directory | true | text/plain | |
bytes | Outputs the number of bytes | false | logicvalue/boolean | |
chars | Outputs the number of chars | false | logicvalue/boolean | |
lines | Outputs the number of lines | false | logicvalue/boolean | |
max-line-length | Outputs the length of the longest line | false | logicvalue/boolean | |
words | Outputs the number of words | false | logicvalue/boolean |
communicate
receive
Description
Receives a message via the given channel.
Format
communicate/receive
Example
<part name="initialise" channel="inline" format="communicate/receive" model=""> <property name="channel" channel="inline" format="meta/channel" model="file"/> <property name="encoding" channel="inline" format="meta/encoding" model="utf-8"/> <property name="language" channel="inline" format="meta/language" model="text/cybol"/> <property name="format" channel="inline" format="meta/format" model="element/part"/> <property name="message" channel="inline" format="text/plain" model="ui/app.cybol"/> <property name="model" channel="inline" format="path/knowledge" model=".app"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
channel | the channel via which to receive the message (terminal, display, www etc.) | true | path/* | meta/channel | |
encoding | the encoding (utf-8, utf-32 for inline channel etc.) | true | meta/encoding | |
language | the language of the data received (cybol, http_request, xdt etc.) | true | meta/language | |
format | the format of the data received (boolean, character, integer etc.) | true | meta/format | |
message | the source (knowledge template) from where to receive data, e.g. the gui root window | true | path/knowledge | text/plain | |
meta | the source (knowledge template) from where to receive meta data (properties) | false | path/knowledge | |
model | the model to be filled with the data received | true | path/knowledge | |
minimum | the minimum number of bytes to be received in one call of the read function | false | number/integer | |
maximum | the maximum number of bytes to be received in one call of the read function | false | number/integer | |
style | the style of socket communication, only if channel is www, cyboi or similar | false |
send
Description
Sends a message via the given channel.
Format
communicate/send
Example
<part name="print_adc" channel="inline" format="communicate/send" model=""> <property name="channel" channel="inline" format="meta/channel" model="terminal"/> <property name="encoding" channel="inline" format="meta/encoding" model="utf-8"/> <property name="language" channel="inline" format="meta/language" model="message/cli"/> <property name="format" channel="inline" format="meta/format" model="text/plain"/> <property name="message" channel="inline" format="text/plain" model="Current adc rounded in voltage:"/> <property name="newline" channel="inline" format="logicvalue/boolean" model="true"/> </part> <part name="print_adc_value" channel="inline" format="communicate/send" model=""> <property name="channel" channel="inline" format="meta/channel" model="terminal"/> <property name="encoding" channel="inline" format="meta/encoding" model="utf-8"/> <property name="language" channel="inline" format="meta/language" model="message/cli"/> <property name="format" channel="inline" format="meta/format" model="number/fraction-decimal"/> <property name="message" channel="inline" format="path/knowledge" model=".settings.adc"/> <property name="newline" channel="inline" format="logicvalue/boolean" model="true"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
channel | the channel via which to send the message (e.g. http) | true | path/* | meta/channel | |
encoding | the encoding to be used, e.g. ascii; the default is utf-8 | false | meta/encoding | |
language | the language into which to serialise the message before sending it (e.g. html, model-diagram etc.) | true | meta/language | |
format | the format into which to serialise the message before sending (e.g. element/part, number/integer) | true | meta/format | |
message | the source message to be sent to another system | true | path/knowledge | text/plain | |
receiver | the destination receiving the message | false | text/plain | |
mode | the mode of communication, only if channel is http | false | ||
namespace | the namespace of the socket, only if channel is http | false | ||
style | the style of communicationl, only if channel is http | false | text/plain | |
area | the user interface area to be repainted, only if type is tui or gui | false | ||
clear | the flag indicating whether or not to clear the screen before painting a user interface, only if type is terminal or tui | false | logicvalue/boolean | |
newline | the flag indicating whether or not to add a new line after having printed the message on screen, only if channel is terminal | false | logicvalue/boolean | |
null_termination | the flag indicating whether or not to add an ascii null termination character '\0' at the end of the (multibyte) message (after encoding) | false | logicvalue/boolean |
compare
equal
Description
Compares left and right parametre.
Format
compare/equal
Example
<part name="compare_equal" channel="inline" format="compare/equal" model=""> <property name="result" channel="inline" format="path/knowledge" model=".model.result"/> <property name="left" channel="inline" format="path/knowledge" model=".model.left"/> <property name="right" channel="inline" format="path/knowledge" model=".model.right"/> <property name="type" channel="inline" format="meta/type" model="number/complex-cartesian"/> <property name="selection" channel="inline" format="text/plain" model="all"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | the knowledge model, in which the result is stored (of type boolean) | true | path/* | logicvalue/boolean | |
left | the left operand | true | path/* | number/* | text/plain | |
right | the right operand | true | path/* | number/* | text/plain | |
type | the operand type which is equal for both operands | true | path/* | meta/type | |
selection | the area of two strings or number vectors to be compared | true | path/* | meta/type |
greater
Description
Compares left and right parametre.
Format
compare/greater
Example
<part name="compare_loop_count" channel="inline" format="compare/greater" model=""> <property name="result" channel="inline" format="path/knowledge" model=".counter.break"/> <property name="left" channel="inline" format="path/knowledge" model=".counter.count"/> <property name="right" channel="inline" format="path/knowledge" model=".counter.maximum"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> <property name="selection" channel="inline" format="text/plain" model="all"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | the knowledge model, in which the result is stored (of type boolean) | true | path/* | logicvalue/boolean | |
left | the left operand | true | path/* | number/* | text/plain | |
right | the right operand | true | path/* | number/* | text/plain | |
type | the operand type which is equal for both operands | true | path/* | meta/type | |
selection | the area of two strings or number vectors to be compared | true | path/* | meta/type |
greater-or-equal
Description
Compares left and right parametre.
Format
compare/greater-or-equal
Example
<part name="compare_loop_count" channel="inline" format="compare/greater-or-equal" model=""> <property name="result" channel="inline" format="path/knowledge" model=".domain.break"/> <property name="left" channel="inline" format="path/knowledge" model=".domain.count"/> <property name="right" channel="inline" format="path/knowledge" model=".domain.maximum"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> <property name="selection" channel="inline" format="text/plain" model="all"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | the knowledge model, in which the result is stored (of type boolean) | true | path/* | logicvalue/boolean | |
left | the left operand | true | path/* | number/* | text/plain | |
right | the right operand | true | path/* | number/* | text/plain | |
type | the operand type which is equal for both operands | true | path/* | meta/type | |
selection | the area of two strings or number vectors to be compared | true | path/* | meta/type |
unequal
Description
Compares left and right parametre.
Format
compare/unequal
Example
<part name="compare_unequal" channel="inline" format="compare/unequal" model=""> <property name="result" channel="inline" format="path/knowledge" model=".model.result"/> <property name="left" channel="inline" format="path/knowledge" model=".model.left"/> <property name="right" channel="inline" format="path/knowledge" model=".model.right"/> <property name="type" channel="inline" format="meta/type" model="number/complex-cartesian"/> <property name="selection" channel="inline" format="text/plain" model="all"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
result | the knowledge model, in which the result is stored (of type boolean) | true | path/* | logicvalue/boolean | |
left | the left operand | true | path/* | number/* | text/plain | |
right | the right operand | true | path/* | number/* | text/plain | |
type | the operand type which is equal for both operands | true | path/* | meta/type | |
selection | the area of two strings or number vectors to be compared | true | path/* | meta/type |
convert
decode
Description
Decodes the source into the destination, according to the given decoding.
Format
convert/decode
Example
Properties
name | description | required | format | model |
---|
encode
Description
Encodes the source into the destination, according to the given encoding.
Format
convert/encode
Example
Properties
name | description | required | format | model |
---|
flow
branch
Description
Branches the programme flow, depending on the criterion flag.
Format
flow/branch
Example
<part name="branch_voltage" channel="inline" format="flow/branch" model=""> <property name="criterion" channel="inline" format="path/knowledge" model=".settings.voltage_criterion"/> <property name="true" channel="file" format="element/part" model="indoor_climate/add_voltage.cybol"/> <property name="false" channel="file" format="element/part" model="indoor_climate/report_voltage_failure.cybol"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
criterion | the flag specifying which of the two models to execute | true | path/* | logicvalue/boolean | |
true | the logic knowledge model to be executed if the condition is true | true | element/part | |
false | the logic knowledge model to be executed if the condition is false | true | element/part |
loop
Description
Loops the programme flow endlessly, until the break flag is set.
Format
flow/loop
Example
<part name="collect_voltages" channel="inline" format="flow/loop" model=""> <property name="break" channel="inline" format="path/knowledge" model=".settings.adc_break"/> <property name="model" channel="file" format="element/part" model="adc/collect_voltages.cybol"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
break | the break flag; once set, the loop will be left (exited) | true | path/* | logicvalue/boolean | |
model | the logic knowledge model to be executed repeatedly by the loop | true | path/* | element/part |
sequence
Description
Executes the given programme flow as sequence.
Format
flow/sequence
Example
Properties
name | description | required | format | model |
---|
live
interrupt
Description
Interrupts a service.
Format
live/interrupt
Example
<part name="interrupt_x_window_system" channel="inline" format="live/interrupt" model=""> <property name="channel" channel="inline" format="meta/channel" model="display"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
channel | the channel whose service is to be interrupted (terminal, display, www etc.) | true | path/* | meta/channel |
sense
Description
Senses an interrupt request happening on the given channel.
Format
live/sense
Example
<part name="set_handler_commands_reading" channel="inline" format="live/sense" model=""> <property name="channel" channel="inline" format="meta/channel" model="terminal"/> <property name="handler" channel="inline" format="path/knowledge" model=".app.handler"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
channel | the channel via which to receive the message (terminal, www, x-window-system etc.) | true | path/* | meta/channel | |
handler | the handler (usually a receive operation) that parses an input and filters out a command that the system is to react to | false | path/knowledge |
logify
and
Description
Applies the boolean logic operation AND. The 'output' parametre represents the first operand; the 'input' parametre the second.
Format
logify/and
Example
<part name="result" channel="inline" format="number/byte" model="65"/> <part name="operand" channel="inline" format="number/byte" model="80"/> <part name="operation" channel="inline" format="logify/and" model=""> <property name="output" channel="inline" format="path/knowledge" model=".app.result"/> <property name="input" channel="inline" format="path/knowledge" model=".app.operand"/> <property name="type" channel="inline" format="meta/type" model="number/byte"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
output | the knowledge model in which the output is stored; used as first input operand | true | path/knowledge | |
input | the second input operand | true | path/knowledge |
not
Description
Applies the boolean logic operation NOT. The 'output' parametre represents the first operand; the 'input' parametre the second.
Format
logify/not
Example
<part name="result" channel="inline" format="logicvalue/boolean" model="true"/> <part name="operation" channel="inline" format="logify/not" model=""> <property name="output" channel="inline" format="path/knowledge" model=".app.result"/> <property name="input" channel="inline" format="path/knowledge" model=".app.result"/> <property name="type" channel="inline" format="meta/type" model="logicvalue/boolean"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
output | the knowledge model in which the output is stored; used as first input operand | true | path/knowledge | |
input | the second input operand | true | path/knowledge |
or
Description
Applies the boolean logic operation OR. The 'output' parametre represents the first operand; the 'input' parametre the second.
Format
logify/or
Example
<part name="result" channel="inline" format="logicvalue/boolean" model="false"/> <part name="operand" channel="inline" format="logicvalue/boolean" model="false"/> <part name="operation" channel="inline" format="logify/or" model=""> <property name="output" channel="inline" format="path/knowledge" model=".app.result"/> <property name="input" channel="inline" format="path/knowledge" model=".app.operand"/> <property name="type" channel="inline" format="meta/type" model="logicvalue/boolean"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
output | the knowledge model in which the output is stored; used as first input operand | true | path/knowledge | |
input | the second input operand | true | path/knowledge |
maintain
shutdown
Description
Shuts down the service running on the given channel.
Format
maintain/shutdown
Example
<part name="shutdown_serial_port" channel="inline" format="maintain/shutdown" model=""> <property name="channel" channel="inline" format="path/knowledge" model=".settings.device"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
channel | the channel on which to shutdown a service (terminal, www, x-window-system, ...) | true | path/* | meta/channel |
startup
Description
Starts up a service on the given channel.
Format
maintain/startup
Example
<part name="startup_terminal" channel="inline" format="maintain/startup" model=""> <property name="channel" channel="inline" format="meta/channel" model="terminal"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
channel | the channel on which to startup a service (terminal, display, tcp_socket, unix_socket, ...) | true | path/* | meta/channel | |
namespace | Only if service is www, cyboi or similar! The namespace of the socket | false | text/plain | |
style | Only if service is www, cyboi or similar! The namespace of the socket | false | text/plain | |
address | Only if service is www, cyboi or similar! The address of hosts communicating with this system via socket. | false | text/plain |
manipulate
check
Description
Gets the bit at the given position.
Format
manipulate/check
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
value | The knowledge model representing the value. | true | path/* | |
position | The bit position within the value. | true | path/* | number/* | |
type | The value type. | true | path/* | meta/type | |
count | The number of values to be manipulated (if null, the value part model count will be used instead). | false | path/* | number/* | |
index | The index from which to start manipulating values (if null, an index of zero will be used instead). | false | path/* | number/* |
clear
Description
Resets the bit at a given position.
Format
manipulate/clear
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
value | The knowledge model representing the value. | true | path/* | |
position | The bit position within the value. | true | path/* | number/* | |
type | The value type. | true | path/* | meta/type | |
count | The number of values to be manipulated (if null, the value part model count will be used instead). | false | path/* | number/* | |
index | The index from which to start manipulating values (if null, an index of zero will be used instead). | false | path/* | number/* |
rotate-left
Description
Rotates all bits of a value to the left by position.
Format
manipulate/rotate-left
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
value | The knowledge model representing the value. | true | path/* | |
position | The bit position within the value. | true | path/* | number/* | |
type | The value type. | true | path/* | meta/type | |
count | The number of values to be manipulated (if null, the value part model count will be used instead). | false | path/* | number/* | |
index | The index from which to start manipulating values (if null, an index of zero will be used instead). | false | path/* | number/* |
rotate-right
Description
Rotates all bits of a value to the right by position.
Format
manipulate/rotate-right
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
value | The knowledge model representing the value. | true | path/* | |
position | The bit position within the value. | true | path/* | number/* | |
type | The value type. | true | path/* | meta/type | |
count | The number of values to be manipulated (if null, the value part model count will be used instead). | false | path/* | number/* | |
index | The index from which to start manipulating values (if null, an index of zero will be used instead). | false | path/* | number/* |
set
Description
Sets the bit at the given position.
Format
manipulate/set
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
value | The knowledge model representing the value. | true | path/* | |
position | The bit position within the value. | true | path/* | number/* | |
type | The value type. | true | path/* | meta/type | |
count | The number of values to be manipulated (if null, the value part model count will be used instead). | false | path/* | number/* | |
index | The index from which to start manipulating values (if null, an index of zero will be used instead). | false | path/* | number/* |
shift-left
Description
Shifts all bits of value to the left by position.
Format
manipulate/shift-left
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
value | The knowledge model representing the value. | true | path/* | |
position | The bit position within the value. | true | path/* | number/* | |
type | The value type. | true | path/* | meta/type | |
count | The number of values to be manipulated (if null, the value part model count will be used instead). | false | path/* | number/* | |
index | The index from which to start manipulating values (if null, an index of zero will be used instead). | false | path/* | number/* |
shift-right
Description
Shifts all bits of value to the right by position.
Format
manipulate/shift-right
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
value | The knowledge model representing the value. | true | path/* | |
position | The bit position within the value. | true | path/* | number/* | |
type | The value type. | true | path/* | meta/type | |
count | The number of values to be manipulated (if null, the value part model count will be used instead). | false | path/* | number/* | |
index | The index from which to start manipulating values (if null, an index of zero will be used instead). | false | path/* | number/* |
toggle
Description
Toggles the bit at the given position.
Format
manipulate/toggle
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
value | The knowledge model representing the value. | true | path/* | |
position | The bit position within the value. | true | path/* | number/* | |
type | The value type. | true | path/* | meta/type | |
count | The number of values to be manipulated (if null, the value part model count will be used instead). | false | path/* | number/* | |
index | The index from which to start manipulating values (if null, an index of zero will be used instead). | false | path/* | number/* |
memorise
create
Description
Creates an empty part consisting of name and type only.
Format
memorise/create
Example
<part name="create_summand_2" channel="inline" format="memorise/create" model=""> <property name="name" channel="inline" format="text/plain" model="summand_2"/> <property name="format" channel="inline" format="meta/format" model="number/integer"/> <property name="element" channel="inline" format="text/plain" model="part"/> <property name="whole" channel="inline" format="path/knowledge" model=".addition_application"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
name | the name of the part to be created | true | text/plain | |
format | the format of the part to be created, from which gets determined the type | true | meta/format | |
element | the kind of element to be created (part, property); a part element will be added to the whole model's part hierarchy; a property element to the whole model's properties hierarchy | true | text/plain | |
whole | If null, the new part will be added to the knowledge memory root. The compound to which to add to the new part. | false | element/part |
destroy
Description
Destroys a part and removes it from the knowledge model.
Format
memorise/destroy
Example
<part name="destroy_tui_control" channel="inline" format="memorise/destroy" model=""> <property name="name" channel="inline" format="path/knowledge" model=".tui_control"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
name | the part to be destroyed | true | path/knowledge |
modify
append
Description
Appends the source- to the destination part.
Format
modify/append
Example
<part name="append_command" channel="inline" format="modify/append" model=""> <property name="destination" channel="inline" format="path/knowledge" model=".app.safetmp.path"/> <property name="source" channel="inline" format="path/knowledge" model=".app.safetmp.operation_type"/> <property name="type" channel="inline" format="meta/type" model="text/plain"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
destination | the destination part | true | path/knowledge | |
source | the source part | true | path/knowledge | |
type | the operand type which is equal for both operands | true | meta/type | |
count | If null, the source part model count will be used instead. The number of elements to be appended. | false | number/integer | |
index | If null, an index of zero will be used instead. The source index from which to start copying elements from. | false | number/integer |
build
Description
Builds a part name to be used in a list of many parts. Uses a base name and adds an index to retrieve a unique resulting composed name.
Format
modify/build
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
result | The knowledge part where to store the resulting composed name. | true | path/knowledge | |
base | the base name | true | text/plain | |
index | The index to add to the base name. | true | number/integer |
empty
Description
Empties the part, i.e. removes all of its elements.
Format
modify/empty
Example
<part name="reset_buffer" channel="inline" format="modify/empty" model=""> <property name="part" channel="inline" format="path/knowledge" model=".settings.voltage_buffer"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
part | the part | true | path/knowledge |
fill
Description
Fills the part up with a given element.
Format
modify/fill
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
part | the part | true | path/knowledge | |
element | the element | true | element/* | |
count | If null, the part model count will be used instead. The number of elements to be filled in. | false | number/integer | |
index | If null, an index of zero will be used instead. The index from which to start copying elements to. | false | number/integer | |
index | The default is 'true'. If null, the count WILL BE adjusted. The flag indicating whether or not the part shall be adjusted to. | false | logicvalue/boolean |
insert
Description
Inserts the source- into the destination part.
Format
modify/insert
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
destination | the destination part | true | path/knowledge | |
source | the source part | true | path/knowledge | |
type | the type of data. | true | meta/type | |
count | If null, the part model count will be used instead. The number of elements to be inserted. | false | number/integer | |
index | If null, an index of zero will be used instead. The destination index from which to start copying elements to. | false | number/integer | |
index | If null, an index of zero will be used instead. The source index from which to start copying elements from. | false | number/integer |
overwrite
Description
Overwrites the destination- with the source part.
Format
modify/overwrite
Example
<part name="reset_count" channel="inline" format="modify/overwrite" model=""> <property name="destination" channel="inline" format="path/knowledge" model=".settings.voltage_buffer_count"/> <property name="source" channel="inline" format="path/knowledge" model=".settings.voltage_buffer_count_default"/> <property name="type" channel="inline" format="meta/type" model="number/integer"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
destination | the destination part | true | path/knowledge | |
source | the source part | true | path/knowledge | |
type | the type of data. | true | meta/type | |
count | If null, the part model count will be used instead. The number of elements to be overwritten. | false | number/integer | |
index | If null, an index of zero will be used instead. The destination index from which to start copying elements to. | false | number/integer | |
index | If null, an index of zero will be used instead. The source index from which to start copying elements from. | false | number/integer | |
index | The default is 'true'. If null, the count WILL BE adjusted. The flag indicating whether or not the destination shall be adjusted to. | false | logicvalue/boolean |
remove
Description
Removes count elements from the part.
Format
modify/remove
Example
<part name="remove" channel="inline" format="modify/remove" model=""> <property name="part" channel="inline" format="path/knowledge" model=".summand"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
part | the part | true | path/knowledge | |
count | If null, ALL elements will be removed. The number of elements to be removed. | false | number/integer | |
index | If null, the index of the LAST element will be used instead. The index from where to start removing elements from. | false | number/integer |
represent
deserialise
Description
Deserialises the source- into the destination part.
Format
represent/deserialise
Example
<part name="deserialise_operand" channel="inline" format="represent/deserialise" model=""> <property name="destination" channel="inline" format="path/knowledge" model=".summand"/> <property name="source" channel="inline" format="path/knowledge" model=".text"/> <property name="format" channel="inline" format="meta/format" model="number/integer"/> <property name="language" channel="inline" format="meta/language" model="text/cybol"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
destination | the destination part | true | number/integer | |
source | the source part | true | text/plain | |
type | the destination part format | true | meta/type | |
language | the destination part language (cybol, http_request, xdt etc.) | true | meta/language |
serialise
Description
Serialises the source- into the destination part.
Format
represent/serialise
Example
<part name="serialise_operand" channel="inline" format="represent/serialise" model=""> <property name="destination" channel="inline" format="path/knowledge" model=".summand"/> <property name="source" channel="inline" format="path/knowledge" model=".text"/> <property name="format" channel="inline" format="meta/format" model="number/integer"/> <property name="language" channel="inline" format="meta/language" model="text/cybol"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
destination | the destination part | true | number/integer | |
source | the source part | true | text/plain | |
type | the destination part format | true | meta/type | |
language | the destination part language (cybol, http_request, xdt etc.) | true | meta/language |
run
run
Description
Runs a local program
Format
run/run
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
channel | The program to be run. | true | path/* | meta/channel |
run
Description
Puts the executing thread to sleep for at least x microseconds (the actual duration may differ depending on the systems load and timer accuracy)
Format
run/sleep
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
channel | The amount of microseconds to sleep | true | path/* | meta/channel |
time
time
Description
Retrieves the current time from the system.
Format
time/time
Example
Properties
name | description | required | format | model |
---|---|---|---|---|
channel | the channel on which to startup a service (terminal, display, tcp_socket, unix_socket, ...) | true | path/* | meta/channel | |
namespace | Only if service is www, cyboi or similar! The namespace of the socket | false | text/plain | |
style | Only if service is www, cyboi or similar! The namespace of the socket | false | text/plain | |
address | Only if service is www, cyboi or similar! The address of hosts communicating with this system via socket. | false | text/plain |
state
device
keyboard
Description
A keyboard key.
Format
Example
<part name="arrow-up" channel="inline" format="path/knowledge" model=".logic.move_arrow_up"/> <part name="arrow-down" channel="inline" format="path/knowledge" model=".logic.move_arrow_down"/> <part name="arrow-left" channel="inline" format="path/knowledge" model=".logic.move_arrow_left"/> <part name="arrow-right" channel="inline" format="path/knowledge" model=".logic.move_arrow_right"/> <part name="enter" channel="inline" format="path/knowledge" model=".logic.enter_sub_menu"/> <part name="escape" channel="inline" format="path/knowledge" model=".logic.exit_programme"/>
Properties
name | description | required | format | model |
---|---|---|---|---|
arrow-up | The arrow up key. | false | path/* | a logic model to be executed |
arrow-down | The arrow down key. | false | path/* | a logic model to be executed |
arrow-left | The arrow left key. | false | path/* | a logic model to be executed |
arrow-right | The arrow right key. | false | path/* | a logic model to be executed |
enter | The enter key. | false | path/* | a logic model to be executed |
escape | The escape key. | false | path/* | a logic model to be executed |
mouse
Description
A mouse button.
Format
Example
<part name="exit_button" channel="inline" format="text/plain" model="Exit"> <property name="cell" channel="inline" format="text/plain" model="east"/> <property name="left-release" channel="inline" format="path/knowledge" model=".app.logic.exit_programme"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
left-press | The left mouse button press event. | false | path/* | a logic model to be executed |
left-release | The left mouse button release event. | false | path/* | a logic model to be executed |
left-click | The left mouse button click (press + release) event. | false | path/* | a logic model to be executed |
middle-press | The middle mouse button press event. | false | path/* | a logic model to be executed |
middle-release | The middle mouse button release event. | false | path/* | a logic model to be executed |
middle-click | The middle mouse button click (press + release) event. | false | path/* | a logic model to be executed |
right-press | The right mouse button press event. | false | path/* | a logic model to be executed |
right-release | The right mouse button release event. | false | path/* | a logic model to be executed |
right-click | The right mouse button click (press + release) event. | false | path/* | a logic model to be executed |
move | The mouse move event. | false | path/* | a logic model to be executed |
drag | The mouse drag (press + move) event. | false | path/* | a logic model to be executed |
user_interface
gui
Description
A graphical user interface element.
Format
Example
<part name="window" channel="file" format="element/part" model="gui/window.cybol"> <property name="position" channel="inline" format="number/integer" model="0,0"/> <property name="size" channel="inline" format="number/integer" model="800,600"/> <property name="background" channel="inline" format="colour/rgb" model="255,255,255"/> <property name="foreground" channel="inline" format="path/knowledge" model=".app.settings.foreground"/> <property name="layout" channel="inline" format="text/plain" model="compass"/> <property name="title" channel="inline" format="text/plain" model="Test Application Window"/> <property name="icon" channel="file" format="image/png" model="gui/window/icon.png"/> <property name="expose" channel="inline" format="path/knowledge" model=".app.logic.refresh_gui"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
position | The position (x, y) in unit [pixel], starting from zero, in relation to the surrounding parent element's origo. | true | path/* | number/integer | a two-dimensional vector |
size | The size (width, height) in unit [pixel], starting from zero. | true | path/* | number/integer | a two-dimensional vector |
background | The background colour. | false | path/* | colour/rgb | |
foreground | The foreground colour. | false | path/* | colour/rgb | |
layout | The layout of contained child components. | false | path/* | text/plain | absolute | flow | grid | compass |
cell | The component's cell (position) within the surrounding parent component. Possible values depend on the parent component's layout. | false | path/* | text/plain | number/integer | x, y (absolute) || row,column (grid) || centre | north | south | west | east (compass) |
title | The window title. | false | path/* | text/plain | |
icon | The window icon. | false | path/* | image/* | |
expose | The expose event to redraw the window content. | false | path/* | a logic model to be executed |
tui
Description
A text user interface element.
Format
Example
<part name="window" channel="file" format="element/part" model="tui/window.cybol"> <property name="position" channel="inline" format="number/integer" model="0,0"/> <property name="size" channel="inline" format="number/integer" model="80,15"/> <property name="background" channel="inline" format="colour/terminal" model="green"/> <property name="foreground" channel="inline" format="path/knowledge" model=".app.settings.foreground"/> <property name="bold" channel="inline" format="logicvalue/boolean" model="true"/> <!-- This property is evaluated by win32 console only. --> <property name="intense" channel="inline" format="logicvalue/boolean" model="false"/> <property name="border" channel="inline" format="text/plain" model="ascii"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
position | The position (x, y) in unit [character], starting from zero, in relation to the surrounding parent element's origo. | true | path/* | number/integer | a two-dimensional vector |
size | The size (width, height) in unit [character], starting from zero. | true | path/* | number/integer | a two-dimensional vector |
background | The background colour. The default is the terminal's current background. | false | path/* | colour/terminal | black | blue | cyan | green | magenta | red | white | yellow |
foreground | The foreground colour. The default is the terminal's current foreground. | false | path/* | colour/terminal | black | blue | cyan | green | magenta | red | white | yellow |
bold | The flag indicating whether or not to use bold foreground. | false | path/* | logicvalue/boolean | false | true |
intense | The flag indicating whether or not to use intense colour. This property is evaluated by win32 console only. | false | path/* | logicvalue/boolean | false | true |
border | The kind of border characters to apply. | false | path/* | text/plain | ascii | simple | double | round |
wui
Description
A web user interface element.
Format
Example
<part name="heading" channel="inline" format="text/plain" model="Web User Interface (WUI) Example"> <property name="tag" channel="inline" format="text/plain" model="h1"/> </part> <part name="content" channel="inline" format="text/plain" model="This is a text paragraph."> <property name="tag" channel="inline" format="text/plain" model="p"/> </part> <part name="newline" channel="inline" format="text/plain" model=""> <property name="tag" channel="inline" format="text/plain" model="br"/> </part> <part name="some_block" channel="inline" format="text/plain" model=""> <property name="tag" channel="inline" format="text/plain" model="div"/> </part> <part name="preformatted_external_text" channel="file" format="text/plain" model="wui/text.txt"> <property name="tag" channel="inline" format="text/plain" model="p"/> <property name="preformatted" channel="inline" format="logicvalue/boolean" model="true"/> <property name="class" channel="inline" format="text/plain" model="preformatted"/> </part> <part name="link" channel="inline" format="text/plain" model="Some link."> <property name="tag" channel="inline" format="text/plain" model="a"/> <property name="href" channel="inline" format="text/plain" model="http://www.cybop.org/"/> </part> <part name="sub_heading" channel="inline" format="text/plain" model="Example Table"> <property name="tag" channel="inline" format="text/plain" model="h4"/> </part> <part name="table" channel="file" format="element/part" model="wui/table.cybol"> <property name="tag" channel="inline" format="text/plain" model="table"/> </part>
Properties
name | description | required | format | model |
---|---|---|---|---|
tag | The html tag to use. Void tags are detected automatically. | true | path/* | text/plain | a valid html tag without arrow brackets |
class | The 'class' html attribute. | false | path/* | text/plain | a css class as html attribute |
...(html attribute)... | An arbitrary html attribute. | false | path/* | text/plain | a valid html attribute |
preformatted | ?? | false | path/* | logicvalue/boolean | ?? |
property | ?? | false | path/* | text/plain | ?? |