At the heart of this XML2HTML™ technology is CHTSNAPEDIT.EXE, an XML editor with which we're creating a variety of XML templates. When one of these template files is embedded with informational text or data placed between specific XML tag sets, we call "embed" points, it can then be passed through our XML2HTML™ cross-interpreter by simply previewing the file.
The "cross-interpreter" is a Clarion-based procedure built using a CHT template called: EmbedStandardWebPageHeaderShort. This resulting procedure can be incorporated into almost any Clarion application such as a page server ‐ for example, HNDTYPE4SERVERPEOPLE.APP.
The "cross-interpreter" used by CHTSNAPEDIT.EXE is a Clarion executable called HNDXML2HTMLGEN.EXE. This is a command-line application, that incorporates a procedure called AutoGenHTMLFromXML_VER02() also built on the EmbedStandardWebPageHeaderShort template as described above.
The act of previewing the file passes it through the "cross-interpreter" procedure which organizes it and transforms it (a copy of it, to be precise) into a viable HTML 5 web page file.
Similarly, when an HTML client, like a browser, makes a request for a data-based page from a server like HNDTYPE4SERVERPEOPLE.APP, a data-packaging procedure writes data that satisfies a query, into designated embed points in a copy of a pre-designed .XML "template" file. Passing the finished .XML file (with packaged data) through the server's "cross-interpreter" procedure converts the file into viable HTML that is then sent back to the requesting browser, acting as a remote previewer.
XML2HTML™ templates can be hand-embedded, tweaked, modified and previewed with the editor. As outlined above, they can also be programmatically embedded, tweaked and modified by data extraction procedures built into a Clarion application such as a web server to package table data, or even by standard Clarion templates to build documentation such as chttemplates.html.
Every XML2HTML™ template consists of a CSS (Cascading Style Sheets) section, and multiple single-purpose embed areas designated, by XML open/close tags, like the one pictured in the red boxes below.
The <PageTitleOverLay> "embed" point, for instance, determines the page title text, where that text is placed on the page, and what font style, font emphasis and color are applied to it, and so on.
At this point it is important to note that most of these "embed" points are optional and may be skipped or even removed from the template without detrimental effect. This stands to reason, since not all HTML 5 documents contain all the possible display elements and structures that HTML 5 is able to render.
Following that principle, the <PageTitleOverLay> embed point is certainly optional, since not every web page needs a title, particularly if a header image already displays a title.
A complete, inventory of embed point tag sets is provided further down in this document. Here we're simply detailing the use of one or two embed point tag sets to illustrate how much of the final, generated HTML page design is handled for you automatically by simply dropping your text into one of these XML2HTML™ Template embed points.
Some embed points have specific CSS classes appied to them automatically by the XML2HTML™ interpreter. The <PageTitleOverLay> is an example of such a one.
Certain varieties of embed tag sets apply to very distinct and well defined areas of the final, generated web page. Embed point tag sets for Headers, Titles and Menus for example, are usually precise enough in their design requirements that discrete CSS properties can be applied to them automatically by the cross-interpreter.
Some embed points, such as those which apply to generalized web page text, on the other hand, have less precise end uses, especially where positioning is concerned. An example of a more generalized embed point is <MessageArea1A>.
This embed point denotes web page text that can appear anywhere in the body of your generated web document. Because of this, a more generalized and less positionally precise CSS class like div.chtbody is automatically applied to the text.
However, it is expected that the developer will programmatically, or manually apply CSS classes to sections of their input text or data as required in order to obtain a satisfactory rendering of that input to the HTML 5 output.
Click the link below to contact us by email.
It will start your email client with our email address inserted: