Components
Components serve for the user-defined output of information in a form generated from an XML schema. Examples for components are a calendar which show up when focussing a date field oder a colorpicker which is displayed when filling in a form field for a color code. A component can be defined for elements and attributes as well as for simple and complex types. There is the possibility of executing server-side transformations for this purpose and of arranging these on the client side with CSS or equipping them with additional functionalities using Javascript. The server-side transformation is necessary for a component. The CSS and Javascript are optional however.
The maintenance of the individual components is performed underneath the container “Components”, which can be seen in the tree view. The binding of a component is performed in the component binding object of the respective schema. The selectors described here are available for this.
The maintenance screen of a component is divided up into the following four categories.
General
The definition of a display name and description is possible here. Moreover, the validity of a component is defined in this configuration section. The component can be valid for the entire set as well as for elements, attributes or simple or complex types. Using the template aspect it can be controlled whether a component is to overwrite only the content area or the label as well. An array and an individual section are differentiated between here. Moreover, a GUID is automatically defined in this section for identifying the component.
Server component
In this section, the output of the component can be arranged using HTML and XSLT. In addition, the extensions described here are available.
Client component
This section makes the integration of CSS and Javascript possible. There is the possibility of binding a Javascript instance to an HTML element. The definition of a prototype and the binding to the HTML element in the server component is necessary for this. The prototype string consists of the class name of the Javascript class and the text section “.prototype” (e.g. dateTimePicker.prototype). The binding in the server component is ensured by the attribute “data-component”. The GUID of the component must be set as the content of the attribute. You will find a more detailed description of the Javascript prototype here.
The data binding mode of the component can also be selected in this section. The data binding mode provides information on the kind of further processing of the form data. “OuterXml” and “NodeModel” can be chosen between. If “OuterXml” is selected, then possible child elements will no longer be generated automatically. The component must set the Xml of the appropriate node. This makes good sense in the case of a WYSIWYG editor for example. If the data binding mode “NodeModel” is selected however, only the desired content must be set. Generating the display of child elements or attributes is still possible.
Configuration
This section serves for the definition of user-defined configuration values. These can be used for example to transfer a localized text value. The definition is performed using XML. You will find a more detailed description of the XML structure here.