![]() |
|
||||||||
Chapter 4
Introducing CS-Direct Advantage
Figure 29: CS-Direct Advantage manipulates flex assets.
![]()
This chapter describes CS-Direct Advantage, which is built on top of Content Server and CS-Direct. Like CS-Direct, CS-Direct Advantage enables an organization to move assets through a workflow and then to publish them to the outside world. CS-Direct Advantage additionally lets you create and manipulate flexible ("flex") assets. Flex assets enable site designers to:
- Create a hierarchy. Child flexible assets inherit characteristics of their parents. System designers can create taxonomies of documents or products.
- Modify the characteristics of assets even after they have been created.
Flex assets also let visitors to your site perform the following kinds of sophisticated searches:
Many dCS customers use CS-Direct Advantage to create and maintain online product catalogs. In addition, many dCS customers use CS-Direct Advantage to create and maintain large document repositories.
Create Flex Families
You do not create individual flex asset types as you do basic asset types; instead, you use the Flex Family Maker forms on the dCS interface to create a flex family. Each flex family consists of five kinds of entities:
- attributes, each with an associated "attribute editor"
- flex definitions
- flex parent definitions
- flex assets
- flex parents
Every one of the members of a flex family is itself an asset and can therefore be created, manipulated, or destroyed through the dCS interface by users who have the appropriate permissions.
The following sections describe each member of the flex family.
Attributes and Attribute Editor
An attribute is a characteristic or property of a flex family. For example, the following attributes would be useful in creating a product catalog of sweets:
Name SKU Price Color Taste BubblesWhen creating an attribute, you must specify its attribute type (that is, its data type) from the following possibilities:
For example, the following table summarizes potential attribute types for the sweets attributes:
Table 2: Attribute Type for Each Attribute
Attribute Attribute TypeNamestringSKUintPricemoneyColorstringTastestringBubblesstring
When you define an attribute, you can optionally specify its associated attribute editor. Note that the attribute editor is not a program that you use to edit attributes. Rather, an attribute editor is a very small piece of XML code that the dCS GUI presents when a user is entering a value for the associated attribute. You can optionally use the attribute editor code to limit the values that a user is allowed to enter. For example, the following attribute editor displays a text field 80 characters wide that can hold up to 100 characters:
<PRESENTATIONOBJECT NAME="BigTextField"> <TEXTFIELD XSIZE="80" MAXCHARS="100"> </TEXTFIELD> </PRESENTATIONOBJECT>Most real-world attributes just use the default attribute editor. The default attribute editor for most attribute types is a simple text field that holds up to 48 characters; for example:
![]()
The default attribute editor for attributes having the
dateattribute type looks as follows:
![]()
Anyone with the right permissions can create attributes. You do not need programming skill to create attributes; you create them through the browser-based dCS GUI (although, creating attribute editors would generally be performed by programmers).
You can create attributes at any time, even after content has already been added to the site.
Flex Definitions
A flex definition is a set of attributes. Each flex family can contain multiple flex definitions. For example, suppose that you create two flex definitions--
CandyandGum--that will be useful for creating a catalog of sweets.Candycould contain the following attributes:
Name SKU Price Color TasteAnd
Gumcould contain the following attributes:
Name SKU Price Taste BubblesA flex definition does not contain values for the attributes; a flex definition only specifies a list of attributes.
Flex Asset
A flex asset is an instance of a flex definition. Thus, a flex asset contains values for the attributes identified in its flex definition. Think of the flex definition as analogous to a class and the flex asset as analogous to the object. A well-populated repository has many flex assets for each flex definition. For example, the online sweets store might initially contain the following two flex assets whose flex definition is
Candyand three flex assets whose flex definition isGum:
Table 3: Attribute Values for Two Candy Flex Assets
Name SKU Price Color TasteWinka Bar6582324852.50BrownSweetPenguins6072211092.75BlackTart
Table 4: Attribute Values for Three Gum Flex Assets
Name SKU Price Taste BubblesChoclettes8582320091.25SweetSmallPedrositos8218362931.85TartLargeSapodillas8913723011.65GummyMedium
When creating a flex asset, you identify which of the available attributes are required.
The flex asset is the key member of a flex family. All of the other members in the family contribute to the flex asset member in some way. Templates render flex assets for display on the delivery site.
Flex Parent Definition and Flex Parent
A flex parent definition defines a list of attributes. A flex parent contains values for those attributes. In other words, a flex parent is an instance of a flex parent definition. Thus, the relationship between flex parent definition and flex parent is similar to the relationship between a flex definition and a flex asset. For example, suppose the flex parent definition for the sweets shop defines two attributes:
category category_logoFurther suppose that the flex parent defines the following values for the attributes shown in the following table. All of the flex assets that are children of this flex parent automatically inherit the two attributes and these corresponding values.
Table 5: Values for a Flex Parent
category category_logosugarysugary.jpg
Use the Sample Flex Families
CS-Direct Advantage itself provides no default flex families. However, CS-Direct Advantage does contain a sample site called GE Lighting that does contain two sample flex families:
These sample flex families are very useful sources for understanding CS-Direct Advantage and for borrowing code.
The Product Flex Family
The Product flex family describes the products for sale at a lighting store. The following is a synopsis of each of the members of this flex family:
- There are over 30 different attributes. Each of the attributes describes a different characteristic of lightbulbs; for example,
wattageandvoltage. Nearly all of the attributes use the default attribute editor (a simple one-dimensional text box).- There is only one flex definition. It is called
Lightingand it uses all of the Product attributes. The only required attribute inLightingissku; the remainder are optional.- The store comes with approximately 100 Product flex assets, each detailing a different product for sale.
- There are two flex parent definitions--
CategoryandSubcategory. Both flex parent definitions specify only a single attribute (cat1forCategoryandcat2forSubcategory).- The sample site contains 31 flex parents, 6 of which have
Categoryas the parent and 25 of which haveSubcategoryas the parent.The Content Flex Family
The Content flex family does not describe products for sale. Rather, it describes more traditional content, such as articles. The GE Lighting sample site uses the Content flex family for non-product related information such as general articles, company information, and so on. The following is a synopsis of each of the members of this flex family:
- There are only four attributes:
body,byline,headline, andsubheadline. The body attribute uses an attribute editor suitable for holding a large amount of text. The other three attributes all use the default attribute editor.- There is only one flex definition. It is called
Storyand it contains all four attributes. The headline and body attributes are required, and the byline and subheadline attributes are optional.- The sample site comes with five Content flex assets, each containing a different flex article. This flex asset holds similar information to the Article basic asset that accompanies CS-Direct.
- This family does not contain a flex parent definition, and therefore contains no flex parents.
Use Attribute Inheritance to Facilitate Management
When creating a flex definition, you specify the flex parent definitions that will apply to the flex assets. In more practical terms, flex assets automatically inherit the attribute values of all their designated flex parents. For example, the following figure shows a flex asset inheriting two attributes from
Pappyand one attribute fromMa:Figure 30: This flex asset implicitly has five attribute name/value pairs.
![]()
The flex parents can themselves be arranged hierarchically. That is, a flex parent definition can be the parent of another flex parent definition. Flex assets inherit the attribute values of all the flex parents in the hierarchy. For example, in the following figure, the flex asset inherits not only the attributes of its immediate flex parents, but also the attribute of
GrandPappy.Figure 31: This flex asset implicitly has six attribute name/value pairs.
![]()
Create Powerful Search Functions for Site Visitors
CS-Direct Advantage offers site visitors a variety of search capabilities for fast, easy site navigation. The developer who creates the catalog manipulates search states and asset sets so that site visitors can perform the following types of searches:
- Keyword, to search for an individual word
- Rich text, to search on a string containing key words or logic operators
- Category drill-down, to navigate nested categories
- Parametric, to find products based on selected criteria such as size and color
- Filtering, to eliminate items that do not contain a certain characteristic, such as items not on sale
- Mixed-mode, to use more than one search method
- Progressive refinement, to quickly narrow search results without re-entering the original query
The developer of the catalog builds search results pages dynamically, based on the result sets returned. The visitor can view the resultsets in the following ways:
- Details page--for a single item
- Comparison table--for a few items
- List--for many items, with each item linked to its details
Following is the sample GE catalog Search page, showing various ways site visitors can manipulate the search state as they enter criteria:
Figure 32: The Search screen from the GE Lighting sample site.
![]()
Maintain Product Catalogs
CS-Direct Advantage is a good choice for maintaining a product catalog. Unlike a printed catalog, which can quickly become outdated as products and prices change, the CS-Direct Advantage catalog changes dynamically and creates a more flexible environment for users. Using a browser-based interface, your content editors can easily make changes to the values of any product attributes. Your content editors can also add new attributes without programmer assistance (although a web developer will probably still need to make changes to a template so that the new attributes can be displayed to visitors). As mentioned earlier, powerful search functions enable your customers to search for products in a variety of ways.
Using CS-Direct Advantage XML or JSP tags, you can enhance CS-Direct Advantage to perform tasks such as the following:
Using CS-Engage (described in the next chapter), you can additionally gather shopping statistics and personalize the shopping experience.
Integrate Back-Office E-Commerce Solutions
Most online stores need to handle shopping carts, provide order forms, process payment cards, and track purchases. In other words, the store requires back-office e-commerce services. CS-Direct Advantage does not provide these services itself, but you can integrate CS-Direct Advantage with several back-office e-commerce products, including:
A divine product named Commerce Connector provides an interface between CS-Direct Advantage and Transact. The GE Lighting sample site uses Commerce Connector.
Manage Any Kind of Document with CS-DocLink
So far, we've focused on dCS as a way to represent and manage HTML or XML content. In fact, business users can store and represent any kind of data, including:
To do this, you need CS-DocLink, which is an add-on module to Windows Explorer. Any user comfortable moving files with Windows Explorer has all the skills necessary to use CS-DocLink. To insert a file into dCS, just drag it to a Content Server folder within Windows Explorer. Then to access a file from Content Server, just drag it out of the Content Server folder and drop it into any other folder.
Once a file is dropped inside the Content Server folder, the business user gets all the advantages of dCS, including revision tracking, security, workflow, and publishing.
From a web site developer's and system administrator's viewpoint, files manipulated through CS-DocLink are just like any other flex assets on dCS. For example, a web site developer might create a flex asset family to represent PowerPoint presentations. The attribute types for this flex asset family might include the presentation itself and various pieces of metadata, such as the number of slides and the projected audience. The web site developer would also create a template to display the PowerPoint presentation and possibly some of its metadata.
A system administrator would assign this flex asset family to a site and designate a template and workflow for it.
Depending on how the flex asset is configured, a pop-up window may appear when a user first drags a file into the Content Server folder. The pop-up window asks the user to provide information about the file. For example, the flex asset family to represent PowerPoint presentations might contain a required attribute named audience. In this case, the pop-up window would ask the user to specify the intended audience for this presentation.
Figure 33: CS-DocLink lets users interact with dCS through Windows Explorer.
![]()
Summary
CS-Direct Advantage extends the asset model introduced by CS-Direct. With CS-Direct Advantage, you can use flex assets as well as basic assets. The set of attributes in a flex asset can change whenever you need them to change.
CS-Direct Advantage was designed to simplify the creation of hierarchies. It was also designed to provide site visitors and content managers with sophisticated search techniques.
One of the more popular uses for CS-Direct Advantage is in building online product catalogs, but you can useCS-Direct Advantage to build and maintain just about other kind of web site as well.
To further extend the capabilities of your online catalog site, see
Chapter 5, "Introducing CS-Engage." For an example of a CS-Direct Advantage implementation, seeChapter 8, "CS-Direct Advantage: Sample Implementation" .
|
|
||||||||||||||