![]() |
|
||||||||
Chapter 3
Introducing CS-Direct
Figure 20: CS-Direct handles basic assets.
![]()
CS-Direct provides a pleasant GUI, but it is more than just a pretty face around Content Server. Content Server manipulates content at the atomic level; CS-Direct lets you combine these atoms into useful, practical content molecules called assets. Using CS-Direct, a team of nontechnical users can create, modify, and control these assets from the comfort and safety of the GUI. In fact, when combined with CS-Desktop, many content providers mainly interact just with Microsoft Word.
Keeping track of content for a web site that changes frequently is a challenging task. You must coordinate which content goes where and who performs certain roles for specific sections of your site. CS-Direct helps you manage your site by efficiently moving timely information back and forth between your organization and your web site visitors.
Work with Asset Types and Assets
An asset is a chunk of content; for example, a particular article. A data repository might contain millions of assets. Assets are the work unit in CS-Direct; content contributors create and manipulate assets. Multiple sites under your control can all share an asset.
Note that not all pieces of content have to be assets. For example, certain static content such as logos or navigation buttons can be stored directly on web servers. Typically, however, the vast majority of content on a dCS system are represented as assets.
The assets used by CS-Direct are sometimes called basic assets. The assets used by CS-Direct Advantage are called flex assets. This chapter focuses on basic assets; the next chapter focuses on flex assets.
An asset type defines the structure of each kind of asset. For example, an article asset type might hold the author's name, the article's headline, the body of the article, keywords associated with the article, and so on. Asset is to asset type as variable is to datatype, though an asset type defines far more information than traditional data types or class definitions. Web site developers create and manipulate asset types.
CS-Direct provides several predefined asset types. If you install the Burlington Financial site, then you automatically get several more predefined asset types. In addition to these predefined asset types, you can use a tool named AssetMaker to develop new asset types.
The kinds of asset types that you create are limited only by your imagination. You could, for example, create an audio asset type. This asset type might hold not only an audio clip, but also such metadata as the length of the audio segment, the date it was last modified, the author, the language that it was in, and so on.
All asset types are defined by the following four components:
Database Table
Each column of the table contains some attribute of the asset, as shown in
Table 1 . Some columns are standard for all assets; for example, the asset's ID and date of creation. Other columns are specific to the asset type. For example, as the following figure shows, the headline and author fields are unique to the article asset type. Each row of the table contains information about a particular instance of an asset. The article itself, incidentally, might either be stored within the database or directly on the host's file system.
Table 1: A subset of the database table for an asset type; each row is one asset.
Java Object
The behavior of an asset type is implemented in Java. CS-Direct defines a base class asset type from which all asset types inherit characteristics. This base class defines standard methods such as Load, Save, and Get. Typically, you do not need to write Java code when you create a new asset type because the base class is sufficient to implement most asset types. If your asset type implements special behavior relating to its storage (for example, if fields of an asset type are stored in different database tables), you can write code to override the inherited behavior.
Set of Elements
Content Server introduced elements, which are files containing HTML, XML, or JSP code. Each asset type must define a set of elements. CS-Direct calls these elements to display portions of the CS-Direct user interface appropriate for this asset type.
For example, the CS-Direct interface contains a form that enables users to create a new asset from an existing asset type. Suppose the asset type is an article. In this case, CS-Direct contacts the element associated with article creation. This element contains XML code that places the appropriate forms on the screen so that the user can enter information required for an article asset. Additional elements associated with the article asset type control what the interface displays when an article is edited, viewed, deleted, copied, searched, previewed, and published.
When you create new asset types, AssetMaker writes these elements for you, based on information you pass to AssetMaker. After these elements are created, you can optionally edit the elements to create custom effects.
Template
A template controls how an asset is displayed. Templates render an asset; that is, they turn the information stored in an asset into some presentable form. For example, the template associated with an article asset type might render the headline as an
<h2>, the byline as an<h3>, and the body of the article in a playful, yet sophisticated, light-blue background.A web designer can change the template associated with that asset type at any time in order to give a different look to the published web site. Thus, the template can change without the asset type changing. In fact, many customers create multiple templates per asset type.
A template is an element written in XML or JSP.
Figure 21: A template rendering an Image asset might display the image, the credit line, and the caption
![]()
Use Dreamweaver to Design Templates
Many web site developers prefer to create designs with Macromedia Dreamweaver. To use Dreamweaver with dCS, you must install a bridge product named CS-Designer. With CS-Designer installed, web site developers can take advantage of Dreamweaver's features to design and preview dCS templates.
CS-Designer provides documentation for all tags pertaining to the creation of dCS templates. Furthermore, when CS-Designer is installed, web site developers can use Dreamweaver's tag completion feature to simplify dCS tag encoding.
Use Queries and Collections to Organize Content
A collection is a related group of assets of the same asset type; for example, a collection of article assets whose topic is football. A collection is itself an asset type.
To be in a collection, assets must meet certain criteria. A query asset defines the criteria. The query asset type is a core asset type that comes with CS-Direct. Each site can define multiple query assets, each one performing a different lookup. The web site designer can code query assets in a variety of ways, ranging from a simple SQL command up to a sophisticated XML or JSP element. If your site has installed a search engine, then the query asset can hold code to query the search engine. Content Server provides an XML and JSP tag set to interact with a search engine.
To simplify queries, all asset types contain a category column. Each site can define appropriate categories for their asset types. For example, in an article asset, categories such as
sports,news,weather, andartswould be useful for an online newspaper. Asset types also contain a subtype field that provides subcategorization. For example, subtypes such asswimming,cycling, andbasketballwould also be useful in forming more precise queries about sports articles.Once the query and collection assets are defined, a content manager (such as the editor of an online newspaper) work through three stages with the collection:
1. The content editor invokes a query, by simply selecting a menu option. The query finds and displays all the assets matching the criteria. For example, perhaps five articles matched the criteria.
2. The content editor ranks the returned matching assets, placing a 1 next to the most important, a 2 to the next most important, and so on. The content editor can also optionally remove irrelevant assets from the list.
Figure 22: CS-Direct gathers the matching assets, then a user ranks them.
![]()
3. The content editor publishes the collection, which causes CS-Direct to render the collection according to the rules in the collection's template. (Yes, the collection, like all asset types, has a template.) For example, suppose the template displays the headline and abstract of the top-ranked article, but only displays the headline of the articles ranked 2-5.
The following figure illustrates a possible rendering from the Collection template. For the article ranked number 1, the template associated with this collection displays the title, creditline, and abstract of the article in a cell on the right side of a table. For articles ranked 2-5, the Collection template displays only the headline.
Figure 23: The template associated with a collection
![]()
Create Associations Between Asset Types
You can create associations (relationships) between different asset types. An association is a parent-child relationship in which one asset type is the parent and another asset type is the child. A parent can have multiple children.
For example, you might form an association in which each Article asset is the parent of an Image asset. Then, you could code the Article template to create an association with the Article asset so that the template for Article knows to render not only the article but also the template for the associated image. An Article may have multiple associated child Image assets.
Figure 24: An Article asset is associated with a child Image asset.
![]()
As a second example, you could create an association between an English asset type and its translated French asset type. Once this relationship is established, when an English asset changes, workflow rules could force a French translator to make the appropriate changes to the associated French asset.
Manage Sites
A dCS site is an organizational unit that administrators create and manage. Each dCS installation typically manages multiple sites. dCS provides the following three sample sites:
- Burlington Financial (a complex CS-Direct sample site)
- Hello Asset World (a very simple CS-Direct sample site)
- GE Lighting (a simple CS-Direct Advantage sample site)
Each dCS site acts as an administrative unit. The system administrator defines the following for each site:
- The set of asset types that can be used in this dCS site
- The set of users who have access to the dCS site
For instance, suppose a developer creates several asset types. The dCS sites within one dCS installation can share asset types and assets. The system administrator can enable a different subset of asset types for each site at the dCS installation.
In many circumstances, there is a one-to-one correspondance between a dCS site and an actual web site. However, it is possible to configure dCS so that multiple dCS sites represent separate sections of one large web site. This might make it easier to set up permissions or allow separate units of a corporation to control discrete areas of a large web site.
Page Assets
A page asset is a container for assembling a set of asset types. Unlike a collection, a page asset can (and usually does) contain different kinds of asset types. For example, a page asset might contain an Article asset, an Image asset, a Video asset, and a Collection asset.
You use page assets to organize a dCS site.
The Site Plan
The Site Plan is a hierarchical tree that lets you organize the page assets that you plan to publish for a site. You can use the Site Plan to do the following:
- View the structure of your site
- Create, move, or delete pages on the site
- Publish the site or a subset of the site
Pages appear on the Site Plan. When you add, copy, or delete items on the Site Plan, you are adding, copying, or deleting pages.
Customize the GUI for Each Role
CS-Direct provides a browser-based GUI for users to create, modify, and delete assets. Administrators use a browser-based GUI to perform all administrative duties. The GUI can be customized in two significant ways:
- The system administrator can adjust the tabs on the GUI.
- The web site developer can adjust the start menu.
Adjust the Tabs
The system administrator can adjust the tabs so that users see only the tabs that are relevant to their role. More precisely, the system administrator can create, edit, or delete tabs. For example, the tabs could be adjusted such that a content contributor never sees a tab appropriate for system administrators.
Figure 25: Tabs for an administrator
![]()
Figure 26: Tabs for a typical content contributor
![]()
Adjust the Start Menu
CS-Direct contains an extensive set of start menus, which guide content contributors through the creation of assets. The web site developer controls these start menus. A start menu item can only apply to a single asset type on a single site for a single interface (CS-Direct or CS-Desktop).
For example, a new asset type to be used on three sites, where each site uses both the CS-Direct and CS-Desktop interfaces, would then require six start menu items:
- CS-Direct and CS-Desktop start item for site #1
- CS-Direct and CS-Desktop start item for site #2
- CS-Direct and CS-Desktop start item for site #3
Each of those required start menu items could also be replaced by multiple start menu items, which could vary depending on the the user role, the asset subtype, or other variations that would call for different default parameters.
Manage Users and Roles
Users are defined by their user names and their assigned roles. Users and roles are both created by the Content Server administrator. (Roles in CS-Direct are called ACLs in Content Server.) In a typical application, roles are associated with responsibilities, such as Editor, Author, Legal, and Marketing. Users are individuals. Users log in to CS-Direct with their user names.
Like assets, roles and users are application-wide. However, a user is allowed to work on a site only if that user has been assigned a role for that site. In each site, there is a table listing all roles and the users assigned to them. If a user is not assigned a role in that table, he or she cannot log in to that site. The following figure shows the users and roles that are enabled for two different sites.
Figure 27: Users can have different roles in different sites.
![]()
Track Revision History and Maintain Archives
Content is frequently revised. CS-Direct can do the following:
- Record which user changed which assets and when.
- Store versions of edited content and let CS-Direct users restore an asset to a previous version.
The revision tracking system resembles a source code control system. With CS-Direct, you can do the following:
- Check out an asset, work on it, and then check it in.
- Allow assets to be edited by only one user at a time.
- Track some asset types and not others.
Manage Workflow
Some content needs to be guided through an organization from person to person, from creation to distribution. In CS-Direct, workflow processes provide that guidance. A workflow process is a set of states connected by steps. An asset can move from one state to another using one of several steps.
Assets can be (but do not have to be) assigned to a workflow process. The states and steps are set up by the CS-Direct system administrator. The following figure shows a two-state segment of a workflow process. Send for Approval is a step. The begin state of Send for Approval is Ready for Review. The end state is Ready to Approve. If Marketing rejects the asset sent by Sales, the user with the role of Marketeer sends the asset back to Sales by selecting Reject to Sales.
Figure 28: A Workflow Process implements a flowchart.
![]()
The workflow process can contain multiple steps. For example, a policy statement concerning product refunds might be ready for approval. If the legal department rejects it, it goes back to sales for revisions. If the marketing department rejects it, it also goes back to sales.
Administrators can create elements called prolog and epilog actions, which can be added to each step. Before CS-Direct changes the assignment of an asset, it calls the prolog action. After it changes the assignment, it calls the epilog action.
Asset Assignments
Assets are assigned to users by role. As an asset flows through the workflow process, each step assigns it to a particular user, a particular group, or to all the users in a particular role. When CS-Direct users log in, they see all the assets assigned to them. CS-Direct changes the state of an asset after users indicate they are finished with it.
The assignments--the correspondence among users, assets, and workflow steps--are kept in an assignment table, which is modified by the elements responsible for workflow. For more information about setting up workflow processes, see the dCS Administrator's Guide.
Create and Edit Content Easily
Some content contributors and editors prefer to work in a format other than HTML or XML. For these users, dCS offers the following three add-ons:
- CS-Desktop, which allows content contributors to create and edit content with Microsoft Word.
- InSite Editor, which allows editors to to edit content with a simple WYSIWYG text editor.
- CS-DocLink, which allows content contributors to create and edit any sort of content (for example, spreadsheets, PDF files, or FrameMaker documents). See
"Manage Any Kind of Document with CS-DocLink" for details.With CS-Desktop, users can create and modify content with Microsoft Word. When creating content, CS-Desktop guides the user through the creation of an asset right from Microsoft Word. For example, the content contributor can use Microsoft Word to identify an article's headline and byline, as well as the article's body itself. CS-Desktop then places this information in the dCS database.
With InSite Editor, business users who do not ordinarily work in the Content Server interface but who occasionally need to make minor edits to text or to approve content, can do so directly on a site content page. When a business user views an editable page in the browser window, a pencil icon appears next to fields that can be edited directly on that page. After clicking the pencil, the user can make edits to the text within the box. After making edits, clicking the Save button will commit the changes to the Content Server database. The InSite Editor window also enables business users to check asset status, complete workflow assignments, and perform asset searches.
Using a CS-Designer, users can edit HTML with the popular Macromedia Dreamweaver editor.
Publish Content
The goal of most CS-Direct applications is to distribute content in some orderly, visually effective way. Most often the medium is web pages and the form is HTML.
CS-Direct enables web page developers to create the look and logic of web pages in the form of templates. When a page is ready to be published, CS-Direct assembles the content using the publish form as a guide, and generates pages that are served by a web server. The pages can exist as static files, or they can be generated dynamically whenever a visitor to a site requests a URL.
Assets are published to destinations, with specific delivery types. The publishing code does different things with the asset depending on the delivery type. In CS-Direct, there are three delivery types:
- Export to Disk -- The asset is rendered when published. The asset's template determines the rules for rendering.
- Mirror to Server -- The asset is not rendered when you publish it, but the asset's row is copied to the asset table on the mirrored server. The asset is rendered when a visitor requests a page; the delivery system uses the template on the mirrored server to render the page.
- Export to XML -- The management system generates one XML file for each approved asset. Then, the management system transmits this XML file to the delivery system.
You can define more than one destination for each delivery type. For the Export to Disk delivery type, there may be different directory locations for different projects, or sites. For the Mirror to Server delivery type, there may be different target servers for different projects or sites.
Summary
CS-Direct is a browser-based asset management tool that helps you organize content for a web site. The Site Plan makes it easy for an editorial staff to manage where, when, and how content assets are displayed on the web site. Workflow and revision tracking features help you handle the flow of assets through an organization, and control the version history of those assets.
For an example of a CS-Direct implementation, see
Chapter 7, "CS-Direct: Sample Implementation."
|
|
||||||||||||||