- 2017-05-24: IntraWeb 17 – IntraWeb Markup Language (IWML)
The biggest changes will be to the forms/pages themselves. The new page type (IWML) is significantly different than the existing page model in implementation.
Forward without Breakage
To facilitate both continuing support of older browsers and to allow existing IntraWeb projects to run in IntraWeb 17 with minimal changes, IntraWeb 17 will support both page types concurrently in a single project.
This allows the use of existing projects with minimal changes to the global areas and no changes (or very minimal) changes to existing pages. New pages can be created either as Page16 or IWML allowing an existing application to take advantage of the new features on a page by page basis.
We also plan to evaluate the feasibility of a migration tool to assist in migrating pages from Page16 to IWML.
Page16 is the existing page type known to all IntraWeb users and is the same page type in use since at least as far back as IntraWeb 7. It has seen many updates and some core changes but the basic page type remains the same.
DFM –> HTML –> HTTP –> DOM (Browser) –> HTTP –> IntraWeb
IWML (Formerly Page17)
IWML is based on the ACORN format. IWML pages instead use the following path:
IWML (DFM) –> HTTP –> IWCL TypeScript Library –> HTML –> DOM (Browser) –> WebSockets –> IntraWeb
No HTML, JS, or CSS is created on the server. Instead an IWML file containing a translated version of the DFM is used.
The IWML file is then translated into HTML and CSS by TypeScript running in the browser. This reduces the size of data transferred across the network and provides for easier manipulation both in the browser, and in response to requests from the server.
Sample IWML File
ACORN 1.0 IWML 1.0
Title: IntraWeb 17 Test
This is a very simple file however more extensive layouts and controls are being developed. Layouts such as stacks, grids, tiles and docks.
Page16 as IWML
We may add an option to allow Page16 pages to be rendered using IWML to gain rendering and speed improvements, but because of the translation layer most new functionality would not be available.