Creating the XML Content to Drive the Web   Table of contents   Indexes   XQL- and HyTime-based content reuse using a content management system

 Allaire Corporation 
 Cambridge 
 Simeonov, Simeon 
 USA 
 
Simeon Simeonov
 Lead Architect
Allaire Corporation
  One Alewife Center Cambridge (Massachusetts)  USA (02140)
Email: simeons@allaire.com Web site:www.allaire.com
 Biography
 Simeon (Sim) Simeonov's areas of expertise encompass object-oriented technology, compiler theory, Internet tools, enterprise computing, and the broad spectrum of XML technologies. In his current role as Lead Architect at Allaire, Sim provides direction for the evolution of the company's technology and product strategy as well as the architecture of all Allaire platform products: HomeSite, ColdFusion, and JRun. Sim's initiatives at Allaire have brought about ColdFusion's tag-based extensibility model, the CFML XML-based meta-information repository, and the Web Distributed Data Exchange (WDDX) technology. Sim is currently working on architectures for the next generation of distributed Web applications.
 

The Future of Web Architecture

 B2B, business-to-business 
 EAI, Enterprise Application Integration 
 
In the past few years the Web has undergone immense change. The early Web was an information landfill where anyone and everyone was serving up information in static HTML pages. There was no personalization, close to no structure, and very little searchability. With the advent of CGI and Web application servers the situation improved considerably. Page-based applications offer personalization and structured information processing based on browser requests they are receiving. Although this has increased the capability of the Web platform, most Web applications still remain isolated islands in the vast ocean of Web computing. Despite the introduction and wide adoption of foundation technologies such as XML, there isn't much distributed data exchange, Web application integration and business-to-business (B2B) computing. It is apparent, however, that Web application architecture is going this way. The next generation of Web architectures will be focused on distributed applications, syndication of content, data, and services, and enterprise application integration (EAI).
 The end goal is, of course, the Holy Grail of network computing-the Semantic Web, a term currently in fashion that stands for a knowledge-rich network where information is indeed at our fingertips [SemanticWeb, WebArchitecture, WebDesign]. On the Semantic Web, Metcalfe's Law of Connectivity holds true: with every added node the value of the network increases exponentially because the added node can integrate with existing nodes, discover and leverage the information and services they provide [MetcalfeLaw].
 To make that bright future become a reality, we must begin building next generation Web applications. This paper focuses on analyzing the requirements for these applications and presenting a technology roadmap including current initiatives in the Spectra packaged applications framework by Allaire Corporation focused on satisfying these requirements [Spectra]. We begin with a re-statement of the benefits XML stands to offer Web computing. We then identify some of the challenges in using XML in Web applications. These challenges motivate requirements for successful mass-market Web application architecture. We conclude with a discussion of the approach Allaire Spectra has taken to satisfy these requirements.
 

The Benefits of XML

 To many, the benefits of XML remain elusive. All of the hype, combined with a plethora of new standards and standards activities, as well as early attempts to use XML in Web browsers have left most developers and companies somewhat at a loss as to how to best embrace this nascent technology. However, the benefits of XML for Web computing are clear, and can be viewed through two broad lenses: Web content management and Web syndication.
 

Web Content Management

 One of the first and most obvious areas of interest for XML is based on the origin of XML technology, which was the electronic publishing industry, in particular standards such as the Standard Generalized Markup Language (SGML) [SGML]. The early Web was built on HTML, an application of SGML [HTML]. The Web exploded based on the simplicity and ease of adoption that HTML afforded people, and in some ways this grew out of control, reaching a point where there was simply so much raw content that efficiently searching, re-purposing or sharing that information had become nearly impossible.
 XML was created in some respects as a means to bring order to the chaos that HTML had created, yet doing this in a Web friendly fashion by eliminating a lot of the complexity associated with systems based on SGML [XML]. This new content order would bring four broad benefits to the world of Web content management. content management
 

Separation of Data from Presentation

 The first major benefit of using XML for storing Web content was that it enforces a clean separation of data or content from presentation or formatting. This becomes important as Web systems move towards database-based back-ends, where application servers act as middleware between structured data stored in databases and front-end browser clients. By moving to this architecture, it would also become easier to separate the disciplines of database integration from graphic layout and presentation. XML-based content storage would also help companies deal with the forthcoming explosion in Web client technologies, such as Web PDAs, Web Phones, Web Terminals, Web TVs, and so on.
 

Easier Searchability

 Another goal of moving to XML-based content storage was to make it easier for applications to search through the vast amounts of content available on the Web. Whether search engines scanning a Web site, or a simple program on your Web application server, the need to search structured data requires that information be stored in a granular fashion as opposed to in unstructured documents. For instance, it would be much easier to search a sports portal for articles about a given team if the information that composed the article was stored in a structured fashion, rather than as a collection of HTML documents in a Web server directory.
 

Content Re-purposing

content re-purposing
 
Related to the idea of delivering data to multiple devices is the concept of content re-purposing. In short, XML-based content management makes it exceptionally easier to re-purpose information into other formats. For example, if you have information about a product stored in XML, you might want to format that data for delivery via HTML for a browser, or alternatively you might want to re-purpose the data into RTF for delivery through a Fax service. In fact, with the explosion of networks, computing platforms and devices, it is probably safe to say that your information will need to be re-purposed into potentially dozens of different formats, not just HTML. In essence, XML-based data storage is an insurance policy against the rapid change that is happening and likely to continue. It protects you and enables you to embrace the change of the Internet.
 

Richer Data Manipulation on the Client Side

 One of the most significant weaknesses of the Web application computing model is that to date it has been difficult to efficiently work with data on the client-side of your applications. In some ways, the mantra of "thin clients" overwhelmed the more pragmatic need to improve customer experience by doing some data processing in Web browsers, as opposed to just on the Web server. In a world where all that is passed between servers and browsers is unstructured HTML text, it is nearly impossible to effectively work with that data on the client.
ECMAScript
 
However, over the past couple of years, the capabilities of browsers have increased dramatically because of ECMAScript (the official standard for JavaScript), making it possible to improve end-user experience by working with information locally before sending it back to the server [ECMAScript, JavaScript].
 CSS, Cascading Style Sheets 
 
With the advent of XML-based content management, it is now easier to send fully structured data to a browser, which can then be manipulated locally and formatted using JavaScript or Cascading Style Sheets (CSS) [CSS]. Rather than sending a formatted HTML page containing detailed product information, it is now becoming possible to send the browser the structured product data, and then use scripts and style sheets to control presentation and interactivity.
 

Web Syndication

 While originally it seemed that XML was being created only to solve the content management crisis of the Web, it has become clear very quickly that XML could potentially play a much more revolutionary role in how the future of the Internet and e-commerce evolves. Within a year of the introduction of XML, two clear camps emerged, both of which brought different agendas to the XML discussion.
 One camp focused on XML publishing. People with this viewpoint saw XML as a next-generation, Web friendly SGML. They saw the benefits in terms of document management, search and indexing and content presentation. While all true, these views missed some of the more revolutionary aspects of XML.
 Another camp focused on XML data. People with this viewpoint saw XML as a simple, lightweight means to share data between applications over the Internet. They weren't really concerned with content management and publishing, but rather with what XML would do to enable companies to tie together disparate systems and applications to form new models of e-commerce. These people came from backgrounds in middleware and distributed objects, relational and object databases, and e-commerce and EDI.
 It was this second camp that saw the primary benefit of XML in Web application integration, or what we call Web Syndication. Web Syndication is based on the idea that value in the Internet economy is created through the network of relationships established between Web sites, or what some might call Internet value chains. Web syndication
 Based on new affiliate and syndicate network business models, Web syndication exposes a site's content and application assets to other applications and Web sites.
 

Open Web-Based Data Formats

 The core of this worldview rests on the fact that XML will provide a set of open, Web-centric data formats. Because XML is Internet friendly-for example, it is text-based, and easy to move around using major Internet protocols such as SMTP, HTTP, etc.
 XML can be used as a "glue" of sorts to share data between applications. From this vantage point, XML could store data that applications and programs understand, such as strings, arrays, database queries, and objects. XML as universal data format, rather than document format, has become the key mantra.
 

Data Exchange Between Applications

 From this first benefit derives the second major benefit, which is that with some additional abstraction, it would now be possible to create what some call "XML middleware" to facilitate application data interchange. XML middleware
 

RPC

 Suddenly, it has become possible for different applications to invoke and use services exposed over the network, all through the glue of XML.
 With this use of XML, applications could invoke other applications over the network, using HTTP, and exchange data between different programming languages. Even further, some have moved to layer additional rich semantics on top of this data, again using XML as the syntax, in order to emulate classic Remote Procedure Call (RPC) and distributed object programming models.
 

New Business Models based on Syndication

 The overall benefit of having universal data formats and the ability to do application data exchange is the realization that this opens up entirely new business models based on Web Syndication. Companies are now realizing that with this use of XML they can expose critical business data to customers, suppliers and partners, all through the standards-based infrastructure of the Web. Whether for simple content exchange or more complex forms of remote application automation, these uses of XML are central to the emerging Internet Economy.
 

Challenges to Adoption

 Despite all of the hype around XML, and despite the incredible promises outlined above, XML remains an under-leveraged technology. Some might argue that this is because the standards are still in flux, that key pieces of the equation are not in place, and that the tools to use XML are still not mature enough. While these points are certainly true, they miss more fundamental problems with the approach taken to date in integrating the benefits of XML directly into the everyday work of those building their business on the Web.
 

XML Management Woes

 The management of XML content at a minimum has to do with the storage, retrieval, indexing, and search through data represented as XML. This is the field of XML repositories. These databases are 100% focused on storing XML content. Some of these are for dynamic publishing systems, overcoming the limitations of simply storing XML documents in flat files, and others are providing object databases that can manage XML at a fine level of granularity. If XML is so hot, why aren't we seeing mass adoption of XML repositories? XML repository.
 One could argue that a core reason is that the technology is too "bleeding edge" for all but the most innovative enterprises to trust their mission critical systems to it. Perhaps more important, however, is the fact that most XML repository approaches impose a significant burden on companies through the introduction of proprietary database servers. The vast majority of developers and companies have huge investments in SQL-based relational database technology [SQL]. XML object storage, even if it is architecturally appropriate, forces a new infrastructure that can't easily co-exist with relational databases. Hence, it is costly to adopt. While certainly sufficient for narrow, vertical applications, at this time XML repositories fail to meet the needs of the mainstream corporation moving its business to the Web.
 

Browser Adoption Limited

 

Complex XML Programming

 There are two established models for programming XML: event-based and Document Object Model (DOM) based [DOM]. Unfortunately, both are not ideally suited for handling application-level data encoded in XML.
 In the event-based approach, an XML processor emits syntax-level events about the XML being parsed, e.g., onStartElement("someElement") and onCharacters("some character data"). Clearly, this is a very low-level programming model that is used primarily by tool developers. It is far removed from high-level logical notions such as "catalog entry" or "order price". The event-based approach is generally reserved for tools developers because of its high performance.
 In the DOM approach, the XML processor exposes an object-based view of the XML content. The objects relate to XML "pieces" such as "element node", "attribute node", "text node", etc. The DOM would have been a great way to manipulate XML data if it weren't for the fact that it is very much focused on the syntactical representation of an XML document and not the data it represents. (This is understandable if one looks at the origins of the DOM in the publishing space.) For example, the DOM tree can include references to CDATA nodes, entity reference nodes, etc. In addition, whitespace text nodes normally litter the DOM tree making it somewhat cumbersome to work with the data represented in the XML. DOM
 New models for programming with XML, particularly in the area of schema compilation, are likely to improve the situation. Unfortunately, these efforts are in their nascent phases right now and are not likely to become a foundation for solid mass-market tools anytime soon.
 

XML Standards Incomplete

 For those companies seeking to leverage the power of syndication and business-to-business application integration, finding common XML data standards is proving slow moving and complex. Even core foundation standards such as the XML Schema work on datatypes are far from complete at the time of this writing [XMLSchema:Structures, XMLSchema:Datatypes]. Without strong datatype identification and validation XML is considerably harder to use in data-oriented applications. XML Schema
 Furthermore, most companies simply want to expose existing data and application logic out to the network, not adopt an entirely new data and application infrastructure. In a sense, the available XML infrastructure is orthogonal to the major benefits and uses that many corporations have in mind for it.
 

Web Application Architecture Requirements

 Despite its great potential as a foundation technology for the next generation of Web applications XML is facing significant adoption challenges. Any successful XML-based Web application architecture must at the same time enable all of the expected benefits yet circumvent any obstacles to its mass-market adoption. This realization facilitates a move away from a description of the challenges to XML adoption to a formulation of requirements that lessen their impact.
 An XML-based architecture for Web applications should at a minimum:
 · Allow for the management and manipulation of application-level data represented in XML, enabling
 · Definition and manipulation of high-level "business object" entities such as "catalog entry" or "purchase order",
 · Indexing and searching through the data based on both structural elements (object properties) and full text (for descriptions, for example),
 · XML repositories that leverage existing relational database technology, and
 · Non-XML enterprise datasources "bridged" in a simple, well-defined manner.
 ·Present a Web application-oriented data-centric model for programming XML that should be applicable to
 · The majority of server-based application environments, e.g., Java servlets/JSP, Microsoft Active Server Pages, Allaire ColdFusion, Perl/PHP scripts, and
 · A broad range of browsers, at a minimum NS 3.x, IE 4.x and above.
 · Enable out-of-the-box syndication via · Content re-purposing using the business object XML representation as a base,
 · Syndication of content in any format, not just XML, and
 · Syndication of application functionality to allow for B2B computing on the public Internet.
 · Protect developers and companies from standards flux by
 · Encapsulating as much of the details of XML processing, and
 · Providing an upward migration path with respect to XML standards and processing tools.
 These are the minimum requirements for the technology core of the next generation of Web applications. In addition, any number of features can be added. The rest of the paper focuses on describing one approach to satisfying these requirements, that of Allaire Spectra.
 

The Allaire Spectra Solution

Allaire Spectra
 
Allaire Spectra provides a packaged system for content management, e-commerce and personalization [Spectra]. Allaire Spectra enables corporations to leverage the best practices found in successful Internet businesses to deliver and manage large-scale Intranet, Extranet and Enterprise Portals. At the core of Allaire Spectra is a deep embrace of XML, and all of its key benefits. Allaire Spectra was designed from the ground-up to embrace all of the major benefits of XML, without imposing the pain and complexity currently involved in leveraging XML. Allaire Spectra accomplishes this while still remaining open, extensible, and integrated into existing corporate application and data management infrastructure.
 

WDDX Provides the Foundation The Web Distributed Data Exchange

 WDDX 
 
(WDDX) is an Allaire-invented, XML-based technology that enables applications to store and exchange data over the Internet in a programming language and development platform neutral manner [WDDX]. WDDX was released as an open source technology in December, 1998 and is supported through a broad range of development communities and platforms. WDDX, the formal specification and the core SDKs that support it, are available from wddx.org, an Allaire-sponsored Web site for the standard's distribution and evolution. The goal of Wddx.org is to enable a fluid, open Web, where any Web application, anywhere on the network, can easily and transparently exchange information and logic with any other application; to embrace interoperability between Web systems; and to enable the new Internet Economy through business models based on affiliate and syndicate networks.
 WDDX is an open technology. It is available as freeware, under a modified Free-BSD style open source license. Third parties are the primary developers of WDDX. Allaire believes that wide use and broad adoption will facilitate learning and reference implementations that can form the basis for more formal standards activities around Web distributed objects and data syndication.
 serialization  
 
WDDX uses a technique called data serialization/deserialization to transform data from one language or application environment into another. In essence, WDDX allows any application to take data it is using, and with one line of code, transform that into an XML document instance. This XML data can then be transferred over the network, or stored in a file or database. WDDX supports both simple and complex data structures, such as strings, numbers, boolean values, and dates and times as well as multi-dimensional arrays, associative arrays, and tabular data recordsets. Because of this, WDDX is well suited as a format for content and data storage, as well as application data exchange over the Web. WDDX is supported by Java, JavaScript, ColdFusion, Perl, COM/ASP, PHP, and Python [ASP, COM, ColdFusion, Java, Perl, PHP, Python]. WDDX enables these environments to easily exchange data, whether from server-to-server, or between browsers and servers. Support for other environments is currently under development.
deserialization
 
 Java 
 
 JavaScript  
 
 ColdFusion 
 
Com
 
 ASP, Active Server Pages 
 
PHP
 
 Perl 
 
 WDDX was built to enable application developers to leverage the benefits of XML without the pain. Application developers can focus on creating and managing business data and don't have to worry about the mechanisms for representing the data in XML and the parsing and manipulation of the XML. Moreover, WDDX tools are meticulously optimized to perform the serialization of data to XML and the deserialization of XML to application data at very high speeds (on the order of several megabytes of XML per second). Chances are that developers doing day-to-day manipulation of XML through the traditional event-based and DOM-based programming models will not be able to achieve such high levels of performance.
 

Web Content Management

 At the foundation of Allaire Spectra is a content management infrastructure for building and delivering enterprise-level Web systems. The content management services provide capabilities for data and logic modeling, content storage, search and indexing, layout and presentation models, and integration with external database and middleware systems. Additional services are layered on top.
 

ContentObject Database

COAPI
 
At the core of Allaire Spectra content management services is the Allaire Spectra ContentObject Database. Allaire Spectra combines an object-based programming model, dubbed the ContentObject API (COAPI), with the ContentObject Database to deliver Web systems in a highly structured and scalable fashion.
 The ContentObject Database stores data as XML in WDDX objects. A news article, for example, would be stored as a single object structure in the database. The ContentObject Database exposes a hybrid object-relational model. It supports relationships, searching and indexing, and rich meta-data, among other things.
 A developer, however, need not know anything about XML or WDDX proper. A developer uses a simple UI to define the structure and data types of their content, and a simple object-based API to manage data stored in the database. The fact that the system stores information in XML may seem almost incidental to the developer. This is significant because it allows enterprises to leverage the benefits of XML without first having to endure the cost and time involved in training their development teams how to use XML.
 EAI, Enterprise Application Integration 
 
The ContentObject Database does not use a proprietary back-end database. It will work with any existing relational database system thus eliminating one of core challenges to the adoption of XML-based content management systems. In addition, Allaire Spectra defines a high-level API that allows meta-data and data from external and legacy systems to be dynamically "bridged" into the ContentObject Database thus establishing a foundation for an Enterprise Application Integration (EAI) strategy.
 

Separation of Data and Presentation

 By moving Web content and data into structured object storage, the system automatically enforces a strict separation of data from presentation. This enables the use of simple formatting or display templates that either dynamically create HTML, or apply CSS to data to create formatted content. Developers can create simple templates that can reference data using an object property notation. For example, to display a news article in a browser a developer could use the following code:
 
<H1>#NewsArticle.Title#</H1>
 
<I>#NewsArticle.Author.LastName#</I>
 
<P>#NewsArticle.Body#</P>
 

Content Re-purposing

 HTML, Hypertext Markup Language 
 
Related to the clear separation of data from presentation is the fact that the Allaire Spectra ContentObject Database makes it easy to re-purpose data for use with other systems and formats. Allaire Spectra allows developers to define Object Types, which are the building blocks for a site. An Object Type contains both properties (of any data type, including other Object Types) and methods (actions that can be performed against the data). Most developers will use this model for creating "display handlers" for presenting content dynamically in HTML.
 However, using new methods, object data can just as easily be transformed into any format. For instance, a developer might create methods called "email", "fax", and "pager", which would output, format and deliver the data to other systems in formats appropriate to their display capabilities.
 In addition, Allaire Spectra makes it easy to use XSLT to process WDDX data directly [XSLT]. Using this model, XML developers can transform any complex object or data structure into any particular XML format using XSLT, without having to write custom code in some programming language. This is important because the XSLT transformation is independent of programming languages and thus can be leveraged in a number of different environments. XSLT
XML-EDI
 
So, while the Allaire Spectra ContentObject Database makes it easy to leverage XML without an understanding of its intricacies, it also leaves the door open to flexible and generic data transformation using state-of-the-art XML technology, such as XSLT and other pluggable transformation engines, e.g., for custom XML-EDI conversions.
 

Search Integration

 SQL 
 
By leveraging the advanced search capabilities of both the back-end relational database, as well as an embedded high-performance text indexing engine, the Allaire Spectra ContentObject Database enables flexible searching of content in the system. Because the Allaire Spectra system remains open and based on existing relational technology, it is possible to write custom advanced SQL against information in the ContentObject Database.
 meta-data 
 
Also, Allaire Spectra content management services include a framework for managing meta-data associated with content items. Meta-data is important for organizing different classes of content, and for exposing information to external search engines for indexing. The meta-data model is also built on an XML foundation, though again, developers need not know how this functions under the hood.
 

Integration Between Client and Server Side

 By storing content in an object data structure, and by using WDDX as a data exchange format, it becomes simple to move structured data between the back-end system and front-end Web clients. WDDX enables developers to transform any object data structure on the server into a native JavaScript object data structure on the client with only one line of code. Using Allaire Spectra, developers can move data between browsers and servers seamlessly without worrying about browser XML compatibility, or how to format data into XML. Everything is handled under the hood.
 This architecture is heavily leveraged in Allaire Spectra's own user interface environment, the Allaire Spectra Webtop. Included with Allaire Spectra is the Webtop UI Toolkit, which is a UI framework that makes it easy to move object data between the server and browser, and a model for gracefully degrading between client and server side UI event handling. Webtop
 

Web Syndication

 Allaire Spectra fully embraces the power of syndication for extending Web business through Internet value chains and affiliate networks. Allaire Spectra leverages its XML content management foundation to enable syndication. It supports two types of syndication: content syndication and application syndication. Both refer to leveraging affiliate networks to extend Internet business, but focus on supporting this using slightly different models.
 Content syndication enables the sharing of content-in any format-through publish and subscribe content distribution models. By leveraging the content management, roles-based security, and content delivery services of Allaire Spectra, this enables flexible content sharing using HTML or any XML format. In particular, XSLT can be applied to content object structures so that they are transformed into XML documents to be delivered or received, on a synchronous or asynchronous basis, by other sites on the Internet. -More compelling, of course, are syndication models that embrace application integration between Web sites. This model of syndication automatically falls out of the core Allaire Spectra architecture. At the foundation of any site built on Allaire Spectra is a Site Object Model. This object model represents the data and activities, or services, of a Web site. The site object model is connected to a roles-based security engine, which enables easy workflow and content management, as well as to the content delivery engine, which enables powerful interactivity and application integration.
 Technically, enabling application syndication with Allaire Spectra is as simple as creating an account for a site affiliate-this can be authenticated using NT, LDAP, or custom user security systems-and choosing what elements of the site object model will be exposed. Once this is done, there is a single URL, which is accessible via HTTP to any Web application on the Internet. It is fully secure, and exposes a simple remote procedure call (RPC) API using XML and WDDX. This means that essentially, with only a few lines of code, any application environment, including Java, ASP, Perl, ColdFusion, etc. can remotely integrate with an Allaire Spectra application.
 With both content and application syndication, the goal with Allaire Spectra was to make these kinds of activities and services transparent to the developer. In essence, the ability to develop affiliate networks and Internet value chains that extend a Web business should not require dedicated vertical software, but rather should be an outgrowth of core content and applications infrastructure. Indeed, designing and implementing end-user facing applications should also be the basis for syndication and site-to-site relationships.
 

Next Generation Web Applications

 We began our exploration of the future of Web applications by looking at the benefits we hope XML will deliver in this space. We acknowledged that there are a number of significant challenges to the rapid adoption of XML in enterprises and we used these to formulate a set of architectural requirements that mass-market Web application foundation frameworks need to deliver. We concluded by presenting Allaire Spectra as a system designed from the ground up to satisfy these requirements.
 At the heart of Allaire Spectra lays an XML-based object model. Object persistence is handled through a semi-structured data storage system based on flexible XML serialization schema and relational DBMS. A rich meta-information repository and fine-grain information storage enable powerful queries as well as full-text indexing and searching. Object meta-information and object instance data are fully reusable.
 Support for distributed Web applications is provided in a number of ways through flexible interaction models, distributed data exchange services, application integration services, and high-level syndication and affiliate management services. Distributed data exchange services are based on Web Distributed Data Exchange (WDDX). WDDX is an XML technology that offers a language and platform independent mechanism for exchanging complex structured data. With the help of WDDX, object instance data can be directly exchanged between applications.
Web syndication
information clearinghouses
 
Application integration services encompass the areas of e-commerce, remote site administration, remote application automation, and general line-of business operation. Syndication covers the process of aggregating and reselling content, data, and services. In this context XSLT, XSL, and other transformation engines are employed to convert a system working within a narrow set of specifications to an open information clearinghouse that can interoperate with any content and data format. Affiliate management services provide a framework for exposing syndication to users of an application in a controlled, secure, and business-focused manner. This includes affiliate registration, setting up affiliate profiles, designating access permissions, syndication negotiation, and activity reporting. All these services are fully automated and remotable.
COM+ CORBA
Java-RMI
 
The end result is a powerful, flexible, and extensible architecture for the next generation of distributed Web applications. Applications based on this architecture can be built in high-level languages without the need for distributed object services (COM+/CORBA/Java-RMI). They can employ proven highly scaleable relational database technology instead of object databases or special-purpose XML repositories [COM, CORBA, Java]. Last but not least, they can interoperate with existing traditional enterprise applications and practically all Internet applications that speak XML.
 

References

 ASP Active Server Pages . Microsoft Corporation. See http://msdn.microsoft.com .
 ColdFusion Allaire ColdFusion . Allaire Corporation. See: http://www.allaire.com/products/coldfusion.
 COM The Component Object Model el. Microsoft Corporation. See http://www.microsoft.com/com.
 CORBA The Common Object Request Broker: Architecture and Specification. (Object Management Group). See http://www.omg.org/corba/corbiiop.htm.
 CSS Cascading Style Sheets, level 2 Specification .W3C (World Wide Web Consortium). See http://www.w3.org/TR/REC-CSS2.
 DOM DOM Level 1 Specification. W3C (World Wide Web Consortium). See http://www.w3.org/TR/REC-DOM-Level-1. W3C (World Wide Web Consortium). See http://www.w3.org/TR/REC-DOM-Level-1.
 ECMAScript ECMAScript Language Specification . ECMA (European Computer Manufacturers Association). See http://www.ecma.ch/stand/ecma-262.htm.
 HTML HTML 4.0 Specification . W3C (World Wide Web Consortium). See http://www.w3.org/TR/REC-html40.
 Java The Java Language Specification . Sun Microsystems. See http://java.sun.com/docs/books/jls.
 JavaScript JavaScript Resources. Netscape Corporation. See http://developer.netscape.com/one/javascript/resources.html.
 MetcalfeLaw Metcalfe's Law and Legacy . G. Gilder (1993, September 13). Forbes (ASAP Supplement), 158-166.
 Perl The Perl Programming Language . See http://www.perl.org. PHP PHP: Hypertext Preprocessor. See http://www.php.net.
 Python The Python Programming Language. See http://www.python.org.
 SemanticWeb Semantic Web Road Map . Tim Berners Lee. See http://www.w3.org/DesignIssues/Semantic.html.
 SGML ISO 8879:1986(E). Information processing -- Text and Office Systems -- Standard Generalized Markup Language (SGML). Geneva: International Organization for Standardization (ISO), 1986.
 Spectra Allaire Spectra . Allaire Corporation. See: http://www.allaire.com/products/spectra
 SQL Structured Query Language (SQL) Standard . See http://www.jcc.com/SQLPages/jccs_sql.htm.
 WDDX Web Distributed Data Exchange (WDDX) . Wddx.org. See: http://www.wddx.org.
 WebArchitecture Web Architecture: Describing and Exchanging Data . Tim Berners-Lee, et al. See http://www.w3.org/1999/04/WebData.
 WebDesign Web Design Issues; What a Semantic Web is Not. Tim Berners-Lee. See http://www.w3.org/DesignIssues/RDFnot.html.
 XML Extensible Markup Language (XML) 1.0 . W3C (World Wide Web Consortium). See http://www.w3.org/TR/REC-xml.
 XMLSchema: Datatypes XML Schema Part 2: Datatypes . W3C (World Wide Web Consortium). See http://www.w3.org/TR/xmlschema-2/. XMLSchema:Structures XML Schema Part 1: Structures. W3C (World Wide Web Consortium). See: http://www.w3.org/TR/xmlschema-1/.
 XSLT XSL Transformations (XSLT) . W3C (World Wide Web Consortium). See http://www.w3.org/TR/1999/PR-xslt-19991008.

Creating the XML Content to Drive the Web   Table of contents   Indexes   XQL- and HyTime-based content reuse using a content management system