Document Update Markup Language

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Logo duml 180px.png

Document Update Markup Language (DUML) is an XML specification created by Brian Kardell to enable server-side logic DOM manipulation outside the context of conventional JavaScript functions.

DUML supports a simpler approach to AJAX. With most current approaches, DOM manipulation is accomplished through arbitrarily complex client-side JavaScript. With the DUML approach, the browser makes a standard AJAX call to the server. Then DOM manipulation instructions (such as appending nodes, replacing nodes, etc.) are generated server-side as a DUML document, delivered to the browser, and finally interpreted by a simple DUML interpreter running on the web page.

This diagram illustrates the interaction between the web browser and the web application, and the role that DUML plays.

The net effect is to move complex DOM manipulation logic out of the web page (and out of any associated JavaScript files) and onto the server. This may be desirable in cases where a development team wishes to put this sort of logic in the hands of the software developers rather than having the web designers handle this.

DUML itself is very simple, supporting a set of nine manipulations: appendChild, insertBefore, insertAfter, replace, remove. replaceContent, set-attribute, executeScript and queueScript. Since instructions map more or less directly to universally supported methods, the interpreter is correspondingly simple.

The DUML specification itself is generic and not tied directly to HTML based applications and therefore can be used with any XML/DOM based user interface language as long as the client supports a language in which an interpreter can be implemented.

History[edit]

The name "DUML" originated with Kardell's son, who remarked that writing DOM manipulation code using complicated client-side JavaScript was "dumb".

External links[edit]