Below in no particular order, is the complete set of Dissemino XML tags.
Note in the table below, the following tag usage codes:-
CFG | System or Application Level Config |
DOM | Data Object Model |
EXEC | Dissemino Executive Commands. Must lay within a <procdata> block |
FORM | Form Definition and Reference |
PAGE | Page/Article Construction |
System Tags
<sphereCfg> | CFG | Root tag of a Dissemino Sphere config file |
<webapp> | CFG | Only legal within the <sphereCfg> tag, to indicate a webapp. |
<webappCfg> | CFG | Root tag of a webapp config file |
<navigation> | CFG | Defines the set of page subjects for the purpose of a pull down menu (navbar). Each subject is defined by a <subject> tag which has a single attribute of 'name' to name the subject. The <subject> tag is allowed as a sub-tag of <navigation> but is otherwise illegal. |
<siteLanguages> | CFG | Define a set of languages used by the website. Each supported language is defined by a sub-tag of <language> which has attributes of 'code' e.g. EN for English, 'name' (language name as it is known in the site default language), 'native' (language name as it is known in the language itself), and 'flag' (pathname of flag image file). The <language> tag is the only allowed sub-tag of <siteLanguages> and is illegal outside of an <siteLanguages> tag. |
<xstyle> | CFG | Defines the standard style sheet for the application, that will be default be used in all pages. It has no attributes and the styles are provided as the content of the <xstyle> tag. |
<xinclude> | CFG | Defines a block of Dissemino and HTML tags to be included by subsequent <xblock> tags. The <xinclude> tag must be outside any page or article definition. Single attribute of name must uniquly define the block. |
<xfixdir> | CFG | Define a directory as a source of HTML and other files. |
<xmiscdir> | CFG | Define a directory as a source of HTML and other files. ??? |
<xfixfile> | CFG | Define a fixed file as a web application resource. Attributes of 'url', 'title' (as referred to in links), 'path' (full path of file) and 'mtype' (Mimetype). |
<login> | CFG | Define the standard authentication URL |
<logout> | CFG | Define the standard logout URL |
<includeCfg> | CFG | Extends the XML configs. The effect is to place the named XML config file in the position of the tag. The tags that can be processed in an XML config extension are limited to <fldspec>, <rgxtype>, <enum>, <class>, <repos>, <xscript>, <xpage>, <xstyle>, <xformHdl>, <xformDef>, <xtreeDcl> and the sub-tags thereof. |
<initstate> | CFG | This is only applied when Dissemino is called with the -newData command line argument. The tag has sub-tags of <newdataCSV> which name repositories and files to be loaded into them. The upload will be incremental. |
<newdataCSV> | CFG | Only legal as a sub-tag of <initstate>. Attributes are 'repos', 'class' and 'load' (full path to file). |
<passive> | CFG | Direct Dissemino to load a set of externally defined static pages |
<recapDef> | CFG | Set parameters for Google Recaptcha form protector (your Google account settings) |
Data Object Model Tags
<rgxtype> | DOM | Create a special text data type controlled by a regular expression, and add it to the available data types. As these are always text fields, it is not necessary to supply any type infomation. These types are always of short fixed or short maximum size and are validated by means of eiher a formal regex or a less formal expression using Aa/N where A is [A-Z], a is [a-z] and N is a digit. |
<enum> | DOM | Defines a set of enumerated values (a formal data type) |
<class> | DOM | Defines a data class |
<user> | DOM | Defines a user class (special case of data class) |
<repos> | DOM | Declares a repository |
<index> | DOM | Only legal as a sub-tag of <repos>. |
Executive Command Tags
<procdata> | EXEC | Defines a block of command tags |
<sendemail> | EXEC | Send an email. Attributes are 'from', 'to' and 'subject'. The tag content forms the message |
<setvar> | EXEC | Create and set a variable. Attributes are 'name', 'type' (data type) and 'value' |
<addSubscriber> | EXEC | Create/register a new user. Attributes are 'class' (user class), 'username', 'userpass' and 'email'. The values of these attributes are percent entity expressions allowing the real values to be garnered in form submissions. |
<logon> | EXEC | Authenticate a user. Attributes are 'user' and 'pass'. |
<testeq> | EXEC | Test if two values are equal. Attributes are 'param1' and 'param2' |
<extract> | EXEC | Extract text from a source document and place in a target variable. Attributes are 'src' (source) and 'tgt' (target) |
<xobjTemp> | EXEC | Create a HTTP event duration object (non cookie forms only). This must specify an object reference key and a pre-defined data class. |
<xobjStart> | EXEC | Assert a session duration object. This must specify an object reference key and a pre-defined data class. |
<xobjImport> | EXEC | Load the named user session object from a JSON file. This command must supply the object reference key and specify the full pathname of the data file. |
<xobjExport> | EXEC | Export the named user session object to a JSON file. This command must supply the object reference key and specify the full pathname of the data file. |
<xobjSetMbr> | EXEC | Set a member value within the named session object. This command must supply the object reference key, the applicable class (either object host class or a sub-class of it), the member name and define the source of the value. |
<xobjCommit> | EXEC | Commit the named user session object to a repository |
<xobjClose> | EXEC | Closes the named user session object. This only needs to supply the object reference key. |
<xtreeDcl> | EXEC | Declares a public tree if outside an <xpage> and private if within the <procdata> block of its host page or form-handler. This has compulsory attributes of a unique tree id and host page URL. Note that a private tree is only created if it does not already exist in the user session. |
<xtreeSync> | EXEC | Syncs the tree to a standalone object. Both must be tied to a user session. This requires the tree id and the object key. |
<xtreeCtl> | EXEC | space |
<xtreeItem> | EXEC | Adds an article to a tree. This requires the tree id, parent node id, refname and title. If the item already exists, this tag has no effect. |
<xtreeHead> | EXEC | Adds an blank header to a user tree. This requires attributes of tree id, parent node id, node id, refname and title. If the header exists, this command has no effect. |
<xtreeForm> | EXEC | Adds an form as an article to a tree. This requires the tree id, parent node id, refname and title but also form name and class context. |
<xtreeDel> | EXEC | Deletes an item from a user tree. This has two attributes of tree id and item id |
<xtreeExp> | EXEC | Expands an item from a user tree. This has two attributes of tree id and item id |
<xtreeClr> | EXEC | Un-expands an item from a user tree. This has two attributes of tree id and item id. |
<filesys> | EXEC | File system commands direct the creation and deletion of directories and then save/delete files to/from those directories. |
<srchPages> | EXEC | A free text search on site pages. |
<srchRepos> | EXEC | A search on a repository. |
Form Tags
<fldspec> | FORM | Specify a set of parameters for a form field for later reference in form definitions. The attribute 'name' sets the unique reference name. Three numeric attributes of 'cols', 'rows' and 'size' set screen dimensions. The 'html' attribute sets the HTML type to be either TEXT, PASSWORD, TEXTAREA, CHECKBOX, RADIO, SELECT, HIDDEN or FILE (for accepting uploads). There must also be a predefined data type and if this is an enum the attribute 'enum' can be used, otherwise use the attributes of 'type' or 'fldtype'. |
<xformDef> | FORM | Create a form definition, either in-situ (within a page/article) or independently for later reference within a page/article. Attributes of 'name' (must be unique), 'class', 'handler' (names yet to be declared form-handler). In the in-situ case there is an additional attribute of 'url'. |
<xfield> | FORM | Only allowed as a sub-tag of <xformDef>. blank-space |
<xhide> | FORM | Only allowed as a sub-tag of <xformDef>. Define a hidden form field. Attributes of 'name' and 'value'. |
<recapRef> | FORM | Only allowed as a sub-tag of <xformDef>. Invoke the Google recaptcha device (must have previous <recapDef>) |
<xformBut> | FORM | Only allowed as a sub-tag of <xformDef>. Define a form action button. Attributes of 'title', 'handler', 'url' and 'css'. |
<xformRef> | FORM/PAGE | Invokes a form within a page/article. Can be used to nest forms in form definitions |
<xformHdl> | FORM | Defines a form-handler |
<response> | FORM | Only allowed as a sub-tag of <xformHdl> Defines a form handler response page |
<error> | FORM | Only allowed as a sub-tag of <xformHdl> Defines a form handler error page |
Page/Article Construction Tags
<xpage> | PAGE | Defines a page as a resource of the web application |
<xblock> | PAGE | Includes a previously defined <xinclude> block of Dissemino and HTML tags. Single attribute of name. |
<xscript> | PAGE | Create a user-defined javascript (can be inside or outside the scope of an <xpage> |
<xlinkBut> | PAGE | Attributes of 'title', 'goto' and 'css' |
<xcond> | PAGE | Specifies a condition and defines a block of Dissemino and HTML tags that will apply if the condition is met. The condition is specified by three attributes of 'exists', 'isnull' and 'action'. |
<xdiv> | PAGE | A special case of <xcond> in that the condition is always the user status. |
<xtable> | PAGE | Defines a data subset and builds a HTML table from it |
<xdirlist> | PAGE | Directory listing resulting in HTML table |
<xchartPie> | PAGE | Define parameters for a graphic pie chart (uses HTML5 canvas tag) |
<xchartBar> | PAGE | Define parameters for a graphic bar chart (uses HTML5 canvas tag) |
<xchartStd> | PAGE | Define parameters for a graphic standard or line chart (uses HTML5 canvas tag) |
<xdiagram> | PAGE | Define parameters for a graphic diagram (uses HTML5 canvas tag) |
<navbar> | PAGE | Add the navbar defined by the <navigation> tag to the page (created by <xpage>) |
<x> | PAGE | Language control tag |