How Does CDS Work?
The CDS Processor encapsulates a group of standard tags, each representing one or many complex objects beneath it. These tags provide core functionality common to many applications (see Listing 1
for sample code). This standardization lets users learn a single tag, leaving the underlying complexities of object selection and proper utilization to vertical experts. For example, the <cds:ftp/> element reduces the complexity of creating connections and transferring files into a single tag. A programming language such as Visual Basic would require dozens of lines of code, as well as a good understanding of how the selected ftp object works, to accomplish the same objective.
Digimax strongly modeled the CDS Processor after the concepts and styles of XSLT. The language has support for common structural tasks such as iteration and conditionals, including tags for manipulating XML documents, ODBC, and Microsoft's SQL Server. Also, since the language is fully XML-compliant, CDS documents can take advantage of pre-existing and proven technologies such as schema validation, XPath, and processing-instructions to name a few.
At this time, developers can create functions but not elements. These functions can be derived from CDS or by using the msxsl:script element and language attribute. Developers can use any language supported by the Microsoft XSLT processor. In the next release of CDS, users will be able to create their own elements.
How Can I Use CDS?
Initially, CDS can be used to build any Web-based applications that are commonly used today. Using the CDS technology to build familiar Web-based applications such as e-commerce, CRM, and back-office applications has several benefits. Speed to market is the most noticeable, through improved performance and rapid development and modification. Second is the ability to rapidly expand the types of interfaces supported by an application to include wireless devices, handheld computers, or whatever comes next. The CDS technology can also render any text-based output and adapt to any transport as a result of the strong separation between the presentation, logic, and persistence tiers. Additionally, CDS can work alongside or in-line with any other Web application technology such as ASP, JSP, or servlets (see the CDS-based Web sites ModernAgent.com and Aquatech.com).
CDS can also be used in enterprise application integration (EAI) as a middleware application. Integrating applications that already exist inter- and intra-enterprise is a natural fit since CDS functions independently of interface and data source. The interface could be for a user with a Web browser or a computer system at a partner that needs or provides information. The location of the data sources is irrelevant to CDS so long as they provide XML. This is where the real benefits of entity-to-entity begin to emerge:
- An application can have an infinite number of interfaces so long as they can accept a form of text. (i.e., Web services such as calculators for shipping and materials, cash registers as a service that can be run on computers with browsers or handheld devices, stand-alone or as part of a work group).
- Applications delivered as services, such as payroll, timesheets, and order entry, can integrate with each other in a distributed or centralized environment.
- Auctions could be held peer-to-peer on the fly.
- The capabilities of instant messaging and chat could be applied to automating supply chains in real time, allowing groups of systems to chat with each other.