BroadVision 8.2 Content Guide
Transcript of BroadVision 8.2 Content Guide
-
7/27/2019 BroadVision 8.2 Content Guide
1/140
BroadVision 8.2
Content Guide
-
7/27/2019 BroadVision 8.2 Content Guide
2/140
2 BroadVision, Inc.
Content Guide
Document Publication Date: April 14, 2009
Copyright 2005-2009 BroadVision, Inc., 1600 Seaport Boulevard, Suite 550, North Building, Redwood City, California 94063, U.S.A. All rights
reserved.
This product includes software developed by Sun Microsystems. Copyright 1994-2009 by Sun Microsystems. All rights reserved.
This product includes Castor. Copyright 2004-2005 by Werner Guttman. All rights reserved.
This product includes FAST Data Search. Fast Data Search is a trademark of Fast Search & Transfer ASA.
This product includes BeanShell. Copyright 2000 by Pat Niemeyer. All rights reserved.
This product includes Eclipse. Copyright 2009 The Eclipse Foundation. All rights reserved.
This product includes Pager Tag Library version 1.1. Copyright 2000 by James Klicman.
This product includes TinyMCE. Copyright 1991, 1999 Free Software Foundation, Inc. All rights reserved.
This product includes the JBoss Application Server. Copyright 2000-2007 by Red Hat Middleware LLC and individual contributors, and is licensed under the GNULGPL.
This product includes Hypersonic SQL. Copyright 1995-2000 by the Hypersonic SQL Group. All rights reserved. Copyright 2001-2005 by The HSQL DevelopmentGroup. All rights reserved.
This product includes Bouncy Castle Crypto APIs. Copyright 2000-2008 by The Legion Of The Bouncy Castle (http://www.bouncycastle.org).
This product includes OpenSymphony OSCache. Copyright 2001-2004 by OpenSymphony. All rights reserved.
This product includes OSWorkflow. Copyright 2002-2004 by OpenSymphony. All rights reserved.
This product includes Open Symphony Quartz Enterprise Job Scheduler. Copyright by James House 2001-2004. All rights reserved.
This product includes software developed by the Apache Software Foundation (http://www.apache.org/). Copyright 2002 by the Apache Software Foundation. Allrights reserved.
This product includes software developed by Sam Stephenson. Copyright 2005-2007 Sam Stephenson. All rights reserved.
This product includes software developed by Jason Hunter and Brett McLaughlin. Copyright 2000-2004 Jason Hunter & Brett McLaughlin. All rights reserved.
This product includes OpenLDAP. Copyright 1999 by the OpenLDAP Foundation, Redwood City, California, USA. All rights reserved.
This product includes PDFBox. Copyright 2002-2007, www.pdfbox.org. All rights reserved.
This product includes software developed by John Resig. Copyright 2009 John Resig. All rights reserved. Dual licensed under the MIT and GPL licenses. http://docs.jquery.com/License.
This product includes software developed by Thomas Fuchs. Copyright 2005 Thomas Fuchs. All rights reserved.
This product includes UrlRewrite developed by Paul Tuckey. Copyright 2005-2007. All rights reserved.
This product includes software developed by Cody Lindley. Copyright 2007. All rights reserved.
This product includes software developed by Maxime Haineault. Copyright 2007, 2008.
This product includes software developed by Terence Parr. Copyright 2003-2006.
The software and accompanying written materials are protected by U.S. and International copyright law. Unauthorized copying of the software, including software thathas been modified, merged, or included with other software, or other written material is expressly forbidden. This software is provided under the terms of a licensebetween BroadVision and the recipient, and its use is subject to the terms of that license. Recipient may be held legally responsible for any copyright infringement thatis caused or incurred by recipients failure to abide by the terms of the license agreement.
RESTRICTED RIGHTS LEGEND: Terms and Conditions Applicable to Federal Governmental End Users. BroadVision licenses products for ultimate end use byfederal government agencies and other federal government customers (federal government customers) only under the following conditions. Software and technicaldata rights in these products include only those rights customarily provided to end use customers of Software as defined in the BroadVision Master Software Licenseand Services Agreement and any exhibit thereto. This customary commercial license in technical data and software is provided in accordance with FAR 12.211(Technical Data) and 12.212 (Computer Software) and, for Department of Defense purchases, DFAR 252.227-7015 (Technical Data - Commercial Items) and DFAR227.7202-3 (Rights in Commercial Computer Software or Computer Software Documentation). If a federal government or other public sector customer has a need forrights not conveyed under these terms, it must negotiate with BroadVision to determine if there are acceptable terms for transferring such rights, and a mutuallyacceptable written agreement specifically conveying such rights must be executed by both parties.
The product described in this manual may be protected by one or more U.S. and International patents. Certain applications of BroadVision One-To-Onesoftware arecovered by U.S. patent 5,710,887.
DISCLAIMER: BroadVision, Inc., makes no representations or warranties with respect to the contents or use of this publication. Further, BroadVision, Inc., reservesthe right to revise this publication and to make changes in its contents at any time, without obligation to notify any person or entity of such revisions or changes.
TRADEMARKS: BroadVision and BroadVision One-To-One are registered trademarks of BroadVision, Inc., in the United States and the European Community, and
are trademarks of BroadVision, Inc., in other countries. The BroadVision logo, BroadVision Portal, BroadVision Commerce Services, BroadVision Content Services,BroadVision Process Services, and BroadVision Staging Services are trademarks of BroadVision, Inc., in the United States and other countries.
Adobe and Acrobat Reader are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries.Java and all Java-based trademarks (including Java, JavaServer Pages, Javadoc, JavaMail, and JavaBeans) are logos and trademarks or registered trademarks ofSun Microsystems, Inc., in the U.S. and other countries, and are used under license.
All other trademarks, service marks, and trade names belong to their respective owners. BroadVision, Inc., disclaims any proprietary interest in the marks and namesof others.
-
7/27/2019 BroadVision 8.2 Content Guide
3/140
3
Contents
About this Book 7Audience ................................................................................................................................................ 7
Organization ........................................................................................................................................... 7
Typographical Conventions ................................................................................................................... 8
1 Introduction 11About Content ...................................................................................................................................... 12BroadVision Database Concepts .......................................................................................................... 13
Content Tools and Utilities .................................................................................................................. 14
About the API ...................................................................................................................................... 15
Working with Content .......................................................................................................................... 16
2 Content 17Content Items ....................................................................................................................................... 18
Attributes .............................................................................................................................................. 18
Multivalue Attributes ................................................................................................................... 19
Containment Relationships ................................................................................................... 20
Content Types ...................................................................................................................................... 21
Schema Specification Files .......................................................................................................... 23
Required Attributes for Content Types ........................................................................................ 24
Content Identifiers ............................................................................................................................... 25
Content Key .................................................................................................................................. 25
OID ............................................................................................................................................... 25
Content UID ................................................................................................................................. 26
GUID ............................................................................................................................................ 26
Categories ............................................................................................................................................ 27
Categories and the Database ........................................................................................................ 28
Categories, Channels, and Programs ..................................................................................... 29
Uncategorized Content ................................................................................................................. 30
Caveats and Application Concepts for Categories ................................................................ 31External Content .................................................................................................................................. 33
Extending the Content Schema ............................................................................................................ 33
3 Working with the Database 35Data ...................................................................................................................................................... 36
Types of Data ................................................................................................................................ 36
Types of Tables ............................................................................................................................. 37
Application Data Tables ........................................................................................................ 37
-
7/27/2019 BroadVision 8.2 Content Guide
4/140
4 BroadVision, Inc.
Contents
Internal Tables ....................................................................................................................... 37
Metadata Tables .................................................................................................................... 38
Mapping Tables ..................................................................................................................... 38
Services ........................................................................................................................................ 38
External Data Sources .......................................................................................................................... 39
When to Use an External Source Data ......................................................................................... 40
Defining an External Data Source ................................................................................................ 41
User Profile Tables and LDAP ..................................................................................................... 41
Data Caching ........................................................................................................................................ 42
4 Tools and Utilities for Working with Content 43Content Management and Bulk Loading Tools ................................................................................... 44
LoadUsers ..................................................................................................................................... 44
load-portal-data ............................................................................................................................ 44
bvtool ............................................................................................................................................ 45
bv-updater ............................................................................................................................. 45
set-db ..................................................................................................................................... 45
bv-xmldumper ....................................................................................................................... 45
generate-schema (SchemaGenerator) .................................................................................... 46BroadVision Management Center ................................................................................................ 47
Inline Publishing .......................................................................................................................... 48
Other Tools ........................................................................................................................................... 49
bvant ............................................................................................................................................. 49
generate_xsd .......................................................................................................................... 49
bv-param.xml ............................................................................................................................... 49
ext_cnt_config.xml ....................................................................................................................... 49
5 Using the API 51API Overview ...................................................................................................................................... 52
Content Data and Caching ................................................................................................................... 53
Data Access Packages .......................................................................................................................... 54Class Overviews ................................................................................................................................... 55
DataManager ................................................................................................................................ 56
Content ......................................................................................................................................... 57
Category ....................................................................................................................................... 58
TableData ...................................................................................................................................... 59
RowData ....................................................................................................................................... 60
DataValue ..................................................................................................................................... 61
ContentData .................................................................................................................................. 62
ContentKey ................................................................................................................................... 63
ContentUID .................................................................................................................................. 64
CallSettings .................................................................................................................................. 65
PrimitiveType ............................................................................................................................... 65
Interfaces .............................................................................................................................................. 66ExtendedAttributes ....................................................................................................................... 66
IQualifierValue ............................................................................................................................. 66
6 Examples 67Basic Content Examples ...................................................................................................................... 68
Create New Content ..................................................................................................................... 69
Delete Content .............................................................................................................................. 70
Retrieve Content Using ContentUID .......................................................................................... 71
-
7/27/2019 BroadVision 8.2 Content Guide
5/140
Contents
5
Retrieve Content Using ContentKey as the Key .......................................................................... 72
Working with Multivalue Tables .......................................................................................................... 73
Create a Multivalue Table ............................................................................................................ 74
Insert Row in a Content Multivalue Table ................................................................................... 75
Delete Row in a Content Multivalue Table .................................................................................. 76
Update a Content Multivalue Table .............................................................................................. 77
Save a Content Items Multivalue Data ........................................................................................ 78
Setting Attributes and Rows ................................................................................................................ 79
Set an Attribute Value Within Content Using setValue() ............................................................. 80
Set an Attribute Value Within Content Using update() ................................................................ 81
Set Parent Row for Content .......................................................................................................... 82
Update Main Row of Content, Queue Series of Content List Update Records, and Perform Updates
Concurrently .......................................................................................................................... 83
Working with Categories ..................................................................................................................... 87
Retrieve a Category ...................................................................................................................... 88
Create New Category ................................................................................................................... 89
Retrieve List of Content within a Category Matching a Given Set of Conditions ....................... 90
Add Members to a Category ........................................................................................................ 91
Create Child Category .................................................................................................................. 92
A Working with Content Types and Schema Files 93Configuring Content Types .................................................................................................................. 94
Extending Content Types and Profile Tables ....................................................................................... 95
About Content Types and Profile Tables ...................................................................................... 95
Adding a New Content Type ........................................................................................................ 96
Making New Content Types Searchable ............................................................................. 100
Adding Attributes to an Existing Content Type ......................................................................... 101
Modifying the Database Schema ................................................................................................ 103
Schema XML Files ............................................................................................................. 103
SchemaGenerator Utility ..................................................................................................... 106
Displaying New Profile Attributes ............................................................................................. 107
Replacing a Content or Profile Table ......................................................................................... 109Configuring the Display Title for Content Items ............................................................................... 110
Configuring Content for Browsing .................................................................................................... 111
B bv-updater 113Configuration File for bv-updater ...................................................................................................... 114
Dependencies of bv-updater .............................................................................................................. 115
A Running BroadVision System ................................................................................................ 115
Environment Settings in the Operating System ......................................................................... 115
File Locations of the DTDs ........................................................................................................ 116
Input File Formats for bv-updater ...................................................................................................... 117
Content Input Files ..................................................................................................................... 117
Category Input Files ................................................................................................................... 123
C Glossary 133
Index 137
-
7/27/2019 BroadVision 8.2 Content Guide
6/140
6 BroadVision, Inc.
Contents
-
7/27/2019 BroadVision 8.2 Content Guide
7/140
Content Guide 7
About this Book
This guide describes content and how to work with it using BroadVision tools and Content-related
APIs.
NOTE: This book does not discuss versioned content. BroadVisions Content Services product
provides advanced content capabilities for your BroadVision system, including versioning. For
information about versioned content, refer to the Content Services Guide.
Audience
The Content Guide provides information for Portal developers new to BroadVision products. It
contains detail about using, obtaining, and managing content in a BroadVision-based web
application. Developers should be fluent in SQL, XML, Java, and database concepts. It is assumed
the reader has read or has access to one or more of the following books: thePortal Developer
Guide,Portal Administrator Guide, andProcess Services Developer Guide.
Organization
This book is organized as follows:
Chapter 1, Introduction, gives an overview of the major topics found within this book.
Chapter 2, Content, explains what content is, describes the different types of content, and
introduces the terms associated with content.
Chapter 3, Working with the Database, offers a high-level description of database concepts as
they pertain the content in a BroadVision framework, describes the kind of data found in a
BroadVision database, discusses tables and the use of external sources when working with
content.
Chapter 4, Tools and Utilities for Working with Content, describes the content management,
loading, and other tools available to use when working with content.
Chapter 5, Using the API, gives a high-level overview of the Data Access API, its packages,
and the classes with which you should become familiar.
Chapter 6, Examples, contains code examples using the Data Access API for retrieving and
working with content and categories.
The appendices contain a glossary, details about configuring content types, extending content
types, and using the bv-updater utility.
-
7/27/2019 BroadVision 8.2 Content Guide
8/140
8 BroadVision, Inc.
Ab out this Book
Typographical Convent ions
Typographical Conventions
This manual incorporates these typographical conventions.
Fonts Sample code, commands, filenames, and directory names, are shown in monospace font:
setup.bin
Significant items in code listings are shown in bold monospace font:
visitor = Session.visitorManager.visitor(username);
Variables for which you must provide information are shown in italic monospace font:
% setenv BV_DB_DATABASE DBNAME
New terms and important words are shown in italics.
User interface menu items, buttons, and links that you are instructed to click are shown in bold.
Special notes NOTE:This lead-in calls out helpful information that is related to but distinct from the main topic.
TIP: This lead-in indicates additional details, alternative methods, hints, shortcuts, and related
information about the main topic.
IMPORTANT: This lead-in indicates situations that can prevent the system from running and how to
avoid them.
File paths and
environmentvariables
By default, file paths are shown in Unix format. For example:
directory/file_name
The equivalent on Windows would be:
directory\file_name
When commands differ depending on whether you are using Unix or Windows, both commands
are shown. However, if the only difference between running the command on Unix or Windows
is a file extension, the ext meta variable is used. Specify the extension appropriate for yourenvironment.
Within text and file paths, install_dirrepresents the value specified for the installationfolder when you installed the BroadVision software. This value can be replaced with the full
installation path or, if you have set your BroadVision environment, the $BV1TO1 environmentvariable (%BV1TO1% on Windows).
Within text and file paths, config_dirrepresents the value specified for the configuration
folder when you installed the BroadVision software. This value can be replaced with the full
configuration path or, if you have set your BroadVision environment, the $BV1TO1_VARenvironment variable (%BV1TO1_VAR% on Windows).
-
7/27/2019 BroadVision 8.2 Content Guide
9/140
About th is Bo ok
Typographical Convent ions
Content Guide 9
The entity relationship diagrams in this book use the following notations:
optional link
required link
Table in thesubsystem
many to many
one to many
one to one
Table in another
subsystem
-
7/27/2019 BroadVision 8.2 Content Guide
10/140
10 BroadVision, Inc.
Ab out this Book
Typographical Convent ions
-
7/27/2019 BroadVision 8.2 Content Guide
11/140
-
7/27/2019 BroadVision 8.2 Content Guide
12/140
12 BroadVision, Inc.
Chapter 1 Introduct ion
Ab out Content
About Content
Content consists of information that you organize and display in your website, whether the sites
purpose is to deliver employee announcements, sell products, or provide customer service
assistance. In a BroadVision environment, an individual piece of content is referred to as a content
item. Multiple pieces of information comprise a content item, which is contained in a database tablerow.
For example, a content item can consist of a cell phone with an ID of 8267, a product ID of
cell7418, a store ID of 91, and name of 7418 Cell Phone. Database columns (also called
attributes) hold the content items multiple pieces of information individually. The cell phones
attributes are OID, PROD_ID, STORE_ID, and NAME.
Content items are grouped into tables by content type. Within a content type, every content item has
the same attributes, so the table that contains the 7418 Cell Phone has other content items with
attributes of OID, PROD_ID, STORE_ID, and NAME.
Content items can be arbitrarily assigned to categories within the content type. For example, the
7418 Cell Phone is included in a category named Cellular. Additionally, external content, which
is any content that resides outside of a BroadVision database, can partially or completely comprise
content items.
The following diagram depicts the relationships between the various entities that make up
BroadVision content.
For additional information, refer to Chapter 2, Content.
Content Type3 Table
Content Type2 Table
attribute attribute attribute attributerowattribute attribute attribute attributerow
attribute attribute attribute attributerow
Content Type1 Table
One Content Item
Columns, or Attributes, are Different
for Each Content Type
Content
Type Tables
in a
Relational
Database
External Content
Resides Outside
the BV Database
Category
Assignments
-
7/27/2019 BroadVision 8.2 Content Guide
13/140
Chapter 1 Introduct ion
BroadVision Database Concepts
Content Guide 13
BroadVision Database Concepts
BroadVision stores data in a relational database. Various types of data and tables comprise the
database. For example, your application may use content data types, microsite data types, and more.
Additionally, you can extend these data types.
The types of tables that your BroadVision database contains include application data tables,internal tables, metadata tables, and mapping tables. Your application uses the application data
tables, while internal tables are reserved for use by the BroadVision framework. Metadata tables are
tables that describe the database. Finally, mapping tables are used with external content, which is
content that resides in a database that is external to a BroadVision database.
The database containing your tables may be partitioned intoservices. A service is a portion of your
database dedicated to a particular purpose. For example, the Portal foundation application uses a
service called C3 for its sample data.
You may find that you have a large amount of data in existence in an external data source. An
external data source contains external content. You can use external content with a BroadVision
database by utilizing the mapping tables.
Refer to Chapter 3, Working with the Database for details about working with content data and
the database.
-
7/27/2019 BroadVision 8.2 Content Guide
14/140
14 BroadVision, Inc.
Chapter 1 Introduct ion
Content Tools and Uti l i t ies
Content Tools and Utilities
Content resides in and is accessed through a relational database. The content is loaded into the
database primarily through the bvtool bv-updater, load-portal-data, and BroadVisionManagement Center tools.
You use these tools to control information in your web application and determine what content gets
displayed to which visitors. For example, an administrator can use the BroadVision Management
Center to categorize content or make it available for viewing on a website.
See Chapter 4, Tools and Utilities for Working with Content to read more about using the
BroadVision Management Center, bvtool bv-updater, load-portal-data and other tools. In
particular, make sure to understand the functionality of content and categories in the BroadVisionManagement Center. See thePortal Administrator Guide for additional information about using the
BroadVision Management Center.
Allows creating and editing
of individual content items.
Database utilities such as bvtool bv-updater allow bulk loading of content
database
Allows creating and editing of individual
content items, creating and manipulating
of categories, business rules, and more.
HTTP
server
Web browser
Application
Server:
BVMC,
Inline
Publishing
-
7/27/2019 BroadVision 8.2 Content Guide
15/140
Chapter 1 Introduct ion
About the API
Content Guide 15
About the API
You can use the BroadVisionData Access APIs to retrieve content and display it on your website
using Java. For example, perhaps you would like your users to be able to retrieve a list of all content
within a category named equipment when they perform a search within a particular page of your
site. You can create this functionality using the classes and methods available within the API.
To learn about the Data Access API and to see examples, refer to Chapter 5, Using the API, and
Chapter 6, Examples.
-
7/27/2019 BroadVision 8.2 Content Guide
16/140
16 BroadVision, Inc.
Chapter 1 Introduct ion
Working with Content
Working with Content
Once content has been entered into the database and made available to your web application, you
can use various mechanisms to retrieve it. For example, you can use:
Queries to access the database directly. See theBroadVision Javadoc for information about
methods that support database queries. Additionally, see Chapter 5, Using the API and
Chapter 6, Examples.
Search adaptors to provide the integrations connecting BroadVision Portal and Process with
third-party, full-text search solutions. See theBroadVision Search Adaptors Guide for more
information.
Rule sets to generate content to display in programs. The content a rule set generates is based
on the rules that comprise the rule set. See thePortal Administrator Guide for details about
implementing rules.
Segments to let you personalize site content and email communication with site visitors. Use
segments to define a target audience of visitors with similar characteristics. See thePortal
Administrator Guide to learn more.
Category roles to let you control access to content categories and content items. See thePortal
Administrator Guide to learn more.
Content categories to help organize large amounts of content for access by browsing. They also
help segregate content into separate areas of responsibility and control. See thePortal
Administrator Guide to learn more.
-
7/27/2019 BroadVision 8.2 Content Guide
17/140
Content Guide 17
2 Content
Content consists of data that is structured so you can present it in a way that makes sense to your
users. This chapter describes what content items are, how they pertain to content types and
categories, and how you can extend the content schema.
This chapter contains the following topics:
Content Items, next Attributes on page 18
Content Types on page 21
Content Identifiers on page 25
Categories on page 27
External Content on page 33
Extending the Content Schema on page 33
-
7/27/2019 BroadVision 8.2 Content Guide
18/140
18 BroadVision, Inc.
Chapter 2 Content
Content I tems
Content Items
In the simplest case, a content item is composed of the information contained in all the fields in a
single row in a database table. The following example shows some of the fields of a content item
from the BV_PRODUCT table.
Content items are logically grouped into tables by content type. Content types have columns orattributes that contain descriptive information.
Attributes
The columns of a table are referred to as attributes. This is because when a web application
retrieves a content item from the database, it acquires a content object that is modeled after the
database. The attributes of the object correspond directly to the columns in the table. (See Chapter
5, Using the API, for more information.)
The attributes of a content item contain information such as IDs, names, and descriptions that serveto describe the content item and to distinguish it from other content items in the same table. Some of
the attributes contain information that can be displayed on the visitors browser and some attributes
contain information that is used by various elements of the application system.
For example, the following diagram shows a portion of the data row for one content item, the Next
Gen DSL Modem. The attributes are in uppercase.
123modem
PROD_IDOID
8266 91
STORE_ID
Next Gen DSL Modem 2008-01-1711:53:44.90000000
NAME CREATION_TIMEInformation in a single
row constitutes one
content item
Individual fields in the row hold
information specific to the content item
123modemPROD_IDOID
8266 91STORE_ID
Next Gen DSL Modem
Columns or Attributes
2008-01-1711:53:44.90000000
NAME CREATION_TIMEContent Item
-
7/27/2019 BroadVision 8.2 Content Guide
19/140
Chapter 2 Content
Attr ibutes
Content Guide 19
CREATION_TIME is a required content type attribute. (See Required Attributes for Content
Types on page 24.) Other content attributes provide necessary information about content that is
not normally displayed to a visitor, such as the location of an image file and its dimensions. Your
application would typically use the location and measurements of an image file to retrieve the image
and to determine its size when displaying it on your site.
NOTE: The path to an image file is stored in the database, while the image file itself is storedexternally. Storing images outside the database reduces the database memory footprint.
Multivalue Attributes
Attributes generally describe a single characteristic about a content item, such as name or color.
However, some attributes contain a list of values, such as a list of a products available colors. In
BroadVision, such multivalue attributes are represented as the child tables in one-to-many
relationships, where the content table is the parent.
IMPORTANT: Multivalue attributes are also referred to as related attributes, related attribute lists, or
list tables in other BroadVision documentation.
Multivalue attributes behave the same as ordinary single value attributes in that you can search
through them and include them in queries. For example, if you wanted to add a child table to
BV_PRODUCTS named MODEM_MANUFACTURER that contains the name of all modem
manufacturers that you stock, you could then perform a search for modems and the manufacturer
name to find all modems by that company.
Tables can have more than one multivalue attribute. You could have separate multivalue attributes
for accessories and manufacturers. With this arrangement, searching for modems made by ACME
that come with splitters returns a modem whose OID is 8266.
Getting a row of information out of a multivalue table retrieves a multivalue row. For example,
when searching for USB modems made by ACME, the multivalue rows retrieved would be those
containing USB, Next Gen DSL Modem, and ACME.
123modem
PROD_IDOID
8266 91
STORE_ID
Next Gen DSL Modem 2008-01-1711:53:44.90000000
NAME CREATION_TIME
GREEN8266ACME
BV_PRODUCT MODEM_MANUFACTURER
OID BUNDLE_ITEM
Related by OID
8266
ETHERNET
BV_PRODUCT MODEM_MANUFACTURER
USB8111
Related by OIDRelated by OID
123modem
PROD_IDOID
8266 91
STORE_ID
Next Gen DSL Modem 2008-01-1711:53:44.90000000
NAME CREATION_TIMEGREEN MODEM8266
ACME
OID BUNDLE_ITEM
8266
OID
8266
SPLITTER
ACCES
8266
ACCESSORY
-
7/27/2019 BroadVision 8.2 Content Guide
20/140
20 BroadVision, Inc.
Chapter 2 Content
At tr ibutes
Containment Relationships
Entries in a multivalue attribute table rely on the parent object. In the example earlier, COLOR is
only meaningful in relation to a related product. COLOR cannot stand on its own and is therefore an
appropriate multivalue attribute. On the other hand, if a list represents information that can exist on
its own, make it a separate content type instead. For example, the following list of computer printer
supplies in COMPUTER_ACCESSORIES is a separate content type, not a multivalue attribute.
For information about:
Referencing multivalue attributes in applications or components, see TableData on page 59 as
well as the Javadoc.
Referencing multivalue attributes in database activities at the server level, see Content on
page 57 and refer to getListData(), which returns the contents multivalue table entries basedon list name. Also see the Javadoc.
Creating conditions using multivalue attributes, see thePortal Administrator Guide. Note that
in that publication, multivalue attributes are sometimes referred to as related attributes.
Inkjet Printer
NAMEOID
6777 8100 26 lb. paper 6.99
8101 10' exten. 21.99
8102 Stand. Ink Cart. 42.50
8103 Delux Ink Car t. 78.99
OID NAME PRICE
relatedby OID
BV_PRODUCT COMPUTER_ACCESSORIES
43
109
585
1004
ACCESSORY_I
8100
OIDOID
6777
6777
6777
6777
8101
8102
8103
relatedby OID
MultiValue Table
-
7/27/2019 BroadVision 8.2 Content Guide
21/140
Chapter 2 Content
Content Types
Content Guide 21
Content Types
A content type acts as a template for content items. A content type defines the columns in a table,
referred to as attributes, and defines what kind of data each attribute can hold. For example, the
BV_PRODUCT table contains Portal product information.
BroadVision provides several content types that you can use and extend for your own applications.The content types can be used as-is, or they can form the basis for any custom content types you
want to create. Each content type resides in its own content table.
The following table describes some of the content types that are installed when you purchase Portal.
Content Type Description Content Table
Advertisements Ads displayed on your site to
promote the products and services
sold by your company or your
customers companies.
BV_ADVERTISEMENT
Discussion Forum Groups On-line interactive forums that fostera sense of community among your
site visitors and are accessible from
your site.
Discussion Forum Groups uses a
different user interface, not the
BroadVision Management Center,
and a different API than content
types.
BV_DF_GRP
Editorials Text and media presentations, such
as investment reports and articles,
that are displayed on your site to
distribute knowledge for intranets,
the internet, and extranets.
BV_EDITORIAL
Portal URLs The BV_URL table handles the URL
content type.
BV_URL
Products Items and services offered for sale to
business or retail customers on
electronic commerce sites.
BV_PRODUCT
123modem
PROD_IDOID
8266 91
STORE_ID
cell74188267
Next Gen DSL Modem
91
Portion of BV_PRODUCTS
2008-01-1711:53:44.90000000
NAME CREATION_TIME
7418 Cell Phone 2008-01-1711:53:44.90000000
-
7/27/2019 BroadVision 8.2 Content Guide
22/140
22 BroadVision, Inc.
Chapter 2 Content
Content Types
Here you can see content types displayed in the BroadVision Management Center.
-
7/27/2019 BroadVision 8.2 Content Guide
23/140
Chapter 2 Content
Content Types
Content Guide 23
Schema Specification Files
Schema specification files define content types. Each schema specification file contains a set of
keyword statements that specify the content type, the table name, the column names, the data types
that the columns can hold, and a number of other characteristics. The Portal schema specification
files (*_spec.xml) for the database are found in install_dir/setup/install/srcxml.locale.
Some of the most common schema XML files you might want to modify include:
prod_spec.xml Products content type
edit_spec.xml Editorials content type
adv_spec.xml Advertisements content type
prof_spec.xml User profile tables
For example, these elements from prod_spec.xml define the Products content types Product IDattribute.
Element Description Example
ATTRIBUTE Refers to a specific column
NAME The attribute (column) name PROD_ID
TYPE The attributes (columns) data
type.
STRING
NOT_NULL Optional to indicate that a
columns value cannot be null.
ATTR_KIND Specifies the following optional
properties of the attribute:
Indicates that the attribute is part
of a primary key or unique index.
COLUMN A custom value for the column
type.
varchar(80)
FRIENDLY_NAME The attributes friendly name. Product ID
SEMANTICS A description of the attribute. Product ID
123modem
PROD_IDOID
8266 91
STORE_ID
cell74188267
Next Gen DSL Modem
91
Portion of BV_PRODUCTS
2008-01-1711:53:44.90000000
NAME CREATION_TIME
7418 Cell Phone 2008-01-1711:53:44.90000000
-
7/27/2019 BroadVision 8.2 Content Guide
24/140
24 BroadVision, Inc.
Chapter 2 Content
Content Types
Required Attributes for Content Types
All content types have six required attributes that are integral to the operation of a BroadVision
application. These attributes cannot be left null.
For example, notice that BV_PRODUCT has a PROD_ID attribute, which is the content key.
Additionally, if you look at the table in the database, you can see that it contains the five other
required attributes.
NOTE: Content types may have additional required attributes that may or may not be required or
even exist for other content types. For example, the Products content type has a required attribute
called PRICE which is not defined for either the Editorials or the Discussion Forum Groups content
types. You can add whatever data types, content types, or attributes you want.
Attribute Comments
The name of this attribute varies by content type. It must be the first
attribute defined for the content type. Its value must be unique for
each content item. See Content Key on page 25 for more
information.
STORE_ID The website service that provides this type of content.
CREATION_TIME The time the content item was created in the database.
Automatically entered by the BroadVision Management Center.
STATUS Whether the content item is available for display and operations.
This attributes value is either On-line or Off-line.
DELETED Indicates whether or not the content item has been deleted from the
database. This attribute exists for compatibility reasons with 7.1
LAST_MOD_TIME The last time the content item was modified. Automatically modified
by the BroadVision Management Center.
123modem
PROD_IDOID
8266 91
STORE_ID
cell74188267
Next Gen DSL Modem
91
Required Attributes
2008-01-1711:53:44.90000000
NAME CREATION_TIME
7418 Cell Phone 2008-01-1711:53:44.90000000
STATUS
91
91
DELETED LAST_MOD_TIME
0
0
2008-01-1711:53:44.90000000
2008-01-1711:53:44.90000000
-
7/27/2019 BroadVision 8.2 Content Guide
25/140
Chapter 2 Content
Content Ident i f iers
Content Guide 25
Content Identifiers
Queries cannot produce reliable results unless content items in the database are uniquely
identifiable. Several attributes exist to ensure that each content item remains distinguishable from
other content.
Content Key
The content key is an attribute that uniquely identifies a content item. The name of the content key
varies from content type to content type. For example, the content key for the Products content type
is PROD_ID while the content key for Editorials is ED_NAME. It usually consists of a string
column ofvarchar() type, although it can also be an INTEGER. For a content key of typeSTRING, the value given with the varchar() specification varies with the expected needs of the
particular key. For example, the value for Discussion Forum Groups is varchar(220) but forProducts it is varchar(80). The content key can also consist of multiple attributes called a
compound key. Any combination of attributes from within the table can comprise these attributes.
You may find that you must retrieve content using a content key because you do not know a content
items OID. See Retrieve Content Using ContentKey as the Key on page 72.
OID
Besides the content key, all content items have another unique identifier that the BroadVision
framework automatically assigns called the OID (or object ID). The BroadVision framework uses
the OID to relate various tables together. For example, content items are related to categories by
OID through an internal table (see Categories and the Database on page 28).
BroadVision tools such as the BroadVision Management Center and the bulk load utilities
automatically assign a unique OID to each new content itemfor that content type. The APIs for
inserting content also automatically assign a unique OID to each new content itemfor that content
type. The internal routines that support these tools and APIs buffer sets of unassigned OIDs and
assign them to new content items as they are created, ensuring the referential integrity of the data
tables. For example, if want to retrieve all content that has to do with cellular phones from a single
content typefor instance, Productsyou can use OID.
NOTE: Always use the BroadVision tools or APIs to assign OIDs or referential integrity may be lost.
-
7/27/2019 BroadVision 8.2 Content Guide
26/140
26 BroadVision, Inc.
Chapter 2 Content
Content Ident i f iers
Content UID
In addition to the Content Key and OID, every content item in the database has a unique content
UID, which consists of three fieldsthe content type ID, service ID, and OID. The content UID
exists because the OID is not necessarily a unique value within the database. An OID is unique in its
content type.
You can use the content UID to retrieve a content item using the API if you know all three fields
that compose the content UID. See Retrieve Content Using ContentUID on page 71.
GUID
GUID refers to Globally Unique Identifier. OIDs are unique in their content types, while GUIDs are
unique across all content types. For example, if want to retrieve all information that has to do with
cellular phones from both the Products content type and Advertisements content type, you would
use the GUID.
-
7/27/2019 BroadVision 8.2 Content Guide
27/140
Chapter 2 Content
Categories
Content Guide 27
Categories
Categories hold references to arbitrary groups of content items that you create for a content type.
Properly organized and implemented, categories can enhance the success of your website.
Categories implement a hierarchical organization of content items within a content type that helps
visitors find specific items.
For example, if your website sells business products and services, the Products content type could
contain product offerings such as wireless telephones, DSL services, and games. Having a separate
category for each of these offerings makes it easier to present the right content for a particular
visitor.
You create categories and subcategories with either the BroadVision Management Center or the
bulk-loading utility bv_updater. The BroadVision Management Center displays categories in ahierarchy that descends from the content type.
NOTE: Even though the BroadVision Management Center displays categories in a hierarchy that
descends from the content type, categories are notpart of a content type.
The following screen shot from the BroadVision Management Center shows a Products subcategory
named Cellular.
Both bv_updater and the BroadVision Management Center are discussed in Chapter 4, Tools andUtilities for Working with Content. For detailed information on creating categories in the
BroadVision Management Center, refer to thePortal Administrator Guide.
Content Type
Subcategory
-
7/27/2019 BroadVision 8.2 Content Guide
28/140
28 BroadVision, Inc.
Chapter 2 Content
Categories
Categories and the Database
A single table named BV_CATEGORY contains the categories for all content types. The categories
in BV_CATEGORY do not contain content items. Instead, a content item is related to the category
name by OID (see OID on page 25). BroadVision maintains the mappings between categories and
content items using the BV_CONTENT_REF table. BV_CONTENT_REF maps content item OIDsto category OIDs. Although the diagram below only shows the Products content table, the same
relationship exists for each content table.
Through this relationship, content items can be referenced through more than one category. Forexample, a cell phone could be referenced through two categories, Cellular and Mobile.
NOTE:Category OIDs are negative while content OIDs are positive.
BV_CONTENT_REF
BV_CATEGORYmaps content to
categories byOID
BV_PRODUCT
relatedby OID
relatedby OID
-8027
OIDNAME
Cellular 8267 91 7418 Cell Phone
OID STORE_ID NAME
relatedby OID
BV_CATEGORY BV_PRODUCTS
cell7418
PROD_ID8267
OIDPARENT_OID
-8027
-8557 8267
relatedby OID
BV_CONTENT_REF
Mobile -8557
CREATION_TIME
2008-01-1711:53:44.90000000
-
7/27/2019 BroadVision 8.2 Content Guide
29/140
Chapter 2 Content
Categories
Content Guide 29
Categories, Channels, and Programs
BV_CATEGORY contains multivalue tables that define channels and programs for Portal.
Channels organize areas of information into navigation hierarchies, and can be either topic-oriented
or process-oriented. Channels within channels are sometimes calledsubchannels and have the same
qualities as their parent channels.
Programs are blocks of information carried by channels. When viewing a channel, you have choices
of different programs or of different subchannels with programs of their own. Programs contain
articles, documents, or other information.
As you work with BroadVision products, you will become familiar with the concept of channels and
programs. Notice that while a category/content relationship defines a content hierarchy, a
channel/program relationship refers to a virtual hierarchy.
The Portal-specific extensions to BV_CATEGORY for channels and qualifiers include:
BV_KM_CHANNEL
BV_KM_ORDER
BV_EP_CHAN_ORDER
BV_EP_QV_CHAN
BV_EP_CONTAINER
BV_EP_CAT_ORDER
You can find a programs parent channel by performing a search in BV_CONTENT_REF, the table
that defines the relationship between channels and programs.
For detailed information about the tables refer to theBroadVision Database Schema.
-
7/27/2019 BroadVision 8.2 Content Guide
30/140
30 BroadVision, Inc.
Chapter 2 Content
Categories
Uncategorized Content
Content items do not need to belong to a category. When content items do not belong to a category,
the content item is considered uncategorized.
NOTE: When a content item is uncategorized it has no entry in the BV_CONTENT_REF table.
Every content type can have uncategorized content items. The BroadVision Management Center
displays these items under the Uncategorized content tab.
Content items become uncategorized:
When you remove a content item from one category and do not put it into another one, and the
item is not referenced by other categories.
When you delete a category, and the content items in it are not referenced through other
categories. When content items are bulk loaded with bv-updater and the category is not specified during
the loading process. (For detailed information about bulk loading and classifying content items,
refer to thePortal Administrator Guide.)
You can move uncategorized content into a category in the hierarchy or you can delete it from the
content database. See thePortal Administrator Guide for details.
Uncategorized content
-
7/27/2019 BroadVision 8.2 Content Guide
31/140
Chapter 2 Content
Categories
Content Guide 31
Caveats and Application Concepts for Categories
Categories are contained within a single content typethey cannot span content types. All content
items within a category have the same attributes.The same category name can exist for more thanone content type, but the categories themselves are differentthey reference different content
types. For example, the C3 sample data contains the Products content type, which has an
Equipment category defined. Equipment has a subcategory named Phones. Finally, Phones has asubcategory named Cellular, which lists cell7418 and cell 5562cell phones from the
BV_PRODUCT table.
You can create a category named Cellular for the Advertisements content type, too. However, the
content that the category forAdvertisements accesses would come from the Advertisements
content type table (BV_ADVERTISEMENT), not the Products content type table
(BV_PRODUCT). The following screen shot of the BroadVision Management Center shows the
results of a query. Two itemscell5562 and cell7418are returned for the Products content type
Cellular category. Only one itemModern Cellphoneis returned for the Advertisements contenttype Cellular category.
BroadVision recommends keeping your categories to a logical minimum. For example, you could
create a separate category for each type of wireless telephone on your site, but using a simple query
to retrieve all wireless telephones by a particular manufacturer from the database instead is more
efficient.
Category: Cellular
Content Type:
Advertisements
Content Item Returned
Category: Cellular
Content Type: Products
Content Items Returned
-
7/27/2019 BroadVision 8.2 Content Guide
32/140
32 BroadVision, Inc.
Chapter 2 Content
Categories
If you reference a parent category in your application, you reference all the content in all of its
subcategories.
The growth of BV_CONTENT_REF is not linear. It increases as a function of both the number of
categories and the number of content items referenced through each category. If many items are
referenced through multiple categories, it is possible for BV_CONTENT_REF to grow quickly. For
example, three content items that are each referenced through three different categories will result innine rows in BV_CONTENT_REF. If this table gets too large it can slow queries that are based on
category.
-
7/27/2019 BroadVision 8.2 Content Guide
33/140
Chapter 2 Content
External Content
Content Guide 33
External Content
Content is usually stored in the BroadVision content database. However you can store, retrieve, and
update content stored in an external source provided if your site is configured to do so. Once you
configure your source, content that is stored externally behaves the same as content from an internal
source, but with these limitations:
You can have only one content table per content type, and there must be one unique key per row
in the table.
You cannotmix internal and external content and multivalue attribute tables. You cannot link
an external list table to an internal content table.
There is no guaranteed transactional integrity. If an external insert fails, the local insert fails too.
External data is always cached locally once fetched and is cached in content caches just like
other content.
External data can be updated seamlessly from the BroadVision Management Center or Portal
foundation application once you have defined your external data source. External data sources
are described in External Data Sources on page 39.
Extending the Content Schema
There are times when you may want to extend your content schema. For example, perhaps you
would like to create a content type for announcements. You can do this by taking an existing schema
file, copying it, and performing a few steps. Additionally, you can extend the schema for existing
content types to add attributes to a main table, add attributes to a multivalue table, or add a
multivalue table. See Working with Content Types and Schema Files in the appendices for step-
by-step instructions.
-
7/27/2019 BroadVision 8.2 Content Guide
34/140
34 BroadVision, Inc.
Chapter 2 Content
Extending the Content Schema
-
7/27/2019 BroadVision 8.2 Content Guide
35/140
Content Guide 35
3 Working with the Database
All information in the database can affect content retrieval and display. Understanding the issues
and concepts related to content and the database helps you to more fully utilize the capabilities of
BroadVision products.
This chapter contains the following topics:
Data, next External Data Sources on page 39
Data Caching on page 42
-
7/27/2019 BroadVision 8.2 Content Guide
36/140
-
7/27/2019 BroadVision 8.2 Content Guide
37/140
Chapter 3 Working with the Database
Data
Content Guide 37
Types of Tables
You use different types of tables with your application, depending on what task you perform,
including application data tables and internal tables. Additionally, if you use an external data
source, you use mapping tables.
Application Data Tables
Application data tables are used directly by your application. The application actively retrieves or
stores data in some of these tables. In other cases, your application specifies a named row of data,
and internal systems do the rest. Examples of application data tables include:
The content and category data tables that you access when retrieving content items or
categories of content items, such as BV_PRODUCT, BV_EDITORIAL,
BV_ADVERTISEMENT, and BV_CATEGORY.
The visitor data tables that you access when validating or storing user logins, shipping
addresses, visitor preferences, or other visitor related information such as
BV_USER_PROFILE and others.
Internal Tables
In contrast to application data tables, internal tables are used primarily by the BroadVision
framework. Internal operations uses the information contained in these tables. Examples of internal
data tables include:
The attribute and data type tables such as BV_ATTRIBUTES, BV_ATTRIBUTES_EXT,
BV_ATTR_GROUP, BV_ATTR_GROUP_INFO, BV_DATE_TIME_VALUES,
BV_DOUBLE_VALUES, and BV_ENUM_VALUES. For example, the BV_ATTRIBUTES
table contains the columns for the database schema and associates it with a table name. It
contains the details for the BV_PRODUCT tables PROD_ID column as well as other columns.
Tables used to relate other tables together, such as BV_CONTENT_REF which relates
categories and content items together. Refer to Categories and the Database on page 28.
Tables used to record transitional information as content is updated or manipulated in some way
by an application such as the BroadVision Management Center: BV_CONTENT_LOG,BV_CATEGORY_PLUS, and others.
1
ATTRIBUTE_IDSCHEMA_NAME
BV_PROD BV_PRODUCT
TABLE_NAME
PROD_ID STRING
ATTRIBUTE_NAME TYPE_NAME
Portion of BV_ATTRIBUTES
-
7/27/2019 BroadVision 8.2 Content Guide
38/140
38 BroadVision, Inc.
Chapter 3 Working with the Database
Data
Metadata Tables
When a DataAccess API retrieves a content item from the database, it extracts the information
contained in the desired row of a particular table and packages it as an object. To accomplish the
mapping from database to object, BroadVision uses metadata tables that describe the database.
Tables such as BV_CONTENT_MAP, which defines all content and content names, and
BV_ATTRIBUTES, described in Internal Tables, are considered metadata tables. All meta tablesdefinitions reside ininstall_dir/setup/install//meta_data.sql.
Mapping Tables
The mapping table maps attributes to key columns in external tables. This table identifies the
external table and the mapping table. See External Data Sources on page 39 for additional
information.
For a complete list and detailed descriptions of the tables, refer to theBroadVision Database
Schema.
Services
In addition to data types and tables, you can organize your content using aservice. A service is a
portion of the database devoted to a particular purpose. For example, the Portal foundation
application uses data from the C3 service. You can use the BV_STORE table to find information
about each service, including the service name. For example, in BV_PRODUCTS, a column named
STORE_ID exists. This column identifies the Next Gen DSL Modem as having a service ID of 91.
If you look at BV_STORE, you can see that STORE_ID identifies the C3 service.
For information on adding a new service, see theBroadVision 8.2 Installation Guide.
NOTE: Content items are not shared across services. If you log into the BroadVision Management
Center and select a service other than C3, you will not see the Next Gen DSL Modem as a content
item because this product belongs with the C3 service.
123modem
PROD_IDOID
8266 91
STORE_ID
Next Gen DSL Modem 2008-01-1711:53:44.90000000
NAME CREATION_TIME
BV_PRODUCT
C3
STORE_NAMESTORE_I
91 800-555-1234
PHONE_NUMBE
800-555-1235 [email protected]
FAX_NUMBER EMAIL_ADDRESS
BV_STORE
-
7/27/2019 BroadVision 8.2 Content Guide
39/140
Chapter 3 Working with the Database
External Data Sources
Content Guide 39
External Data Sources
External source data is information stored in databases outside of BroadVision database tables that
can be referenced from within BroadVision as if it were stored in a BroadVision table. To reference
the data, the BroadVision framework maps content IDs to unique column names in the external
system through mapping tables.
The BV_EXT_MAP table identifies the mapping table between external tables and the BroadVision
mapping table. The mapping table maps attributes to key columns in external tables. This table
identifies the external table and the mapping table.
In the example below, EXT_CONTENT_MAP is a mapping table. To request a product description,
which is stored in an external table, you would ask for BV_PRODUCT.DESCRIPTION and the
BroadVision framework would automatically retrieve the correct data based on the mapping.
Mapping tables contain key values for each external content record.
NOTE: The mapping tables are a snapshot of the key mappings at the time that the table was last
populated or updated only. When external records are added, or when the keys change, you need to
update the table by using the API. For example, you could use
DataManager.createContent(...) to create entries in the BroadVision, mapping, and externaltables. See Create New Content on page 69. A bulk loading tool such as bv-updater does not
exist for external content.
Your external database and the BroadVision runtime database can be different vendors. For
example, you could use Oracle for your BroadVision runtime database and MySQL for the external
database. In this case, the other vendor's JDBC JAR file(s) needs to be included in the classpath. If
the database vendor type is not supported by BroadVision, a new Java class needs to be
implemented based on the interface com.broadvision.data.server.DataAccessor.
When you use external source data, keep the following points in mind:
You can have only one content table per Content Type, and there must be one unique key per
row in the table.
You cannot mix internal and external content and multivalue attribute tables. You cannot link an
external multivalue table to an internal content table. There is no transactional integrity.
External data is always cached locally once fetched.
relatedby OID
BV_PRODUCT EXT_CONTENT_MAP EXT_PROD_CONTENT
82668267
8268
8269
OID
2213522136
22137
22138
CNT_ID
82668267
8268
8269
OID ... DESCRIPTION
related byCNT_ID
Next Gen ModemPremium 7418 Phone
Econ 5562 Cell Phone
Standard Cable
2213522136
22137
22138
CNT_ID
-
7/27/2019 BroadVision 8.2 Content Guide
40/140
40 BroadVision, Inc.
Chapter 3 Working with the Database
External Data Sources
You may have external multivalue attributes, but you must also have an external parent table
with the same key values as the multivalue table; the mapping table must be internal.
When to Use an External Source Data
It is a good idea to use external data sources when:
You already have existing data elsewhere that was created and is being updated by a non-
BroadVision application.
You already have a large amount of existing data that is too difficult to move into yourBroadVision system. You can keep the data external, even though you intend to put it under the
control of your BroadVision-based application.
Accessing an external data source is slower than accessing a BroadVision database because there is
additional lookup time required due to the mapping table. Additionally, there is access time incurred
by communicating with the external database system. However, once data has been retrieved, if it is
cached, there is no additional performance overhead.
NOTE: For performance reasons, if you must use an external data source, make sure that you take
advantage of caching to minimize the effect of the additional lookup and retrieval time.
relatedby OID
BV_PRODUCT EXT_CONTENT_ EXT_PROD_CONTENT
8266
82678268
8269
OID
22135
2213622137
22138
CNT_I
8266
82678268
8269
OID ... DESCRIPTION
related byCNT_ID
Next Gen Modem
Premium 7418Econ 5562 Cell
Standard Cable
22135
2213622137
22138
CNT_ID
22136 2 Year Plan
22136 Loss Insurance22136
22136
CNT_ID UPGRADE
UPGRADES_AVAILrelated byCNT_ID
-
7/27/2019 BroadVision 8.2 Content Guide
41/140
-
7/27/2019 BroadVision 8.2 Content Guide
42/140
42 BroadVision, Inc.
Chapter 3 Working with the Database
Data Caching
Data Caching
Caches are used to improve the performance of activities that access the database and where the
result of queries can be reused for later evaluations. For example, rules may be used to find content
while browsing through the site. In Portal, the following caches are also available in addition to
content caches:
Text cache stores text segments from pages
Filter cache stores qualifier values for content items
All BroadVision caches contain the most recently accessed items.
When you restart the system, it reverts to the settings specified in the configuration file. Once you
find the correct setting using the BroadVision Management Center, you can make the change
permanent by changing the parameter in the configuration file. Increasing the size of the cachesrequires more memory. If you have issues with memory storage space, you can reduce the numberof items stored in the text caches. You can manually flush the cache by using the BroadVision
Management Center or by using bvtool.
The bv_ptc_cfg.xml file located in the config_dir/appConfig/bv_framework/etc directorycontains the definitions for text caches. Modify this file when you are satisfied with the cache
flushing settings on your system. See thePortal Administrator Guide for more details. For
information about working with data caches, see com.broadvision.data.cache in the Javadoc.
Database
Cache
BroadVision
ManagementCenter
Content and
category data
cached.
Application Server
-
7/27/2019 BroadVision 8.2 Content Guide
43/140
Content Guide 43
4 Tools and Utilities for Working withContent
BroadVision provides multiple ways for you to load content into your database. Additionally, when
you work with content, you will need to become familiar with various tools and utilities. This
chapter contains the following topics:
Content Management and Bulk Loading Tools, next
Other Tools on page 49
-
7/27/2019 BroadVision 8.2 Content Guide
44/140
44 BroadVision, Inc.
Chapter 4 Tools and Uti l i t ies for Working with Content
Content Management and Bulk Loading Tools
Content Management and Bulk Loading Tools
You can use different mechanism for loading content into the database depending on your situation
and the role of the person loading content. Here are some of the tools you can use to manage content
and load it into your database:
LoadUsers used to import user information into your BroadVision visitor database if you use
Portal or Process.
load-portal-data used to import Portal-specific elements.
bvtool multi-purpose utility to perform a variety of tasks, including importing, updating, and
deleting content or category information into your BroadVision content database.
BroadVision Management Center tool to enter and edit information in the database and also
create a personalized experience for your site visitors. The BroadVision Management Center is
bundled with Portal and allows you to establish logic to select the content you would like todisplay to visitors of your site.
Inline Publishing users may publish content directly by using the Portal site if they have been
given permission to do so.
LoadUsers
The LoadUsers utility imports user information into your BroadVision visitor database. The utilityprocesses data contained in an XML file.
See thePortal Administrator Guide for more details.
load-portal-dataThe load-portal-data utility imports the following information into Portal:
Use the utility to import and delete Portal information. For example, you might have a portal with acomplex information architecture with lots of channels, programs, and types of users. You can
manage the information architecture online through the BroadVision Management Center.
However, for bulk operations, you may find it useful to maintain the definitions for your
information architecture in separate input files to the load-portal-data utility, and run the utility after
you make modifications.
For additional details about using load-portal-data, see thePortal Administrator Guide.
Channels Display Templates
Programs Blocks
Qualifiers Page Types
User Templates
-
7/27/2019 BroadVision 8.2 Content Guide
45/140
Chapter 4 Tools and Uti l i t ies for Working with Content
Content Management and Bulk Loading Tools
Content Guide 45
bvtool
The bvtool utility is a multi-purpose tool that allows you to better maintain and manage content inthe database. For example, the bv-updater command allows you to load, update, and deletecontent and categories as well as perform other tasks, while the set-db command allows you to
change the database settings for your BroadVision system. Additionally, you can deployconfiguration changes, display and set parameter values, and deploy an application using bvtool.
The following utilities are described in this section:
bv-updater on page 45
set-db on page 45
bv-xmldumper on page 45
generate-schema (SchemaGenerator) on page 46
bv-updater
Thebv-updaterutility imports, updates, and deletes content information or category information
into your BroadVision content database. The utility processes data contained in XML files. For
example, you can use this utility to specify content database actions to insert rows, remove rows,
update rows, or replace rows.
For detailed instructions on using bv-updater, see bv-updater in the appendices.
set-db
The bvtool set-db command changes the database settings for your BroadVision system. Thesyntax is:
bvtool set-db -user db-user-passwd db-password-database db-name -serverserver-name -url jdbc-url
bv-xmldumper
Use bvtool bv-xmldumper to perform a BroadVision content or category dump into XML files.You must provide:
the full path to the configuration file (.txt)
the full path to the XML data file into which you are dumping the data
For example: -c yourPath/config_file -f yourPath/xml_data_file
Inside the config file, the following variables may be set:
log= (the default log file is DumpMain.log in the current directory)
lc_number=_ (locale to parse the number from XML file)
lc_datetime=_ (locale to parse the datetime from XML file)
The machine default locale will be used if you do not specify the above locales.
-
7/27/2019 BroadVision 8.2 Content Guide
46/140
46 BroadVision, Inc.
Chapter 4 Tools and Uti l i t ies for Working with Content
Content Management and Bulk Loading Tools
generate-schema (SchemaGenerator)
The generate-schema command is used to create SQL scripts from your XML schema files. TheSQL scripts can then be executed to create or update tables in your database.
Use bvtool generate-schema to generate SQL files for content types.
IMPORTANT: You cannot alter existing column types usinggenerate-schema.
First, set BroadVision environment variables by executing, or sourcing, the
install_dir/bin/setEnv utility for your operating system. Then execute bvtool with thefollowing syntax:
bvtool generate-schema -schema xmlFile -script sqlFile -vendor dbVendor[-noextension]
or
bvtool generate-schema -propFile propertiesFile -vendor dbVendor[-noextension]
-schema xmlFile The name of the schema XML file to use as input.
-script sqlFile The name of the SQL file to generate.
-vendor dbVendor The name of your database vendor: oracle, microsoft, mysql, informix, db2,hsqldb.
-noextension Generates the SQL for an entire content type or profile. Use this option whencreating new content types. Do not use this option when adding attributes to an existing content type
or profile table.
-propFile propertiesFile A properties file with entries formatted as follows:
xmlFilePath=sqlFilePath
Use this option to generate SQL files for multiple XML schemas at one time. See
spec_list1.properties in the install_dir/setup/bvf directory for an example of aproperties file.
This example creates an SQL script for adding attributes to the Editorial content type for an Oracle
database:
bvtool generate-schema -schema edit_spec.xml -script edit_spec.sql-vendor oracle
This example creates an SQL script for a new attribute type for an Informix database. See
cnt_type.xml in the install_dir/setup/install/srcxml.us directory for an example of the
file syntax:bvtool generate-schema -schema my_custom_type.xml-script my_custom_type.sql -vendor informix -noextension
-
7/27/2019 BroadVision 8.2 Content Guide
47/140
Chapter 4 Tools and Uti l i t ies for Working with Content
Content Management and Bulk Loading Tools
Content Guide 47
BroadVision Management Center
The BroadVision Management Center is bundled with Portal. It provides a way to manage
information in a portal application. You can enter and edit information in the database and also
create a personalized experience for your site visitors. The BroadVision Management Center allows
you to establish logic to select the content you want to display to visitors of your site.
Tasks are divided into nine groups that correspond to nine tabbed pages, depending upon thelicenses you have:
Tab Purpose
Service Administer caches, microsite templates, and single-sign on for your service. To use this
tab, you need the Service Administrator role.
Users Manage user templates, groups of users, and user profiles for site visitors. To use this
tab, you need the User Administrator or Organization Administrator role.
Navigation Manage the navigation and presentation of a portal site, including channels, programs,
portlets, and page types. To use this tab, you need the Navigation Administrator or
Channel Administrator role.
Process Configure process packs, models, or instances. Reassign or delegate tasks and roles.
To use this tab, you need the Process Administrator, Pack Deployer, or Process
Manager role.
Personalization Manage qualifiers, segments, rule sets, email notifications, and alert notifications. To
use this tab, you need the Personalization Administrator role.
Content Categorize and create content, manage document types, define content roles, and
assign users and groups to content roles. To use this tab to perform these types of
tasks, you need the Content Administrator role.
-
7/27/2019 BroadVision 8.2 Content Guide
48/140
48 BroadVision, Inc.
Chapter 4 Tools and Uti l i t ies for Working with Content
Content Management and Bulk Loading Tools
Your administrator performs the tasks associated with content in the BroadVision Management
Center. For information, refer to thePortal Administrator Guide.
Inline Publishing
If a Portal administrator grants permissions, a user may publish content directly by using the Portal
site. BroadVision Portal sites support publishing four kinds of content: editorials, advertisements,
URLs, and products. To learn about the publishing process for each of these types, consult the
Portal User Guide.
My Work View tasks that are assigned to you and process instances that you created.
Staging Ship and receive content, view orders, set staging preferences.
Orders Perform searches for orders, create Process instances, confirm orders, create order
flows.
Tab Purpose
-
7/27/2019 BroadVision 8.2 Content Guide
49/140
Chapter 4 Tools and Uti l i t ies for Working with Content
Other Tools
Content Guide 49
Other Tools
Besides the tools used to bulk-load content into your BroadVision database, you should understand
how to use other utilities that assist you when working with content. For additional information
about the tools, see the guides referred to in each respective section.
bvant
The bvant utility is a BroadVision Java-based utility that uses XML build files to:
manually set up installed BroadVision software
pre-compile JSPs in a .war file
generate XSD schemas from database tables
generate publishing processes for content types
The primary reasons for using bvant are to: exercise more control over the deployment of process packs
debug deployment or setup by displaying more information than is provided by other utilities
re-compile the BroadVision Management Center and sample application JSPs to shorten the
application server start-up time
See theBroadVision 8.2 Installation Guide andProcess Services Developer Guide for more
information.
generate_xsd
You can use the generate_xsd.xml file with the bvant command to automatically generate anXSD schema file based on a SQL database table or BroadVision content type that you specify.
bv-param.xml
To configure the content types that appear in the BroadVision Management Center when managing
programs, you use the bv.portal.tool.content.PROGRAM_CONTENT_TYPES parameter in theinstall_dir/baseSuites/bv_services/modules/svc_clt/bv-param.xml file. Use bvtoolset-param to update the parameter.
Also use this utility to configure the column to use the display name for content items.
See Configuring Content Types on page 94 for additional information.
ext_cnt_config.xml
Use this utility to specify a new data source. Located in config_dir/appConfig/bv_framework.
-
7/27/2019 BroadVision 8.2 Content Guide
50/140
50 BroadVision, Inc.
Chapter 4 Tools and Uti l i t ies for Working with Content
Other Tools
-
7/27/2019 BroadVision 8.2 Content Guide
51/140
Content Guide 51
5 Using the API
Most often, your development effort