7) Code Construction Widget

This Blog entry is from the Getting Started in Jube section in Learn Jube.

Several pages in the platform rely on the construction of code and in all cases this is facilitated by a point and click construction tool or direct freehand code (yet heavily restricted with only certain language functions being allowed). In most cases the code is of vb.net dialect, unless it is used for reporting or Adaptation training in which case it is an SQL fragment.

The following example is taken from the Entity Models Activation Rules page, which can be navigated to via Entity Models >>> Activation >>> Activation Rules, then selecting any child:

1.PNG

The default is Builder which uses a point and click interface to build up the vb.net code.

The Rule Constructor takes the form of Object, Field, Comparison and Value. Depending upon the Rule that is being constructed, different Objects will be available. Hovering over the Data Object, there are a large amount of fields available for selection:

2.png

Upon selecting an Object field, the Comparison operator can be specified. The operators differ depending the area of the platform and how the model is configured:

3.png

Finally, the Value can be specified for comparison:

4.png

Upon each update made to the Rule and Code Constructor, the code fragment is written out to the code window:

5.PNG

Having the code written out in this manner is rather easier to review and also helps to identify if there are any obvious issues that would leads to compilation issues. Toggling to Coder, using the radio buttons towards the top of the the Code Construction Widget, it becomes possible to create code by hand:

6.PNG

When typing in code, every second and on change, the code is sent to the server to be parsed, returning any errors that may exist at that point of code construction:

7.PNG

It is incumbent on the user to continue constructing and correcting the code, until it is declared to be ‘Parsed and Compiled’:

8.PNG

Only a small number of tokens from the vb.net language are allowed in the Coder for security reasons.

As aforementioned, the Code Constriction Widget mostly creates vb.net dialect code, with the exception of the Adaptation page, which can be navigated to via Entity Models >>> Adaptation and Prescription, with an arbitrary child selected as follows:

9.PNG

In the case of Adaptation, the code is an SQL fragment which helps build a data set that is intended for machine learning:

10.PNG

It is not possible to update the Adaptation with hand crafted code.

6) Response Payload

This Blog entry is from the Getting Started in Jube section in Learn Jube.

All children have the option to specify if it should be specified as being a Response Payload. A Response Payload means that the content or value created by the object will be returned to the HTTP response stream, otherwise excluded. It is a means to reduce the amount of bandwidth that is used for extremely large models and thus speed up transport of the response message:

1.PNG

Irrespective of the Response Payload being selected, the value will still be stored in the archive database.

5) Name and Description

This Blog entry is from the Getting Started in Jube section in Learn Jube.

Each parent and child object entry will have a Name field, which is a character string accepting a maximum of 50 characters. A description field appears on a more irregular basis and is a character string accepting a large number of characters.

1.PNG

The Names for the object should always be unique for that object, for example each Abstraction Rule should have a unique name, whereas the description is of freehand.

4) Locked and Active

This Blog entry is from the Getting Started in Jube section in Learn Jube.

For every parent and for every child there exists an Active and Locked flag:

1.PNG

Both the Active and the Locked flags form part of the record and are updated in the same manner as the rest of its properties.

The Active flag provides a means to deactivate an object without having to delete it. In most cases deactivating a child object has a very similar behavior to deleting it, insofar as the entry will be unavailable for processing.

The Locked flag may be toggled in just one direction, Locking a record. If a record is Locked it means that all subsequent editing of that record is completely barred and the records is presented a read only. Locking records is useful to avoid the inadvertent update or deletion of important records. An example of objects that once created should not be deleted are Abstraction Rules which are in use my an Adaptation, as the alteration of these Abstraction Rules would render the results of the Adaptation inaccurate. Another example is ensuring that the Request XPath configuration, once created, remains unchanged such is the importance of these values in maintaining real time interfaces into the Jube Platform:

2.PNG

In the above example, note how the Update and Delete buttons are no longer available.

3) Child Versioning

This Blog entry is from the Getting Started in Jube section in Learn Jube.

For children there is a version system in place. When a record is created for a child object, it is always accompanied by version data:

1.PNG

The fields that relate to version of children are descried in the table as follows:

Name

Description

Version

The version in a sequential number that indicates the extent to which this record has been updated. Upon a record being created, it is allocated version 1, then for each update (i.e. click of the update button) the version will increment by one.

User Created

The name of the user that last created or updated this child record.

Created Date

The date and time this record was last created or updated.

For children all update and deletes are done on a logical basis, which means that they are marked as deleted in the database but still remain there for the purposes of audit. When a child record is updated, in actuality the record being updated is logically deleted and a new record with the incremented version number is created. It follows that there is record for each update maintained in the database.

2) Children

This Blog entry is from the Getting Started in Jube section in Learn Jube.

Children roll up to the Parents and they are administered via a common user interface spanning the platform. In this example, a Request XPath will be added to an Entity Model (whereby the Entity Model was used as an example of a Parent object previously). The Request XPath page is available by navigating to Entity Models >>> References >>> Request XPath:

1.PNG

Navigation around children takes place via a tree control, where each parent is represented as the upper level of the tree object. In the following example, it can be seen that each parent is the top level of the tree:

2.PNG

To expand on the top most level to expose children, simply click on the triangle icon next to the parent name:

3.PNG

On clicking the triangle icon, a list of all children rolling up to the parent will be revealed:

4.PNG

To add a child object, click on the parent entry in the tree for which you wish to create the child, exposing a blank for for the creation of a child object in the right hand pane:

5.PNG

Upon completing each field required of the child object in right hand panel, clicking the Add button at the base of the form will commit the object:

6.PNG

Confirmation of the object having been committed will be returned care of the Add button disappearing and being replaced with an Update and Delete button, alongside confirmation of the version and created date:

7.PNG

If the tree is expanded, the new entry will be added to that tree, otherwise the new entry can be viewed by expanding as aforementioned:

8.PNG

To update a child object, start by expanding on the tree as described in the Navigate subsection of this section of the documentation, then click on the child entry to be edited:

9.PNG

Alter the values of the child object as required, then click the Update button to commit the changes:

10.PNG

Upon clicking Update, confirmation of a change to the child object is received by the Version being incremented by one:

11.PNG

As with update, to delete a child object, start by expanding on the tree as described in the Navigate subsection of this section of the documentation, then click on the child entry to be deleted. Upon the child object being expanded into the right hand pane, click on the Delete button to confirm that this child object requires deletion:

12.PNG

Upon clicking Delete, a prompt will be displayed which will ask for confirmation of this delete:

13.PNG

Upon confirmation being given, the delete will take place. The entry on the left hand pane will be removed from the tree if it is still expanded, whereas the right hand pane will write out further confirmation of the delete having taken place:

13.PNG

1) Parents

This Blog entry is from the Getting Started in Jube section in Learn Jube.

There are several basic hierarchies created in the JUbe platform, where a parent is created and many configuration elements cascade down from then.

For the time being, knowing the parents in the Jube platform and how to navigate to them is adequate. The following table details how to navigate to the parent objects in Jube:

Parent

Navigation

Entity Models

Navigate to Entity Models >>> Entity Models

Symbols

Navigate to Symbol Models >>> Symbols

Cases Workflows

Navigate to Administration >>> Cases >>> Cases Workflows

Roles

Navigate to Administration >>> Roles

The parents share similar characteristics for the purposes of administration. Firstly, a list control will return all parents configured for that part of the platform. In the following example, all Entity Models are returned:

1.PNG

To move from one record to the next, use the scroll buttons or index buttons at the base of the list:

2.PNG

To Add a record to an object, a button is implemented at the top of the List Control:

3.PNG

Clicking on this button will overlay an entry form to accept a new record:

4.PNG

Upon completing the form with valid values for this object (each of these is exhaustively documented later in Blog entries), to commit the record, it is a simple matter of clicking the tick box in the right hand corner of the list object:

5.PNG

Alternatively, clicking the opposing button will roll back the change:

6.PNG

To update an entry in the List control while browsing back and forth via the navigation buttons, it is a simple matter of clicking the pen icon at the bottom right hand corner of the list entry:

7.PNG

On Clicking the pen Icon, the entry will be overlay by a form entry, presenting the existing values for update:

8.PNG

Upon updating the form, the entry can be updating in the same manner as the addition, by clicking the tick icon:

5.PNG

Alternatively rolling back the change by clicking the opposing button:

6.PNG

To delete an entry, navigate to the entry in the entry in the list control that requires deletion and then click on the trash icon:

9.PNG

A message box will be displayed to confirm that it is the users intention that the entry is to be deleted, upon confirmation, the entry will be deleted:

10.PNG