Welcome
Product overview
 What's new
 Key features
  Versatile framework
  Customization
  Document management
  Portlets
  Application integration
  Mobile portals
  Security
  Collaboration
  Transcoding
 Usage scenarios
  Business process integration
 Components overview
 Accessibility features
 Plan considerations
 Supported hardware and software
  WebSphere Portal Support Statement
 Software and hardware topologies
 Additional resources for planning
Migrating
 Plan
 Migration prerequisites
 The migration process
  Manual migration steps
  Preparing to run the migration tasks
  Run the migration tasks
   With both WebSphere Portal versions running at the same time
    One-task migration
    Multitask migration
   With only one WebSphere Portal version running at a time
    Two-task migration
    Multitask migration
   Optional migration steps
   Verifying the migration tasks
   Migrating the remaining access control configuration
   Migrating derived pages
 Migration properties
 Migration tasks
 Troubleshooting
Install
 Preparing your operating system
  AIX
  HP-UX
  Linux
  Solaris
  Windows
 Choosing an installation source
 Install on Windows/UNIX
  Plan
  Install
   Quick install scenario
   Existing WAS with no security
   Existing WAS security disabled
   Existing WAS security enabled
   Coexisting WebSphere Portal products
   Advanced installation options
   Install for development
   Enable IBM Tivoli License Manager for WebSphere Portal
  Verifying
  About the installation program
 Troubleshooting installation
 Additional resources for installation
 Uninstalling
Clustering
 Plan
 Install a WebSphere Portal cluster
  Install Network Deployment
  Install WebSphere Portal
  Set up the cluster
  Configure session failover
  Configure search
  Using an external security manager
 Managing the cluster
 Maintaining the cluster
 Uninstalling
 Troubleshooting
Configure
 Database (Windows/UNIX)
  Plan
   DB2
   DB2 for OS/390 and z/OS
   Oracle
   SQL Server
  Install databases
   DB2
   DB2 for OS/390 and z/OS
   Oracle
   SQL Server
  Create databases and users
   DB2
   DB2 for OS/390 and z/OS
   Oracle
   SQL Server
  Configure databases
   DB2
   DB2 for OS/390 and z/OS
   Oracle
   SQL Server
  Verifying
  Change database passwords
  Troubleshooting databases
 Web server
 About the configuration program
 Configuration properties
 Configuration tasks
 Delete passwords from properties
 Change your portal URI
 Configuration wizard
Deploying
 Overview
 Deploying your portal
 Set up your environment
 Create an initial portal solution release
 Staging an initial portal solution release
 Create subsequent portal solution releases
 Staging subsequent portal solution releases
 Staging with an external security manager
 Building a release
 About ReleaseBuilder
Enable security
 Plan
 Database user registry
  Plan
  Configure
  Verifying
  Member Manager staff plugin provider
 LDAP user registry
  Plan
  Install LDAP
   IBM Tivoli Directory Server
   Domino Directory
   Active Directory
   Novell eDirectory
   Sun ONE
  Set up LDAP
   IBM Tivoli Directory Server
   Domino Directory
   Active Directory
   Novell eDirectory
   Sun ONE
  Set up LDAP over SSL
   IBM Tivoli Directory Server
   Domino Directory
   Active Directory
   Novell eDirectory
   Sun ONE
  Configure for LDAP without realm support
   IBM Tivoli Directory Server
   Domino Directory
   Active Directory
   Novell eDirectory
   Sun ONE
  Configure for LDAP with realm support
   IBM Tivoli Directory Server
   Domino Directory
   Active Directory
   Novell eDirectory
   Sun ONE
  Configure for LDAP Searches
  Mapping LDAP attributes
  Mapping external IDs
  Verifying
 Using IBM Tivoli Directory Integrator to build a user registry
 Using multiple realms
 Deploying portlets in a secure environment
 Custom user registry
 Delete passwords after installation
 Manually configure WAS global security
 Disabling WAS Global Security
 Using Java 2 Security with WebSphere Portal
 Troubleshooting LDAP and security
Security concepts
 Authentication
  User registries
  Single sign-on
   Credential Vault and Credential Service
 Authorization
 Access Control
  Managing access control
  Roles
  Resources
  Access rights
  Access control scenarios
  User Group Permissions portlet
  Resource Permissions portlet
  Manage Users and Groups portlet
 Managing users and groups
  Nested Groups
  Virtual Users and User Groups
  Set limits on searches for users and groups
  Change user profiles and group membership information
  Deregistering Users and Groups from WebSphere Portal
  Customize common name generation
  Subscriber management: Registration and Self-care
  Special characters in user IDs and passwords
  Searching group membership
 External security managers
  External authentication
  External authorization
  Tivoli Access Manager
   Configure Tivoli Access Manager for authentication, authorization, and the Credential Vault
   Configure Tivoli Access Manager for authentication
   Configure Tivoli Access Manager for authorization
   Configure vault adapter for Tivoli Access Manager
   Removing Tivoli Access Manager
  SiteMinder
   Configure SiteMinder for authentication
   Configure SiteMinder for authorization
   Removing SiteMinder
  Change the login and logout pages
  Managing access control with external security managers
 Set up SSL
  FIPS compliance and WebSphere Portal
 Change passwords
 Troubleshooting LDAP and security
Tuning
 High performance skins
 Caching
 Nested groups
 Database performance
 Performance improvements
Performing first steps
 Learning about the interface
 Adding new users
 Install a portlet and adding it to a page
Designing
 Layout of the portal page
  Themes
  Screens
  Skins
  Aggregation
 Customizing the portal
  Create your own theme
  Create your own skin
  Lightweight themes and skins
  Enable automatic JSP reloading
  Supporting new clients
  Supporting new markup languages
  Portal style classes
  Change company information
  Change the portal page help
  Working with portal navigation
   Implementing a single level of navigation
   Implementing a navigation tree
   Create custom links to portlets and pages
   Providing customization tools
  Using JSTL tags in the portal JSPs
 Using custom pages and themes for admin portlets
 Deploying customized themes and skins
 Tags used by the portal JSPs
 WML tags used by the portal JSPs
 Troubleshooting portal design
Administering
 Before you start administering your portal
  Portal administration tools
  Portal navigation and Back button behavior
  Disabling anchors in portlet URLs
 Starting and stopping servers
 Language support
  Selecting and changing the language
  Change the character set for a language
  Supporting a new language
 Managing pages, layout, and content
  Portal structure
  Managing pages
  Customizing pages
 Delayed cleanup of deleted portal pages
 Portal configuration
  Global settings
  Portal service configuration
  Persistent session state
  Configure dynamic fragment cache
  Portlet Filters
  HTTP proxy configuration
  URL Mapping
  Unique names
 Multiple virtual portals
  About multiple virtual portals
  Usage scenarios for virtual portals
  Plan for virtual portals
  Administering virtual portals
  Virtual portals reference
 XML configuration interface
  Portal administration tools
  About the XML configuration interface
  Changes in XML for WebSphere Portal V5.1
  Working with the XML configuration interface
  Moving from a test to production server
  XML reference
  Reference: Sample XML configuration files
  Troubleshooting the XML configuration interface
 Portal Scripting Interface
  Portal administration tools
  About the Portal Scripting Interface
  Working with the Portal Scripting Interface
  Command reference for the Portal Scripting Interface
 Portal administration portlets
 Deploying J2EE resources with portlet application WAR files
 Using WSRP services
 System event logging
 Additional resources for administration
 Troubleshooting administration
 Troubleshooting access to the portal
Portal Search
 Changes to search for WebSphere Portal V5.1
 Key features
 Portal search capabilities
 Portlets for working with Search
 Summarizer
 Before you start working with portal search
  Security considerations
  Configure the portal search portlets
  Configure search in a cluster environment
  Crawling and indexing a portal site
  Configure a custom portal theme to include the search
  Migrating your search collections
 Working with portal search
  Predefined static taxonomy and categorizer
  Create and configuring search collections
   Managing search collections
   Managing the content sources of a search collection
Integrating your business
 Using portlet templates
  CSV Viewer
  File Server
  JSP
  Servlet Invoker
 Importing content from remote sites
  Using the Web Page portlet to import content
  Using Web clipping to import content
   Create a Web clipping portlet
   Configure URL rewriting
   Access content behind a firewall
   Specifying client cookie support
   Change restart settings
   Specifying caching timeout
   Specifying authentication options
   Reference: Web clipping limitations
   Troubleshooting Web Clipping portlet
  Using the RSS portlet to import content
 Integrating business processes
  Overview
  Set up the development environment
  Enable the business process for portal
  Set up the task list
  Defining the task page
  Create the task processing portlet
  Customizing the theme for process integration
  Initiating a process instance
  Deploying the business process application
  Configure the business process container
  Troubleshooting business process integration
 Installed portlets
  Install a portlet and adding it to a page
  Business portlets
   Bookmarks
   Reminder
   World Clock
   My Task
   Banner Ad
   Quicklinks
   Document Viewer
   Microsoft Exchange 2000 Portlet Application
   My Query Reports
   MS NetMeeting
   My ToDos
   Newsgroup
   Application Portlet Builder
   Web Page
   File server
   JSP server
   Servlet invoker
   Common Mail
   Common Calendar
  Collaborative portlets
   Directory Search
   Search Center
   Domino Web Access (iNotes)
   Notes and Domino
   Lotus Team Workplaces
   Inline Team Workplaces
    Set up awareness and chat for Inline Team Workplaces
    Set up Web Conferencing for Inline Team Workplaces
   Lotus Instant Messaging Connect
   Domino Document Manager
   Lotus Instant Messaging Contact List
   Who Is Here
   People Finder
   Lotus My Team Workplaces
   Lotus Web Conferencing
  Cooperative portlets
  Struts Portlet Framework examples
  Troubleshooting portlets
 Downloading third party portlets
Collaborating
 Getting started with collaboration
  Plan for collaboration
  Install
   Domino
   Lotus Team Workplace
   Lotus Instant Messaging and Web Conferencing
  Configure
   Domino LDAP
   Domino mail and appservers
   Lotus Team Workplace
   Lotus Instant Messaging and Web Conferencing
   Lotus Discovery Server
 Working with the Collaboration Center
  Plan for using the Collaboration Center
  Confirming installation
  Set up the Collaboration Center
   People Finder portlet
    People Finder configuration mode
    People Finder interaction with other portlets
    Member Manager and People Finder
   Lotus My Team Workplaces portlet
   Lotus Web Conferencing portlet
   Lotus Instant Messaging Contact List portlet
   Who Is Here portlet
   Domino Web Access (iNotes) portlet
    Set up awareness and chat for Domino Web Access
   Notes and Domino portlet
   Domino Document Manager portlet
  Troubleshooting Collaboration Center
 Deploying additional collaborative portlets
 Reference topics
  Collaboration
  People awareness
  Additional configuration
  Programming with the Lotus Collaborative Services API
  Troubleshooting Domino and the Extended Products
Managing documents
 Set up your work environment
  Access Manage Document Libraries
  Configure library management
  Assigning user access
  Set up document management
  Set up the browser plug-in
  Set up draft approvals
  Set up file type definitions
  Maintaining your search index
 Document libraries
  Create, editing and deleting document libraries
  Searching document libraries
  Copying document libraries
  Importing files to a document library
 Document management
  Modifying Document Manager properties
  Documents, folders, and views
  Performing basic tasks
  Working with drafts
  Searching documents and folders
 Collaborating in Document Manager
 Document Conversion Services
  Viewing documents in HTML
 Productivity Components
 Managing mail
 Troubleshooting Document Manager and Productivity Components
Personalizing
 Personalization Server
  Plan
  Install databases for Feedback
  Install the Personalization Server
  Configure LikeMinds support for Personalization
  Install a Personalization Server cluster
 What is Personalization?
 How a site is personalized
 Types of Personalization
 Personalization terms
  Resources, resources instances, and resource collections
  Rules
  Content spots
  Rule spot mappings
  Campaigns
  Application object
  Request context
  Query framework
 Portlets
 Resources, resources instances, and resource collections
  User resources
  Content resources
 Configure Personalization after installation
 Rules
  Actions
   Example: Simple select content action
   Example: Simple update action
   Example: Simple e-mail action
  Profilers
   Example: Simple profiler
   Example: Nested profiler
   Example: Category Count (implicit profiling)
   Example: Browser capability
   Example: Count of (quantifiable condition)
   Example: Request attributes and session attributes
   Example: Arithmetic operation
  Bindings
   Example: Simple binding
   Example: Multiple profilers and optional actions
   Example: Nested bindings (simple)
   Example: Nested bindings (advanced)
  Recommend Content
   Previewing a Recommend Content rule
  Rule elements
   Arithmetic expressions
   Count of (quantifiable conditions)
   Current Action Count or Action Name
   Current Browser Capability
   Using browser capability
   Current Date
   Current Request Attributes
   Current Request Parameters
   Current Session Attributes
   do Action
   is equal to
   order as is
   Profile
   Profiler
   Quick Profiler
   Resource.Attribute
   sender
   set to
   value
  Rule implementation
   Content spots
   Rule spot mappings
   Campaigns
   Campaign administration
   Publishing rules and configuring for SSL
  E-mail
  E-mail administration
 An introduction to LikeMinds
  LikeMinds Recommendation Engine
  LikeMinds Recommendation Engine architecture
  How LikeMinds generates recommendations
  The LikeMinds Recommendation Engines
   Preference Engine
   Clickstream Engine
   Item Affinity Engine
  Administering LikeMinds Recommendation Engines
  User and items cache management
  Background utility processes
  Configure LikeMinds servers
   Estimating database size
   Database performance
   Scheduling LikeMinds Events
   Configure the LikeMinds server for the database
    Mapping symbolic database table and field names
    Symbolic field names
    Symbolic table names
   Basic LikeMinds server configuration
    Specifying cache behavior
    Number of users and items in the cache
    Time users and items are kept in the cache
   Specifying recommendation behavior
    Allowable rating values
    Allowable confidence levels
    Prediction quality values
    Best Bets values
  Configure background utilities
   Ratability parameters
   Repeated items in visit list
  Configure the LikeMinds engines
   Configure the Preference Engine
    Number of mentors to use
    Mentors to look for in cache
    Use of average user to improve recommendation confidence
    Use and number of archetypes
    Guidelines for configurable recommendation dynamics
    Set the number of archetypes in cache
    Enable or disabling the use of archetypes
   User predictability
    Maximum number of mentors assigned to each user
    Maximum ratings a user needs before becoming a mentor
    Maximum transactions a user needs before becoming a mentor
    Minimum number of ratings for user recommendations
    Minimum mentors the engine examines for predictability
    Recomputing Preference Engine predictions
    Default Preference Engine recommendations
    Use and number of archetypes
  Configure the Clickstream Engine
   User predictability
    Minimum number of Clickstream activities for a user
    Minimum mentors the engine examines for predictability
    Recomputing Clickstream Engine predictions
    Default Clickstream Engine recommendations
  Configure the Item Affinity Engine
  Specifying transaction information on a per activity basis
  Sifter-specific mentor set configuration
  Configure the sifter for mentor selection
   How the mentor selection process works
    Mentor selection and assignment
    Number of sift priority users per batch
    Pausing the sifter during heavy database
   Sifter performance considerations
   Preventing multiple sifters from sifting the same user
   Recomputing (rebuilding) the mentor pool
   Run multiple sifters
   Number of threads to sift users
   Sifter sleep time when the Lps_User_Data sift_pri field Is 0
   Time interval for checking sift priority
  MovieSite Sample
   Exploring Movie Site
  Using the LikeMinds utilities
   Sifter
   Buildstats and buildvisit
   Accumulator
  Filtering LikeMinds recommendations
  Engines to be used for mentor tables to be rebuilt
 Feedback and analytics
  Feedback subsystem overview
  Enable logging
  Feedback properties file
  Rule logging
  Logging beans
   Action beans
    Implementing action logging
    Action beans reference
   Category beans
    Implementing category logging
    Category beans reference
   Rating beans
    Implementing rating logging
    Rating beans reference
   CustomLog beans
    Implementing custom logging
    CustomLog beans reference
   PageView beans
    Implementing PageView logging
    PageView beans reference
  LogManager
  Listeners and persistence
   FeedbackListener
    Feedback database schema
     Feedback schema diagram
     Feedback schema tables
     Key value pairs
   LMListener
   Custom log listeners
    Custom listener classes
    Customized feedback listeners
  Classes and APIs for writing custom log listeners
   LogEvent class
    RuleEvent class
    CategoryEvent class
    ActionEvent class
    CustomLogEvent class
    RatingEvent class
    PageViewEvent class
   ResourceInfo class
   RuleInfo class
  Reports
   Feedback database schema
    Feedback schema diagram
    Feedback schema tables
    Key value pairs
 Personalization programming reference
  Programming model
  User and content models
  How the rules engine works
  Workload management
  Preparing an application for Personalization
  Using the Personalization APIs
   Resource interface
   APIs for multivalue properties
   General tips
  Generic query framework
   Using the Generic Query Framework
  Request Context
  Sample Personalization resources XML file
  Content spot exits
  Access resources without rules
  Programmatically implementing rules
  Rule Exception Handling in the run-time environment
 Troubleshooting Personalization
Site analysis
 Install
 Configure site analysis logging
 Importing data into Site Analyzer
 Understanding the site analysis log
 Usage reports
Developing portlets
 Portlet concepts
 Deployment descriptors
 Sample portlets
 JSR 168 Portlet API
  Comparing JSR 168 to the IBM portlet API
  JSP tags for JSR 168 portlets
  Migrating from the IBM Portlet API
 IBM Portlet API
  Overview
  Portlet concepts
  Elements of the Portlet API
  Core objects
  Listeners
  Configuration objects
  Miscellaneous objects
  Portlet events
  JSP tags of the IBM Portlet API
  Portlet API extensions
 Portlet development basics
  Create a simple portlet
  Generating output
  Storing user settings
  Message and trace logging
  Caching portlet output
  Access remote systems
  Portlet authentication
  Access the portlet session on the anonymous page
  Portlet menus
  Writing a portlet filter
 Request parameters in portlets
 Portlet services
  Create your own portlet services
  Access portlet services
 Struts Portlet Framework
  Changes to Struts application code
   Comparison of servlets and portlets
   Saving information for rendering the view
   Response object
   sendError() processing
   Saving information in a bean
   Forwards and redirects
   Using the command factory
   Access portlet objects
   Sending a message
  Supporting multiple Struts applications
  Create link tags in Struts
  Formatting XML documents with XSLT
  Static content in Struts
   Create a Home button for static content
  Migrating
   Migrating servlet-based Struts applications
   Migrating IBM struts portlets
 Cooperative portlets
  Concepts
   Overview
   Features
   Property broker runtime components
   Event handling
   Sample flow of property broker interaction
   Property transfer using wires
   Property broker programming model
  Developing portlets for cooperation
   Cooperative portlet samples
   Registering properties and actions
    Declarative approach: JSR compliant and IBM portlets
    Programmatic approach: IBM portlets only
   Generating property values
    For JSR compliant portlets
    For IBM portlets
   Receiving property values
   Advanced programmatic APIs for accessing Property Broker
    JSR compliant and IBM portlets
    IBM portlets only
   Packaging and deployment considerations
   Additional considerations for compiling
  Configure portlets for cooperation
  Internationalization
  Struts and JavaServer Faces integration
  Tracing
  Programming guidelines
  Known issues
  Cooperative portlet reference
   JSP tags used by source portlets
   WSDL reference
 Collaborative Services API
  Deploying Collaborative Services samples
 Reference
  Detailed descriptions of the Portlet API tags
  Detailed descriptions of the Struts WML tags
  Portlet DTD tag reference
  Markup guide
 Additional resources for development
 Troubleshooting portlet development
Transforming content
 Translating
 Transcoding
  What is Transcoding Technology
  Solutions
  Resources
  Using XML configuration
   XML configuration commands
   Copying and modifying resources
   Registering new resources
   Copying resource definitions to another machine
   XML configuration command arguments
  Preference settings
  Adapting portlets
   Configure a portlet to use transcoding
   Using stylesheets with a portlet
   Using annotation with a portlet
  Transcoding plugins
   Image plugin
   Text plugin
   Fragmentation plugin
   HTML DOM generator plugin
   Annotation plugin
  Message logging and tracing
Troubleshooting
 Searching product documentation for a solution
  Migration
  WebSphere Portal installation
  Clusters
  Access to the portal
  Databases
  LDAP and security
  Lotus companion products
  Collaboration Center
  Personalization
  Document Manager and Productivity Components
  Administration
  The XML configuration interface
  Business process integration
  Portal design
  Portlet development
  Portlets
  Web Clipping portlet
  Application Portlet Builder
 Searching IBM support Web site for a solution
 Contact support
  Install troubleshooting worksheet
  Configuration troubleshooting worksheet
  Customization troubleshooting worksheet
  Runtime troubleshooting worksheet
  Programming troubleshooting worksheet
 Logging and tracing
  WebSphere Portal installation logs
  WebSphere Portal run-time logs
  WebSphere Application Server tracing and log files
  Member Manager tracing files
  WebSphere Portal system event logging
  Transcoding Technology logging and tracing
 Messages
  EJAPJ: Portal wp.ap.managepages Messages
  EJAPM: Portal wp.ap.managewebservices Messages
  EJAPS: Portal wp.ap.properties Messages
  EJPAB: Portal Common Administration Portlet Messages
  EJPAC: Appearance Administration Portlet Messages
  EJPAD: Client Administration Manager Portlet Messages
  EJPAE: Page Content Layout Administration Portlet Messages
  EJPAF: Portal Frequent Users Administration Portlet Messages
  EJPAG: Portal Import XML Administration Portlet Messages
  EJPAH: Portal Virtual Portal Administration Portlet Messages
  EJPAI: Portal Manage Log Administration Portlet Messages
  EJPAK: EJPAK0 Portlet Messages
  EJPAL: Portal Manage Principals Messages
  EJPAN: Markup Administration Manager Portlet Messages
  EJPAP: Global Settings Portlet Messages
  EJPAQ: Portal Portlet Manager Administration Portlet Messages
  EJPAR: Portal Portlet Wiring Administration Portlet Messages
  EJPAT: Edit Profile Portlet Messages
  EJPAU: Portal Page Locks Administration Portlet Messages
  EJPAW: Themes and Skins Manager Portlet Messages
  EJPAX: Manage Custom Unique Names Portlet Messages
  EJPAY: URL Mapping Portlet Messages
  EJPAZ: Credential Vault Messages
  EJPCA: Installation And Configuration Messages
  EJPDB: DataStore Messages
  EJPDD: Scheduler Command Messages
  EJPDE: Scheduler Ejb Messages
  EJPEC: Framework command messages
  EJPEE: WP portlet container messages
  EJPEF: Engine Composition Messages
  EJPEG: Engine Model Messages
  EJPEH: View Service Messages
  EJPEI: State Handling Messages
  EJPEJ: Engine Messages
  EJPFB: General Messages
  EJPFD: Services Messages
  EJPGE: Portal wp.portletservices.impl Messages
  EJPHB: Web Clipping Portlet Messages
  EJPIC: Portal Installation Messages
  EJPJB: Portal wp.search.admin Messages
  EJPKB: Property Broker Messages
  EJPMA: Migration Messages
  EJPPD: Portal wp.pe.cmd Messages
  EJPPE: Portal wp.pe.mgmt.api Messages
  EJPPF: Portal wp.pe.mgmt.impl Messages
  EJPPG: Portal wp.pe.rt.impl Messages
  EJPPH: Portal wp.pe.was.impl Messages
  EJPSB: Authorization Messages
  EJPSC: External Access Control Component Messages
  EJPSD: Authentication Service Messages
  EJPSE: Portal single sign-on preparation Messages
  EJPSJ: Portal VAULT SERVICE Messages
  EJPSK: Portal single sign-on Messages
  EJPSG: Portal PUMA Package Messages
  EJPTC: Dynamic Aggregation Command Messages
  EJPTE: Transformation Environment Messages
  EJPTG: Transient Page Launching Core Messages
  EJPTH: Transformation Messages
  EJPTI: Process Integration Messages
  EJPWB: WSRP Command Messages
  EJPWD: WSRP Consumer Messages
  EJPWF: WSRP Producer Provider Messages
  EJPWE: WSRP Producer Messages
  EJPWC: WSRP Messages
  EJPXA: XML Configuration Interface Messages
  EJPXB: XML Configuration Command Line Client Messages
  EJPXC: Portal Scripting messages (server)
  EJPXD: Portal Scripting messages (client)
  EJPXE: Portal Scripting messages (discovery services/ client and server)
  EJPYE: Struts Portlet Framework Messages
Additional resources
 Resources for learning
  Resources for planning
  Resources for installation
  Resources for administration
  Resources for development
 Member Manager database repository configuration
 Member Manager LDAP repository configuration
 Resources and support
 Directory structure
Glossary
Trademarks

 

WebSphere is a trademark of the IBM Corporation in the United States, other countries, or both.

 

IBM is a trademark of the IBM Corporation in the United States, other countries, or both.

 

Tivoli is a trademark of the IBM Corporation in the United States, other countries, or both.