Untangled Web

Atomz Publish streamlines site content management via the Web

ATOMZ SEARCH, THE content indexer and search engine, has long set the standard for a Web-native service: easy, automatic, and rock-solid. Atomz Publish aims to bring those same virtues to enterprise Web site management. Users of Search will find Publish’s UI style familiar. But Publish tackles a much harder problem, and it is accordingly a much more complex product.

At Publish’s core is a repository of Web-based content that can be published to an Atomz-hosted site or, by way of FTP, to your own server. Content and templates are dynamically merged to yield static pages that any standard Web server can dish out.

When fully database-driven Web sites were the rage, this technique was likely to raise eyebrows. In fact, it’s a simple, cost-effective, and supremely efficient way to deliver content — as users of popular Weblog software, such as Radio UserLand and Movable Type, are discovering.

An enterprise Web site is a river of content fed by many tributaries. The challenge is to keep things flowing in a controlled manner, without making the Webmaster a bottleneck. In Publish, the account owner organizes contributors by means of a simple user/group system based on just two roles: administrator and editor.

Administrators organize work as a set of tasks that bind actions (for example, add, review, delete, approve) to sets of pages (folders, subfolders, wild-card file-name specifications). Administrators also define the structure of the site, using a tree control.

An editor logs in, chooses an available or assigned task, and then follows a guided and carefully orchestrated sequence of events. The pages relevant to the task are gathered into a customized interface; content editing and previewing are interactive, WYSIWYG affairs; and the steps of the task are made available as needed.

In the role of administrator, we were able to grant one editor just enough power to review a page and pass it on for approval, while empowering another editor to reprogram the template that governs a family of pages and then push those modified pages to the public site.

The check-in/check-out system, which serializes the editing of pages and templates, is directly accessible to administrators but hidden behind the task-oriented interface presented to editors. The same applies to the approval system, which is the final arbiter of what gets published. Content is released to the public site when approved or optionally at some specified future time. It can also optionally expire at some future time. Using a robust versioning system, administrators can track changes, compare differences, and revert to earlier versions.

The heart of every content management system, templates, combine two essential functions in Publish: layout and editing. Templates define layout by mixing HTML (and perhaps Cascading Style Sheets, JavaScript, or server-side includes) with tags belonging to the Atomz template language. The strategy will be familiar to anyone who’s used Active Server Pages, JavaServer Pages, PHP, or indeed any Web templating system.

The editing capability is unique to the Publish templating system. A named field specified in a template is associated with an editing tool — either a raw HTML TEXTAREA, or an Internet Explorer rich-text editing control. A special tag, , makes the editing tool accessible when pages derived from the template are viewed in the Atomz repository.

An editor reviewing a page can edit a title or a paragraph by clicking an associated icon. In the case of repeating elements, including sequences of paragraphs, list items, or table rows defined using the tag, the editor also can add, delete, and rearrange elements. This clever idea marries the productivity of through-the-Web WYSIWYG editing with the control (templating, versioning, approval) of mature content management.

Using a technique called cross-posting, data gathered and published under the control of one template can be republished through another template. One of the “starter blocks” built into the system is a template for a news page made of a series of items with titles, dates, and descriptions. With some coaching from Atomz, we were able to cross-post these items to a syndicated XML news feed;that is, an RSS (Really Simple Syndication) channel.

The system is not always so flexible, however. The tag, for example, processes a set of files into a tabbed index — that is, a row of hyperlinks. We would prefer not to hyperlink the current item, but the tag doesn’t know how to do that, and there’s no general-purpose scripting facility to implement such behavior.

Especially for administrators, the complexity of the application strains HTML’s limits. Checking files before publication, we found one that was approved but still checked out. We compared it to a former version, reverted to that one, and checked it in. By now, we’d lost our original context and had to recreate it. These problems are ultimately the fault of HTML, not Atomz. HTML just isn’t a context-preserving medium.

We had a glimpse of what Web services will make possible when we tried the WebDAV (Web Distributed Authoring and Versioning) interface, which enabled us to move files between the Atomz repository and Dreamweaver MX. But Atomz concepts such as approval and task flow don’t translate to WebDAV. In principle, a service-oriented architecture can support a vanilla HTML interface and an alternate rich-client interface as two transformations of the same core. In practice, that’s much harder than it sounds, but it’s a challenge we expect Atomz (and other Web-native services) will soon confront. Meanwhile, Publish is a strong first-generation service that can bring order to the chaos of corporate Web site management.

020930seatomz.gif

Source: www.infoworld.com