Contents

logic
state
CYBOL Version 2016-03-07 API Specification

logic

access

count

Description

Count parts of a compound part.

Format

access/count

Example

<node name="count" channel="inline" format="access/count" model=""> <node name="count" channel="inline" format="path/knowledge" model=".count"/> <node name="part" channel="inline" format="path/knowledge" model=".addition_application"/> <node name="selection" channel="inline" format="text/plain" model="subsequence"/> <node name="filter" channel="inline" format="text/plain" model="summand"/> </node>

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

<node name="get_details" channel="inline" format="access/get-channel" model=""> <node name="element" channel="inline" format="path/knowledge" model=".app.details"/> <node name="part" channel="inline" format="path/knowledge" model=".app.node"/> </node>

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

get-format

Description

Get a part's format.

Format

access/get-format

Example

<node name="get_details" channel="inline" format="access/get-format" model=""> <node name="element" channel="inline" format="path/knowledge" model=".app.details"/> <node name="part" channel="inline" format="path/knowledge" model=".app.node"/> </node>

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

<node name="get_details" channel="inline" format="access/get-language" model=""> <node name="element" channel="inline" format="path/knowledge" model=".app.details"/> <node name="part" channel="inline" format="path/knowledge" model=".app.node"/> </node>

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

get-name

Description

Get a part's name.

Format

access/get-name

Example

<node name="copy_name_of_part_1_into_model_of_part_2" channel="inline" format="access/get-name" model=""> <node name="element" channel="inline" format="path/knowledge" model=".part_2"/> <node name="part" channel="inline" format="path/knowledge" model=".part_1"/> </node>

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

get-reference

Description

Get a part's reference.

Format

access/get-reference

Example

Properties
name description required format model

get-type

Description

Get a part's type.

Format

access/get-type

Example

Properties
name description required format model

indicate-empty

Description

Indicates if data are empty, i.e. the count is zero. The operation is ONLY usable with values of format

Format

access/indicate-empty

Example

<node name="test_empty_number_empty" channel="inline" format="access/indicate-empty" model=""> <node name="result" channel="inline" format="path/knowledge" model=".app.flag"/> <node name="part" channel="inline" format="path/knowledge" model=".app.empty_number"/> </node>

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. The operation is ONLY usable with values of format

Format

access/indicate-exists

Example

<node name="test_empty_number_exists" channel="inline" format="access/indicate-exists" model=""> <node name="result" channel="inline" format="path/knowledge" model=".app.flag"/> <node name="part" channel="inline" format="path/knowledge" model=".app.empty_number"/> </node>

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

<node name="absolute" channel="inline" format="calculate/absolute" model=""> <node name="result" channel="inline" format="path/knowledge" model=".result"/> <node name="operand" channel="inline" format="number/integer" model="1,2,3"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> </node>

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

<node name="add" channel="inline" format="calculate/add" model=""> <node name="result" channel="inline" format="path/knowledge" model=".result"/> <node name="operand" channel="inline" format="number/integer" model="1,2,"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> </node>

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

<node name="divide" channel="inline" format="calculate/divide" model=""> <node name="result" channel="inline" format="path/knowledge" model=".result"/> <node name="operand" channel="inline" format="number/integer" model="1,2,3"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> </node>

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

<node name="multiply" channel="inline" format="calculate/multiply" model=""> <node name="result" channel="inline" format="path/knowledge" model=".result"/> <node name="operand" channel="inline" format="number/integer" model="1,2,3"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> </node>

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

<node name="negate" channel="inline" format="calculate/negate" model=""> <node name="result" channel="inline" format="path/knowledge" model=".result"/> <node name="operand" channel="inline" format="number/integer" model="1,2,3"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> </node>

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

<node name="subtract" channel="inline" format="calculate/subtract" model=""> <node name="result" channel="inline" format="path/knowledge" model=".result"/> <node name="operand" channel="inline" format="number/integer" model="1,2,3"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> </node>

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

Not implemented yet.

Format

cast/byte

Example

Properties
name description required format model

character

Description

Casts a value from one type to another.

Format

cast/character

Example

Properties
name description required format model

double

Description

Casts a value from one type to another.

Format

cast/double

Example

<node name="cast_double" channel="inline" format="cast/double" model=""> <node name="destination" channel="inline" format="path/knowledge" model=".part_2"/> <node name="source" channel="inline" format="path/knowledge" model=".part_1"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> </node>

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

<node name="cast_double" channel="inline" format="cast/integer" model=""> <node name="destination" channel="inline" format="path/knowledge" model=".part_2"/> <node name="source" channel="inline" format="number/byte" model="12"/> <node name="type" channel="inline" format="meta/type" model="number/byte"/> </node>

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

<node name="archive_file" channel="inline" format="command/archive-file" model=""> <node name="create" channel="inline" format="logicvalue/boolean" model="true"/> <node name="update" channel="inline" format="logicvalue/boolean" model="false"/> <node name="bzip2" channel="inline" format="logicvalue/boolean" model="false"/> </node>

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

<node name="chmod_file" channel="inline" format="command/change-permission" model=""> <node name="path" channel="inline" format="text/plain" model="./shell_command_change_permission/example.txt"/> <node name="user" channel="inline" format="text/plain" model="rwx"/> <node name="group" channel="inline" format="text/plain" model="rwx"/> <node name="other" channel="inline" format="text/plain" model="rw"/> <node name="recursive" channel="inline" format="logicvalue/boolean" model="true"/> <node name="verbose" channel="inline" format="logicvalue/boolean" model="false"/> <node name="silent" channel="inline" format="logicvalue/boolean" model="false"/> </node>

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

<node name="copy_file" channel="inline" format="command/copy" model=""> <node name="source" channel="inline" format="text/plain" model="./shell_command_copy_file/original.txt"/> <node name="destination" channel="inline" format="text/plain" model="./shell_command_copy_file/copied_and_please_do_not_commit_me.txt"/> <node name="force" channel="inline" format="logicvalue/boolean" model="false"/> <node name="interactive" channel="inline" format="logicvalue/boolean" model="false"/> <node name="preserve-all-attributes" channel="inline" format="logicvalue/boolean" model="false"/> <node name="preserve-links" channel="inline" format="logicvalue/boolean" model="false"/> <node name="recursive" channel="inline" format="logicvalue/boolean" model="false"/> <node name="update" channel="inline" format="logicvalue/boolean" model="false"/> <node name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </node>

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

<node name="create_folder" channel="inline" format="command/create-folder" model=""> <node name="path" channel="inline" format="text/plain" model="./shell_command_create_folder/i_am_a_created_folder"/> </node>

Properties
name description required format model
path path to the directory true text/plain

diff

Description

Compares two files.

Format

command/diff

Example

<node name="diff" channel="inline" format="command/diff" model=""> <node name="file1" channel="inline" format="text/plain" model="shell_command_diff\diff1.txt"/> <node name="file2" channel="inline" format="text/plain" model="shell_command_diff\diff2.txt"/> </node>

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

<node name="echo_message" channel="inline" format="command/echo" model=""> <node name="message" channel="inline" format="text/plain" model="hello, this is an echo over standard output"/> </node>

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

<node name="list_parent_directory_recursively" channel="inline" format="command/list-directory-contents" model=""> <node name="path" channel="inline" format="text/plain" model="./.."/> <node name="all" channel="inline" format="logicvalue/boolean" model="true"/> <node name="long" channel="inline" format="logicvalue/boolean" model="false"/> <node name="one_row_per_entry" channel="inline" format="logicvalue/boolean" model="true"/> <node name="recursive" channel="inline" format="logicvalue/boolean" model="true"/> <node name="short" channel="inline" format="logicvalue/boolean" model="false"/> <node name="sort_by_file_size" channel="inline" format="logicvalue/boolean" model="false"/> <node name="sort_by_modification" channel="inline" format="logicvalue/boolean" model="false"/> <node name="sort_by_extension" channel="inline" format="logicvalue/boolean" model="false"/> </node> <node name="list_files_in_current_directory" channel="inline" format="command/list-directory-contents" model=""> <node name="all" channel="inline" format="logicvalue/boolean" model="false"/> <node name="long" channel="inline" format="logicvalue/boolean" model="true"/> <node name="export" channel="inline" format="text/plain" model="test.txt"/> </node>

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

<node name="grep" channel="inline" format="command/grep" model=""> <node name="pattern" channel="inline" format="text/plain" model="test"/> <node name="file" channel="inline" format="text/plain" model="shell_command_grep/grep.txt"/> </node>

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

<node name="move_file" channel="inline" format="command/move" model=""> <node name="source" channel="inline" format="text/plain" model="./shell_command_move_file/original.txt"/> <node name="destination" channel="inline" format="text/plain" model="./shell_command_move_file/moved_and_please_do_not_commit_me.txt"/> <node name="force" channel="inline" format="logicvalue/boolean" model="false"/> <node name="interactive" channel="inline" format="logicvalue/boolean" model="true"/> <node name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </node>

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

<node name="ping" channel="inline" format="command/ping" model=""> <node name="host" channel="inline" format="text/plain" model="www.google.com"/> <node name="count" channel="inline" format="text/plain" model="5"/> <node name="interface" channel="inline" format="text/plain" model="eth0"/> </node>

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

<node name="remove_file" channel="inline" format="command/remove" model=""> <node name="path" channel="inline" format="text/plain" model="./shell_command_remove_file/do_not_commit_if_this_is_deleted.txt"/> <node name="force" channel="inline" format="logicvalue/boolean" model="true"/> <node name="interactive" channel="inline" format="logicvalue/boolean" model="true"/> <node name="recursive" channel="inline" format="logicvalue/boolean" model="false"/> <node name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </node>

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 --> <node name="pack_text_file_with_tape_archiver" channel="inline" format="command/tape-archiver" model=""> <node name="source" channel="inline" format="text/plain" model="./shell_command_tape_archiver_pack/i_should_be_packed_soon.txt"/> <node name="destination" channel="inline" format="text/plain" model="./shell_command_tape_archiver_pack/i_am_packed_now.tar"/> <node name="force" channel="inline" format="logicvalue/boolean" model="false"/> <node name="gzip" channel="inline" format="logicvalue/boolean" model="false"/> <node name="unpack" channel="inline" format="logicvalue/boolean" model="false"/> <node name="recursive" channel="inline" format="logicvalue/boolean" model="false"/> <node name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </node> <!-- unpack --> <node name="unpack_tar_with_text_file" channel="inline" format="command/tape-archiver" model=""> <node name="source" channel="inline" format="text/plain" model="./shell_command_tape_archiver_unpack/package.tar"/> <node name="destination" channel="inline" format="text/plain" model="./shell_command_tape_archiver_unpack"/> <node name="force" channel="inline" format="logicvalue/boolean" model="false"/> <node name="gzip" channel="inline" format="logicvalue/boolean" model="false"/> <node name="unpack" channel="inline" format="logicvalue/boolean" model="true"/> <node name="recursive" channel="inline" format="logicvalue/boolean" model="false"/> <node name="verbal" channel="inline" format="logicvalue/boolean" model="true"/> </node>

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

<node name="chmod_file" channel="inline" format="command/word-count" model=""> <node name="path" channel="inline" format="text/plain" model="./shell_command_word_count/example.txt"/> <node name="bytes" channel="inline" format="logicvalue/boolean" model="false"/> <node name="chars" channel="inline" format="logicvalue/boolean" model="true"/> <node name="lines" channel="inline" format="logicvalue/boolean" model="true"/> <node name="max-line-length" channel="inline" format="logicvalue/boolean" model="false"/> <node name="words" channel="inline" format="logicvalue/boolean" model="true"/> </node>

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

<node name="initialise" channel="inline" format="communicate/receive" model=""> <node name="channel" channel="inline" format="meta/channel" model="file"/> <node name="encoding" channel="inline" format="meta/encoding" model="utf-8"/> <node name="language" channel="inline" format="meta/language" model="text/cybol"/> <node name="format" channel="inline" format="meta/format" model="element/part"/> <node name="message" channel="inline" format="text/plain" model="ui/app.cybol"/> <node name="model" channel="inline" format="path/knowledge" model=".app"/> </node>

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

<node name="print_adc" channel="inline" format="communicate/send" model=""> <node name="channel" channel="inline" format="meta/channel" model="terminal"/> <node name="encoding" channel="inline" format="meta/encoding" model="utf-8"/> <node name="language" channel="inline" format="meta/language" model="message/cli"/> <node name="format" channel="inline" format="meta/format" model="text/plain"/> <node name="message" channel="inline" format="text/plain" model="Current adc rounded in voltage:"/> <node name="newline" channel="inline" format="logicvalue/boolean" model="true"/> </node> <node name="print_adc_value" channel="inline" format="communicate/send" model=""> <node name="channel" channel="inline" format="meta/channel" model="terminal"/> <node name="encoding" channel="inline" format="meta/encoding" model="utf-8"/> <node name="language" channel="inline" format="meta/language" model="message/cli"/> <node name="format" channel="inline" format="meta/format" model="number/fraction-decimal"/> <node name="message" channel="inline" format="path/knowledge" model=".settings.adc"/> <node name="newline" channel="inline" format="logicvalue/boolean" model="true"/> </node>

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

<node name="compare_equal" channel="inline" format="compare/equal" model=""> <node name="result" channel="inline" format="path/knowledge" model=".model.result"/> <node name="left" channel="inline" format="path/knowledge" model=".model.left"/> <node name="right" channel="inline" format="path/knowledge" model=".model.right"/> <node name="type" channel="inline" format="meta/type" model="number/complex-cartesian"/> <node name="selection" channel="inline" format="text/plain" model="all"/> </node>

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

<node name="compare_loop_count" channel="inline" format="compare/greater" model=""> <node name="result" channel="inline" format="path/knowledge" model=".counter.break"/> <node name="left" channel="inline" format="path/knowledge" model=".counter.count"/> <node name="right" channel="inline" format="path/knowledge" model=".counter.maximum"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> <node name="selection" channel="inline" format="text/plain" model="all"/> </node>

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

<node name="compare_loop_count" channel="inline" format="compare/greater-or-equal" model=""> <node name="result" channel="inline" format="path/knowledge" model=".domain.break"/> <node name="left" channel="inline" format="path/knowledge" model=".domain.count"/> <node name="right" channel="inline" format="path/knowledge" model=".domain.maximum"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> <node name="selection" channel="inline" format="text/plain" model="all"/> </node>

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

smaller

Description

Compares left and right parametre.

Format

compare/smaller

Example

Properties
name description required format model

smaller-or-equal

Description

Compares left and right parametre.

Format

compare/smaller-or-equal

Example

Properties
name description required format model

unequal

Description

Compares left and right parametre.

Format

compare/unequal

Example

<node name="compare_unequal" channel="inline" format="compare/unequal" model=""> <node name="result" channel="inline" format="path/knowledge" model=".model.result"/> <node name="left" channel="inline" format="path/knowledge" model=".model.left"/> <node name="right" channel="inline" format="path/knowledge" model=".model.right"/> <node name="type" channel="inline" format="meta/type" model="number/complex-cartesian"/> <node name="selection" channel="inline" format="text/plain" model="all"/> </node>

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

<node name="branch_voltage" channel="inline" format="flow/branch" model=""> <node name="criterion" channel="inline" format="path/knowledge" model=".settings.voltage_criterion"/> <node name="true" channel="file" format="element/part" model="indoor_climate/add_voltage.cybol"/> <node name="false" channel="file" format="element/part" model="indoor_climate/report_voltage_failure.cybol"/> </node>

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

<node name="collect_voltages" channel="inline" format="flow/loop" model=""> <node name="break" channel="inline" format="path/knowledge" model=".settings.adc_break"/> <node name="model" channel="file" format="element/part" model="adc/collect_voltages.cybol"/> </node>

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

<node name="start_playerinput" channel="inline" format="flow/sequence" model=""> <node name="model" channel="inline" format="path/knowledge" model=".app.setrandom"/> </node>

Properties
name description required format model
model the logic knowledge model to be executed as sequence true path/knowledge

live

exit

Description

Closes a running application.

Format

live/exit

Example

<node name="exit_application" channel="inline" format="live/exit" model=""/>

Properties
name description required format model
channel the channel whose service is to be interrupted (terminal, display, www etc.) true path/* | meta/channel

interrupt

Description

Interrupts a service.

Format

live/interrupt

Example

<node name="interrupt_x_window_system" channel="inline" format="live/interrupt" model=""> <node name="channel" channel="inline" format="meta/channel" model="display"/> </node>

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

<node name="set_handler_commands_reading" channel="inline" format="live/sense" model=""> <node name="channel" channel="inline" format="meta/channel" model="terminal"/> <node name="handler" channel="inline" format="path/knowledge" model=".app.handler"/> </node>

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

<node name="result" channel="inline" format="number/byte" model="65"/> <node name="operand" channel="inline" format="number/byte" model="80"/> <node name="operation" channel="inline" format="logify/and" model=""> <node name="output" channel="inline" format="path/knowledge" model=".app.result"/> <node name="input" channel="inline" format="path/knowledge" model=".app.operand"/> <node name="type" channel="inline" format="meta/type" model="number/byte"/> </node>

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

<node name="result" channel="inline" format="logicvalue/boolean" model="true"/> <node name="operation" channel="inline" format="logify/not" model=""> <node name="output" channel="inline" format="path/knowledge" model=".app.result"/> <node name="input" channel="inline" format="path/knowledge" model=".app.result"/> <node name="type" channel="inline" format="meta/type" model="logicvalue/boolean"/> </node>

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

<node name="result" channel="inline" format="logicvalue/boolean" model="false"/> <node name="operand" channel="inline" format="logicvalue/boolean" model="false"/> <node name="operation" channel="inline" format="logify/or" model=""> <node name="output" channel="inline" format="path/knowledge" model=".app.result"/> <node name="input" channel="inline" format="path/knowledge" model=".app.operand"/> <node name="type" channel="inline" format="meta/type" model="logicvalue/boolean"/> </node>

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

<node name="shutdown_serial_port" channel="inline" format="maintain/shutdown" model=""> <node name="channel" channel="inline" format="path/knowledge" model=".settings.device"/> </node>

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

<node name="startup_terminal" channel="inline" format="maintain/startup" model=""> <node name="channel" channel="inline" format="meta/channel" model="terminal"/> </node> <node name="startup_socket" channel="inline" format="maintain/startup" model=""> <node name="channel" channel="inline" format="meta/channel" model="socket"/> <node name="namespace" channel="inline" format="text/plain" model="ipv4"/> <node name="style" channel="inline" format="text/plain" model="stream"/> <node name="protocol" channel="inline" format="text/plain" model="tcp"/> <node name="address" channel="inline" format="path/knowledge" model=".app.var.address"/> <node name="id" channel="inline" format="path/knowledge" model=".app.var.port"/> <node name="mode" channel="inline" format="text/plain" model="server"/> <node name="blocking" channel="inline" format="logicvalue/boolean" model="false"/> <node name="connexions" channel="inline" format="number/integer" model="1"/> </node>

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 the address family, e.g. ip6 false text/plain
style the communication style, e.g. stream false text/plain
address the host address false text/plain
protocol the protocol, e.g. tcp false path/knowledge
id the service identification if having multiple terminals/displays/sockets etc., e.g. socket port 80; either port or service may be specified; port has higher priority; if missing, zero will be used (first io entry) false path/knowledge
server false text/plain
blocking the socket status, i.e. whether or not a socket is blocking false logicvalue/boolean
connexions the number of possible pending client requests false number/integer

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

<node name="create_summand_2" channel="inline" format="memorise/create" model=""> <node name="name" channel="inline" format="text/plain" model="summand_2"/> <node name="format" channel="inline" format="meta/format" model="number/integer"/> <node name="element" channel="inline" format="text/plain" model="part"/> <node name="whole" channel="inline" format="path/knowledge" model=".addition_application"/> </node>

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

<node name="destroy_tui_control" channel="inline" format="memorise/destroy" model=""> <node name="name" channel="inline" format="path/knowledge" model=".tui_control"/> </node>

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

<node name="append_command" channel="inline" format="modify/append" model=""> <node name="destination" channel="inline" format="path/knowledge" model=".app.safetmp.path"/> <node name="source" channel="inline" format="path/knowledge" model=".app.safetmp.operation_type"/> <node name="type" channel="inline" format="meta/type" model="text/plain"/> </node>

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

<node name="reset_buffer" channel="inline" format="modify/empty" model=""> <node name="part" channel="inline" format="path/knowledge" model=".settings.voltage_buffer"/> <node name="model" channel="inline" format="logicvalue/boolean" model="true"/> <node name="properties" channel="inline" format="logicvalue/boolean" model="true"/> </node>

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

<node name="reset_count" channel="inline" format="modify/overwrite" model=""> <node name="destination" channel="inline" format="path/knowledge" model=".settings.voltage_buffer_count"/> <node name="source" channel="inline" format="path/knowledge" model=".settings.voltage_buffer_count_default"/> <node name="type" channel="inline" format="meta/type" model="number/integer"/> </node>

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

<node name="remove" channel="inline" format="modify/remove" model=""> <node name="part" channel="inline" format="path/knowledge" model=".summand"/> </node>

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

<node name="deserialise_operand" channel="inline" format="represent/deserialise" model=""> <node name="destination" channel="inline" format="path/knowledge" model=".summand"/> <node name="source" channel="inline" format="path/knowledge" model=".text"/> <node name="format" channel="inline" format="meta/format" model="number/integer"/> <node name="language" channel="inline" format="meta/language" model="text/cybol"/> </node>

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

<node name="serialise_operand" channel="inline" format="represent/serialise" model=""> <node name="destination" channel="inline" format="path/knowledge" model=".summand"/> <node name="source" channel="inline" format="path/knowledge" model=".text"/> <node name="format" channel="inline" format="meta/format" model="number/integer"/> <node name="language" channel="inline" format="meta/language" model="text/cybol"/> </node>

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
programme The program to be run. true path/* | meta/channel

sleep

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

<node name="sleep" channel="inline" format="run/sleep-nano" model=""> <node name="duration" channel="inline" format="path/knowledge" model=".settings.voltage_sleep"/> </node>

Properties
name description required format model
duration 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

<node name="arrow-up" channel="inline" format="path/knowledge" model=".logic.move_arrow_up"/> <node name="arrow-down" channel="inline" format="path/knowledge" model=".logic.move_arrow_down"/> <node name="arrow-left" channel="inline" format="path/knowledge" model=".logic.move_arrow_left"/> <node name="arrow-right" channel="inline" format="path/knowledge" model=".logic.move_arrow_right"/> <node name="enter" channel="inline" format="path/knowledge" model=".logic.enter_sub_menu"/> <node 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

<node name="exit_button" channel="inline" format="text/plain" model="Exit"> <node name="cell" channel="inline" format="text/plain" model="east"/> <node name="left-release" channel="inline" format="path/knowledge" model=".app.logic.exit_programme"/> </node>

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

<node name="window" channel="file" format="element/part" model="gui/window.cybol"> <node name="position" channel="inline" format="number/integer" model="0,0"/> <node name="size" channel="inline" format="number/integer" model="800,600"/> <node name="background" channel="inline" format="colour/rgb" model="255,255,255"/> <node name="foreground" channel="inline" format="path/knowledge" model=".app.settings.foreground"/> <node name="layout" channel="inline" format="text/plain" model="compass"/> <node name="title" channel="inline" format="text/plain" model="Test Application Window"/> <node name="icon" channel="file" format="image/png" model="gui/window/icon.png"/> <node name="expose" channel="inline" format="path/knowledge" model=".app.logic.refresh_gui"/> </node>

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

<node name="window" channel="file" format="element/part" model="tui/window.cybol"> <node name="position" channel="inline" format="number/integer" model="0,0"/> <node name="size" channel="inline" format="number/integer" model="80,15"/> <node name="background" channel="inline" format="colour/terminal" model="green"/> <node name="foreground" channel="inline" format="path/knowledge" model=".app.settings.foreground"/> <node name="bold" channel="inline" format="logicvalue/boolean" model="true"/> <!-- This property is evaluated by win32 console only. --> <node name="intense" channel="inline" format="logicvalue/boolean" model="false"/> <node name="border" channel="inline" format="text/plain" model="ascii"/> </node>

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

<node name="heading" channel="inline" format="text/plain" model="Web User Interface (WUI) Example"> <node name="tag" channel="inline" format="text/plain" model="h1"/> </node> <node name="content" channel="inline" format="text/plain" model="This is a text paragraph."> <node name="tag" channel="inline" format="text/plain" model="p"/> </node> <node name="newline" channel="inline" format="text/plain" model=""> <node name="tag" channel="inline" format="text/plain" model="br"/> </node> <node name="some_block" channel="inline" format="text/plain" model=""> <node name="tag" channel="inline" format="text/plain" model="div"/> </node> <node name="preformatted_external_text" channel="file" format="text/plain" model="wui/text.txt"> <node name="tag" channel="inline" format="text/plain" model="p"/> <node name="preformatted" channel="inline" format="logicvalue/boolean" model="true"/> <node name="class" channel="inline" format="text/plain" model="preformatted"/> </node> <node name="link" channel="inline" format="text/plain" model="Some link."> <node name="tag" channel="inline" format="text/plain" model="a"/> <node name="href" channel="inline" format="text/plain" model="http://www.cybop.org/"/> </node> <node name="sub_heading" channel="inline" format="text/plain" model="Example Table"> <node name="tag" channel="inline" format="text/plain" model="h4"/> </node> <node name="table" channel="file" format="element/part" model="wui/table.cybol"> <node name="tag" channel="inline" format="text/plain" model="table"/> </node>

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 ??