Professional Documents
Culture Documents
SC19-3976-00
SC19-3976-00
Note Before using this information and the product that it supports, read the information in Notices and trademarks on page 9.
Copyright IBM Corporation 2001, 2012. US Government Users Restricted Rights Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
Table of Contents
Table of Contents
1. Introducing the Data Explorer Application Builder ................................................................ 1 1.1. Application Builder Terminology and Concepts ......................................................... 1 1.2. Getting Started with the Application Builder ............................................................. 3 1.3. Understanding how the Application Builder is Organized ............................................. 3 2. Using the Application Builder Administration Tool ............................................................... 5 2.1. Using the Administration Tool ................................................................................ 5 2.1.1. Viewing Information Pages .......................................................................... 5 2.1.2. Working with Configuration Pages ................................................................ 5 2.1.3. Using the Entity Explorer ............................................................................ 6 2.1.3.1. Exploring Entities ............................................................................ 7 2.1.3.2. Testing Entities ............................................................................... 7 2.2. Administrative Tasks Outside of the Administration Tool ............................................. 7 2.2.1. Configuring the Web Server ........................................................................ 8 2.3. Backing Up and Restoring the Application Builder and Application Content ................... 10 3. Configuring Stores ........................................................................................................ 11 4. Defining an Entity Model ............................................................................................... 13 4.1. Entity Model Organization ................................................................................... 13 4.2. Defining Stores .................................................................................................. 14 4.2.1. Defining a User Store ............................................................................... 14 4.2.2. Defining Data Explorer Engine Stores .......................................................... 14 4.2.2.1. Defining Collection Stores ............................................................... 15 4.2.2.2. Defining Federated Stores ............................................................... 16 4.2.3. Identifying Entities ................................................................................... 16 4.2.4. The Name Matcher ................................................................................... 17 4.3. Exploring and Troubleshooting an Entity Model ....................................................... 17 5. Building Applications .................................................................................................... 19 5.1. Defining Pages ................................................................................................... 19 5.2. Adding Widgets ................................................................................................. 19 5.3. Configuring Display Options ................................................................................ 25 6. Using the Application Builder Schema .............................................................................. 27 6.1. Application Builder Schema Reference ................................................................... 27 6.1.1. Elements ................................................................................................. 27 6.1.1.1. alias ............................................................................................ 27 6.1.1.2. association-definition ...................................................................... 28 6.1.1.3. classname ..................................................................................... 28 6.1.1.4. cluster-collection-store .................................................................... 28 6.1.1.5. collection-store .............................................................................. 29 6.1.1.6. cxo .............................................................................................. 29 6.1.1.7. directory-store ............................................................................... 29 6.1.1.8. entity-definition ............................................................................. 30 6.1.1.9. entity-model .................................................................................. 31 6.1.1.10. federated-store ............................................................................. 32 6.1.1.11. field ........................................................................................... 32 6.1.1.12. filter .......................................................................................... 32 6.1.1.13. link ............................................................................................ 33 6.1.1.14. name-matcher-configuration ........................................................... 33 6.1.1.15. stopword-list ............................................................................... 33 6.1.1.16. velocity-instance .......................................................................... 34 6.1.1.17. wordlist ...................................................................................... 34 A. Notices and Trademarks ................................................................................................ 35 A.1. Notices ............................................................................................................. 35
8.2-0
iii
Table of Contents
iv
8.2-0
Application Builder
Store
Entity
8.2-0
An Entity Type is a group identity for entity instances with the same business or logical function. The "Entity Type" determines the information that must be provided in an instance of an entity of that type. For example, data specific to a user entity may be login and password, first and last name, account entity ID mappings, and so on. Similarly, data specific to an account entity may be company name, contact name, phone number, purchased products, and so on. Entity Model The Entity Model is the definition of all internal components of the Application, including: Entities, Stores, Associations, Name Matching, Word Lists, and so on. Chapter 4, Defining an Entity Model describes the contents and organization of the entity "/> describes the contents and organization of the entity model. An association is an explicit mapping between one field in an item (entity, store, and so on) and another field in another entity. Associations are defined in the Entity Model. Fuzzy associations can also be created to help associate content that may not have explicitly defined values within the data. Fuzzy associations are resolved through the Name Matcher. The Name Matcher is used to configure the methods of resolution for multiple strings to a single entity definition. For example, the name matcher can be used to ensure that the strings "IBM", "I.B.M.", and "International Business Machines" are all resolved to the same entity. The name matcher can be configured to use word lists within the entity model in order to identify special cases such as stopwords or nullwords. An application page is a representation of all content that is related to the specified entity. Application pages present any specified widgets in the context of the specified entity. Types of application pages include Hub (index), Search, Entity, Home, and Space. The types of of application page and configuring them is discussed in the pages subsection of the Application chapter of this document. A backend is a an instance of the Data Explorer Engine that the Application Builder connects to. Backends are defined in the Entity model to serve federated and collection stores. A frontend is an instance of the Application Builder framework that users connect to in order to access the application. Multiple frontends can be created for the same application and are kept synchronized by a shared ZooKeeper group. ZooKeeper is a server that retains key/value pairs to provide consistent configuration data to the application builder. By default a single instance of ZooKeeper is defined for each installed Application Builder. In production environments a redundant ZooKeeper group should be configured to serve all frontends for your applications.
Association
Name Matcher
Application Page
backend
frontend
ZooKeeper
Note
Additional minor terms and concepts will be introduced when they are first referenced in this documentation.
8.2-0
8.2-0
that contains business data. The content of these repositories are usually indexed as a collection in the Data Explorer Engine, but in some cases it may be appropriate to federate the content directly from the original repository.
8.2-0
Note
Application Builder URLs are case sensitive. You will need to log in as the bootstrap-user user with an initial password of password to first access the administration tool. This username and password will change as you modify your authentication model when modifying the web server configuration and defining the user-store. When you first access the administrative tool, you see an empty sample application.
8.2-0
<?xml version="1.0" encoding="UTF-8"?> <cxo> <entity-definition default-searchable="false" identifier="@hash" name="user" store-name="user-store"> <alias chain="" name="natural_associations" recommendable="false"/> </entity-definition> <bootstrap-user-store name="user-store" /> </cxo>
Note
Be very careful when changing something that affects the administrative or login rights of an Application Builder administrative user. Incorrectly modifying these options could limit your ability to continue working on the application. External content (Widgets, Pages, Display Options) is managed in individual pages. Each individual page contains a YAML representation (space delimited key/value pairs and hashes) of that item. After editing the item, click Save Changes to save your modifications. Modifications are checked to ensure key/value pair validity before being automatically uploaded to ZooKeeper and become effective immediately. The following is an example of the YAML representation of a page:
home: index: - name: left_column size: 3 widgets: - name: center_column size: 6 widgets: - name: right_column size: 3 widgets:
In this example, home: is the initial key, which has a single value of index:. This index: value contains a hash of key/value pairs. Notice how the sub components are indented using spaces, all indentations must use the same number of spaces. If the number of spaces is inconsistent, the YAML becomes invalid (you can't use 2 spaces for some indent levels and 1 for others). The previous sample code represents the initial configuration of an application's home page. This page has a single view point of "index", which has three defined columns, each of which contain no widgets. You will use this kind of structure to organize all of your externally facing configuration settings.
Note
There is no local instance of the application configuration information. All values are stored in a ZooKeeper server. The local representation of this content that is contained the config directory of your Application Builder installation is only used to bootstrap ZooKeeper. These files are not updated when changes are made to the content that is stored in a ZooKeeper server.
8.2-0
tool. The main Entity Explorer page displays a list of stores and entity types. Mousing over a store name highlights all of the entity types contained in that store. Mousing over an entity type highlight's the store where it resides. Both stores and entity types can be selected to display more information.
8.2-0
the application style. The following subsections describe web server configuration, creating custom base widgets, and modifying the application style. System startup and shutdown is described in the data explorer installation guide.
Note
Before modifying the configuration of your WebSphere server, the server must first be shut down. You can shut down the server using the server stop AppBuilder command from the wlp/bin directory of your Application Builder installation. The server can be restarted using the server start AppBuilder command. You can adjust the configuration of your Application Builder WLP server by editing the server.xml file in the AppBuilder/wlp/usr/servers/AppBuilder directory of your installation. The following default configuration is provided when you install the Application Builder.
<server description="AppBuilder"> <!-- Enable features --> <featureManager> <feature>servlet-3.0</feature> <feature>appSecurity-1.0</feature> </featureManager> <httpEndpoint id="defaultHttpEndpoint" host="*" httpPort="9082" httpsPort="9088" /> <!-- Hard-coded username and password to allow initial configuration --> <quickStartSecurity userName="bootstrap-user" userPassword="password" /> <!-- Sample LDAP configuration --> <!-<ldapRegistry id="ldap" realm="SampleLdapADRealm" host="sample.ibm.com" port="389" ignoreCase="true" baseDN="CN=Users,DC=sample,DC=ibm,DC=com" bindDN="sample@sample.ibm.com" bindPassword="PASSWORD" userFilter="(sampleUserName=%v)" userIdMap="user:sampleUserName" ldapType="Microsoft Active Directory"> </ldapRegistry> --> <application type="war" id="AppBuilder" name="AppBuilder" location="${server.config.dir}/ apps/AppBuilder"> <application-bnd> <security-role name="AllAuthenticated"> <special-subject type="ALL_AUTHENTICATED_USERS" /> </security-role> </application-bnd> </application> <applicationMonitor updateTrigger="disabled"/> </server>
8.2-0
This default configuration file describes the basic web server configuration (http port, application information, and so on), and some authentication methods. The bootstrap-user is defined by the line <quickStartSecurity userName="bootstrapuser" userPassword="password" />, which hard codes the bootstrap-user into the authentication mechanism of the WebSphere server. WebSphere passes this user into the Application Builder as authenticated. This means you can access the Application Builder without pre-configuring your authentication model in WebSphere. If you do not wish to attach an authentication model to your development environment, you can replace the quickStartSecurity node with a WebSphere BasicRegistry node. This node lets multiple users to be configured directly into the WebSphere server configuration. The standard BasicRegistry node is written as follows:
<basicRegistry id="basic" realm="customRealm"> <user name="bootstrap-user" password="password" /> <user name="user-1" password="password" /> <user name="user-2" password="password" /> . . . </basicRegistry>
Where each user node is a defined username and password. When a BasicRegistry is defined, any of the users listed in that node can be logged into the Application Builder. If you have not modified your Entity Model and Display, you should retain the bootstrap-user so that you will be able to initially access the administration interface. Additionally, as shown below, a sample ldapRegistry node is provided in the server.xml file. This node contains all the attributes that WebSphere needs to connect to an LDAP server.
<ldapRegistry id="ldap" realm="SampleLdapADRealm" host="sample.ibm.com" port="389" ignoreCase="true" baseDN="CN=Users,DC=sample,DC=ibm,DC=com" bindDN="sample@sample.ibm.com" bindPassword="PASSWORD" userFilter="(sampleUserName=%v)" userIdMap="user:sampleUserName" ldapType="Microsoft Active Directory"> </ldapRegistry>
Advanced configuration options including https and custom LDAP configuration configuration can be achieved by editing this file. You can find detailed WLP server configuration information in the WebSphere 8.5 documentation at the following URL: http://pic.dhe.ibm.com/infocenter/wasinfo/v8r5/index.jsp?topic=/com.ibm.websphere.wlp.doc/ topics/thread_twlp_devenv.html
8.2-0
2.3. Backing Up and Restoring the Application Builder and Application Content
The Application Builder stores all custom configuration information in a ZooKeeper database. Backing up the ZooKeeper database is described in the ZooKeeper documentation that is provided in the zookeeper-3.4.2/docs folder of your Application Builder installation. Additionally, you must backup server.xml file to retain any changes to the WebSphere configuration that you might have made.
10
8.2-0
8.2-0
11
12
8.2-0
</entity-model>
8.2-0
13
Note
This pseudo-code is provided to give you an overview of a typical entity mode. It is not a valid implementation and should only be used for reference.
The example above can be copied and used in your entity model. It connects to the intranet.example.com LDAP server on port 389. You should modify this example to mirror your LDAP server settings. The node itself should be a child of the entity-modelnode. See the schema reference for additional information on the attributes of this node.
14
8.2-0
<velocity-instance password="password" url="http://example.com/vivisimo/cgi-bin/velocity?v.app=api-soap&wsdl=1&usetypes=true" username="administrator"> <serves name="collection1"/> <serves name="collection2"/> <serves name="federation1"/> <serves name="federation2"/> </velocity-instance>
Where the attributes of the velocity-instance node are defined as follows: password - the password of the administrative username that is used to access this Data Explorer Engine installation url - the URL to the SOAP api for this Data Explorer Engine. This will take the form of the path to your Data Explorer Engine (including virtual directory) followed by: cgi-bin/velocity?v.app=api-soap&wsdl=1&use-types=true username - the administrative user for this installation of the Data Explorer Engine. Each velocity-instance node must list any stores that it serves. These stores are listed individually in serves nodes with a name attribute that corresponds to a defined collection or federated store. For example:
<serves name="collection1" />
Each velocity-instance node should be a child of the entity-modelnode. After identifying your Data Explorer Engine installations, you should define all of the served stores.
Where the attributes of the collection-store node are defined as follows: activity-collection - identifies whether this collection is a collection that stores activity feed information. An activity collection stores any activities that occurs on collections which have the monitor-activities attribute set to true. collection-name - the collection name that this store equates to, which is the same as the name attribute of the serves node that identifies the Data Explorer Engine installation which serves the collection. monitor-activities - if changes to this collection are to be stored as activities in the activity-collection
8.2-0
15
name - an optional name to be used by the Application Builder for this collection store. rights - any rights considerations that need to be enforced for this collection store. Once a collection store has been defined, entities and their associations can be created that reference the store.
Where the name attribute is the internal name that will be used by an application, and the source-name attribute is the name of the federated source on the associated Data Explorer Engine installation - this is the same as the name attribute of the serves node that identifies the Data Explorer Engine installation which serves the federated source.
16
8.2-0
<association-definition name="association-name" to="entity"> <link from-field="from-link" fuzzy="boolean" to-field="to-link"/> </association-definition> <field external-name="field" name="mapped-to"/> <filter name="filter-name" value="filter-value"/> </entity-definition>
Entities may contain multiple aliases, associations, fields, and filters. Each entity must include an identifier, name, and store-name attribute. These attributes describe the store that the entity comes from, how it can be identified in that store, and how it is identified to other entity definitions for associations and to the application itself. The attributes of these nodes are described in full in the schema chapter of this document. Once your entity model is complete, you will be able to use the defined entities to deliver the application by creating pages and widgets that deliver your business data with a 360 degree view.
8.2-0
17
18
8.2-0
The columns are defined in order and will be displayed on the page from left to right. Each column must be given a name and a size. The size of each column must be between 1 and 12. Each page has a total display width of 12 with additional columns being displayed below as the space is filled. A column contains a list of widgets to be displayed from top to bottom in the column referenced by widget ID.
the following options are also available to all widgets: display_name: ajax: help: text used as title of widget enables asynchronous loading of widget text to display when user clicks on help icon
8.2-0
19
The following widget types can be used as the base for creating new widgets. Included with each is a sample YAML configuration that could be used to set up a widget. activity_feed delivers the latest activities from the information sources for the page
--based_on: activity_feed display_name: Sample Activity Feed supports: - home ajax: true # The associations that populate the activities associations: - followees - salesforce_user - salesforce_accounts # Default text to display in search box placeholder: Text # Maximum length of change text to display max_changes_value_length: 50
clusters
entity_chart
20
8.2-0
# http://api.highcharts.com/highcharts#plotOptions plotOptions: column: stacking: normal # Data to display in chart series: # http://api.highcharts.com/highcharts#series.name - name: Series Name facet_id: 'series1' faceting: |
@subject.association.faceted_by(xpath("$type").with_facet_id(facet_id)).facet # http://api.highcharts.com/highcharts#series options: date_format: '%b %y' # http://api.highcharts.com/highcharts#series.name - name: Series Name facet_id: 'series2' faceting: |
entity_information
entity_list
8.2-0
21
entity_lookup
searches entities
--based_on: entity_lookup display_name: Sample Lookup supports: - home # Default text to display in search box placeholder: text # Number of entities to display entity_count: 5 # Text to display when no entities are returned no_entities_message: No entities related to lookup # Fields to search lookup_fields: - field1 - field2 # Entity types to search lookup_entity_types: - entity type 1 - entity type 2 # Associations to search entity_associations: entity type 1: - association1
22
8.2-0
entity_table
entity_table_filter
flip
stores multiple widgets and allows user to flip between them by clicking an icon
--based_on: flip display_name: Sample Flip supports: - home ajax: true # List of widgets contained in the flip widget widgets: - widget_id_1 - widget_id_2
i_frame
8.2-0
23
refinement
search_results
shared_content
spotlight
24
8.2-0
# Ruby code to display promoted entity's image image: @entity["image"].first # Ruby code to display promoted entity's title title: @entity.title # List of information to display able promoted entity info: # Ruby code to display promoted entity's information - mail_to @entity['mail'].first
twitter_search
useful_links
8.2-0
25
application-wide settings that do not pertain to a specific feature. settings pertaining to the search page and widget. settings pertaining to the Shared Spaces feature.
An example display option for the entity type product is show below.
--display_name: Product fields: - external_name: rel-date display_name: Release Date image_url: "@entity.image_url.first"
26
8.2-0
Note
The schema that is presented in this section is under development, and may change in the future. It has not been refined to remove redundancies, and is a work in progress.
6.1.1. Elements
The following sections provide reference information for the elements that you may see/use in Application Builder XML entity definition files.
6.1.1.1. alias
Name
alias Defines a convenient short NAME that can be used to refer to a CHAIN of association names within an ENTITY-DEFINITION Attributes name (Text required.) - A convenient NAME used to refer to a specified CHAIN. Most NAMEs are custom, ENEITY-DEFINITION-specific values, though the Application Builder uses a standard natural_associations NAME that is used to identify expected relationships between different ENTITY-DEFINITIONs. Examples of natural associations are account names or users within multiple ENTITY-DEFINITIONS that share a common data source. chain (Text required.) - Identifies the CHAIN of ASSOCIATION-DEFINITIONs that an ALIAS defines a short NAME for. Specifying an empty string for this field indicates that no chain is associated with the specified NAME. Specifying an empty CHAIN is only used to set the standard natural_associations chain to null, indicating that no natural_associations are available for the current ENTITY-DEFINITION. recommendable (Boolean ) - Determines whether the Application Builder recommender service should build recommendations for this ALIAS
8.2-0
27
6.1.1.2. association-definition
Name
association-definition Defines one or more LINK relationships between two ENTITY-DEFINITION elements. If an ASSOCIATION-DEFINITION does not contain any LINK elements, a LINK is established to every entity in the target ENTITY-DEFINITION. Attributes link : (Zero or more) - The mapping of fields from one ENTITY-DEFINITION that defines its association to another ENTITY-DEFINITION name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element to (Text required.) - Specifies the NAME of another ENTITY-DEFINITION that this ASSOCIATIONDEFINITION defines an association TO sortby (Text ) - Defines an XPath expression that is used to sort on the NAMEd field. This value is used to standardize the order in which values are retrieved from the source of the ENTITY-DEFINITION that is identified in the TO attribute. Children Choose any number of these in any order. link : (Zero or more) - The mapping of fields from one ENTITY-DEFINITION that defines its association to another ENTITY-DEFINITION
6.1.1.3. classname
Name
classname Identifies a Java class that will be used to match names in the current NAME-MATCHER-CONFIGURATION Attributes name (Text required.) - Identities the NAME of a Java class to use for name matching
6.1.1.4. cluster-collection-store
Name
cluster-collection-store Attributes activity-collection (Boolean required.) - Identifies whether the search collection that is specified by the COLLECTION-NAME attribute is used to store activity feed data collection-name (Text required.) - Specifies the actual name of the associated collection in a VELOCITY-INSTANCE monitor-activities (Boolean required.) - If "true", specifies that the search collection that is identified by the COLLECTION-NAME attribute will be actively monitored for updates and those changes reported in the activity feed
28
8.2-0
name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element base-collection - The name of the search collection template that was used to create the distributed collection n-shards (xs:integer ) - The number of physical storage allocation units that are associated with this collection
6.1.1.5. collection-store
Name
collection-store Attributes activity-collection (Boolean ) - Identifies whether the search collection that is specified by the COLLECTION-NAME attribute is used to store activity feed data collection-name (Text required.) - Specifies the actual name of the associated collection in a VELOCITY-INSTANCE monitor-activities (Boolean ) - If "true", specifies that the search collection that is identified by the COLLECTION-NAME attribute will be actively monitored for updates and those changes reported in the activity feed name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element rights - The mechanism used to retrieve user-specific group access rights that are used when searching the collection that is associated with a COLLECTION-STORE. Possible values are: the name of the field from which group information will be retrieved Example: rights="memberOf" a period-separated set of ASSOCIATION-DEFINITION NAMEs, terminated by a period that is followed by the name of the field from which group information will be retrieved Example: rights="sharepoint_rights.rights" "groups" - uses the group-base-dn, group-search-filter, and group-search-selector attributes of the DIRECTORY-STORE element to perform a recursive query and retrieve group information
6.1.1.6. cxo
Name
cxo A legacy name for the primary parent element in an Application Builder entity model.
6.1.1.7. directory-store
Name
directory-store An element whose attributes provide the information necessary to contact and retrieve user and group information from an LDAP server
8.2-0
29
Attributes base-dn (Text required.) - The distinguished name of the associated DIRECTORY-STORE to search for entities. When searching for groups, the value of the GROUP-BASE-DN is used. connection-name (Text required.) - The login of a user with sufficient privileges to read from the associated DIRECTORY-STORE connection-password (Text required.) - The plaintext password of the CONNECTION-NAME user connection-url (URI required.) - The URL of the associated DIRECTORY-STORE group-base-dn (Text ) - The subtree of the associated DIRECTORY-STORE from which desired GROUP-NAME-SELECTOR (direct and indirect group) values will be read. A user's group must have the GROUP-BASE-DN, but the user still must have the BASE-DN. group-name-selector (Text ) - Specifies the attribute of a user that will be used in conjunction with the value of the GROUP-SEARCH-FILTER attribute to determine group membership. The value of this attribute replaces the value of "{0}" for the currently logged-in user in the GROUP-SEARCH-FILTER string. Indirect groups of the original user (groups that matching groups belong to), are resolved using the same mechanism. group-search-filter (Text ) - Filtering criteria used to select group values using the GROUP-NAMESELECTOR name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element rights-default-acls (Text ) - Default group Access Control List (ACL) entries that are provided by the associated DIRECTORY-STORE rights-domain-prefix (Text ) - The Active Directory/LDAP domain prefix for users in the associated DIRECTORY-STORE user-search-filter (Text required.) - Filtering criteria used to select users. The value of this attribute replaces the value of "{0}" in the specified string with the name of the currently logged-in user.
6.1.1.8. entity-definition
Name
entity-definition The abstraction of a type of fundamental data used by the Application Builder and various alternate ways to refer to that data Attributes default-searchable (Boolean required.) - Determines whether the NAMEd entity is searchable by default ("true") or not ("false"). If you do not explicitly specify an entity definition that you want to search, all entity types that have this attribute set to "true" will be searched. identifier (Any of: @hash, sAMAccountName required.) - Used to locate and retrieve data from the search collection specified in the STORE-NAME attribute, the value of this attribute is either the external system field from which instances of entity data are retrieved, or a custom "@hash" keyword. An example of the former is the value "sAMAccountName", which would be used to locate user informa-
30
8.2-0
tion in a DIRECTORY-STORE. If the "@hash" keyword is specified, data about each instance of an entity is retrieved using an internally-generated hash value based on the unique identifier (vse-key) for each document in the associated collection. name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element store-name (Text required.) - The name of a DIRECTORY-STORE, COLLECTION-STORE, or FEDERATED-STORE in which values associated with this ENTITY-DEFINITION are stored Children Choose any number of these in any order. alias : (Zero or more) - Defines a convenient short NAME that can be used to refer to a CHAIN of association names within an ENTITY-DEFINITION association-definition : (Zero or more) - Defines one or more LINK relationships between two ENTITY-DEFINITION elements. If an ASSOCIATION-DEFINITION does not contain any LINK elements, a LINK is established to every entity in the target ENTITY-DEFINITION. field : (Zero or more) - A NAMEd property of an ENTITY-DEFINITION that is mapped to the named property EXTERNAL-NAME in another data store filter : (Zero or more) - Identifies the NAME of a field in the associated ENTITY-DEFINITION and a default filter VALUE to be used when requesting data from the associated ENTITY-DEFINITION
6.1.1.9. entity-model
Name
entity-model The top-level element in an XML resource or entity configuration file for Application Builder Children Choose 1 to unbounded of these in any order. cluster-collection-store : (At least 1 ) - An element whose attributes provide the information necessary to identify and use a Velocity search collection whose storage may be distributed across multiple systems collection-store : (At least 1 ) - An element whose attributes provide the information necessary to identify and use a Velocity search collection directory-store : (At least 1 ) - An element whose attributes provide the information necessary to contact and retrieve user and group information from an LDAP server entity-definition : (At least 1 ) - The abstraction of a type of fundamental data used by the Application Builder and various alternate ways to refer to that data federated-store : (At least 1 ) - An element whose attributes provide the information necessary to identify and use values that are retrieved from an external search site or collection name-matcher-configuration : (At least 1 ) - Configuration values for the name-matcher to use when trying to resolve names within the search collection that is identified by NAME
Copyright IBM Corp. 2001,2012 8.2-0 31
velocity-instance : (At least 1 ) - Identifies a Velocity server that serves search collections which are used by the application that you are developing wordlist : (At least 1 ) - Specifies a set of WORD elements that are referred to by this element's NAME. Different sets of WORDs are used in different ways.
6.1.1.10. federated-store
Name
federated-store An element whose attributes provide the information necessary to identify and use values that are retrieved from an external search site or collection Attributes name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element source-name (Text required.) - The name of the back-end source that is used to provide federated search results
6.1.1.11. field
Name
field A NAMEd property of an ENTITY-DEFINITION that is mapped to the named property EXTERNAL-NAME in another data store Attributes name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element external-name (Text required.) - The name of the associated FIELD in the other data store name-matcher-configuration (Text ) - The NAME of a NAME-MATCHER-CONFIGURATION element that defines the classes that should be used when mapping between the local NAME and remote EXTERNAL-NAME fields, and the NULLWORD-LIST and STOPWORD-LIST lists used during name matching cluster-weight (xs:integer ) - The importance to assign to the NAMEd field when building clusters for the associated ENTITY-DEFINITION
6.1.1.12. filter
Name
filter Identifies the NAME of a field in the associated ENTITY-DEFINITION and a default filter VALUE to be used when requesting data from the associated ENTITY-DEFINITION Attributes name (Text required.) - Specifies the NAME of the content element to be used in the FILTER value (Text required.) - Specifies the VALUE that should be used when requesting data from an associated ENTITY-DEFINITION
32
8.2-0
6.1.1.13. link
Name
link The mapping of fields from one ENTITY-DEFINITION that defines its association to another ENTITY-DEFINITION Attributes to-field (Text required.) - The field in the target ENTITY-DEFINITION that is linked to by the FROMFIELD attribute in the source ENTITY-DEFINITION from-field (Text required.) - The field in the source ENTITY-DEFINITION that is linked to the TOFIELD in the target ENTITY-DEFINITION fuzzy (Boolean ) - Specifies whether a match must be exact ("false") or whether the name-matcher can be used to identify potential matches ("true")
6.1.1.14. name-matcher-configuration
Name
name-matcher-configuration Configuration values for the name-matcher to use when trying to resolve names within the search collection that is identified by NAME Attributes acronym-length (xs:integer ) - The maximum length of a string that should be considered as a possible acronym in addition to being evaluated as an actual name name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element nullword-list (Text ) - The name of a WORDLIST that contains WORD elements that should be dropped from an input list when examining the elements in that list for possible name matches Children Choose any number of these in any order. classname : (Zero or more) - Identifies a Java class that will be used to match names in the current NAME-MATCHER-CONFIGURATION stopword-list : (Zero or more) - An element whose NAME attribute identifies a WORDLIST that is which are used during name matching
6.1.1.15. stopword-list
Name
stopword-list An element whose NAME attribute identifies a WORDLIST that is which are used during name matching Attributes name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element
8.2-0
33
6.1.1.16. velocity-instance
Name
velocity-instance Identifies a Velocity server that serves search collections which are used by the application that you are developing Attributes password (Text required.) - The plaintext password that is associated with the specified USER-NAME url (URI required.) - The URL of the WSDL for a Velocity instance username (Text required.) - An administrative user of this VELOCITY-INSTANCE Children Use these in the listed order. The sequence may repeat 1 to unbounded times. serves : (At least 1 ) - An empty element whose NAME attribute identifies a search collection that is available from a VELOCITY-INSTANCE
6.1.1.17. wordlist
Name
wordlist Specifies a set of WORD elements that are referred to by this element's NAME. Different sets of WORDs are used in different ways. Attributes name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element Children Use these in the listed order. The sequence may repeat 0 to unbounded times. word : (Zero or more) - An element whose NAME attribute identifies a word in a WORDLIST Attributes: name (Text required.) - An attribute whose value provides a string that is used to identify or provide content for an associated element
34
8.2-0
A.1. Notices
IBM may not offer the products, services, or features discussed in this document in other countries. Consult your local IBM representative for information on the products and services currently available in your area. Any reference to an IBM product, program, or service is not intended to state or imply that only that IBM product, program, or service may be used. Any functionally equivalent product, program, or service that does not infringe any IBM intellectual property right may be used instead. However, it is the user's responsibility to evaluate and verify the operation of any non-IBM product, program, or service. IBM may have patents or pending patent applications covering subject matter described in this document. The furnishing of this document does not grant you any license to these patents. You can send license inquiries, in writing, to:
IBM Director of Licensing IBM Corporation North Castle Drive Armonk, NY 10504-1785 U.S.A.
For license inquiries regarding double-byte character set (DBCS) information, contact the IBM Intellectual Property Department in your country or send inquiries, in writing, to:
Intellectual Property Licensing Legal and Intellectual Property Law IBM Japan Ltd. 1623-14, Shimotsuruma, Yamato-shi Kanagawa 242-8502 Japan
The following paragraph does not apply to the United Kingdom or any other country where such provisions are inconsistent with local law: INTERNATIONAL BUSINESS MACHINES CORPORATION PROVIDES THIS PUBLICATION "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Some states do not allow disclaimer of express or implied warranties in certain transactions, therefore, this statement may not apply to you. This information could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new editions of the publication. IBM may make improvements and/or changes in the product(s) and/or the program(s) described in this publication at any time without notice. Any references in this information to non-IBM Web sites are provided for convenience only and do not in any manner serve as an endorsement of those Web sites. The materials at those Web sites are not part of the materials for this IBM product and use of those Web sites is at your own risk. IBM may use or distribute any of the information you supply in any way it believes appropriate without incurring any obligation to you. Licensees of this program who wish to have information about it for the purpose of enabling: (i) the exchange of information between independently created programs and other
8.2-0
35
programs (including this one) and (ii) the mutual use of the information which has been exchanged, should contact:
IBM Corporation J46A/G4 555 Bailey Avenue San Jose, CA 95141-1003 U.S.A.
Such information may be available, subject to appropriate terms and conditions, including in some cases, payment of a fee. The licensed program described in this document and all licensed material available for it are provided by IBM under terms of the IBM Customer Agreement, IBM International Program License Agreement or any equivalent agreement between us. Any performance data contained herein was determined in a controlled environment. Therefore, the results obtained in other operating environments may vary significantly. Some measurements may have been made on development-level systems and there is no guarantee that these measurements will be the same on generally available systems. Furthermore, some measurements may have been estimated through extrapolation. Actual results may vary. Users of this document should verify the applicable data for their specific environment. Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. All statements regarding IBM's future direction or intent are subject to change or withdrawal without notice, and represent goals and objectives only. This information is for planning purposes only. The information herein is subject to change before the products described become available. This information contains examples of data and reports used in daily business operations. To illustrate them as completely as possible, the examples include the names of individuals, companies, brands, and products. All of these names are fictitious and any similarity to the names and addresses used by an actual business enterprise is entirely coincidental. COPYRIGHT LICENSE: This information contains sample application programs in source language, which illustrate programming techniques on various operating platforms. You may copy, modify, and distribute these sample programs in any form without payment to IBM, for the purposes of developing, using, marketing or distributing application programs conforming to the application programming interface for the operating platform for which the sample programs are written. These examples have not been thoroughly tested under all conditions. IBM, therefore, cannot guarantee or imply reliability, serviceability, or function of these programs. The sample programs are provided "AS IS", without warranty of any kind. IBM shall not be liable for any damages arising out of your use of the sample programs. Each copy or any portion of these sample programs or any derivative work, must include a copyright notice as follows: (your company name) (year). Portions of this code are derived from IBM Corp. Sample Programs. Copyright IBM Corp. _enter the year or years_. All rights reserved. If you are viewing this information softcopy, the photographs and color illustrations may not appear.
36
8.2-0
A.2. Trademarks
IBM, the IBM logo, and ibm.com are trademarks or registered trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at http:// www.ibm.com/legal/us/en/copytrade.shtml. The following terms are trademarks or registered trademarks of other companies: Adobe is a registered trademark of Adobe Systems Incorporated in the United States, and/or other countries. Intel and Itanium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. Microsoft, Windows and Windows NT are trademarks of Microsoft Corporation in the United States, other countries, or both. UNIX is a registered trademark of The Open Group in the United States and other countries. Java and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle and/or its affiliates. The United States Postal Service owns the following trademarks: CASS, CASS Certified, DPV, LACSLink, ZIP, ZIP + 4, ZIP Code, Post Office, Postal Service, USPS and United States Postal Service. IBM Corporation is a non-exclusive DPV and LACSLink licensee of the United States Postal Service. Other company, product or service names may be trademarks or service marks of others.
8.2-0
37
38
8.2-0
Printed in USA
SC19-3976-00