BALL

> http://askemos.org/BALL/Meta/2012#
> description
>

Exploring The System

The URL http://askemos.org/BALL/Meta/2012# indicates the name space for the default "debug" interface.

This is a debug facility for exploring the system at "low level" . It is subject to change without notice.

Warning: Elements from this name space MUST NOT be used to implement essential parts of applications. Nevertheless examples and documentation rely on the idempotent part of the functionality.

Two elements are defined in this name space:

view

The view element of the meta name space is transformed into a HTML interface at the discretion of peer software handling the request.

It presents essentially the information from the meta data (see also the example here) and some primitive HTML forms to manipulate it if so supported by a control element.

control

The control element of the meta name space processes requests created from the corresponding forms of the view element.

Description

Access

By convention applications which support the meta vie API dispatch to this interface when processing requests in a magic name space. Request in this name space are produced when an HTML form element with the name "xmlns" and a value of "a " is processed. Typically one appends

?xmlns=a

to any URL to open the meta view.

General Structure

The meta view presents a fix header and a mode dependent control interface.

Underneath the header there is a link menu to the mode dependent components like this:

edit - bail - links - rights - support

Additionally a form to change the password is presented if the place is an "entry point".

Header

The header supports navigation to various components. A headline labled Document holds a direct to the place in question and the OID of it. Next a table summarizing the following properties:

Label Example Value Explanation
Author Af051fe01ba259f25aae185d500b3d6a2 The creator of the ressource.
Date Created Fri, 15 Dec 2000 13:58:19 -0100 Creation Date, RFC 822
Last Modified Tue, 30 Jan 2018 10:41:36 +0100 Date of last modification
Version 86812 Number of updates on this ressource.
Contract Ab6e300959b7c33de0b2d34238f56c906 The contract code, a.k.a. action document.
Protection /Adc5dd0c30f6e63932811ed60e019bb2d
Content Type text/xml The MIME type of the ressource.
Size Body: 27508 SQL: 0 Size of the body and size of the SQLite data base of this ressource.

Mode Dependent Parts

edit

A text area with the serialized body of ressource. Pushing "Send" might change it.

bail

BAIL, BALL Initials Language.

This mode presents four sections:

  1. A text area to enter arbitrary expressions.

  2. Equivalent S-Expression: The BAIL expression is reduced into a S-expression. This may be helpful since BAIL supports "t-expression" (SRFI-110).

  3. Result: The expression is evaluated and the result printed.

  4. As XML: The result in serialized as XML.

Note: Instead of an empty expression a fixed expression

metainfo self-reference()

is evaluated for convinience. This results in the same meta data record as presented in the header section. Just in XML format.

Usage:

  • Push the "Test" button to submit the expression for evaluation in an idempotent (GET) request.

  • Click the link labled "Check" to convert the form. The resulting form has an action of type POST, which, when submitted will execute the result as CoreAPI script.

Example:

Try this query to explore the SQL schema:

?mode=bail&xmlns=a&q=sql-query+"select+*+from+sqlite_master"

links

This mode presents a form to manipulate links (a.k.a. channels) tying other resources to this one. Underneath a list of links having a local name on the left and the target OID at the right.

Example: Agent running the "hoist" code maintain a manually limited history: following the links labeled links and last-step reveals backup copies of former state.

rights

The "rights" section allows foremost to change the protection of the ressource.

TBD: document usage.

support

This mode allows to add/remove notaties replicating the ressource place.