Using IBM's Content Manager to Manage Web Content - ibm.com

tiredbeginnerInternet and Web Development

Dec 8, 2013 (3 years and 8 months ago)

89 views






Using IBM’s Content Manager to
Manage Web Content











Authors: High-Volume Web Site Team
Web address: ibm.com/websphere/developer/zones/hvws
Management contact: Larry Hsiung larryh@us.ibm.com
Technical contact: Rekha Garapati garapati@us.ibm.com

Date: April 14, 2003

Status: Version 1.0



Abstract: Leveraging the capabilities of IBM Content Manager avoids issues common to the
development of applications that manage Web content. This paper describes a joint project
between IBM and a customer to use IBM Content Manager to develop in a short time a
customized application to manage Web content.


Copyright IBM Corporation 2003


Executive summary
The Web environment poses special requirements on a content management system (CMS). In
addition to common requirements for managing content, a CMS for Web content must also be
able to make the content available in formats suitable for a variety of devices that can access
content over the Web.

Developing solutions from scratch is complex. Available ready-to-go solutions require
customization and additional development to satisfy business and technical requirements. IBM
Content Manager for Multiplatforms Version 8.1
1
provides a framework to extend and build a
solution to satisfy the requirements of most enterprises for managing documents and document
access.

IBM joined with a major U.S. financial services firm to use IBM Content Manager for
Multiplatforms Version 8.1 to develop in a short time a Web content management (WCM)
application that met the customer’s requirements to:

y Enable the business users to manage and produce content for multiple sites, channels, and
languages
y Use a browser-based interface to control content, site navigation, and user interface aspects
y Automate processes allowing for real-time updates in a run-time environment, thereby
decreasing the content release turn-around from around thirty days to hours or less
y Adopt an XML asset and component-based model for generating content
y Allow for multi- and cross-channel reuse of assets and components allowing a seamless
experience for customers
y Provide an interface to make the transition easy and intuitive for the business users

This paper describes how the development team leveraged the capabilities of IBM Content
Manager to create a customized application that lets the business users manage their Web content
for multiple sites, channels, and languages. They were able to develop and deliver their
application in less time than if they had started from scratch or tried to customize a ready-to-go
solution.




1
Beginning with Version 8.2, IBM Content Manager for Multiplatforms is called DB2® Content Manager
for Multiplatforms.
Copyright IBM Corporation 2003
2
Using IBM’s Content Manager to Manage Web Content


Contents
Executive summary
...........................................................................................................2
Introduction to IBM’s Content Manager
.......................................................................4
Content Manager components
........................................................................................4
Advantages of using Content Manager as the basis for Web content management
(WCM)
............................................................................................................................5
Building a WCM application using Content Manager
..................................................5
Author time application development
.............................................................................6
Publishing application
......................................................................................................8
Personalization
..................................................................................................................8
Conclusion
.........................................................................................................................8
References
..........................................................................................................................9
Notices
..............................................................................................................................10
Copyright IBM Corporation 2003
3
Using IBM’s Content Manager to Manage Web Content


Introduction to IBM’s Content Manager
A content management system (CMS) is used to create and administer content. It includes the
function needed to define and apply workflow to the management of the content’s life cycle and
to specify and enforce mechanisms that control access to the content. A CMS for Web content
must also be able to make the content available in formats suitable for the variety of devices that
can access content over the Web.

A CMS for Web content is conceptually composed of an authoring environment and a run-time or
hosting environment. Many enterprises already have a well-established hosting environment. The
challenge for a Web CMS is to adapt and interface with the existing environment, without
requiring major changes to the infrastructure. Many vendors such as Interwoven, Vignette, and
Documentum offer Web content management solutions. Most ready-to-go solutions require some
customization and additional development to satisfy a customer’s business and technical
requirements. Instead of providing such a solution, IBM’s Content Manager Version 8.1 allows
reuse of the repository and provides tools and application programming interfaces (APIs) that
enable a wide range of applications.

IBM Content Manager for Multiplatforms Version 8.1 (hereafter called Content Manager) is
IBM’s core offering for managing enterprise content. It incorporates multiple technologies to
satisfy the requirements of most enterprises for managing documents and document access. Most
companies not only manage content internally, but also make this content available on the Web in
a controlled fashion. Conceptually, Content Manager is a repository built using a conventional
relational database. Content Manager allows reuse of the repository and provides tools and
application programming interfaces (APIs) that enable a wide range of applications.
Content Manager components
The main components of Content Manager are the library server, the resource manager, the
application programming interfaces (APIs), eClient, and Client for Windows.

y The library server is central to managing enterprise content. It includes data modeling
capabilities, storage and retrieval of content with referential integrity, access control,
authentication integration with LDAP, transaction support, document management, version
control, various levels of logging and XPath/Xquery based query support for parametric and
text search functionality.

y Resource managers are repositories optimized for the storage and retrieval of documents,
images, and other multimedia content. The Content Manager resource manager runs as a Web
application inside IBM WebSphere® Application Server Version 4.

y The APIs provide data modeling tools and connection capabilities to the library server and
the resource manager. APIs are provided for C++ and Java™.

y eClient is the browser-based thin client and Client for Windows is the desktop client that
provides graphical user interfaces (GUIs) to the content management system. The clients
include JavaBean™ support for rapid application development with such features as
versioning, document management, and enhanced workflow to create custom applications.

This paper describes a Web content management (WCM) application built using Content
Manager.

Copyright IBM Corporation 2003
4
Using IBM’s Content Manager to Manage Web Content



Figure 1 shows the general topology of the applications discussed in this paper.

Figure 1. Topology of applications discussed in this paper
Advantages of using Content Manager as the basis for Web
content management (WCM)
Web content can be managed in a relational database or a file system, or a combination of the
two. However, designing and building such a system from scratch requires an extensive
development effort. The main issues that make development complex are:

y Modeling the structured Web content, usually in XML or XHTML, in the relational database
y Maintaining the containment and referential links between the fragments of content
y Maintaining referential integrity between the database and the file system
y Providing extensibility for model changes

Content Manager has solutions for these issues. Its library server and resource manager offer the
ability to manage different kinds of objects. Users can change the data model easily while
maintaining referential integrity between objects. Because it leverages both Java and XML
technologies, Content Manager allows the client to use either or a combination of both, offering
flexibility to the design. Instead of rows and columns, one works with a higher level of data
allowing the programmer to work with content semantics. The Content Manager data model lends
itself more to XML than to a DB2 relational model, therefore allowing the creation of a
hierarchical model.
Building a WCM application using Content Manager
The IBM High-Volume Web Sites team and the content management architect of IBM’s
www.ibm.com
Web site worked with a major financial firm in the U.S. to develop a WCM
application. The customer had decided to build a custom CMS after evaluating the major
available off-the-shelf WCM systems and determining that none met their requirements. The
requirements were:

y Enable the business users to manage and produce content for multiple sites, channels, and
languages
y Use a browser-based interface to control content, site navigation, and user interface aspects
Copyright IBM Corporation 2003
5
Using IBM’s Content Manager to Manage Web Content


y
Automate processes allowing for real-time updates in a run-time environment, thereby
decreasing the content release turn-around from around thirty days to hours or less

y Adopt an XML asset and component-based model for generating content
y Allow for multi- and cross-channel reuse of assets and components allowing a seamless
experience for customers
y Provide an interface to make the transition easy and intuitive for the business users

The customer’s hosting environment uses IBM WebSphere Application Server and custom-built
applications leveraging XML technologies and efficient caching mechanisms. The proposed
WCM application would interface with the existing environment. The topology of the application
developed is shown in Figure 2.



Figure 2. Topology of the WCM application
Author time application development
The model for Web content differs from the model for a traditional document because Web
content is made up of fragments that can be assembled in multiple combinations to create Web
pages. Those fragments can be reusable assets that can be used in multiple locations of different
pages, or local assets that exist only as part of a particular page. Those assets and the pages
themselves are based on templates that specify common properties and features of all assets or
pages based on a particular template. Those fragments are usually created, tested, and managed
by different contributors. Therefore, a rigorous workflow system is essential to create and
Copyright IBM Corporation 2003
6
Using IBM’s Content Manager to Manage Web Content


publish verifiable and approved Web pages. Moreover, the WCM application also has to
maintain referential integrity of the links between published pages.

In the WCM application, each page consists of a hierarchical structure of nested fragments. Each
fragment is represented as an XML object. The Content Manager data modeling features allow
the creation of a data model that reflects the different components of a page such as reusable
assets, local assets, and templates. The data model was captured in XML files and, using Java
APIs, imported into Content Manager, dynamically creating the Content Manager internal
representation of the model. The metadata and nonbinary fragments are stored as XML data in
the Content Manager library server. Images and other binary content are stored in the Content
Manager resource manager. Each fragment may have references to supporting or dependent
fragments using Content Manager references or links.

The WCM application is a Web application running inside WebSphere Application Server
Version 4. For programming ease, a Java object model that reflects the data model stored in
Content Manager was developed. In the Web application, the methods and properties exposed by
the Java objects to manipulate content were used, along with a layered approach that makes
possible future enhancements and additions. The extensibility of Content Manager’s access
control mechanisms were leveraged to implement a sophisticated and unique access control
policy required by the customer and tied with a workflow process built entirely in Content
Manager that controlled each step of the process of creating, managing, and publishing the
content. A tool was developed to import information about users from a corporate LDAP
repository and to maintain the synchronicity of this information. Content Manager’s connection
pooling features were used in order to efficiently support multiple concurrent users. The XPath
and XQuery features were heavily leveraged to search, access, and retrieve content from Content
Manager.

As required by the customer, the new interface was developed entirely in a browser. There are
two options for assembling pages from fragments for use in a browser.

1. Assemble a page in a combination of JavaServer Pages™ (JSP), JavaBeans, and servlets in
the application server and sending the assembled page to the browser.

2. Send the XML fragments to the browser, then assemble and present the fragments at the
browser.

The second option allows caching of small bits of data and allows the invalidation of a single
fragment instead of the entire page. The disadvantage to this option is that currently, only Internet
Explorer Version 6 supports this feature, making it impossible to use this approach in an Internet
application. However, because the WCM application is an intranet application, it would be easy
to restrict the browser to Internet Explorer.

The second option was chosen and the entire user interface was developed using JavaScript,
DHTML, and XML. This browser-based user interface avoids distribution of the client software
package on a client machine. Both administration and content creation are managed by a single
user interface allowing users with different roles and responsibilities to reuse a common interface.

The tools used to build this WCM application were WebSphere Studio Application Developer
(WSAD), VisualAge® for Java along with XMLSpy and TogetherJ.

Copyright IBM Corporation 2003
7
Using IBM’s Content Manager to Manage Web Content


Publishing application
Every customer has its own way of serving the final pages. The publishing service interfaces
between the WCM application and the highly specialized publishing schemes in a customer
dictated hosting environment. The publishing service was built to support the fragment-caching
mechanisms of the hosting environment. IBM helped shape the publishing service for customers
who require high performance for a Web serving environment.

Personalization
A Web content application is incomplete without features for personalization. Our WCM data
model addresses personalization by providing users the ability to tag content and users with
attributes that can be used for personalizing, segmenting audiences, and profiling users. A third
party personalization and rules engine could also be used to run our WCM application and
provide sophisticated tooling and business support for email campaigns, logging, and targeted
advertising.

Conclusion
Using Content Manager instead of building an application from scratch expedited the
development of a customized solution that met the customer’s requirements. The application
allows business users to manage their Web content for multiple sites, channels, and languages
while incorporating the custom features necessary to perform these tasks.
Copyright IBM Corporation 2003
8
Using IBM’s Content Manager to Manage Web Content



References
See the IBM DB2 Content Manager for Multiplatforms Web site

http://www.ibm.com/software/data/cm/cmgr/mp/


See the IBM WebSphere Application Server Web site
http://www.ibm.com/software/webservers/appserv/


See the IBM HVWS Web site
http://www.ibm.com/wsdd/zones/hvws/



Acknowledgements
The High-Volume Web Sites team is grateful to the major contributors to this paper: Catherine
Cuong Diep, Rekha Garapati, Larry Hsiung, Chin Huang, Jim Lin, Dikran Meliksetian, Jim
Reimer, and Sansan Sheng

Copyright IBM Corporation 2003
9
Using IBM’s Content Manager to Manage Web Content


Notices
Trademarks
The following are trademarks of International Business Machines Corporation in the United
States, other countries, or both:

DB2®
IBM®
VisualAge®
WebSphere®

Java™ and all Java-based trademarks and logos are trademarks or registered trademarks of Sun
Microsystems, Inc. in the United States and other countries.

Other company, product, and service names may be trademarks or service marks of others.
























Special Notice

The information contained in this document has not been submitted to any formal IBM test and is
distributed AS IS. The use of this information or the implementation of any of these techniques is
a customer responsibility and depends on the customer’s ability to evaluate and integrate them
into the customer’s operational environment. While IBM may have reviewed each item for
accuracy in a specific situation, there is no guarantee that the same or similar results will be
obtained elsewhere. Customers attempting to adapt these techniques to their own environments
do so at their own risk.



Copyright IBM Corporation 2003
10
Using IBM’s Content Manager to Manage Web Content