[selected_node] | element/part | 
+-id | number/integer | 8
+-stdout | number/integer | 1
+-wui | element/part | 
| +-index | element/part | 
| | +-head | element/part | 
| | | +-http-equiv | text/plain | 
| | | | :-tag | text/plain | meta
| | | | :-http-equiv | text/plain | content-type
| | | | :-content | text/plain | text/html; charset=utf-8
| | | +-author | text/plain | 
| | | | :-tag | text/plain | meta
| | | | :-name | text/plain | author
| | | | :-content | text/plain | Generated by CYBOI; See http://www.cybop.org/
| | | +-title | text/plain | CYBOL WWW Server Example
| | | | :-tag | text/plain | title
| | | :-tag | text/plain | head
| | +-body | element/part | 
| | | +-heading | text/plain | CYBOL WWW Server Example
| | | | :-tag | text/plain | h1
| | | +-description | text/plain | This is an example web page created from cybol files.
| | | | :-tag | text/plain | p
| | | +-note | text/plain | It is not formatted, since css files are not processed in this simple webserver example.
| | | | :-tag | text/plain | p
| | | +-line_break_content | text/plain | 
| | | | :-tag | text/plain | br
| | | +-content | text/plain | Hello, CYBOP!
| | | | :-tag | text/plain | p
| | | | :-id | text/plain | content
| | | +-line_break_content | text/plain | 
| | | | :-tag | text/plain | br
| | | +-content | text/plain | Click on the links below to change the content.
| | | | :-tag | text/plain | p
| | | +-world_link | text/plain | Greet World
| | | | :-tag | text/plain | a
| | | | :-href | text/plain | http://localhost:1971/?action=greet-world
| | | | :-class | text/plain | button
| | | +-line_break_content | text/plain | 
| | | | :-tag | text/plain | br
| | | +-cybop_link | text/plain | Greet CYBOP
| | | | :-tag | text/plain | a
| | | | :-href | text/plain | http://localhost:1971/?action=greet-cybop
| | | | :-class | text/plain | button
| | | +-line_break_content | text/plain | 
| | | | :-tag | text/plain | br
| | | +-exit_link | text/plain | Exit Programme
| | | | :-tag | text/plain | a
| | | | :-href | text/plain | http://localhost:1971/?action=exit
| | | | :-class | text/plain | button
| | | +-line_break_content | text/plain | 
| | | | :-tag | text/plain | br
| | | :-tag | text/plain | body
| | :-tag | text/plain | html
| | :-document_type | text/plain | html
+-logic | element/part | 
| +-handle_enable | element/part | 
| | +-open_client | dispatch/open | 
| | | :-channel | meta/channel | socket
| | | :-server | logicvalue/boolean | true
| | | :-port | number/integer | 1971
| | | :-identification | text/cybol-path | .client_socket
| | +-sense_client_data | feel/sense | 
| | | :-channel | meta/channel | socket
| | | :-server | logicvalue/boolean | true
| | | :-port | number/integer | 1971
| | | :-sender | text/cybol-path | .client_socket
| | | :-language | meta/language | message/http-request
| | | :-handler | text/cybol-path | .logic.handle_sense
| | | :-closer | text/cybol-path | .logic.handle_close
| +-handle_sense | element/part | 
| | +-get_client_id | communicate/identify | 
| | | :-identification | text/cybol-path | .client_socket
| | +-print_accept | communicate/send | 
| | | :-channel | meta/channel | terminal
| | | :-receiver | text/cybol-path | .stdout
| | | :-language | meta/language | message/tui
| | | :-format | meta/format | text/plain
| | | :-message | text/plain | Receive input from client via socket:
| | +-print_socket | communicate/send | 
| | | :-channel | meta/channel | terminal
| | | :-receiver | text/cybol-path | .stdout
| | | :-language | meta/language | message/tui
| | | :-format | meta/format | number/integer
| | | :-message | text/cybol-path | .client_socket
| | +-reset_request_model | modify/empty | 
| | | :-destination | text/cybol-path | .request
| | | :-destination_properties | logicvalue/boolean | false
| | +-reset_request_properties | modify/empty | 
| | | :-destination | text/cybol-path | .request
| | | :-destination_properties | logicvalue/boolean | true
| | +-reset_query_exists_flag | modify/overwrite | 
| | | :-destination | text/cybol-path | .query_exists
| | | :-source | logicvalue/boolean | false
| | +-receive_request | communicate/receive | 
| | | :-channel | meta/channel | socket
| | | :-server | logicvalue/boolean | true
| | | :-port | number/integer | 1971
| | | :-sender | text/cybol-path | .client_socket
| | | :-language | meta/language | message/http-request
| | | :-format | meta/format | element/part
| | | :-message | text/cybol-path | .request
| | | :-asynchronicity | logicvalue/boolean | true
| | +-open_treefile | dispatch/open | 
| | | :-channel | meta/channel | file
| | | :-identification | text/cybol-path | .id
| | | :-device | text/plain | internet/www_server_dynamic/test_request.txt
| | | :-mode | text/plain | write
| | +-send_knowledge | communicate/send | 
| | | :-channel | meta/channel | file
| | | :-receiver | text/cybol-path | .id
| | | :-encoding | meta/encoding | utf-8
| | | :-language | meta/language | text/model-diagram
| | | :-format | meta/format | element/part
| | | :-message | text/cybol-path | .
| | +-close_treefile | dispatch/close | 
| | | :-channel | meta/channel | file
| | | :-identification | text/cybol-path | .id
| | +-test_query | access/indicate-exists | 
| | | :-result | text/cybol-path | .query_exists
| | | :-part | text/cybol-path | .request:uri:query
| | +-evaluate_query | flow/branch | 
| | | :-criterion | text/cybol-path | .query_exists
| | | :-true | text/cybol-path | .logic.evaluate_query
| | | :-false | text/cybol-path | .logic.send_empty_message
| +-handle_close | element/part | 
| | +-get_client_id | communicate/identify | 
| | | :-identification | text/cybol-path | .client_socket
| | +-handle_close | dispatch/close | 
| | | :-channel | meta/channel | socket
| | | :-server | logicvalue/boolean | true
| | | :-port | number/integer | 1971
| | | :-identification | text/cybol-path | .client_socket
| +-evaluate_query | element/part | 
| | +-overwrite_path | modify/overwrite | 
| | | :-destination | text/cybol-path | .path
| | | :-source | text/plain | .logic.actions.
| | +-append_action | modify/append | 
| | | :-destination | text/cybol-path | .path
| | | :-source | text/cybol-path | .request:uri:query.action
| | +-print_path_label | communicate/send | 
| | | :-channel | meta/channel | terminal
| | | :-receiver | text/cybol-path | .stdout
| | | :-language | meta/language | message/tui
| | | :-format | meta/format | text/plain
| | | :-message | text/plain | Action path:
| | +-print_path | communicate/send | 
| | | :-channel | meta/channel | terminal
| | | :-receiver | text/cybol-path | .stdout
| | | :-language | meta/language | message/tui
| | | :-format | meta/format | text/plain
| | | :-message | text/cybol-path | .path
| | +-print_action_label | communicate/send | 
| | | :-channel | meta/channel | terminal
| | | :-receiver | text/cybol-path | .stdout
| | | :-language | meta/language | message/tui
| | | :-format | meta/format | text/plain
| | | :-message | text/plain | Action:
| | +-print_action | communicate/send | 
| | | :-channel | meta/channel | terminal
| | | :-receiver | text/cybol-path | .stdout
| | | :-language | meta/language | message/tui
| | | :-format | meta/format | text/plain
| | | :-message | text/cybol-path | {.path}
| | +-execute_action | flow/sequence | 
| | | :-model | text/cybol-path | {.path}
| +-actions | element/part | 
| | +-send-index | text/cybol-path | .logic.send_index
| | +-greet-world | text/cybol-path | .logic.greet_world
| | +-greet-cybop | text/cybol-path | .logic.greet_cybop
| | +-exit | text/cybol-path | .logic.exit_programme
| +-send_empty_message | element/part | 
| | +-print_error | communicate/send | 
| | | :-channel | meta/channel | terminal
| | | :-receiver | text/cybol-path | .stdout
| | | :-language | meta/language | message/tui
| | | :-format | meta/format | text/plain
| | | :-message | text/plain | Error: The uri query action is not understood.
| | +-send_empty_message | communicate/send | 
| | | :-channel | meta/channel | socket
| | | :-server | logicvalue/boolean | true
| | | :-port | number/integer | 1971
| | | :-receiver | text/cybol-path | .client_socket
| | | :-language | meta/language | message/http-response
| | | :-format | meta/format | text/plain
| | | :-message | text/plain | 
| +-send_index | element/part | 
| | +-reset_webpage | modify/empty | 
| | | :-destination | text/cybol-path | .webpage
| | | :-destination_properties | logicvalue/boolean | false
| | +-serialise_html | represent/serialise | 
| | | :-destination | text/cybol-path | .webpage
| | | :-language | meta/language | text/html
| | | | :-indentation | logicvalue/boolean | true
| | | :-format | meta/format | element/part
| | | :-source | text/cybol-path | .wui.index
| | +-open_file | dispatch/open | 
| | | :-channel | meta/channel | file
| | | :-identification | text/cybol-path | .id
| | | :-device | text/plain | internet/www_server_dynamic/test_wui.txt
| | | :-mode | text/plain | write
| | +-send_wui | communicate/send | 
| | | :-channel | meta/channel | file
| | | :-receiver | text/cybol-path | .id
| | | :-encoding | meta/encoding | utf-8
| | | :-language | meta/language | text/model-diagram
| | | :-format | meta/format | element/part
| | | :-message | text/cybol-path | .wui
| | +-close_file | dispatch/close | 
| | | :-channel | meta/channel | file
| | | :-identification | text/cybol-path | .id
| | +-open_file | dispatch/open | 
| | | :-channel | meta/channel | file
| | | :-identification | text/cybol-path | .id
| | | :-device | text/plain | internet/www_server_dynamic/test_wui.html
| | | :-mode | text/plain | write
| | +-test_html | communicate/send | 
| | | :-channel | meta/channel | file
| | | :-receiver | text/cybol-path | .id
| | | :-encoding | meta/encoding | utf-8
| | | :-language | meta/language | text/cybol
| | | :-format | meta/format | text/plain
| | | :-message | text/cybol-path | .webpage
| | +-close_file | dispatch/close | 
| | | :-channel | meta/channel | file
| | | :-identification | text/cybol-path | .id
| | +-send | communicate/send | 
| | | :-channel | meta/channel | socket
| | | :-server | logicvalue/boolean | true
| | | :-port | number/integer | 1971
| | | :-receiver | text/cybol-path | .client_socket
| | | :-language | meta/language | message/http-response
| | | :-format | meta/format | text/plain
| | | :-message | text/cybol-path | .webpage
| +-greet_world | element/part | 
| | +-overwrite_content | modify/overwrite | 
| | | :-destination | text/cybol-path | .wui.index.body.content
| | | :-source | text/plain | Hello, World!
| | +-send_index | text/cybol-path | .logic.send_index
| +-greet_cybop | element/part | 
| | +-overwrite_content | modify/overwrite | 
| | | :-destination | text/cybol-path | .wui.index.body.content
| | | :-source | text/plain | Hello, CYBOP!
| | +-send_index | text/cybol-path | .logic.send_index
| +-exit_programme | element/part | 
| | +-overwrite_content | modify/overwrite | 
| | | :-destination | text/cybol-path | .wui.index.body.content
| | | :-source | text/plain | The application was shut down successfully. Further requests will fail.
| | +-send_index | text/cybol-path | .logic.send_index
| | +-exit_programme | live/exit | 
+-request | element/part | 
| :-referer | text/plain | http://localhost:1971/?action=greet-cybop
| :-connection | text/plain | keep-alive
| :-accept-encoding | text/plain | gzip, deflate, br
| :-accept-language | text/plain | de,en-US;q=0.7,en;q=0.3
| :-accept | text/plain | text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
| :-user-agent | text/plain | Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0
| :-host | text/plain | localhost:1971
| :-protocol | text/plain | HTTP/1.1
| :-uri | text/plain | /?action=exit
| | :-scheme | text/plain | http
| | :-query | element/part | 
| | | +-action | text/plain | exit
| | :-path | text/plain | /
| :-method | text/plain | GET
+-client_socket | number/integer | 6
+-query_exists | logicvalue/boolean | false
+-path | text/cybol-path | .logic.actions.greet-cybop
+-webpage | text/plain | <!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
        <meta name="author" content="Generated by CYBOI; See http://www.cybop.org/"/>
        <title>
            CYBOL WWW Server Example
        </title>
    </head>
    <body>
        <h1>
            CYBOL WWW Server Example
        </h1>
        <p>
            This is an example web page created from cybol files.
        </p>
        <p>
            It is not formatted, since css files are not processed in this simple webserver example.
        </p>
        <br/>
        <p id="content">
            Hello, CYBOP!
        </p>
        <br/>
        <p>
            Click on the links below to change the content.
        </p>
        <a href="http://localhost:1971/?action=greet-world" class="button">
            Greet World
        </a>
        <br/>
        <a href="http://localhost:1971/?action=greet-cybop" class="button">
            Greet CYBOP
        </a>
        <br/>
        <a href="http://localhost:1971/?action=exit" class="button">
            Exit Programme
        </a>
        <br/>
    </body>
</html>

| :-encoding | meta/encoding | utf-8