Manual for the Editing Environment


Title and Section


The title is used to name a new form (examination library) and to assign it to an existing section.
A section serves as a group for multiple forms.
To create a new form page, enter a new title. To save under a different title, simply type the new title here and save.
If you enter a title that already exists, the original form will not be deleted; two different pages with the same title will be created (their identifiers will differ).


Form, Description, and Conclusion


In each row of the editor’s form, elements are displayed (i.e., columns with three cells stacked vertically).

In the sub-row “form,” the content appears that will be visible in the application form.

Each element has its number — the element index, which can be used to reference that element. Referencing an element is done using the letter x placed before the element’s number, e.g., x31. The sub-rows “description” and “conclusion” contain text that will be part of the default description and conclusion.

The inputs of the entire element can be written as: ( formText ) [ descriptionText ] { conclusionText }


Element Functionalities


These determine the character of an element. Choose them by selecting the row in the dropdown that you want to set to the desired functionality.


Text – Normal Font


( form text ) [ description text ] { element width }

An element with this simplest characteristic writes only plain text into both the form and the description.

Example:
Text ( Brain CT ) [ Brain CT ] {}
Resulting text in the description: Brain CT

In the “conclusion” cell you can set the width in pixels at which this text will be displayed in the form.

Example:
Text ( Brain CT ) [ Brain CT ] { 50 }


BoldText – Bold Font


( form text ) [ description text ] { element width in the form }

Same as the previous option, except the text is displayed in bold in the form.


CheckBox – Checkbox


( form text after the CheckBox ) [ description text after the CheckBox is checked ] { conclusion text after the CheckBox is unchecked }

A box appears in the form which, when “checked,” changes the element’s internal value from 0 to 1 and inserts the description and conclusion content into the default text.

Example:
CheckBox ( enlarged liver ) [ enlarged liver ] { Hepatomegaly. }

Result when checked: in the description: enlarged liver; in the conclusion: Hepatomegaly.
No text if not checked.


DropDownList – Drop-down List


( form text in the list ) [ description text after selecting from the list ] { conclusion text after selecting from the list }

A selectable drop-down list. The page user selects one of several options; the selected option then gets the internal value 1, the others have 0. The initially selected option is always the first in the list. The selected option behaves like a CheckBox.


InputText – Text Input


( introductory text ) [ introductory text ] { width of the InputText }

This element lets the user enter any text into the form. If the user enters at least one character, the description receives this input together with the introductory text present in the “description” cell. The internal value of this element for further operations becomes only the entered text. The number in the “conclusion” cell defined after the marker specifies the width of the InputText in the application form.

Example:
InputText ( size approx. ) [ size approx. ] {}

Result: after entering the number 12 into the InputText, the final description is: size approx. 12.
Note: Used with the following element “Append,” which adds units, e.g., “mm.”


ConditionAndOr – Condition AND/OR


( elementIndex,elementIndex,... ; elementIndex,elementIndex,... / elementIndex,elementIndex,... ) [ description text if condition is met ] { conclusion text if condition is met }

Unlike the above elements, “Condition AND/OR” depends only on the values of previous elements. In the “form” row cell, enter the indices of previous elements in the form x + index number. If there are more, separate them with commas without spaces. If the condition should include that some previous element is false (its internal value is x=0), put a minus before x. This element gets the value 1 exactly when all listed non-negative elements are true and the negative ones are false. You can also add more indices after a semicolon; those after the semicolon follow the logical “OR,” meaning at least one of them must be true.
If you want certain descriptions and conclusions of previous elements to be removed from the generated text when this element’s condition is met, list those elements as x + index, separated by commas, after a slash “/”, e.g. (x22,-x23,x28,-x35/x22,x48). If this element’s “conclusion” cell is filled, the conclusions of all referenced elements will be deleted even if nothing is listed after the slash.

Example:
ConditionAndOr (x2,x5,-x7,x9;x3,x4,-x10/x2,x5) [ write this into the description if x2 and x5 are true, x7 is false, x9 is true, and at least one of x3, x4, or not x10 is true; then also delete x2 and x5 ] { }


Function – Function


( Mathematical operation ) [ Text in the description if the result is a number ] { Text in the conclusion if the result is a number }

This element inserts into the description or conclusion the numeric result of a specified mathematical function. The inputs to the function are user-supplied variable values of previous elements in the form x + element index.

Example:
Function (x24*x24+x27*x27) [ the sum of squares of the legs is: ] { }.
The calculation based on InputText parameters will be appended after the text in the description or conclusion.


Condition – Condition (complete)


( operation elementIndex,elementIndex,... ) [ description text if condition is met ] { conclusion text if condition is met }

The Condition element writes the specified text into the description and conclusion when the condition in the “form” row is met. This condition may again use the values of previous elements in the form x + index, as well as mathematical and logical operators such as “and” and “or”.

Example:
Condition (x58=5 and x47<=x14) [ description text if the condition holds ] { conclusion text if the condition holds }


Button – Button


( text on the button ) [ alternative text when not pressed ] { button width }

The Button function reveals a hidden row in the form. The “form” cell contains the text shown on the button; the “description” cell contains the text displayed when the button is not enabled. This text is actually the index belonging to the first element of the hidden row. When the button is enabled, the text of the revealed row is inserted instead, and the button element’s internal value becomes 1.
The “conclusion” cell contains the button length in pixels.


Append – Append


( text in the form ) [ text to append to the previous description ] { text to append to the previous conclusion }

The Append function adds a specific text—either in the description or in the conclusion—to any previous element, provided that element is valid (i.e., has an internal value of 1).


DigitBox – Numeric Box

DigitBox ( introductory text in the form ) [ introductory text in the description ] { preset digit }

Unlike the “InputText” element, this allows only one character to be entered: 0 or another positive numeric value. This number can also be preset. In that case, the DigitBox is not empty at the start but contains that digit.
If you need to enter multi-digit values in the form, insert two or more DigitBoxes in a row in the editor.


Merge – Merging


( array of element indices ) [ first description text ] { first conclusion text }

This element can merge descriptions and conclusions of several previous elements. In the “form” cell, enter references to previous elements in the form x + index, separated by commas. Reference elements whose conclusions should be merged into a single conclusion after a slash. Expressions referenced in this element are removed from the previous descriptions or conclusions.

Example:
(x14,x25,x28/x10,x25,x28) [ first description text ] { first conclusion text }

If you want the individual expressions in the description or conclusion to be separated by something other than a comma, insert the desired conjunction between the commas at the appropriate place.

Example:
(x3,x7, and ,x21) [ first description text ] { first conclusion text }

You can make the entire merged description always start with a capital letter by inserting an asterisk (*) in the “description” cell; the conclusion automatically starts with a capital letter.

Example:
(x3,x7, and ,x21) [ * ] { first conclusion text }


Listing – Enumeration

( array of element indices ) [ text in the description ] { text in the conclusion }

When you need to enumerate several expressions in the description or conclusion, create multiple elements with such expressions in the “description” cells, and then create a “Listing” element that contains, in the “form” cell, the references to those elements. The last expression is always joined to the preceding ones with the conjunction “and”. In the description and conclusion, enter the text that will appear before the enumeration.

Example:
( x5,x8,x10/x5,x8,x10 ) [ enumerates in the description which of x5,x8,x10 are true ] { the same in the conclusion }


Bilat – Bilateral


( index of the first right-side element, index of the first left-side element ) [ first part of the description ] { first part of the conclusion }

This element merges expressions that are the same bilaterally and separates those that differ on the right and left. It always references first the initial element for the right side and then the first element for the left side. The description also starts with the right side (if it has distinct characteristics), then the left, and then bilateral, i.e., the shared characteristics.
You can make the entire combined description always start with a capital letter by inserting an asterisk (*) in the “description” cell; the conclusion automatically starts with a capital letter.
You can also enter alternative texts for right, left, and bilateral in the conclusion, e.g., “of the right kidney;of the left kidney;of both kidneys.”

Example:
x1=checkbox(cyst)[cyst]{cyst}, x2=textbox(size approx. X mm)[size approx. X mm]{},
x3=checkbox(cyst)[cyst]{cyst}, x4=textbox(size approx. X mm)[size approx. X mm]{},
x5=bilat(x1,x3)[size approx. X mm]{}

For: x1=checked, x2=5, x3=checked, x4=20
Resulting text = cyst bilat., right size approx. 5 mm, left size approx. 20 mm

For: x1=checked, x2=5, x3=not checked, x4=
Resulting text = cyst on the right, size approx. 5 mm

For: x1=checked, x2=15, x3=checked, x4=15
Resulting text = cyst bilat., size approx. 15 mm


Matrix – Matrix


( array of indices of the first row ; array of indices of the first column ) [ suffix ] { starting text }

The Matrix functionality groups expressions step by step in a row that all apply to a particular first member in the column.

Example:
Matrix (x3,x4,x5,x6; x2,x8,x14) [ . ] {}


RememberedText – Saved Text


( text in the form before the saved-text box ) [ original overwritable text ] { box width }

The “Saved Text” functionality lets the user redefine text typical for their use and save it via the floppy disk icon in the form. When reopening this form, the last saved text will appear. This is most often used for the MRI protocol of an examination, which may vary between departments. It may be used only once within a single examination (otherwise, on saving, the editor will warn the user to change this).

Example:
RememberedText ( examination technique: ) [ examination technique: TRA tseT2, TRA seT1, TRA spcT2 3D, COR seT1 ] { 400 }