Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberUS20030004971 A1
Publication typeApplication
Application numberUS 09/896,924
Publication date2 Jan 2003
Filing date29 Jun 2001
Priority date29 Jun 2001
Also published asUS6915306, US7953766, US20070220055
Publication number09896924, 896924, US 2003/0004971 A1, US 2003/004971 A1, US 20030004971 A1, US 20030004971A1, US 2003004971 A1, US 2003004971A1, US-A1-20030004971, US-A1-2003004971, US2003/0004971A1, US2003/004971A1, US20030004971 A1, US20030004971A1, US2003004971 A1, US2003004971A1
InventorsWen Gong, Adam Grancell
Original AssigneeGong Wen G., Grancell Adam Scott
Export CitationBiBTeX, EndNote, RefMan
External Links: USPTO, USPTO Assignment, Espacenet
Automatic generation of data models and accompanying user interfaces
US 20030004971 A1
Abstract
Techniques to generate data models for an item master having a number of items. Each item is associated with a number of attributes and each attribute is associated with a set of values. In one method, the items in the item master are initially classified into a number of pagesets, with each pageset being defined by a unique combination of values for a first set of (classification) attributes. For each pageset, a second set of (selectable) attributes is determined to uniquely identify the items in the pageset. The selectable attributes may be selected from a list of candidate attributes, which may include mandatory attributes designated to be used as selectable attributes and optional attributes that may be selected for use. Data models are generated for each pageset based in part on the selectable attributes, and include a set of tables descriptive of the items in the pageset.
Images(11)
Previous page
Next page
Claims(28)
What is claimed is:
1. A computer program product for generating data models for an item master with a plurality of items, comprising a computer-usable medium having embodied therein computer-readable program codes for
classifying the items in the item master into a plurality of pagesets, wherein each item in the item master is associated with a plurality of attributes and each attribute is associated with a respective set of possible values, and wherein each pageset is defined by a unique combination of values for a first set of attributes;
determining a second set of attributes for each pageset, wherein the attributes in the second set are used to identify items in the associated pageset; and
generating data models for each pageset based in part on the associated second set of attributes.
2. The computer program product of claim 1, wherein the computer-usable medium is further embodied with computer-readable program codes for
receiving a first set of configuration variables, and
wherein the first set of attributes is specified in the first set of configuration variables.
3. The computer program product of claim 1, wherein the computer-usable medium is further embodied with computer-readable program codes for
validating data in the item master.
4. The computer program product of claim 3, wherein the computer-usable medium is further embodied with computer-readable program codes for
generating a first log file with errors resulting from the validating.
5. The computer program product of claim 1, wherein the data models includes a set of tables descriptive of the items in the pageset.
6. The computer program product of claim 5, wherein the data models for each pageset include
a plurality of features tables, one feature table for each attribute in the second set of attributes for the pageset, and
a configuration table indicative of valid and invalid configurations for the items in the pageset.
7. The computer program product of claim 6, wherein invalid configurations are represented in part by a plurality of types of exception messages.
8. The computer program product of claim 7, a first type of exception messages corresponds to attributes in the second set having one value.
9. The computer program product of claim 7, a second type of exception messages corresponds to a pair of attributes in the second set having mutually exclusive sets of values.
10. The computer program product of claim 1, wherein the computer-usable medium is further embodied with computer-readable program codes for storing the data models to a repository.
11. The computer program product of claim 1, wherein the computer-usable medium is further embodied with computer-readable program codes for
generating output files for the plurality of pagesets based on the generated data models.
12. The computer program product of claim 11, wherein the output files include
a plurality of pagesets files, one for each of the plurality of pagesets, each pageset file including data for the associate pageset, and
a contents list file including data non-specific to the pagesets.
13. The computer program product of claim 11, wherein the output files are provided as XML documents.
14. The computer program product of claim 11, wherein the output files are provided as HTML files.
15. The computer program product of claim 1, wherein the second set of attributes for each pageset includes a sufficient number of attributes such that the items in the pageset are uniquely identified by their values for the attributes included in the second set.
16. The computer program product of claim 1, wherein the second set of attributes for each pageset includes a minimum number of attributes such that the items in the pageset are uniquely identified by their values for the attributes included in the second set.
17. The computer program product of claim 1, wherein the attributes in the second set are selected from among a plurality of candidate attributes.
18. The computer program product of claim 17, wherein the plurality of candidate attributes include one or more mandatory attributes designated to be included in the second set.
19. The computer program product of claim 17, wherein the plurality of candidate attribute includes one or more optional attributes selectable for inclusion in the second set.
20. The computer program product of claim 19, wherein the one or more optional attributes are provided in an ordered list, and each optional attribute is considered for inclusion in the second set based on its order in the ordered list.
21. A computer program product for forming a list of attributes for identifying a plurality of items in a pageset, comprising a computer-usable medium having embodied therein computer-readable program codes for
receiving the pageset of items, wherein each item is defined by a unique combination of values for a plurality of attributes and each attribute is associated with a respective set of possible values;
selecting an attribute not yet considered for identifying items in the pageset;
determining whether the selected attribute is useful for identifying items in the pageset;
including the selected attribute in the list if the attribute is useful for identifying items in the pageset; and
repeating the selecting, determining, and including for each of one or more additional attributes until a sufficient number of attributes is included in the list such that the items in the pageset are uniquely identified by their values for the attributes in the list.
22. The computer program product of claim 21, wherein attributes to be considered for identifying items are provided in an ordered list, and wherein the attributes in the ordered list are selected for consideration based on their order in the ordered list.
23. The computer program product of claim 21, wherein attributes to be considered for identifying items are attributes common for all items.
24. The computer program product of claim 23, wherein each item in the pageset includes a combination of valid values for the common attributes.
25. The computer program product of claim 21, wherein the selected attribute is deemed as useful for identifying items if more items in the pageset may be uniquely identified with the selected attribute.
26. A computer program product for forming a list of attributes for identifying a plurality of items in a pageset, comprising a computer-usable medium having embodied therein computer-readable program codes for
receiving the pageset of items, wherein each item is defined by a unique combination of values for a plurality of attributes and each attribute is associated with a respective set of possible values;
selecting an attribute not yet considered for identifying items in the pageset;
including the selected attribute in the list;
determining whether the list of attributes is sufficient to uniquely identify the items in the pageset; and
repeating the selecting, including, and determining for each of one or more additional attributes until a sufficient number of attributes is included in the list such that the items in the pageset are uniquely identified by their values for the attributes in the list.
27. The computer program product of claim 26, wherein the computer-usable medium is further embodied with computer-readable program codes for
determining whether the selected attribute is useful for identifying items; and
removing the selected attribute from the list if the attribute is not useful for identifying items.
28. In a computer system, a method for generating data models for an item master with a plurality of items, comprising:
classifying the items in the item master into a plurality of pagesets, wherein each item in the item master is associated with a plurality of attributes and each attribute is associated with a respective set of possible values, and wherein each pageset is defined by a unique combination of values for a first set of attributes;
determining a second set of attributes for each pageset, wherein the attributes in the second set are used to identify items in the associated pageset; and
generating data models for each pageset based in part on the associated second set of attributes, wherein the data models includes a set of tables descriptive of items in the pageset.
Description
    BACKGROUND OF THE INVENTION
  • [0001]
    The present invention relates generally to computer processing, and more particularly to techniques for generating data models and user interfaces for catalog-type applications.
  • [0002]
    For some business enterprises, a large number of products or items may need to be organized and categorized for presentation in a clear and logical manner, such as with a catalog. For example, a retailer or a distributor may carry a large number of items in its inventory. These items may then be categorized into a number of groups (e.g., hundreds or thousands of groups) of related items. Each group may include one or more items and may be represented with a “pageset”.
  • [0003]
    Catalog-type applications such as the one described above are typically characterized by a large number of relatively simple items. These items may be associated with various attributes used to identify and describe the items. If the items can be sufficiently described and uniquely identified based solely on their attribute values, then the attributes may be used to classify the items into groups and to further identify the items in each group.
  • [0004]
    Each group of items may be represented with “data models” that describe the items in the group. These data models are typically of a particular defined format or schema and include sufficient information such that they may be used to generate user interface (UI) elements, such as frames or screens for a catalog. Items in each group may then be clearly and logically present via these UI elements. For catalog-type applications, the data models tend to be similar from group to group (i.e., pageset to pageset).
  • [0005]
    Catalog-type applications tend to be large, with many items, and the task of organizing and classifying the items becomes more challenging as the number of items increases. However, catalog-type applications also tend to be repetitive, which affords the use of similar data models for representing the groups of items. Techniques that can be used to automatically generate data models and user interfaces for catalog-type applications are thus highly desirable.
  • SUMMARY OF THE INVENTION
  • [0006]
    The invention provides techniques to automatically generate data models from an “item master” (e.g., a master table) that includes a number of items. A set of classification attributes is initially provided (e.g., by an administrator via a user interface screen or automatically generated) and used to classify the items in the item master into pagesets. Data models may then be automatically generated for each pageset based in part on a set of candidate attributes (which may also be provided by the administrator via the user interface screen or in a configuration file). The data models are thereafter used to generate user interface (UI) elements, which can present the items in each pageset in a clear and logical manner. Various implementations of the invention are possible, some of which are described below.
  • [0007]
    A specific embodiment of the invention provides a method for generating data models for an item master having a number of items. Each item in the item master is associated with a number of attributes and each attribute is associated with a respective set of possible values. In accordance with the method, the items in the item master are initially classified into a number of pagesets. Each pageset is defined by a unique combination of values for a first set of attributes (referred to as classification attributes). A second set of attributes (referred to as selectable attributes) is then determined for each pageset, with the selectable attributes being used to uniquely identify the items in the pageset. Data models are then generated for each pageset based in part on the selectable attributes. In one implementation, the data models include a set of tables descriptive of the items in the pageset.
  • [0008]
    The classification attributes may be specified (e.g., by an administrator) via configuration variables. The selectable attributes may be selected from a list of candidate attributes, which may include mandatory and optional attributes. Mandatory attributes are designated to be used as selectable attributes. Optional attributes may be specified in an ordered list and may be selected for use as selectable attributes based on their order in the list. Each pageset includes a sufficient (e.g., minimum) number of attributes such that the items in the pageset are uniquely identified by their selectable attribute values.
  • [0009]
    The data models for each pageset may include a number of features tables and configuration tables. One feature table is provided for each selectable attribute and includes a mapping of codes to descriptions corresponding to all possible attribute values. The configuration tables identify valid and invalid configurations for the pageset. Invalid configurations may be associated with a number of types of exception messages.
  • [0010]
    Output files (e.g., UI elements) are generated for the pagesets based on the data models. These output files may include input files for selectable attributes and results files for other attributes associated with items in the pageset. A contents list file is also provided and includes application-specific (as oppose to pageset-specific) data used to provide a navigation mechanism for the generated pagesets. The output files may be provided as XML documents, HTML files, or in some other format.
  • [0011]
    Prior to generating the data models, the item master and/or configuration variables may be validated, and error messages may be generated (and provided in a log file) for errors resulting from the validation process. The error messages may be used to “clean up” the item master and/or configuration variables, and the validation process may be iterated any number of times until valid data is obtained.
  • [0012]
    Another specific embodiment of the invention provides a method for forming a list of attributes for identifying items in a pageset. In accordance with the method, an attribute not yet considered for identifying the items in the pageset is initially selected. A determination is then made whether the selected attribute is useful for identifying the items in the pageset. If the attribute is useful, then it is included in the list. One or more additional attributes are then evaluated in similar manner, one attribute at a time, until a sufficient number of attributes is included in the list such that the items in the pageset are uniquely identified by their values for the attributes in the list. In one embodiment, only attributes that are common for all items in the pageset are considered for evaluation.
  • [0013]
    The invention further provides other methods, computer program products, and systems capable of implementing various aspects, embodiments, and features of the invention, as described in further detail below.
  • [0014]
    The foregoing, together with other aspects of this invention, will become more apparent when referring to the following specification, claims, and accompanying drawings.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • [0015]
    [0015]FIG. 1 shows an example of an item master that lists the available items for an enterprise;
  • [0016]
    [0016]FIG. 2 is a diagram of an embodiment of a system capable of automatically generating data models for an item master;
  • [0017]
    [0017]FIG. 3 shows various tables that may be generated for configuration-type data models, in accordance with an embodiment of the invention;
  • [0018]
    [0018]FIG. 4A is a flow diagram of an embodiment of a process performed by a data builder module to generate a set of intermediate data files from the item master;
  • [0019]
    [0019]FIGS. 4B and 4C are flow diagrams of two embodiments of a process to determine a list of selectable attributes that may be used to uniquely identify the items in each pageset;
  • [0020]
    [0020]FIG. 5A is a flow diagram of an embodiment of a process performed by a model builder module to generate data models for each pageset;
  • [0021]
    [0021]FIG. 5B is a flow diagram of an embodiment of a process to examine the data for each pageset to generate exception messages for invalid configurations;
  • [0022]
    [0022]FIG. 6 shows an embodiment of a screen capable of presenting items in the item master using application files generated from the data models;
  • [0023]
    [0023]FIG. 7 is a diagram of another embodiment of a system capable of automatically generating data models using items stored in a repository; and
  • [0024]
    [0024]FIG. 8 is a block diagram of a computer system.
  • DESCRIPTION OF THE SPECIFIC EMBODIMENTS
  • [0025]
    [0025]FIG. 1 shows an example of an item master 100 that includes a collection of items (e.g., products) for an enterprise. Item master 100 (which may be implemented as a table) includes a number of rows and columns, with the specific number of rows and columns being dependent on the type and quantity of items being represented by the item master. The first row in the item master contains column headers, which identify the various attributes for the items in the table. Each subsequent row of the item master represents one record for one item. Each record includes information for the associated item, or more specifically the values for the attributes identified by the column headings. Thus, each column may be used to represent one specific attribute of the items, and each row may be used to represent one item.
  • [0026]
    In general, item master 100 may include information for any type of items that have attributes and which may be offered in a catalog context. For example, the items in the item master may represent products, services, solutions sets, employee relationship management (ERM)-based entities such as benefit documents, and other types of items. The item master may also be generated in various manners. In one embodiment, the item master may be generated manually (via key entry) and/or automatically (via a defined process) and is provided in a single data file. In another embodiment, the item master is generated from smaller tables in a relational database (i.e., a repository).
  • [0027]
    In the specific example shown in FIG. 1, item master 100 includes product data for a clothing enterprise. The first row in the item master contains column headers for the following attributes—ID, Gender, Type, Style, Size, Color, Price, and Item Number. Each subsequent row includes a record for one item and includes a set of values for the attributes identified by the column headers. For clarity, various aspects and embodiments of the invention are described for the example item master 100 shown in FIG. 1.
  • [0028]
    The item master may include a large listing for many items (e.g., hundreds or thousands of items). Presentation of the item master in the form shown in FIG. 1 may be cumbersome and unintelligible to an end-user (i.e., a user of a catalog application). For better presentation, the items may be classified into groups or “pagesets”. Each pageset may be defined by a specific set of attribute values and may be viewed as corresponding to a particular product family. Each pageset may include one or more items having a first set of attribute values that match those used to define the pageset. In fact, this first set of attribute values is used to categorize the items in the item master into their proper pagesets. The items in each pageset are also associated with a second set of attribute values that may be used to uniquely identify the items in the pageset. Since all items in a given pageset have the same set of values for the attributes in the first set, “uniqueness” for the items in the pageset is achieved if each item in the pageset has a unique set of values for the second set of attributes (i.e., the set of values for the attributes in the second set for each item in the pageset is different from the sets of attribute values for all other items in the pageset). Uniqueness is described in further detail below.
  • [0029]
    In an embodiment and as shown in FIG. 1, item master 100 is defined to includes an identifier (ID) column 110, one or more Classification columns 120, one or more Candidate Attribute columns 130, and one or more Data Attribute columns 140. ID column 110 lists an item-specific identifier (e.g., an ID, SKU, or row ID) for each item in the item master. This identifier may not be unique for all items in the item master, but is unique for all items in any given pageset. The unique values for the identifier may be used to uniquely identify the items in each pageset. Classification columns 120 correspond to attributes used to classify the items in the item master into pagesets. Each pageset is defined by a unique set of classification column values and includes one or more items having the same set of attribute values used to classify the pageset. Candidate Attribute columns 130 correspond to attributes that may be selected and used to uniquely identify items within each pageset. The names of the Classification and Candidate Attribute columns generally conform to defined naming conventions for tables. Data Attribute columns 140 correspond to additional attributes of the items in the item master. These data attributes are generally used to provide additional descriptive information for the items and but are typically not used to identify the items in the pageset.
  • [0030]
    In the example shown in FIG. 1, the Classification columns includes the Gender and Type columns, the Candidate Attribute columns includes the Style, Size, and Color columns, and the Data Attribute columns include the Description (Desc), Price, Item Number, and Image columns.
  • [0031]
    Various implementations may be used to classify items in an item master, generate data models, and further generate UI elements (i.e., run-time applications) based on the data models. In one family of implementations (referred to as “file-based”), preparation of the item master and specification of the attributes are mandatory steps (requiring interaction with an administrator, who may be tasked with building the catalog application), and run-time applications (e.g., in HTML files) are generated based on the data models (e.g., using XLST). In another family of implementations (referred to as “repository-based”), preparation of the item master and specification of the attributes are optional steps and the data models are generated and saved to a repository. A publisher module (described below) may then be used to process (and possibly modify) the data models to generate the run-time application. A specific design for each of these two families of implementations is described below in FIGS. 2 and 7, respectively. Various other implementations can also be contemplated and are within the scope of the invention.
  • [0032]
    [0032]FIG. 2 is a diagram of a system 200 capable of automatically generating data models for an item master, in accordance with an embodiment of the invention. System 200 is an example of a file-based design, and is implemented as a software program that takes an item master as input and can generate data-dependent components of a catalog-type application. In this embodiment, system 200 (which is also referred to as a “catalog builder”) includes a data builder module 210, a model builder module 220, and a file builder module 230.
  • [0033]
    Data builder module 210 receives the item master and a first set of configuration variables, validates the data in the item master, classifies items in the item master into pagesets, identifies which attributes are to used to identify the items in each pageset, and provides a set of intermediate data files. Data builder module 210 further provides status information indicative of the results of the processing on the item master and log information indicative of “uncleanliness” (i.e., errors) in the item master and/or errors in the configuration variables. The log information may be used to modify the configuration variables and/or the data in the item master (e.g., in an iterative manner) to provide valid data and variables.
  • [0034]
    Model builder module 220 receives the intermediate data files and a second set of configuration variables and generates data models. The data models may be provided in various forms such as, for example, XML documents, HTML files, formatted files or database tables that may be stored in a repository 250, and others. The XML documents contain pageset-specific data including the representation of the data models. A callout process may be inserted at a callout point in model builder module 220 and used to process and possibly modify (e.g., the XML version of) the data models before they are generated in final form, as described below.
  • [0035]
    File builder module 230 receives the data models (which may be provided in XML documents) and a third set of configuration variables and generates datadependent application files. These application files either include or may be used to generate UI elements suitable for representing a catalog of the item master, as described below.
  • [0036]
    Each module executes on one or more input files and provides a set of output files. In an embodiment, user preferences for the operation of each module, such as directions for interpreting the item master, output format options, directories of the input and output files, and so on, are provided as configuration variables. The configuration variables for all three modules may be provided in various forms. In one implementation, the configuration variables are provided in a (global) configuration file. In another implementation, the configuration variables may be entered via a user interface screen that may be provided (e.g., for each module) to assist an administrator in the generation of the data models and UI elements.
  • [0037]
    These modules and their inputs and outputs are described in further details below.
  • [0038]
    Model builder module 220 may be designed to generate data models of various schemas. The specific schema to be used for the data models is dependent on various factors such as the data architecture employed, the specific design of a runtime engine that will process the data models to generate the required outputs, and so on. Various types if data models may also be generated such as, for example, configuration type and list type. The particular data model type to be generated may be specified in the configuration variables. For clarity, a specific schema for configuration-type data models is described below.
  • [0039]
    [0039]FIG. 3 shows various tables that may be generated for configuration-type data models, in accordance with an embodiment of the invention. In this embodiment, the configuration-type data models for each pageset include one or more Selectable Attribute feature tables 310, an Items feature table 320, a main configuration table 330, and a configuration sub-table 340. Additional, fewer, and/or different tables may also be provided for the configuration-type data models and are within the scope of the invention. The following description for the tables and sub-table is for a specific pageset (e.g., Woman's Pants).
  • [0040]
    For each pageset, a set of Selectable Attribute feature tables 310 is provided for the set of all “selectable” attributes used to uniquely identify the items in the pageset, with one Selectable Attribute feature table being provided for each selectable attribute. In the example shown in FIG. 3, all three candidate attributes are used as selectable attributes for the pageset. In this case, Style feature table 310 a, Size feature table 310 b, and Color feature table 310 c are generated for the Style, Size, and Color selectable attributes, respectively. In a typical implementation, each Selectable Attribute feature table is named after the selectable attribute associated with and represented by the feature table.
  • [0041]
    Each Selectable Attribute feature table 310 provides a mapping of codes and their corresponding descriptions. The codes are used to represent the possible values for the associated selectable attribute, and the descriptions are texts that are more intelligible to the end-user. The codes are more efficient internal representations for the attribute values, and the description may be displayed in the UI elements for the end-user. Each Selectable Attribute feature table typically further provides an indication of which specific attribute value should be used as the default value for the associated selectable attribute, if none is specified.
  • [0042]
    In the embodiment shown in FIG. 3, each Selectable Attribute feature table 310 includes a Code column, a Description (Desc) column, and a Default column. In an embodiment, the values in the Code column are uniquely distinguishable text string. In an embodiment, the code values are numeric and sequentially numbered (e.g., starting from 0). These code values correspond to all possible values for the associated selectable attribute for the given pageset (and not for the entire item master). The Description column includes values drawn from the column of the item master corresponding to the selectable attribute being represented by the feature table. As an example, for the Style feature table 310 a, code values of 0,1,2, and 3 are used to represent the possible styles of Dress, Casual, Twill, and Jean, respectively, for the pageset for Woman's Pant. The Default column includes an indication of which value should be used as the default (e.g., Casual is the default for the Style selectable attribute for this pageset).
  • [0043]
    Items feature table 320 includes item-specific information, and may be used to provide additional information not included in the Selectable Attribute feature tables. In an embodiment, the Items feature table includes a Code column, a Description (Desc) column, an ID column, a Price column, an Item Number column, an Image column, a Default column, and zero or more additional columns. The Code column includes distinguishable values used to represent a key referenced by an Items column of configuration sub-table 340. The Description, ID, Price, Item Number, and Image columns each includes the values drawn from the corresponding column in the item master, and these columns may also be specified in the configuration variables. The Default column includes an indication of which row value should be used as the default for the Description column.
  • [0044]
    Additional columns may be added to Items feature table 320, e.g., by specifying these columns in the configuration variables. Each additional column (if any) is typically named after the corresponding specified column in the item master, and includes data drawn from that specified column. In the example shown in FIG. 3, the Price, Item Number, and Image columns are added to the Items feature table and these columns include the values drawn from the Price, Item Number, and Image columns in the item master.
  • [0045]
    Items feature table 320 includes one row for each item in the pageset. For each item, the values for the columns in the Items feature table are drawn from the corresponding columns in the item master.
  • [0046]
    Main configuration table 330 identifies valid and invalid configurations for the selectable attributes in the pageset. Each pageset is associated with a set of selectable attributes, and each selectable attribute is further associated with a set of possible values. The permutation of all possible combinations of values for these selectable attributes would represent all possible items that may be included in the pageset. However, a given pageset typically includes only a subset of all possible items. Each item actually included in the pageset represents a valid combination (i.e., a valid configuration) in the main configuration table, and items not included in the pageset are invalid combinations that are represented as “exceptions” in the configuration table.
  • [0047]
    In the embodiment shown in FIG. 3, main configuration table 330 references configuration sub-table 340 for the valid and invalid configurations and includes a Sub-table column and a Rule column. The Sub-table column includes the name of the configuration sub-table that may be referenced to determine valid and invalid configurations for the pageset. The Sub-table column is also referred to as a “type-99” column since it references to another sub-table. In this example, the name of the configuration sub-table being referenced is “Attribute_Check”. The Rule column may include rules that may be used to cross reference some other information, e.g., exception messages.
  • [0048]
    Configuration sub-table 340 identifies the valid and invalid configurations for the pageset. These configurations may be represented in numerous ways, with the more efficient representation being dependent on the specific data in the pageset. In one simple implementation, the configuration sub-table may include one entry (i.e., one row) for each possible configuration, with the valid configurations being grouped into one row set and the invalid configurations being grouped into another row set. For many pagesets, the number of valid configurations may represent only a small subset of all possible configurations, the number of invalid configurations may be large, and it may not be efficient to list each invalid configuration with its own row in the configuration sub-table. Techniques to more efficiently represent invalid configurations are described below.
  • [0049]
    In the embodiment shown in FIG. 3, configuration sub-table 340 includes one column for each selectable attribute for the pageset (e.g., Style, Size, and Color columns), the Items column for Items feature table 320, and zero or more additional columns. For efficiency, the configuration sub-table typically uses code values to represent the configurations. Thus, each Selectable Attribute column (which is also referred to as a “type-1” column) refers to a corresponding Selectable Attribute feature table. The Items column (which is also referred to as a “type-0” column since it does not refer to another table) includes data drawn from a specified column in the Items feature table. Each additional column (if any) includes either fixed text or data drawn from a specified column in the item master.
  • [0050]
    As shown in FIG. 3, configuration sub-table 340 includes a Data row set that lists valid configurations for the pageset and an Exception row set that lists invalid configurations. The valid and invalid configurations may be determined as described below.
  • [0051]
    The list-type data models may include Items feature table 320 and main configuration table 330. Additional, fewer, and/or different tables may also be provided for the list-type data models and are within the scope of the invention. The main configuration table uses the Items feature table as a single type-1 column with a value of “*” in the data cell (i.e., match all the rows from the Item feature table).
  • [0052]
    [0052]FIG. 3 shows one specific design for the data models, which may be used to generate catalog applications. Various other designs for the data models may also be implemented and are within the scope of the invention. For example, a data model design that may also be used is described in European Patent Application Serial No. 99309178.4, entitled “Method and Apparatus for Interpreting User Selections in the Context of a Relation Distributed as a Set of Orthogonalized Sub-Relations,” filed Nov. 18, 1999, assigned to the assignee of the present application and incorporated herein by reference. In general, any type of data models having attribute-to-UI relationships may be used in conjunction with the techniques described herein. Moreover, these data models need not be implemented with tables.
  • [0053]
    Referring back to FIG. 2, data builder module 210 receives the item master and the first set of configuration variables and provides a set of intermediate data files for model builder module 220. The item master may be in the form shown in FIG. 1 and is typically provided in a single data file. The configuration variables for data builder module 210 may include the following information:
  • [0054]
    Item master file name—identifies the particular file that includes the item master to be operated on by data builder module 210.
  • [0055]
    ID column name—identifies the ID column in the item master.
  • [0056]
    List of classification columns—the attributes corresponding to these columns are used to group the items in the item master into pagesets.
  • [0057]
    List of candidate columns—the attributes corresponding to these columns may be selected and used to uniquely identify the items in each pageset.
  • [0058]
    List of data attribute columns—the attributes corresponding to these columns may be used to further describe the items in the item master.
  • [0059]
    Columns that are trigger-target pairs—an attribute may be used as a trigger for another attribute. For example, different sets of sizes for pants may be applicable for different styles of pants. In this case, the style attribute is used as a trigger to determine the proper set of sizes for that style of pant.
  • [0060]
    Columns that will be added to the Items feature table—identifies the columns in the item master that will be added to the Items feature table.
  • [0061]
    Directory path for the log and intermediate data files—identifies the location where the log and intermediate data files are to be saved.
  • [0062]
    Toggle for auto-conversion of single-widget data models to list-type—
  • [0063]
    The configuration variables for data builder module 210 listed above are for a specific implementation. For other implementations, the configuration variables may include additional, fewer, and/or different information than that listed above, and this is within the scope of the invention.
  • [0064]
    [0064]FIG. 4A is a flow diagram of an embodiment of a process 400 performed by data builder module 210 to generate the intermediate data files from the item master. Initially, the item master is validated to identify any “uncleanliness” in the data that would prevent the generation of complete data models for the item master, at step 410. This validation may entail checking the item master to ensure that (1) no two rows have duplicate data, (2) the attributes for the Classification and Candidate Attribute columns are not blank (i.e., no empty strings), and so on. The configuration data may also be validated, at step 412. If any errors in the item master and/or configuration data are encountered, as determined in step 414, then error messages are generated and included in a log file that is made available to the administrator, at step 416. Via the log file, the administrator is informed of the errors and can clean up the input data. Steps 410 through 416 may be iteratively performed until the data in the item master and the configuration data are validated.
  • [0065]
    Once the data is validated, data builder module 210 groups the items in the item master into pagesets, at step 418. This is achieved based on the attribute values in the Classification columns identified by the configuration variables. In particular, each unique set of attribute values for the Classification columns is associated with a separate pageset. All items in the item master having the same set of attribute values for the Classification columns are grouped into the same pageset.
  • [0066]
    The grouping of the items in the item master into pagesets may be performed by traversing the item master, one record at a time. For each record, the Classification column values are determined. If this set of values is unique, then a new pageset is defined and the record is grouped into that pageset. Otherwise, the record is grouped into a pageset previously defined for another item in the item master. A column may be provided in the item master to mark the particular pageset to which each item belongs.
  • [0067]
    Table 100 in FIG. 1 shows an example of the grouping of the items into pagesets. The number of pagesets is equal to the number of unique sets of classification column values.
  • [0068]
    Once the items in the item master are grouped into pagesets, data builder module 210 identifies a list of attributes that may be used to uniquely identify the items in each pageset, at step 420. These attributes are referred to as selectable attributes. In an embodiment, one set of selectable attributes is provided for each pageset, and different pagesets may be associated with different sets of selectable attributes. The selectable attributes are chosen from those associated with the Candidate Attribute columns identified in the configuration variables. The selectable attributes for each pageset may be determined as described below in FIG. 4B.
  • [0069]
    Data builder module 210 then generates output files based on the pageset data, at step 422. In an embodiment, these files include (1) a verbose log file that may be used to provide information, warning, error, and so on, which may be provided as feedback to an administrator regarding the quality of the data, (2) a status file that lists all pagesets to be generated, the pageset name, items, selectable attributes, and data model type, and (3) a set of intermediate data files to be used by model builder module 220 to generate data models. Additional, fewer, and/or different output files may also be generated and are within the scope of the invention. The processing by data builder module 210 then terminates.
  • [0070]
    In an embodiment, the configuration variables identify a list of Candidate Attribute columns, and the attributes corresponding to these columns (which are also referred to as candidate attributes) may be selected and used to uniquely identify the items in each pageset. For each pageset, a (minimum) number of candidate attributes may be selected (which are then referred to as selectable attributes) such that each item in the pageset may be uniquely identified based on these selected attributes. Since each of these selected attributes may also be selected (i.e., configured with a value) by the end-user via the catalog application (e.g., a UI screen), they are also referred to as selectable attributes. The designation of the attributes in the item master as candidate attributes and/or the selection of the candidate attributes as selectable attributes may be made by the administrator (e.g., specified via the configuration variables), automatically by data builder module 210, or a combination of both.
  • [0071]
    In an embodiment, the candidate attributes are grouped into two categories labeled as “mandatory” and “optional”. Mandatory attributes are those attributes designated by the administrator to be used as selectable attributes (and may or may not be helpful in determining uniqueness among items in a pageset). Optional attributes are those that may be selected for use to uniquely identify items if the mandatory attributes are not sufficient to determine uniqueness. The designation of each candidate attribute as either mandatory or optional may be made by the administrator or via another means.
  • [0072]
    In an embodiment, the optional attributes are provided in an ordered list, and these attributes are thereafter selected for use to determine uniqueness, one at a time and as needed, based on their order in the list. Thus, the first optional attribute in the list is considered first to determine whether or not it is useful for item identification, the second optional attribute in the list is considered next, and so on, and the last optional attribute in the list is considered last.
  • [0073]
    [0073]FIG. 4B is a flow diagram of an embodiment of a process 420 to determine a list of selectable attributes that may be used to uniquely identify the items in each pageset. Initially, the number of unique items in the pageset is determined, at step 442. This may be achieved by simply counting the number of items in the item master belonging to the pageset being processed. This number is denoted as “A”.
  • [0074]
    The optional attributes are then placed in a first list in the order specified in the configuration variables, at step 444. These optional attributes may be considered, one at a time if necessary and in the order in which they are placed on the first list, to determine uniqueness. The mandatory attributes (if any) are placed in a second list, at step 446. The number of sets of unique values for the attributes in the second list is then determined, at step 448. This number is denoted as “B”.
  • [0075]
    A determination is then made whether the number of unique attribute value sets is equal to the number of unique items in the pageset (i.e., whether A=B), at step 450. If these numbers are equal, indicating that the mandatory attributes in the second list are sufficient to uniquely identify the items in the pageset, then the process proceeds to step 468. Otherwise, if the mandatory attributes are not sufficient to determine uniqueness, the optional attributes are considered, one by one, until a sufficient number of optional attributes is included to specify item uniqueness.
  • [0076]
    The consideration of the optional attributes begins in step 452, where a determination is made whether the first list of optional attributes is empty. If the first list is empty, then an error message may be generated in the log file, at step 454, and the process terminates. Otherwise, if the first list is not empty, then the highest order optional attribute in the first list is selected for consideration and placed in the second list, at step 456. The current value of B is then saved as C, in step 458, and the number of sets of unique values for the attributes in the second list is determined and saved as the new value of B, at step 460.
  • [0077]
    A determination is then made whether the number of unique attribute value sets is equal to the number of unique items in the pageset (i.e., whether A=B), at step 462. If these numbers are equal, indicating that the mandatory and optional attributes in the second list are sufficient to uniquely identify the items in the pageset, then the process proceeds to step 468.
  • [0078]
    If B is not equal to A at step 462, then a determination is made whether the number of unique attribute value sets with the latest optional attribute is greater than the number of unique attribute value sets without the latest optional attribute (i.e., whether B>C), at step 464. If B is not greater than C, indicating that the latest optional attribute was not useful in determining uniqueness, then this attribute is removed from the second list, at step 466. Otherwise, the optional attribute is retained in the second list. In either case, the process then returns to step 452 to consider the next optional attribute.
  • [0079]
    At step 468, since the number of unique attribute value sets is equal to the number of unique items in the pageset, the second list is provided as the list of selectable attributes that may be used to specify item uniqueness for the pageset. The process then terminates.
  • [0080]
    [0080]FIG. 4C is a flow diagram of another embodiment of a process 470 to determine a list of selectable attributes. Initially, the items for a particular pageset to be processed are identified, at step 472. A determination is then made whether or not a list of mandatory attributes is empty, at step 474. If this list is not empty, then all mandatory attributes are moved to the selectable attribute list, at step 476. Otherwise, the first element of a list of optional attributes is moved to the selectable attribute list, at step 478.
  • [0081]
    The items in the pageset that can be uniquely identified by the sets of values for the attributes in the selectable attribute list are then marked, at step 480. A determination is then made whether there are any unmarked items in the pageset, at step 482. If all items are marked, then the selectable attribute list is returned as the list of selectable attributes that may be used to specify item uniqueness for the pageset, at step 484. The process then terminates.
  • [0082]
    Otherwise, if there is any unmarked item in the pageset, a determination is made whether or not the optional attribute list is empty, at step 486. If the optional attribute list is empty, then an error message may be generated in the log file, at step 488, and the process terminates. And if the optional attribute list is not empty, then a determination is made whether adding the first element of the optional attribute list to the selectable attribute list would help to uniquely identify the unmarked items in the pageset, at step 490. If the answer is no, then the first element of the optional attribute list is discarded, at step 492. Otherwise, the first element of the optional attribute list is moved to the selectable attribute list, at step 494, and the process returns to step 480.
  • [0083]
    The process shown in FIG. 4B or 4C may be executed for each pageset in the item master and provides a list of selectable attributes that may be used to determine uniqueness for each pageset. In the embodiment shown, the minimum number of selectable attributes is provided for each pageset, since optional attributes that do not contribute to item identification are removed. Moreover, the attributes to be considered and their order for consideration may be specified (e.g., by the administrator via the configuration variables) or may be automatically determined (e.g., by data builder module 210).
  • [0084]
    The process to select attributes to specify item uniqueness results in the creation of configuration-type data models. A particular combination of Classification column values may also be specified to generate list-type data models. Configuration-type data models may also be automatically converted into list-type data models (list-type data models may be generated from the item master) via a parameter value in the first set of configuration variables provided to data builder module 210. This process of selecting selectable attributes, which creates configuration-type data models, may be overridden in the configuration file by specifying that a particular combination of classification column values should generate list-type data models instead. The administrator may also select to automatically convert configuration-type data models that contain only one selectable attribute into list-type data models.
  • [0085]
    Model builder module 220 receives the set of intermediate data files from data builder module 210 and the second set of configuration variables and generates data models that may be provided to file builder module 230 and/or stored to repository 250. The data models are provided in one or more formats which may be specified (e.g., via the configuration variables). The configuration variables for model builder module 220 may include the following information:
  • [0086]
    Output format—XML, HTML, repository, or a combination thereof
  • [0087]
    Overwrite existing data models—true or false
  • [0088]
    Directory path for the log file
  • [0089]
    Directory containing the intermediate data files
  • [0090]
    Gateway repository project name (if saving to the repository)
  • [0091]
    Gateway database connect string (if saving to the repository)
  • [0092]
    HTML file destination directory (if using HTML)
  • [0093]
    Backup HTML files (if using HTML)—true or false
  • [0094]
    XML output directory
  • [0095]
    Backup XML files—true or false
  • [0096]
    Callout process (optional)
  • [0097]
    The configuration variables for model builder module 220 listed above are for a specific implementation. For other implementations, the configuration variables may include additional, fewer, and/or different information than those listed above, and this is within the scope of the invention.
  • [0098]
    [0098]FIG. 5A is a flow diagram of an embodiment of a process 500 performed by model builder module 220. Initially, model builder module 220 processes the data for each pageset to generate a set of tables and sub-table for the data models, as shown in FIG. 3, at step 510. Model builder module 220 then identifies valid configurations and generates exceptions for each pageset, at step 512. Exception messages may be generated to identify invalid configurations, and these messages may be generated by passing the pageset data through several “methods” in sequential order, as described below in FIG. 5B.
  • [0099]
    Model builder module 220 then represents the data models, e.g., in XML and adds to this XML other pageset-specific data, at step 514. The pageset-specific data includes raw data from the item master and information generated by data builder module 210 such as which attributes are mandatory and which are optional.
  • [0100]
    In an embodiment, model builder module 220 supports the inclusion of an optional administrator-specified callout process to be applied to the data models. Via the callout process, the administrator is able to examine and modify the data models before they are provided in final output form. If the data models are provided as XML pagesets, as for the embodiment described herein, the callout processes are designed with the capability to operate on streamed XML as both input and output. Any number of processes may be used as the in-line callout process.
  • [0101]
    Thus, the XML may be passed streaming through an optional callout process, at step 516. After streaming through the callout process, the XML may be validated before the final data models are generated, at step 518. Model builder module 220 then provides the optionally modified and validated XML representation for each pageset in one or more output forms, which may be specified by the administrator via the configuration variables.
  • [0102]
    First, XML documents may be created (e.g., as specified by the configuration variables and/or as the default form), at step 520. In this case, one XML document is provided for each pageset, with the XML document containing the data models and other pageset-specific information such as data for the pageset items obtained from the item master. A master XML document containing application-specific data (as opposed to pageset-specific data) and references to all of the pageset documents is also created and provided. This master XML document may be used to generate the contents list for the item master, as described below. Second, the data models may optionally be provided to repository 250, at step 522. Third, the data models may optionally be used directly to generate HTML files (*_00.htm and *_m.htm files), at step 524. The HTML files may be read directly by a runtime engine, which can allow for rapid generation of pageset screens. However, the data models in HTML form may not be easily modified by a subsequent process.
  • [0103]
    [0103]FIG. 5B is a flow diagram of an embodiment of a process to examine the data for each pageset to generate exception messages for invalid configurations. In an embodiment, logical guidance for generating the exception messages is derived from the pageset data itself. Various types of exception messages may be generated for invalid configurations. These data-dependent exception messages can greatly reduce the number of messages that needs to be generated and further reduce the number of entries needed to represent invalid configurations in the configuration sub-table.
  • [0104]
    Initially, the pageset data is examined to identify any selectable attribute that has only one value (i.e., the attribute value occurs only once in the valid configurations for the pageset), at step 542. For each such attribute value, a first type of exception message may be generated such as, e.g., “[selectable attribute value] is only available with [list of other selectable attribute values an item is available with].” Next, the pageset data is examined to identify any pair of selectable attribute values that do not occur together in a valid configuration (e.g., red dress), at step 544. For each such attribute pair, a second type of exception message may be generated such as, e.g., “[attribute 1 value] is not available with [attribute 2 value]”. The first two types of exception messages are thus effectively generated from valid configurations. Typically, the first two types of exception messages cover a large percentage of all invalid configurations. Finally, the pageset data is examined to identify all remaining invalid configurations, at step 546. For each such invalid configuration, a third type of exception message may be generated such as, e.g., “[the combination of selected attribute values is an invalid configuration].”
  • [0105]
    Each of the steps described above may be performed via a respective method. The exception messages may also be provided in a log file that is provided by model builder module 220. The log file provides result of the data modeling so that the administrator can review the result.
  • [0106]
    File builder module 230 receives the data models (e.g., the XML documents) from model builder module 220 and the third set of configuration variables and generates data-dependent application files. The configuration variables for file builder module 230 may include the following information:
  • [0107]
    Path of the executable for a Xalan XSL processor
  • [0108]
    Directory for XML documents
  • [0109]
    Directory for the log file output
  • [0110]
    For each XSLT stylesheet to be used:
  • [0111]
    Stylesheet name
  • [0112]
    Directory for stylesheet output
  • [0113]
    Backup stylesheet output—true or false
  • [0114]
    The configuration variables for file builder module 230 listed above are for a specific implementation. For other implementations, the configuration variables may include additional, fewer, and/or different information than those listed above, and this is within the scope of the invention.
  • [0115]
    File builder module 230 generates application files from the received XML documents. In an embodiment, these application files include a Contents List page, one or more Inputs pages, and one or more Output pages. The application files may either include or be used to generate UI elements suitable for representing the item master.
  • [0116]
    The Contents List page is generated from the attributes corresponding to the Classification columns in the item master and are used to provide a hierarchical tree of the pagesets for the item master. The hierarchical tree may include any number of levels, with one level being provided for each classification column. For the example shown in FIGS. 1 and 3, the first level may be Gender and the second level may be Type. The Contents List page provides a means for an end-user to navigate through the item master to arrive at the desired pageset.
  • [0117]
    The Input pages represent the selectable attributes and are generated based on the Selectable Attribute feature tables, the main configuration table, and the configuration sub-table. Typically, one Input page is generated per pageset, and each Input page includes all selectable attributes for the pageset. Upon selection of a particular pageset by the end-user, the Input page for the selected pageset may be displayed. Depending on the specific implementation, the Input page may allows the end-user to view all valid configurations for the pageset, or may allow the end-user to select a particular configuration and respond whether the selected configuration is valid or invalid. The Input pages reference the Selectable Attribute feature tables.
  • [0118]
    The Output pages represent the additional data for the items in each pageset. This data may include the data in the Data Attribute columns in the item master (e.g., the Price, Item Number, and Image columns in the item master shown in FIG. 1). The data in the Output pages may be presented in various manners. In one implementation, upon selection of a particular valid configuration via the Input page, the additional data corresponding to the selected configuration is retrieved from the Output page and presented to the end-user.
  • [0119]
    [0119]FIG. 6 shows an embodiment of a screen 600 capable of presenting items in the item master. In this embodiment, the screen includes three frames 610, 620, and 630 generated from the application files and used to display the Contents List page, the Input page, and Output page, respectively.
  • [0120]
    The Contents List page is rendered in frame 610, via which the end-user is able to navigate through various classification attributes to arrive at the desired pageset. In the example shown, the classification attributes are presented via a hierarchical tree structure, with the Gender level including two choices (Woman and Man) and each Gender choice further including a number of choices. In another implementation, the classification attributes may also be represented with a set of list boxes, one list box for each classification attribute, with each list box including the possible choices for the classification attribute. The values in each classification attribute list box may be dependent on the values selected for other classification attributes. The specific set of values selected for all classification attributes directs the end-user to the associated pageset.
  • [0121]
    The Input page for the selected pageset is rendered in frame 620, which provides the list of selectable attributes. In an embodiment, the default values are populated in the list boxes for the selectable attributes. In an embodiment, a specific value may be selected for each selectable attribute (e.g., to override the default value). Upon selection of a specific set of values for all selectable attributes, the configuration corresponding to this specific set of values may be checked as to determine whether it is valid or invalid. For example, the end-user may select the configuration of a blue, size 2, dress pant. If the configuration is valid, the Output page for the selected configuration is displayed in frame 630. For the above example, the additional data for the selected configuration may include the price of $59.95 and the item number of 128. Otherwise, if the configuration is not valid, the appropriate exception message may be displayed, e.g., in frame 630.
  • [0122]
    The application files may be generated based on a particular template. The use of the template allows for flexibility in creating both the contents and the data-based logic of the application files.
  • [0123]
    The template may be provided via a file, specified via a user interface screen, or provided via some other means. Default templates may be provided and used for creating the application files. The templates may be modified (or customized) to suit the specific application design.
  • [0124]
    In one specific implementation, the templates comprise XSLT (Extensible Style Language Transformations) stylesheets. In this implementation, file builder module 230 includes runtime Java and a Java-based Xalan XSL (Extensible Style Language) processor, which is publicly available. The Xalan XSL processor is a particular implementation of XSL transformation, and is used to convert XML documents to other types of documents such as XML, HTML, PDF, and possibly others. Other types of templates may also be defined and used and are within the scope of the invention. For example,
  • [0125]
    File builder module 230 further provides a log file that provides information for the administrator.
  • [0126]
    System 200 may be launched to execute the data, model, and file modules in the proper sequential order. The execution may be initiated via a single batch file, which is a “wrapper” script. The wrapper script may receive a configuration variable indicating a starting point module and starts execution from this starting point module. The starting point may be data builder module 210, model builder module 220, or file builder module 230. In this way, the administrator is able to run only the desired module(s) of system 200, e.g., those that have not yet been run.
  • [0127]
    [0127]FIG. 7 is a diagram of a system 700 capable of automatically generating data models using items stored in a repository, in accordance with another embodiment of the invention. System 700 an example of a repository-based design, and also takes an item master as input and can generate data-dependent components of a catalog-type application. In this embodiment, system 700 includes a catalog admin module 710, a catalog builder module 720, a designer module 730, and a publisher module 740. Catalog builder module 720 further includes a data/model builder module 722 and a contents list builder module 724. A database 750 provides the data for system 700 and further stores the data models generated by system 700.
  • [0128]
    The item master from the database may be comprised of a number of smaller tables that may be represented using any number of (relational) database schema. In that case, the collection of all attributes for the items in the item master may not apply to each item (i.e., not all items in the item master may be associated with all of the attributes). In an embodiment, only attributes that are common to all items in the item master are considered for use as classification attributes, and only attributes that are common to all items in each pageset are considered for use as candidate attributes for that pageset. Other attributes that apply to only some of the items in the item master would then be designated as data attributes.
  • [0129]
    Catalog admin module 710 receives the item master and possibly other data from database 750 and provides classification and configuration data. In an embodiment, all or a subset of the common attributes for the item master may be presented to an administrator (e.g., via a screen), who may then select a set of these common attributes to classify the item master. This allows the administrator to categorize the item master and define pagesets in any desired manner. This first set of attributes comprises the classification data for the item master. The classification data is then provided to data/model builder module 722 and used to classify the items in the item master into pagesets, as described above. The classification data is also provided to contents list builder module 724 and used to generate a Contents List table.
  • [0130]
    In an embodiment, all or a subset of the common attributes (which are not classification attributes) for each pageset may also be presented to the administrator, who may then select a set of these attributes as candidate attributes for the pageset. The administrator may also define configuration variables (e.g., such as those described above) via catalog admin module 710.
  • [0131]
    Within catalog builder module 720, data/model builder module 722 receives (1) the item master and possibly extended attributes for the items in the item master from database 750, (2) the classification data from catalog admin module 710, and (3) configuration data, which may be provided via a file and/or by catalog admin module 710. Data/model builder module 722 performs many of the functions described above for data builder module 210 and model builder module 220. Data/model builder module 722 may first generate an item master (on the fly) similar to that shown in FIG. 1 if the data/model builder module is provided with a collection of smaller “normalized” tables that collectively defines the Products table. A normalized table is typically provided for each attribute (e.g., color, size). The use of normalized tables may reduce the amount of redundancy (i.e., without normalization, many combinations of redundant information may be present).
  • [0132]
    Data/model builder module 722 then classify the items in the item master into pagesets using the classification data, and further generates data models for each pageset using the candidate attributes and configuration data. The candidate attributes may be provided by catalog admin module 710, via the configuration data, and/or derived from the extended attributes by data/model builder module 722. In an embodiment and as described above, the data models for each pageset may include a set of feature tables, a main configuration table, and a configuration sub-table. These tables and sub-table may be generated as described above in FIG. 3. The data models may be stored back to database 750, or may be provided directly to publisher module 740.
  • [0133]
    Contents list builder module 724 receives the classification data and generates a Contents List table, which may be used for navigation through the item master as described above. The Contents List table may also be stored back to database 750, or may be provided directly to publisher module 740.
  • [0134]
    Catalog builder module 720 may also provide a log file, which may include error messages indicating any uncleaniness in the received item master and/or the configuration data. The information provided in the log file may be used to clean the item master (e.g., modify item values and/or attributes), the configuration data, and/or the classification data, such that valid data models may be generated.
  • [0135]
    Designer module 730 provides graphical user interface (GUI) tools to assist the administrator manually perform data modeling, create attributes, select default, and perform other functions. Designer module may be used to further modify or customize data model and/or content list that are generated by catalog builder module 720. Designer module 730 may also be used to publish the result of the data modeling.
  • [0136]
    Publisher module 740 receives the data models and the Contents List table from database 750 and generates UI elements suitable for display on a screen. In an embodiment, publisher module 740 generates a Contents List page based on the Contents List table and a number of pagesets based on the data models. These contents list page and pagesets may be presented as HTML files or in some other format.
  • Computer System
  • [0137]
    [0137]FIG. 8 is a block diagram of an embodiment of a computer system 800 that may be used to store and execute program codes that implement system 200 or 700. System 800 includes a bus 808 that interconnects major subsystems such as one or more processors 810, a memory subsystem 812, a data storage subsystem 814, an input device interface 816, an output device interface 818, and a network interface 820. Processor(s) 810 perform many of the processing functions for system 800 and communicate with a number of peripheral devices via bus 808.
  • [0138]
    Memory subsystem 812 may include a RAM 832 and a ROM 834 used to store codes and data that implement various aspects of the invention. In a distributed environment, the program codes and data may be stored on a number of computer systems and used by the processors of these systems. Data storage subsystem 814 provides non-volatile storage for program codes and data, and may include a hard disk drive 842, a floppy disk drive 844, and other storage devices 846 such as a CD-ROM drive, an optical drive, and removable media drive.
  • [0139]
    Input device interface 816 provides interface with various input devices such as a keyboard 852, a pointing device 854 (e.g., a mouse, a trackball, a touch pad, a graphics tablet, a scanner, or a touch screen), and other input device(s) 856. Output device interface 818 provides an interface with various output devices such as a display 862 (e.g., a CRT or an LCD) and other output device(s) 864. Network interface 820 provides an interface for system 800 to communicate with other computers coupled to communication network 822.
  • [0140]
    Many other devices or subsystems (not shown) may also be coupled to system 800. In addition, it is not necessary for all of the devices shown in FIG. 8 to be present to practice the invention. Furthermore, the devices and subsystems may be interconnected in configurations different from that shown in FIG. 8. One or more of the storage devices may be located at remote locations and coupled to system 800 via communication network 822. The operation of a computer system such as that shown in FIG. 8 is readily known in the art and not described in detail herein. The source codes to implement various aspects and embodiments of the invention (e.g., sub-configuration) may be operatively disposed in memory subsystem 812 or stored on storage media such as a hard disk, a floppy disk, or a CD-ROM that is operative with a CD-ROM player.
  • [0141]
    Headings are provided herein for reference and to aid in locating certain sections. These headings are not intended to limit the scope of the concepts described therein under, and these concepts may have applicability in other sections throughout the entire specification.
  • [0142]
    The foregoing description of the specific embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without the use of the inventive faculty. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein, and as defined by the following claims.
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
US7221474 *27 Jul 200122 May 2007Hewlett-Packard Development Company, L.P.Method for visualizing large volumes of multiple-attribute data without aggregation using a pixel bar chart
US752339222 Apr 200521 Apr 2009Microsoft CorporationMethod and system for mapping between components of a packaging model and features of a physical representation of a package
US7587484 *18 Oct 20018 Sep 2009Microsoft CorporationMethod and system for tracking client software use
US7739282 *13 May 200515 Jun 2010Microsoft CorporationMethod and system for tracking client software use
US790713917 Oct 200115 Mar 2011Hewlett-Packard Development Company, L.P.Method for placement of data for visualization of multidimensional data sets using multiple pixel bar charts
US813575022 Apr 200513 Mar 2012Microsoft CorporationEfficiently describing relationships between resources
US838647117 Sep 201026 Feb 2013Salesforce.Com, Inc.Optimizing queries in a multi-tenant database system environment
US840718416 Jul 201026 Mar 2013Salesforce.Com, Inc.Maintaining applications that are occasionally connected to an online services system
US840733814 Sep 200926 Mar 2013Salesforce.ComMethods and systems for polling an on demand service
US841282018 Jun 20122 Apr 2013Salesforce.Com, Inc.Referred internet traffic analysis system and method
US842353515 Apr 201016 Apr 2013Salesforce.Com, Inc.Query optimization in a multi-tenant database system
US842901120 Jan 200923 Apr 2013Salesforce.Com, Inc.Method and system for targeted advertising based on topical memes
US844308526 Apr 201114 May 2013Salesforce.Com, Inc.Resolving information in a multitenant database environment
US844336611 Dec 200914 May 2013Salesforce.Com, Inc.Techniques for establishing a parallel processing framework for a multi-tenant on-demand database system
US844774514 Sep 200921 May 2013Salesforce.Com, Inc.Synchronizing field values in an on-demand database prior to committing a change
US844775420 Dec 201021 May 2013Salesforce.Com, Inc.Methods and systems for optimizing queries in a multi-tenant store
US845272617 Sep 201028 May 2013Salesforce.Com, Inc.Sharing information between tenants of a multi-tenant database
US847346925 Aug 200825 Jun 2013Salesforce.Com, Inc.Techniques for implementing batch processing in a multi-tenant on-demand database system
US84735183 Jul 200825 Jun 2013Salesforce.Com, Inc.Techniques for processing group membership data in a multi-tenant database system
US847872212 Nov 20102 Jul 2013Salesforce.Com, Inc.Enterprise level business information networking for changes in a database
US848992930 Sep 201016 Jul 2013Salesforce.Com, Inc.Facilitating large-scale testing using virtualization technology in a multi-tenant database environment
US84989941 Jun 201130 Jul 2013Salesforce.Com, Inc.Social files
US849928627 Jul 201030 Jul 2013Salesforce.Com, Inc.Module testing adjustment and configuration
US850488022 Dec 20106 Aug 2013Salesforce.Com, Inc.Mechanism for facilitating efficient error handling in a network environment
US851016423 Apr 201213 Aug 2013Salesforce.Com, Inc.Method and system for targeted advertising based on topical memes
US851060223 Jul 201013 Aug 2013Salesforce.Com, Inc.Testing a software application used in a database system
US851659114 Mar 201120 Aug 2013Salesforce.Com, Inc.Security monitoring
US851784030 Sep 201127 Aug 2013Salesforce.Com, Inc.Methods and systems for providing a challenge user interface for an enterprise social network
US85217806 May 201127 Aug 2013Salesforce.Com, Inc.Methods and systems for sharing email in a multi-tenant database system
US852178215 Jun 201227 Aug 2013Salesforce.Com, Inc.Methods and systems for processing large graphs using density-based processes using map-reduce
US853378619 Apr 201110 Sep 2013Salesforce.Com, Inc.Method and apparatus for protecting against attacks from outside content
US853516230 Sep 201117 Sep 2013Salesforce.Com, Inc.Methods and systems for providing a challenge user interface for an enterprise social network
US853894214 Sep 200917 Sep 2013Salesforce.Com, Inc.Method and system for sharing documents between on-demand services
US853906821 Dec 201017 Sep 2013Salesforce.Com, Inc.Methods and systems for providing customized domain messages
US853923430 Mar 201117 Sep 2013Salesforce.Com, Inc.Secure client-side communication between multiple domains
US854356610 Nov 200624 Sep 2013Salesforce.Com, Inc.System and methods of improving a multi-tenant database query using contextual knowledge about non-homogeneously distributed tenant data
US854894219 Mar 20101 Oct 2013Salesforce.Com, Inc.Methods and systems for recursive saving of hierarchical objects to a database
US85489528 Mar 20121 Oct 2013Salesforce.Com, Inc.Methods and systems for providing fault recovery to side effects occurring during data processing
US85490474 Apr 20121 Oct 2013Salesforce.Com, Inc.Computer implemented methods and apparatus for feed-based case management
US854935911 May 20111 Oct 2013Salesforce.Com, Inc.Method and system for identifying errors in code
US855479321 Dec 20108 Oct 2013Salesforce.Com, Inc.Methods and systems for providing custom settings in an on-demand service environment
US856054126 Aug 201015 Oct 2013Salesforce.Com, Inc.Generating reports in an online services system
US856055417 Feb 201115 Oct 2013Salesforce.Com, Inc.Methods and apparatus for selecting updates to associated records to publish on an information feed using importance weights in an on-demand database service environment
US856057517 Feb 201115 Oct 2013Salesforce.Com, Inc.Methods and apparatus for selecting updates to associated records to publish on an information feed in an on-demand database service environment
US85654229 Aug 201122 Oct 2013Salesforce.Com, Inc.Method and system for enryption key versioning and key rotation in a multi-tenant environment
US856627410 Jan 201122 Oct 2013Salesforce.Com, Inc.Methods and systems for implementing a compositional recommender framework
US856628331 Aug 201022 Oct 2013Salesforce.Com, Inc.Changing records associated with a software application
US856644919 Apr 201122 Oct 2013Salesforce.Com, Inc.Method and system for validating configuration data in a multi-tenant environment
US856664810 May 201122 Oct 2013Salesforce, Inc.Automated testing on devices
US856665413 Aug 201022 Oct 2013Salesforce.Com, Inc.Debugging site errors by an admin as a guest user in a multi-tenant database environment
US85667405 Apr 201122 Oct 2013Salesforce.Com, Inc.Interactive data forecasting features for a graphical user interface
US85667793 May 201122 Oct 2013Salesforce.Com, Inc.Visually prioritizing information in an agile system
US856679210 Nov 201022 Oct 2013Salesforce, Inc.Validating visual components
US856691728 Dec 201022 Oct 2013Salesforce.Com, Inc.Efficient single sign-on and identity provider configuration and deployment in a database system
US85669566 Dec 201022 Oct 2013Salesforce.Com, Inc.Monitoring and reporting of data access behavior of authorized database users
US857202930 May 201129 Oct 2013Salesforce.Com, Inc.Methods and systems for synchronizing data in a multi-tenant database environment
US85720806 Jun 201129 Oct 2013Salesforce.Com, Inc.Methods and systems for analyzing a network feed in a multi-tenant database system environment
US857255930 Sep 201029 Oct 2013Salesforce.Com, Inc.Object-oriented system for creating and managing websites and their content
US857787015 Jun 20125 Nov 2013Salesforce.Com, Inc.Statistics management for database querying
US857791814 Sep 20095 Nov 2013Salesforce.Com, Inc.Method and system for apportioning opportunity among campaigns in a CRM system
US858365317 Dec 201012 Nov 2013Salesforce.Com, Inc.Methods and systems for determining candidates for a custom index in a multi-tenant database environment
US858396423 Dec 201012 Nov 2013Salesforce.Com, Inc.Identifying bugs in a database system environment
US858412431 Mar 201112 Nov 2013Salesforce.Com, Inc.Methods and systems for batch processing in an on-demand service environment
US859520719 May 201126 Nov 2013Salesforce.ComMethods and systems for dynamically suggesting answers to questions submitted to a portal of an online service
US859563525 Jan 200826 Nov 2013Salesforce.Com, Inc.System, method and apparatus for selecting content from web sources and posting content to web logs
US862030523 Jun 201131 Dec 2013Salesforce.Com, Inc.Methods and systems for a mobile device testing framework
US862087524 Jan 201231 Dec 2013Salesforce.Com, Inc.Fraud analysis in a contact database
US86208761 Nov 201131 Dec 2013Salesforce.Com, Inc.Firewalls for securing customer data in a multi-tenant environment
US862095416 Apr 201031 Dec 2013Salesforce.Com, Inc.Query optimization in a multi-tenant database system
US863525026 Apr 201121 Jan 2014Vinod MehraMethods and systems for deleting large amounts of data from a multitenant database
US864534131 Mar 20104 Feb 2014Salesforce.Com, Inc.Method and system for automatically updating a software QA test repository
US865020211 Aug 201111 Feb 2014Salesforce.Com, Inc.Session table framework
US865586726 Jan 201118 Feb 2014Salesforce.Com, Inc.Method and system for optimizing queries in a multi-tenant database environment
US86608812 Dec 201125 Feb 2014Salesforce.Com, Inc.Mechanism for facilitating dynamic visual workflow and task generation in an on-demand services environment
US866107620 Dec 201025 Feb 2014Salesforce.Com, Inc.Business networking information feed alerts
US866697414 Apr 20114 Mar 2014Salesforce.Com, Inc.Methods and systems for performing high volume searches in a multi-tenant store
US86768647 Dec 201118 Mar 2014Salesforce.Com, Inc.Methods and systems for providing schema layout in an on-demand services environment
US867697915 Feb 201118 Mar 2014Salesforce.Com, Inc.Methods and systems for efficient API integrated login in a multi-tenant database environment
US868286323 Feb 200725 Mar 2014Salesforce.Com, Inc.Methods and systems for bulk row save logic in an object relational mapping layer and application framework
US86829188 Mar 201125 Mar 2014Salesforce.Com, Inc.Method and system for making content-based recommendations
US868344320 Jan 201225 Mar 2014Salesforce.Com, Inc.Streamlined methodology for resolving software integration conflicts
US86890523 Aug 20121 Apr 2014Salesforce.Com, Inc.Performing asynchronous testing of an application occasionally connected to an online services system
US86906669 Jan 20128 Apr 2014Salesforce.Com, Inc.Systems and methods for data valuation
US86936499 Sep 20108 Apr 2014Salesforce.Com, Inc.Methods and apparatus for interfacing with a phone system in an on-demand service environment
US869455815 Nov 20108 Apr 2014Salesforce.Com, Inc.Methods and systems for tracking work in a multi-tenant database environment
US870119810 Aug 201015 Apr 2014Salesforce.Com, Inc.Performing security analysis on a software application
US870671521 Sep 201022 Apr 2014Salesforce.Com, Inc.Methods and systems for joining indexes for query optimization in a multi-tenant database
US870726420 Dec 201022 Apr 2014Salesforce.Com, Inc.Methods and systems for testing methods in a multi-tenant database environment
US87130434 Feb 201129 Apr 2014Salesforce.Com, Inc.System, method and computer program product for sharing a single instance of a database stored using a tenant of a multi-tenant on-demand database system
US871316517 May 201129 Apr 2014Salesforce.Com, Inc.Method and system for providing status of a machine
US871353010 May 201129 Apr 2014Salesforce.Com, Inc.Test framework of visual components in a multitenant database environment
US871369326 Jul 201229 Apr 2014Salesforce.Com, Inc.Secure access to customer log data in a multi-tenant environment
US87182419 Sep 20106 May 2014Salesforce.Com, Inc.Methods and apparatus for interfacing with a phone system in an on-demand service environment
US871924327 Apr 20116 May 2014Salesforce.Com, Inc.Methods and systems for filtering data for interactive display of database data
US87311515 Sep 201220 May 2014Salesforce.Com, Inc.Methods and apparatus for partially updating a web page using an embedded iFrame
US873208819 Mar 201220 May 2014Salesforce.Com, Inc.Method and system for integrating a PBX-equipped client and an on-demand database service
US873215010 Feb 201120 May 2014Salesforce.Com, Inc.Methods and apparatus for suppressing network feed activities using an information feed in an on-demand database service environment
US873215731 Mar 201020 May 2014Salesforce.Com, Inc.Query optimization in a multi-tenant database system
US873260624 Oct 201120 May 2014Salesforce.Com, Inc.Computer implemented methods and apparatus for dynamic windowing in user interfaces
US87326631 Feb 201120 May 2014Salesforce.Com, Inc.System, method and computer program product for providing automated testing by utilizing a preconfigured point of entry in a test or by converting a test to a predefined format
US873860319 May 201127 May 2014Salesforce.Com, Inc.Metrics-based accessing of social threads
US873862012 Nov 201027 May 2014Salesforce.Com, Inc.Implementing enterprise level business information networking
US873868929 Feb 201227 May 2014Salesforce.Com, Inc.Method, system, and computer program product for managing interchange of enterprise data messages
US873897023 Jul 201027 May 2014Salesforce.Com, Inc.Generating performance alerts
US87390305 Jan 201127 May 2014Salesforce.Com, Inc.Providing a quote template in a multi-tenant database system environment
US873912616 Nov 201027 May 2014Salesforce.Com, Inc.Web services environment testing framework
US87449728 Nov 20113 Jun 2014Salesforce.Com, Inc.Method and system for integrating a PBX-equipped client and an on-demand database service
US87452729 Sep 20103 Jun 2014Salesforce.Com, Inc.Service cloud console
US874562529 Nov 20113 Jun 2014Salesforce.Com, Inc.System, method and computer program product for conditionally executing related reports in parallel based on an estimated execution time
US87514028 Nov 201110 Jun 2014Salesforce.Com, Inc.Method and system for integrating a PBX-equipped client and an on-demand database service
US87515792 Mar 200610 Jun 2014Salesforce.Com, Inc.Method and system of maintaining a browser in a design application workflow
US875182630 Mar 201010 Jun 2014Salesforce.Com, Inc.Enhanced system security
US875193926 Apr 201110 Jun 2014Salesforce.Com, Inc.Side tab navigation and page views personalization systems and methods
US875201717 May 201110 Jun 2014Salesforce.Com, Inc.Method and system for remote debug protocol proxying for production debugging; selective session and user routing for debugging in multi-tenant cloud computing infrastructure
US87562211 Jun 201117 Jun 2014Salesforce.Com, Inc.Social files
US875658814 Feb 201217 Jun 2014Salesforce.Com, IncContextual exception management in multi-tenant systems
US876228119 Mar 201224 Jun 2014Salesforce.Com, Inc.Method and system for integrating a PBX-equipped client and an on-demand database service
US876232918 May 201224 Jun 2014Salesforce.Com, Inc.Method and system for synchronizing a server and an on-demand database service
US876234020 Dec 201024 Jun 2014Salesforce.Com, Inc.Methods and systems for backing up a search index in a multi-tenant database environment
US876287023 Feb 201224 Jun 2014Salesforce.Com, Inc.Multifunction drag-and-drop selection tool for selection of data objects in a social network application
US876288115 Jul 201024 Jun 2014Salesforce.Com, Inc.Taking screenshots of a failed application
US876293828 Apr 200924 Jun 2014Salesforce.Com, Inc.Object-oriented system for creating and managing websites and their content
US876309818 Jul 201224 Jun 2014Salesforce.Com, Inc.Mechanism for facilitating dynamic and continuous testing of security assertion markup language credentials in an on-demand services environment
US876896414 Mar 20111 Jul 2014Salesforce.Com, Inc.Security monitoring
US87694169 Sep 20101 Jul 2014Salesforce.Com, Inc.Service cloud console
US87697049 Sep 20111 Jul 2014Salesforce.Com, Inc.Method and system for managing and monitoring of a multi-tenant system
US877531531 Aug 20078 Jul 2014Salesforce.Com, Inc.Method and system for integrating a PBX-equipped client and an on-demand database service
US877594626 Apr 20118 Jul 2014Salesforce.Com, Inc.Resolving information in a multitenant database environment
US877606414 Sep 20128 Jul 2014Salesforce.Com, Inc.Methods and systems for batch processing in an on-demand service environment
US877606711 Dec 20098 Jul 2014Salesforce.Com, Inc.Techniques for utilizing computational resources in a multi-tenant on-demand database system
US877608228 Dec 20128 Jul 2014Salesforce.Com, Inc.Method and system for providing a client access to an external service via an application services platform
US877608328 Dec 20128 Jul 2014Salesforce.Com, Inc.API method and system for providing access to an external service via an application services platform
US878198817 Jul 200815 Jul 2014Salesforce.Com, Inc.System, method and computer program product for messaging in an on-demand database service
US878260517 Dec 201015 Jul 2014Salesforce.Com, Inc.Methods and systems for presenting different versions of an application
US878278517 Dec 201215 Jul 2014Salesforce.Com, Inc.System, method and computer program product for rendering data of an on-demand database service safe
US878851015 Aug 200822 Jul 2014Salesforce.Com, Inc.System, method, and computer program product for runtime invocation of an appropriate version of program instructions in an on-demand database
US878853220 Jun 201222 Jul 2014Salesforce.Com, Inc.Firewalls for securing customer data in a multi-tenant environment
US879369115 Apr 201129 Jul 2014Salesforce.Com, Inc.Managing and forwarding tasks to handler for processing using a message queue
US879923328 Jan 20115 Aug 2014Salesforce.Com, Inc.System, method and computer program product for validating one or more metadata objects
US879929815 Aug 20085 Aug 2014Salesforce.Com, Inc.On-demand database service system, method, and computer program product for enforcing the inclusion of tests in a developed application
US879932020 Jun 20125 Aug 2014Salesforce.Com, Inc.Firewalls for securing customer data in a multi-tenant environment
US87993271 Dec 20105 Aug 2014Salesforce.Com, Inc.System, method and computer program product for deriving commonalities among data entries
US881234617 Oct 201219 Aug 2014Salesforce.Com, Inc.Method and system for load balancing a sales forecast by selecting a synchronous or asynchronous process based on a type of event affecting the sales forecast
US881243816 Oct 201219 Aug 2014Salesforce.Com, Inc.System, method and computer program product for synchronizing data using data identifying messages
US881253321 May 200919 Aug 2014Salesforce.Com, Inc.System, method and computer program product for automatically presenting selectable options in a lookup field
US881263011 Aug 201119 Aug 2014Salesforce.Com, Inc.Session table framework
US88129778 Oct 201019 Aug 2014Salesforce.Com, Inc.Accessing multi-page data using a page index in a scrollbar
US881893831 Jan 201126 Aug 2014Salesforce.Com, Inc.System, method and computer program product for synchronizing entities within a system
US881894029 Mar 201126 Aug 2014Salesforce.Com, Inc.Systems and methods for performing record actions in a multi-tenant database and application system
US881898520 May 201126 Aug 2014Salesforce.Com, Inc.Rule-based prioritization of social data
US881906015 Apr 201126 Aug 2014Salesforce.Com, Inc.Virtual objects in an on-demand database environment
US881963216 Feb 201126 Aug 2014Salesforce.Com, Inc.Techniques for distributing information in a computer network related to a software anomaly
US882570411 Mar 20132 Sep 2014Salesforce.Com, Inc.System, method and computer program product for enabling access to a resource of a multi-tenant on-demand database service utilizing a token
US882645120 Dec 20102 Sep 2014Salesforce.Com, Inc.Mechanism for facilitating communication authentication between cloud applications and on-premise applications
US88320548 Mar 20139 Sep 2014Salesforce.Com, Inc.Method and system for sharing documents between on-demand services
US88320611 Jul 20119 Sep 2014Salesforce.Com, Inc.Optimizing data synchronization between mobile clients and database systems
US88385261 Nov 201116 Sep 2014Salesforce.Com, Inc.Systems and methods for supporting transactional message handling
US88388332 Apr 201016 Sep 2014Salesforce.Com, Inc.Providing on-demand access to services in a wide area network
US883920923 Feb 201116 Sep 2014Salesforce.Com, Inc.Software performance profiling in a multi-tenant environment
US883944822 May 201216 Sep 2014Salesforce.Com, Inc.Generation of a human readable output message in a format that is unreadable by a computer-based device
US88440132 Oct 201223 Sep 2014Salesforce.Com, Inc.Providing third party authentication in an on-demand service environment
US88498876 Jan 201230 Sep 2014Salesforce.Com, Inc.Mechanism for facilitating spin mode-based dynamic updating of application servers in an on-demand services environment
US885021912 Jan 201130 Sep 2014Salesforce.Com, Inc.Secure communications
US88626325 Jan 201114 Oct 2014Salesforce.Com, Inc.Customizing standard formula fields in a multi-tenant database system environment
US886311926 May 201114 Oct 2014Salesforce.Com, Inc.Methods and systems for generating a dynamic workflow in a multi-tenant database environment
US886325119 Mar 201214 Oct 2014Salesforce.Com, Inc.On-demand service security system and method for managing a risk of access as a condition of permitting access to the on-demand service
US88686052 May 201321 Oct 2014Salesforce.Com, Inc.System, method and computer program product for sharing tenant information utilizing a multi-tenant on-demand database service
US88689813 Nov 201021 Oct 2014Salesforce.Com, Inc.On-demand services environment testing framework
US886911417 Nov 201121 Oct 2014Salesforce.Com, Inc.Mechanism for facilitating customized data overriding for software programs in an on-demand services environment
US887459320 Oct 201128 Oct 2014Salesforce.Com, Inc.Testing data silo
US887512031 Jul 201228 Oct 2014Salesforce.Com, Inc.Methods and apparatus for providing software bug-fix notifications for networked computing systems
US887515221 Apr 201128 Oct 2014Salesforce.Com, Inc.System, method and computer program product for dynamically increasing resources utilized for processing tasks
US887525930 Apr 201328 Oct 2014Salesforce.Com, Inc.On-demand service security system and method for managing a risk of access as a condition of permitting access to the on-demand service
US888111314 Feb 20124 Nov 2014Salesforce.Com, Inc.Contextual exception management in multi-tenant systems
US88867661 Dec 201111 Nov 2014Salesforce.Com, Inc.Systems and methods for tracking responses on an online social network
US889257310 Sep 201318 Nov 2014Salesforce.Com, Inc.Methods and apparatus for selecting updates to associated records to publish on an information feed in an on-demand database service environment
US889818610 May 201125 Nov 2014Salesforce.Com, Inc.Methods and systems for latency-free contacts search
US889828724 Feb 201125 Nov 2014Salesforce.Com, Inc.System, method and computer program product for monitoring data activity utilizing a shared data store
US88985829 Mar 201125 Nov 2014Salesforce.Com, Inc.Configurable highlights panel for display of database records
US889863924 Oct 201225 Nov 2014Salesforce.Com, Inc.System, method and computer program product for automated test case generation and scheduling
US88986566 Jan 201225 Nov 2014Salesforce.Com, Inc.Mechanism for facilitating dynamic format transformation of software applications in an on-demand services environment
US889875319 Mar 201225 Nov 2014Salesforce.Com, Inc.On-demand service security system and method for managing a risk of access as a condition of permitting access to the on-demand service
US890377010 Feb 20112 Dec 2014Salesforce.Com, Inc.Methods and apparatus for discontinuing the following of records in an on-demand database service environment
US89038519 Nov 20112 Dec 2014Salesforce.Com, Inc.Systems and methods for exporting, publishing, browsing and installing on-demand applications in a multi-tenant database environment
US890394315 Aug 20112 Dec 2014Salesforce.Com, Inc.Integrating cloud applications and remote jobs
US89040117 Feb 20132 Dec 2014Salesforce.Com, Inc.Resolving information in a multitenant database environment
US89041666 Aug 20132 Dec 2014Salesforce.Com Inc.Secure client-side communication between multiple domains
US890454126 Aug 20102 Dec 2014Salesforce.Com, Inc.Performing security assessments in an online services system
US891012818 Jun 20129 Dec 2014Salesforce.Com, Inc.Methods and apparatus for application performance and capacity analysis
US891440510 May 201116 Dec 2014Salesforce.Com, Inc.Methods and systems for latency-free database queries
US89144227 Dec 201116 Dec 2014Salesforce.Com, Inc.Methods and systems for designing and building a schema in an on-demand services environment
US891443816 Dec 201016 Dec 2014Salesforce.Com, Inc.Methods and systems for providing a user interface in a multi-tenant database environment
US89145399 Sep 201016 Dec 2014Salesforce.Com, Inc.Service cloud console
US891836125 Sep 201323 Dec 2014Salesforce.Com, Inc.Methods and systems for recursive saving of hierarchical objects to a database
US892436120 Aug 201230 Dec 2014Salesforce.Com, Inc.Monitoring entitlement usage in an on-demand system
US892441910 Jan 201130 Dec 2014Salesforce.Com, Inc.Method and system for performing an authority analysis
US892504114 Dec 201030 Dec 2014Salesforce.Com, Inc.System, method and computer program product for performing one or more actions based on a determined access permissions for a plurality of users
US893032223 Oct 20136 Jan 2015Salesforce.Com, Inc.Methods and systems for bulk row save logic in an object relational mapping layer and application framework
US893032728 Apr 20116 Jan 2015Salesforce.Com, Inc.Method and system for scrubbing information from heap dumps
US893033230 Sep 20106 Jan 2015Salesforce.Com, Inc.Method and system for partitioning search indexes
US89309332 Nov 20106 Jan 2015Salesforce.Com, Inc.System, method and computer program product for associating a plurality of stored elements with a creation of a patch
US89351936 May 201113 Jan 2015Salesforce.Com, Inc.Methods and systems for performing email management customizations in a multi-tenant database system
US893536029 Sep 201113 Jan 2015Salesforce.Com, Inc.Techniques for metadata-driven dynamic content serving
US893580625 Oct 201113 Jan 2015Salesforce.Com, Inc.Mechanism for facilitating management of data in an on-demand services environment
US893852024 Aug 201220 Jan 2015Salesforce.Com, Inc.Methods and systems for smart adapters in a social media content analytics environment
US894301112 Jun 201227 Jan 2015Salesforce.Com, Inc.Methods and systems for using map-reduce for large-scale analysis of graph-based data
US89491858 Oct 20123 Feb 2015Salesforce.Com, Inc.Application update system, method and computer program product
US89492708 Mar 20123 Feb 2015Salesforce.Com, Inc.Methods and systems for processing social media data
US89544494 Apr 201210 Feb 2015Salesforce.Com, Inc.Method and system for determining a user's brand influence
US895458718 Nov 201110 Feb 2015Salesforce.Com, Inc.Mechanism for facilitating dynamic load balancing at application servers in an on-demand services environment
US895492315 Mar 201310 Feb 2015Salesforce.Com, Inc.Mechanism for facilitating dynamic interaction with development applications and tools an on-demand services enviroment
US895911424 Jul 201217 Feb 2015Salesforce.Com, Inc.Entitlement management in an on-demand system
US895934125 Jan 201017 Feb 2015Salesforce.Com, Inc.Methods and systems for sharing database content
US895934728 Mar 201217 Feb 2015Salesforce.Com, Inc.Methods and systems of data security in browser storage
US895948310 May 201117 Feb 2015Salesforce.Com, Inc.Test framework of visual components in a multitenant database environment
US896584624 Sep 201324 Feb 2015Salesforce.Com, Inc.Methods and systems for synchronizing data in a multi-tenant database environment
US896586020 Dec 201024 Feb 2015Salesforce.Com, Inc.Methods and systems for bulk uploading of data in an on-demand service environment
US89662508 Sep 200924 Feb 2015Salesforce.Com, Inc.Appliance, system, method and corresponding software components for encrypting and processing data
US896644012 Apr 201224 Feb 2015Salesforce.Com, Inc.Custom application creation in multi-tenant systems
US896657716 Oct 201324 Feb 2015Salesforce.Com, Inc.Method, system, and computer program product for facilitating communication in an interoperability network
US897233621 Feb 20133 Mar 2015Salesforce.Com, Inc.System and method for mapping source columns to target columns
US897242124 Jul 20123 Mar 2015Salesforce.Com, Inc.Systems and methods for propagating a global filter to individual datasets
US89724314 Aug 20103 Mar 2015Salesforce.Com, Inc.Synonym supported searches
US897243912 May 20113 Mar 2015Salesforce.Com, Inc.Method and system for exploring objects in a data dictionary
US897295312 Apr 20113 Mar 2015Salesforce.Com, Inc.Methods and systems for internally debugging code in an on-demand service environment
US89731063 May 20133 Mar 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for providing permissions to users in an on-demand service environment
US897764719 Apr 201310 Mar 2015Salesforce.Com, Inc.On-demand database service system, method and computer program product for conditionally allowing an application of an entity access to data of another entity
US89776756 Jul 201010 Mar 2015Salesforce.Com, Inc.Methods and systems for providing time and date specific software user interfaces
US89777138 Nov 201110 Mar 2015Salesforce.Com, Inc.Method, system, and computer program product for locating network files
US89777393 May 201110 Mar 2015Salesforce.Com, Inc.Configurable frame work for testing and analysis of client-side web browser page performance
US898400921 Apr 201117 Mar 2015Salesforce.Com, Inc.Methods and systems for utilizing bytecode in an on-demand service environment including providing multi-tenant runtime environments and systems
US89840515 Apr 201217 Mar 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for communicating feed information to one or more recipients
US898415620 Jul 201217 Mar 2015Salesforce.Com, Inc.Multi-party mesh conferencing with stream processing
US89844099 Sep 201017 Mar 2015Salesforce.Com, Inc.Service cloud console
US89844343 Apr 201417 Mar 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for dynamic windowing in user interfaces
US89901443 Oct 201324 Mar 2015Salesforce.Com, Inc.System, method and computer program product for performing one or more actions utilizing a uniform resource locator
US89902512 Oct 201224 Mar 2015Salesforce.Com, Inc.Techniques for changing perceivable stimuli associated with a user interfave for an on-demand database service
US899095815 Mar 201324 Mar 2015Salesforce.Com, Inc.Systems and methods for content management in an on demand environment
US899649312 Mar 201331 Mar 2015Salesforce.Com, Inc.System, method and computer program product for storing reports for use by tenants of a multi-tenant on-demand database service
US899655330 Nov 201231 Mar 2015Salesforce.Com, Inc.Mechanism for facilitating management and customization of lightweight objects in an on-demand services environment
US899656930 Nov 201231 Mar 2015Salesforce.Com, Inc.Mechanism for facilitating evaluation of data types for dynamic lightweight objects in an on-demand services environment
US89965748 Nov 201131 Mar 2015Salesforce.Com, Inc.System, method and computer program product for portal user data access in a multi-tenant on-demand database system
US899658818 Jul 201231 Mar 2015Salesforce.Com, Inc.Mechanism for facilitating dynamic management of assets in an on-demand services environment
US89966101 Oct 201031 Mar 2015Salesforce.Com, Inc.Proxy system, method and computer program product for utilizing an identifier of a request to route the request to a networked device
US899667422 Aug 201231 Mar 2015Salesforce.Com, Inc.System, method and computer program product for SNMP based mobile device management
US90028918 Nov 20117 Apr 2015Salesforce.Com, Inc.System, method and computer program product for portal user data access in a multi-tenant on-demand database system
US900736424 Aug 201214 Apr 2015Salesforce.Com, Inc.Augmented reality display apparatus and related methods using database record data
US900966915 Dec 201014 Apr 2015Salesforce.Com, Inc.Visual user interface validator
US900970916 Mar 201114 Apr 2015Salesforce.Com, Inc.Asynchronous rollup numbers forecasting methods and systems
US90154949 May 201221 Apr 2015Salesforce.Com, Inc.Methods and apparatus for digital steganography
US902137430 Mar 201128 Apr 2015Salesforce.Com, Inc.Systems and methods for generating a dashboard in a multi-tenant database system environment
US902143516 Dec 201028 Apr 2015Salesforce.Com, Inc.Methods and systems for providing a user interface in a multi-tenant database environment
US902656315 Mar 20135 May 2015Salesforce.Com, Inc.Mechanism for facilitating dynamic social media-based management of assets in an on-demand services environment
US902662419 Oct 20115 May 2015Salesforce.Com, Inc.Methods and systems for making effective use of system resources
US903195630 Nov 201212 May 2015Salesforce.Com, Inc.Mechanism for facilitating conversion and correction of data types for dynamic lightweight objects via a user interface in an on-demand services environment
US903195711 Mar 201112 May 2015Salesforce.Com, Inc.Structured data in a business networking feed
US903199630 Dec 201012 May 2015Salesforce.ComSystem, method and computer program product for creating a plurality of CNAMES for a website
US903248817 Apr 201312 May 2015Salesforce.Com, Inc.Cross instance user authentication architecture
US903754625 Mar 201119 May 2015Salesforce.Com, Inc.System, method and computer program product for automatic code generation for database object deletion
US90375618 Nov 201119 May 2015Salesforce.Com, Inc.Methods and systems for optimizing text searches over structured data in a multi-tenant environment
US903768118 Jun 201219 May 2015Salesforce.Com, Inc.Methods and systems for prioritizing multiple network feeds
US903772226 Apr 201119 May 2015Salesforce.Com, Inc.Resolving information in a multitenant database environment
US903807415 May 201219 May 2015Salesforce.Com, Inc.System, method and computer program product for recursively executing a process control operation to use an ordered list of tags to initiate corresponding functional operations
US904336226 Oct 201126 May 2015Salesforce.Com, Inc.Custom entities and fields in a multi-tenant database system
US90470707 Aug 20122 Jun 2015Salesforce.Com, Inc.System, method and computer program product for defining applications using metadata records created from an object specifying a predefined metadata format
US904747914 Sep 20092 Jun 2015Salesforce.Com, Inc.System, method and computer program product for providing a team object in association with an object
US905313213 Apr 20129 Jun 2015Salesforce.Com, Inc.System, method and computer program product for providing a team object in association with an object
US90531366 Jan 20119 Jun 2015Salesforce.Com, Inc.Systems and methods for identifying contacts as users of a multi-tenant database and application system
US905323110 Jan 20119 Jun 2015Salesforce.Com, Inc.Systems and methods for analyzing operations in a multi-tenant database system environment
US905830928 Dec 201016 Jun 2015Salesforce.Com, Inc.Methods and systems for multiple styling HyperText Markup Language (HTML) form fields
US905836120 Jul 201216 Jun 2015Salesforce.Com, Inc.Method and system for applying a group of instructions to metadata
US905836315 Aug 201216 Jun 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for providing a distribution list of users in an online social network
US905985122 Feb 201116 Jun 2015Salesforce.Com, Inc.Method and computer program product for order preserving symbol based encryption
US905998112 Mar 201316 Jun 2015Salesforce.Com, Inc.System, method, and computer program product for security verification of communications to tenants of an on-demand database service
US906363216 Jul 201323 Jun 2015Salesforce.Com, Inc.Systems and methods for interacting with records via a publisher and an information feed
US906428714 Aug 201223 Jun 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for providing group-related social network information
US906433912 Apr 201223 Jun 2015Salesforce.Com, Inc.Computer implemented systems and methods for providing a mobile social enterprise interface
US906944819 Apr 201130 Jun 2015Salesforce.Com, Inc.Filtering objects in a multi-tenant environment
US906959316 Aug 201130 Jun 2015Salesforce.Com, Inc.Systems and methods for deletion of untracked datastore paths
US90697881 Nov 201130 Jun 2015Salesforce.Com, Inc.Truncating data associated with objects in a multi-tenant database
US906980328 Jan 201130 Jun 2015Salesforce.Com, Inc.Application installation system, method and computer program product for allowing a package to be installed by a third party
US906985815 Mar 201330 Jun 2015Salesforce.Com, Inc.Systems and methods for identifying entity mentions referencing a same real-world entity
US906990121 Oct 201030 Jun 2015Salesforce.Com, Inc.Software and framework for reusable automated testing of computer software systems
US907013726 Aug 201430 Jun 2015Salesforce.Com, Inc.Methods and systems for compiling marketing information for a client
US90716586 Jan 201230 Jun 2015Salesforce.Com, Inc.Method and system for presenting a meeting in a cloud computing environment
US907567721 Mar 20117 Jul 2015Salesforce.Com, Inc.Methods and systems for automating deployment of applications in a database environment
US90757662 Jul 20137 Jul 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for determining whether to continue relationships in an online social network
US907588931 Oct 20127 Jul 2015Salesforce.Com, Inc.Mechanism for facilitating user-controlled management of site network mapping and synchronization
US907607230 Sep 20137 Jul 2015Salesforce.Com, Inc.System and method for web page rendering test automation suite
US908186913 Mar 201314 Jul 2015Salesforce.Com, Inc.System, method and computer program product for communicating data between a database and a cache
US90836014 May 201014 Jul 2015Salesforce.Com, Inc.Method, system, and computer program product for managing interchange of enterprise data messages
US90871286 Jul 201221 Jul 2015Salesforce.Com, Inc.System, method and computer program product for creating mobile custom views with filtering for tenants of an on-demand database service
US909250117 Aug 201228 Jul 2015Salesforce.Com, Inc.Custom entities and fields in a multi-tenant database system
US90943593 Dec 201228 Jul 2015Salesforce.Com, Inc.Method and system for inter-social network communications
US909836513 Oct 20104 Aug 2015Salesforce.Com, Inc.System, method and computer program product for conditionally enabling an installation aspect
US909853918 Jul 20144 Aug 2015Salesforce.Com, Inc.System, method and computer program product for enabling access to a resource of a multi-tenant on-demand database service utilizing a token
US909861813 Feb 20134 Aug 2015Salesforce.Com, Inc.Validating visual components
US91001833 Apr 20134 Aug 2015Salesforce.Com, Inc.Computer program product and method for order preserving symbol based encryption
US910024021 Oct 20134 Aug 2015Salesforce.Com, Inc.System, method and computer program product for performing a synchronization of data
US910448421 Apr 201111 Aug 2015Salesforce.Com, Inc.Methods and systems for evaluating bytecode in an on-demand service environment including translation of apex to bytecode
US910676112 Jan 201111 Aug 2015Salesforce.Com, Inc.Methods and apparatus for inviting users to follow records in an on-demand database service environment
US911095915 Mar 201318 Aug 2015Salesforce.Com, Inc.System and method for geo-location data type searching in an on demand environment
US911100616 Mar 201118 Aug 2015Salesforce.Com, Inc.System, method and computer program product for communicating data between a database and a cache
US911103110 Nov 201018 Aug 2015Salesforce.Com, Inc.Method and system for simulating and analyzing code execution in an on-demand service environment
US911700323 Dec 201025 Aug 2015Salesforce.Com, Inc.System, method and computer program product for navigating content on a single page
US912272222 Dec 20101 Sep 2015Salesforce.Com, Inc.Transforming queries in a multi-tenant database system
US912302831 Jan 20121 Sep 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for controlling the inclusion of edited information in an information feed
US91353042 Dec 200515 Sep 2015Salesforce.Com, Inc.Methods and systems for optimizing text searches over structured data in a multi-tenant environment
US913555618 Jan 201315 Sep 2015Salesforce.Com, Inc.System and method for fast evaluation of standing queries in conjunctive normal form
US91371245 Feb 201415 Sep 2015Salesforce.Com, Inc.System, method and computer program product for serving an application from a custom subdomain
US91371721 Apr 201315 Sep 2015Salesforce.Com, Inc.Managing multiple proxy servers in a multi-tenant application system environment
US914168423 Feb 201522 Sep 2015Salesforce.Com, Inc.Methods and systems for synchronizing data in a multi-tenant database environment
US914169011 May 201122 Sep 2015Salesforce.Com, Inc.Methods and systems for categorizing data in an on-demand database environment
US914198323 Jan 201322 Sep 2015Salesforce.Com, Inc.Shared data sets combined with user-specific purchased data sets
US914695114 Apr 201429 Sep 2015Salesforce.Com, Inc.Method and system for selecting amongst a plurality of processes to send a message
US91484386 May 201329 Sep 2015Salesforce.Com, Inc.System, method and computer program product for publishing non-malicious third party content to a data feed
US91526583 May 20136 Oct 2015Salesforce.Com, Inc.System, method and computer program product for providing a team object in association with an object
US915272520 Aug 20126 Oct 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for configuring and performing a custom rule to process a preference indication
US915279628 May 20146 Oct 2015Salesforce.Com, Inc.Dynamic analysis interpreter modification for application dataflow
US915498518 Jan 20136 Oct 2015Salesforce.Com, Inc.Mechanism for facilitating dynamic and segment-based monitoring of cellular network performance in an on-demand services environment
US916071030 Dec 201013 Oct 2015Salesforce.Com, Inc.Methods and systems for context-based application firewalls
US916499218 Dec 201420 Oct 2015Salesforce.Com, Inc.Application update system, method and computer program product
US916503621 Jun 201220 Oct 2015Salesforce.Com, Inc.Streaming transaction notifications
US917090830 Oct 201327 Oct 2015Salesforce.Com, Inc.System and method for dynamic analysis bytecode injection for application dataflow
US91710333 Jul 200827 Oct 2015Salesforce.Com, Inc.Method and system for allowing access to developed applications via a multi-tenant on-demand database service
US917103419 Apr 201027 Oct 2015Salesforce.Com, Inc.Method and system for allowing access to developed applications via a multi-tenant on-demand database service
US91710494 Nov 200227 Oct 2015Salesforce.Com, Inc.Offline simulation of online session between client and server
US917115030 Oct 201327 Oct 2015Salesforce.Com, Inc.System and method for dynamic analysis tracking objects for application dataflow
US917116930 Oct 201327 Oct 2015Salesforce.Com, Inc.System and method for dynamic analysis wrapper objects for application dataflow
US91711802 May 201427 Oct 2015Salesforce.Com, Inc.Social files
US917673011 Feb 20143 Nov 2015Salesforce.Com, Inc.On-demand database service system, method, and computer program product for validating a developed application
US917700714 Mar 20133 Nov 2015Salesforce.Com, Inc.Computer implemented methods and apparatus to interact with records using a publisher of an information feed of an online social network
US917707021 Jun 20113 Nov 2015Salesforce.Com, Inc.System, method and computer program product for performing actions associated with a portal
US917713730 Oct 20133 Nov 2015Salesforce.Com, Inc.System and method for dynamic analysis tracking object associations for application dataflow
US91787532 Jul 20123 Nov 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for providing access to an online social network
US917878818 Apr 20133 Nov 2015Salesforce.Com, Inc.System, method and computer program product for monitoring data activity utilizing a shared data store
US91830888 Mar 201110 Nov 2015Salesforce.Com, Inc.Reducing database downtime
US918309015 Mar 201310 Nov 2015Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing a streaming platform IO pump and regulator
US91832664 May 201010 Nov 2015Salesforce.Com, Inc.Method, system, and computer program product for synchronizing data
US918507818 Dec 201310 Nov 2015Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing cross organizational data sharing
US918514915 Mar 201310 Nov 2015Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing frame aggregation with screen sharing
US918534227 Sep 201310 Nov 2015Salesforce.Com, Inc.Systems and methods for implementing instant social image cobrowsing through the cloud
US91890906 Jul 201017 Nov 2015Salesforce.Com, Inc.Techniques for interpreting signals from computer input devices
US918936715 Sep 201017 Nov 2015Salesforce.Com, Inc.Methods and systems for debugging bytecode in an on-demand service environment
US91895212 Oct 201317 Nov 2015Salesforce.Com, Inc.Statistics management for database querying
US918953229 Nov 201117 Nov 2015Salesforce.Com, Inc.System, method and computer program product for locally defining related reports using a global definition
US91912919 Sep 201317 Nov 2015Salesforce.Com, Inc.Detection and handling of aggregated online content using decision criteria to compare similar or identical content items
US919543720 May 201424 Nov 2015Salesforce.Com, Inc.Object-oriented system for creating and managing websites and their content
US91954389 Oct 201324 Nov 2015Salesforce.Com, Inc.System, method and computer program product for creating an application within a system
US91956484 Oct 201224 Nov 2015Salesforce.Com, Inc.Multi-lingual knowledge base
US919568112 Jan 201124 Nov 2015Salesforce.Com, Inc.System, method and computer program product for transmitting a group of data elements
US919568731 May 201224 Nov 2015Salesforce.Com, Inc.System, method and computer program product for validating one or more metadata objects
US91957249 Feb 201224 Nov 2015Salesforce.Com, Inc.Associating objects in multi-tenant systems
US919572615 Mar 201324 Nov 2015Salesforce.Com, Inc.Mechanism for facilitating dynamic integration of disparate database architectures for efficient management of resources in an on-demand services environment
US919576029 Oct 201324 Nov 2015Salesforce.Com, Inc.Methods and systems for dynamically suggesting answers to questions submitted to a portal of an online service
US919583514 Feb 201324 Nov 2015Salesforce.Com, Inc.System and method for initializing tokens in a dictionary encryption scheme
US91958504 Mar 201424 Nov 2015Salesforce.Com, Inc.System, method and computer program product for sharing a single instance of a database stored using a tenant of a multi-tenant on-demand database system
US919585411 Oct 201324 Nov 2015Salesforce.Com, Inc.System and method for controlling the on and off state of features at runtime
US91959716 Jan 201224 Nov 2015Salesforce.Com, Inc.Method and system for planning a meeting in a cloud computing environment
US91975133 May 201324 Nov 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for representing a portion of a user interface as a network address
US920169614 Nov 20111 Dec 2015Salesforce.Com, Inc.Systems and techniques for utilizing resource aware queues and/or service sharing in a multi-server environment
US920190712 Apr 20121 Dec 2015Salesforce.Com, Inc.System, method and computer program product for providing a team object in association with an object
US92019391 Jun 20071 Dec 2015Salesforce.Com, Inc.Method and system for pushing data to a plurality of devices in an on-demand service environment
US92038816 Aug 20131 Dec 2015Salesforce.Com, Inc.Systems and methods of online social environment based translation of entity methods
US920393431 Jul 20121 Dec 2015Salesforce.com. inc.Synchronization of clocks between two communication terminals using TCP/IP
US920818724 Oct 20118 Dec 2015Salesforce.Com, Inc.Using a database system for selective inclusion and exclusion of types of updates to provide a configuration feed of a social networking system
US921509613 Aug 201215 Dec 2015Salesforce.Com, Inc.Computer implemented methods and apparatus for providing communication between network domains in a service cloud
US921842330 Apr 201322 Dec 2015Salesforce.Com, Inc.Methods and systems for dynamically suggesting answers to questions submitted to a portal of an online service
US92196783 Jun 201422 Dec 2015Salesforce.Com, Inc.Method, system, and computer program product for sending and receiving messages
US921977529 Apr 201322 Dec 2015Salesforce.Com, Inc.System, method and computer program product for publicly providing web content of a tenant using a multi-tenant on-demand database service
US92234802 May 201329 Dec 2015Salesforce.Com, Inc.Multiple stakeholders for a single business process
US922385223 Mar 201129 Dec 2015Salesforce.Com, Inc.Methods and systems for analyzing search terms in a multi-tenant database system environment
US922389229 Sep 201129 Dec 2015Salesforce.Com, Inc.Device abstraction for page generation
US922979322 Apr 20115 Jan 2016Salesforce.Com, Inc.System, method and computer program product for routing messages to a server
US922993415 Sep 20115 Jan 2016Salesforce.Com, Inc.Method and system for document integration
US92300683 Oct 20075 Jan 2016Salesforce.Com, Inc.Method and system for managing license objects to applications in an application platform
US923022423 Dec 20105 Jan 2016Salesforce.Com, Inc.Providing a timeline control in a multi-tenant database environment
US923176413 Feb 20155 Jan 2016Salesforce.Com, Inc.Methods and systems of data security in browser storage
US923533011 Feb 201512 Jan 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for dynamic windowing in user interfaces
US923561430 Aug 201312 Jan 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for feed-based case management
US92356314 May 201012 Jan 2016Salesforce.Com, Inc.Method, system, and computer program product for simulating an online session
US923572112 Nov 201412 Jan 2016Salesforce.Com, Inc.Mechanism for facilitating management of data in an on-demand services enviroment
US923584629 Aug 201312 Jan 2016Salesforce.Com, Inc.Systems, methods, and apparatuses for populating a table having null values using a predictive query interface
US923708018 Apr 201312 Jan 2016Salesforce.Com, Inc.System, method and computer program product for monitoring data activity utilizing a shared data store
US92371567 May 201312 Jan 2016Salesforce.Com, Inc.Systems and methods for administrating access in an on-demand computing environment
US923972231 Mar 201019 Jan 2016Salesforce.Com, Inc.System, method and computer program product for interacting with a process diagram
US924001629 Aug 201319 Jan 2016Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing predictive query interface as a cloud service
US92410173 Jul 201319 Jan 2016Salesforce.Com, Inc.Systems and methods for cross domain service component interaction
US924459913 Mar 201326 Jan 2016Salesforce.Com, Inc.Multiple stakeholders for a single business process
US924466013 Aug 201426 Jan 2016Salesforce.Com, Inc.Responsive self-service website template
US924495412 Sep 201426 Jan 2016Salesforce.Com, Inc.Customizing standard formula fields in a multi-tenant database system environment
US924499229 Feb 201226 Jan 2016Salesforce.Com, Inc.Method, system, and computer program product for simulating an online session
US924499512 May 201426 Jan 2016Salesforce.Com, Inc.Method and system for synchronizing a server and an on-demand database service
US92451457 Mar 201326 Jan 2016Salesforce.Com, Inc.Methods and systems for regulating database activity
US92452527 May 200926 Jan 2016Salesforce.Com, Inc.Method and system for determining on-line influence in social media
US924525730 Apr 201326 Jan 2016Salesforce.Com, Inc.System and method for generating a user profile based on skill information
US924669916 Feb 201126 Jan 2016Salesforce.Com, Inc.Method and system for testing multiple components of a multi-tenant, multi-domain, multi-tiered website
US924670716 Mar 201126 Jan 2016Salesforce.Com, Inc.Cost-based SMTP email routing
US924689211 Dec 201326 Jan 2016Salesforce.Com, Inc.System, method and computer program product for managing access to systems, products, and data based on information associated with a physical location of a user
US92469591 Aug 201326 Jan 2016Salesforce.Com, Inc.System and method for location-based social network feeds
US924705128 Feb 201426 Jan 2016Salesforce.Com, Inc.Systems and methods for tracking and responding to mobile events in a relationship management system
US925116428 Feb 20112 Feb 2016Salesforce.Com, Inc.System, method and computer program product for using a database to access content stored outside of the database
US925120423 Jun 20112 Feb 2016Salesforce.Com, Inc.Static query optimization
US925122929 Feb 20122 Feb 2016Salesforce.Com, Inc.Method, system, and computer program product for simulating an online session
US925123913 May 20092 Feb 2016Salesforce.Com, Inc.System, method and computer program product for applying a public tag to information
US925124016 Apr 20122 Feb 2016Salesforce.Com, Inc.System, method and computer program product for portal user data access in a multi-tenant on-demand database system
US925297613 Dec 20122 Feb 2016Salesforce.Com, Inc.Method and system for social media cooperation protocol
US92532242 May 20132 Feb 2016Salesforce.Com, Inc.Method and system for on-demand communities
US925328311 Sep 20132 Feb 2016Salesforce.Com, Inc.Systems and methods for ghosting and providing proxies in a network feed
US925685926 Jul 20129 Feb 2016Salesforce.Com, Inc.Systems and methods for fragmenting newsfeed objects
US926203714 Mar 201316 Feb 2016Salesforce.Com, Inc.Selective capture of incoming email messages for diagnostic analysis
US92621375 Jan 201116 Feb 2016Salesforce.Com, Inc.Adding directives for versions of javascript files directly into source code in a multi-tenant database environment
US92621385 Jan 201116 Feb 2016Salesforce.Com, Inc.Adding directives for JavaScript files directly into source code in a multi-tenant database environment
US926239317 Feb 201116 Feb 2016Salesforce.Com, Inc.Method and system for providing simplified form filling in an on-demand service
US926245631 Jan 201416 Feb 2016Salesforce.Com, Inc.Method and system for managing recent data in a mobile device linked to an on-demand service
US926438817 May 201316 Feb 2016Salesforce.Com, Inc.Re-routing incoming email for a multi-tenant database system
US926439128 Dec 201216 Feb 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for providing near real-time predicted engagement level feedback to a user composing a social media message
US926860515 Mar 201323 Feb 2016Salesforce.Com, Inc.Mechanism for facilitating sliding window resource tracking in message queues for fair management of resources for application servers in an on-demand services environment
US926882225 Apr 201323 Feb 2016Salesforce.Com, Inc.System and method for determining organizational hierarchy from business card data
US926895514 Mar 201123 Feb 2016Salesforce.Com, Inc.System, method and computer program product for conditionally sharing an object with one or more entities
US926896323 Jan 201523 Feb 2016Salesforce.Com, Inc.On-demand database service system, method and computer program product for conditionally allowing an application of an entity access to data of another entity
US927503325 Mar 20111 Mar 2016Salesforce.Com, Inc.System, method and computer program product for creating an object within a system, utilizing a template
US927508223 Jan 20131 Mar 2016Salesforce.Com, Inc.User-extensible common schema in a shared database
US927509412 Nov 20101 Mar 2016Salesforce.Com, Inc.Security in enterprise level business information networking
US927509812 Jun 20131 Mar 2016Salesforce.Com, Inc.Techniques for implementing batch processing in a database system
US927510514 Sep 20121 Mar 2016Salesforce.Com, Inc.System and methods of improving a multi-tenant database query using contextual knowledge about non-homogeneously distributed tenant data
US927516018 Nov 20101 Mar 2016Salesforce.Com, Inc.Performing an upgrade in a multi-tenant database system environment
US927525318 Sep 20141 Mar 2016Salesforce.Com, Inc.System, method and computer program product for sharing tenant information utilizing a multi-tenant on-demand database service
US927685610 Oct 20121 Mar 2016Salesforce.Com, Inc.Slipstream bandwidth management algorithm
US92769958 Jan 20151 Mar 2016Salesforce.Com, Inc.Techniques for metadata-driven dynamic content serving
US92774329 Oct 20141 Mar 2016Salesforce.Com, Inc.Systems and methods for automated on-device performance testing of mobile applications
US928038723 Aug 20128 Mar 2016Salesforce.Com, Inc.Systems and methods for assigning code lines to clusters with storage and other constraints
US92805967 Apr 20118 Mar 2016Salesforce.Com, Inc.Method and system for scoring articles in an on-demand services environment
US928634324 Jun 201315 Mar 2016Salesforce.Com, Inc.Statistics mechanisms in multitenant database environments
US928636425 Jan 201015 Mar 2016Salesforce.Com Inc.Methods and systems for sharing information in a supply chain
US928810829 Aug 201415 Mar 2016Salesforce.Com, Inc.Mechanism for facilitating spin mode-based dynamic updating of application servers in an on-demand services environment
US929218130 Apr 201322 Mar 2016Salesforce.Com, Inc.Filtering objects in a multi-tenant environment
US92925344 Sep 201422 Mar 2016Salesforce.Com, Inc.Sharing information between tenants of a multi-tenant database
US92925894 Sep 201322 Mar 2016Salesforce.Com, Inc.Identifying a topic for text using a database system
US92944326 Feb 201522 Mar 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for communicating feed information to one or more recipients
US929471930 Jun 201422 Mar 2016Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing in-app live support functionality
US92987509 Nov 201129 Mar 2016Salesforce.Com, Inc.System, method and computer program product for validating one or more metadata objects
US92988422 May 201329 Mar 2016Salesforce.Com, Inc.System, method and computer program product for publicly providing web content of a subscriber of an on-demand database service
US930461430 Dec 20105 Apr 2016Salesforce.Com, Inc.Framework for custom actions on an information feed
US930687814 Feb 20125 Apr 2016Salesforce.Com, Inc.Intelligent automated messaging for computer-implemented devices
US930690625 Mar 20145 Apr 2016Salesforce.Com, Inc.Systems and methods for utilizing uni-directional inter-host communication in an air gap environment
US930700611 Apr 20135 Apr 2016Salesforce.Com, Inc.System and method for synchronizing data objects in a cloud based social networking environment
US93116643 Jan 201112 Apr 2016Salesforce.Com, Inc.Systems and methods for automatically collection of performance data in a multi-tenant database system environment
US932363427 Mar 201226 Apr 2016Salesforce.Com, Inc.Generating a configuration file based upon an application registry
US932380418 Apr 201326 Apr 2016Salesforce.Com, Inc.Method and system for allowing access to developed applications via a multi-tenant on-demand database service
US932575026 Jul 201226 Apr 2016Salesforce.Com, Inc.Method and system for viewing a contact network feed in a business directory environment
US933014515 Feb 20133 May 2016Salesforce.Com, Inc.Systems and methods for context-aware message tagging
US933653329 Aug 201310 May 2016Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing a similar command with a predictive query interface
US934283629 Aug 201317 May 2016salesforces.com, Inc.Systems, methods, and apparatuses for implementing a predict command with a predictive query interface
US934436725 Sep 201317 May 2016Salesforce.Com, Inc.Slipstream bandwidth management algorithm
US93485762 Dec 201324 May 2016Salesforce.Com, Inc.Methods and systems for upgrading and installing application packages to an application platform
US93486147 Mar 201224 May 2016Salesforce.Com, Inc.Verification of shared display integrity in a desktop sharing system
US934864815 Mar 201324 May 2016Salesforce.Com, Inc.Providing a routing framework for facilitating dynamic workload scheduling and routing of message queues for fair management of resources for application servers in an on-demand services environment
US93489103 May 201324 May 2016Salesforce.Com, Inc.System, method and computer program product for creating mobile custom views for tenants of an on-demand database service
US934910129 Aug 201424 May 2016Salesforce.Com, Inc.Systems and methods for partitioning sets of features for a bayesian classifier
US934913229 Aug 201324 May 2016Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing a group command with a predictive query interface
US935070530 Dec 201024 May 2016Salesforce.Com, Inc.Methods and systems for providing a token-based application firewall correlation
US935527021 Dec 201031 May 2016Salesforce.Com, Inc.Security configuration systems and methods for portal users in a multi-tenant database environment
US936135026 Mar 20107 Jun 2016Salesforce.Com, Inc.Data transfer between first and second databases
US93613663 Jun 20087 Jun 2016Salesforce.Com, Inc.Method and system for controlling access to a multi-tenant database system using a virtual portal
US936146828 Feb 20137 Jun 2016Salesforce.Com, Inc.Method and system for granting access to secure data
US936743126 Sep 201214 Jun 2016Salesforce.Com, Inc.Testing data silo
US936762619 Jul 201314 Jun 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for implementing a topical-based highlights filter
US93676434 Apr 201414 Jun 2016Salesforce.Com, Inc.Methods and apparatus for suppressing network feed activities using an information feed in an on-demand database service environment
US936785329 Aug 201314 Jun 2016Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing data upload, processing, and predictive query API exposure
US936787618 Sep 201014 Jun 2016Salesforce.Com, Inc.Systems and methods for multimedia multipoint real-time conferencing allowing real-time bandwidth management and prioritized media distribution
US936946812 Aug 201414 Jun 2016Salesforce.Com, Inc.Generation of a visually obfuscated representation of an alphanumeric message that indicates availability of a proposed identifier
US937822721 Jan 201428 Jun 2016Salesforce.Com, Inc.Systems and methods for exporting, publishing, browsing and installing on-demand applications in a multi-tenant database environment
US937826310 Apr 201328 Jun 2016Salesforce.Com, Inc.Method and system for creating indices and loading key-value pairs for NoSQL databases
US937839230 Sep 201328 Jun 2016Salesforce.Com, Inc.Methods and systems for controlling access to custom objects in a database
US93839883 Jul 20135 Jul 2016Salesforce, Inc.System and method for using directed acyclic graph (DAG) for application updates
US939042829 Aug 201312 Jul 2016Salesforce.Com, Inc.Systems, methods, and apparatuses for rendering scored opportunities using a predictive query interface
US939588112 Jul 201219 Jul 2016Salesforce.Com, Inc.Methods and systems for navigating display sequence maps
US939588224 Aug 201219 Jul 2016Salesforce.Com, Inc.Systems and methods for promoting related lists
US939623120 Jun 201319 Jul 2016Salesforce.Com, Inc.Facilitating dynamically controlled fetching of data at client computing devices in an on-demand services environment
US93962424 Oct 201119 Jul 2016Salesforce.Com, Inc.Multi-master data replication in a distributed multi-tenant system
US939752111 Jan 201319 Jul 2016Salesforce.Com, Inc.Site management in an on-demand system
US939815613 Feb 201419 Jul 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for managing agent workload in a customer service environment
US940084021 Mar 201426 Jul 2016Salesforce.Com, Inc.Combining topic suggestions from different topic sources to assign to textual data items
US940542628 Dec 20102 Aug 2016Salesforce.Com, Inc.Method and system for providing an adaptive input user interface for data entry applications
US940579721 Mar 20142 Aug 2016Salesforce.Com, Inc.Methods and systems for joining indexes for query optimization in a multi-tenant database
US94058968 Jul 20112 Aug 2016Salesforce.Com, Inc.Inter-application management of user credential data
US940760330 Dec 20102 Aug 2016Salesforce.Com, Inc.Methods and systems for providing context-based outbound processing application firewalls
US94076062 Oct 20152 Aug 2016Salesforce.Com, Inc.Methods and systems for context-based application firewalls
US941185212 Jun 20139 Aug 2016Salesforce.Com, Inc.Techniques for processing group membership data in a multi-tenant database system
US941185516 Jun 20119 Aug 2016Salesforce.Com, Inc.Triggering actions in an information feed system
US941190728 Dec 20109 Aug 2016Salesforce.Com, Inc.Method and system for performing searches in a multi-tenant database environment
US94178406 May 201516 Aug 2016Salesforce.Com, Inc.In-memory buffer service
US941800324 Sep 201316 Aug 2016Salesforce.Com, Inc.System, method and computer program product for conditionally performing garbage collection
US941807710 Jul 201516 Aug 2016Salesforce.Com, Inc.System and method for geo-location data type searching in an on demand environment
US941986317 Mar 201416 Aug 2016Salesforce.Com, Inc.Methods and apparatus for interfacing with a phone system in an on-demand service environment
US942010418 Aug 201516 Aug 2016Salesforce.Com, Inc.Systems and methods for an omni-channel routing broker
US942428330 Sep 201523 Aug 2016Salesforce.Com, Inc.Social files
US94243298 Sep 201423 Aug 2016Salesforce.Com, Inc.Optimizing data synchronization between mobile clients and database systems
US94243369 Aug 201323 Aug 2016Salesforce.Com, Inc.Facilitating distributed data processing for dynamic and efficient generation of search results in an on-demand services environment
US942614230 Dec 201023 Aug 2016Salesforce.Com, Inc.Systems and methods for logging into an application on a second domain from a first domain in a multi-tenant database system environment
US94262495 Aug 201423 Aug 2016Salesforce.Com, Inc.Providing an improved web user interface framework for building web applications
US943053629 Apr 201330 Aug 2016Salesforce.Com, Inc.System, method and computer program product for creating a visual component for tenants of an on-demand database service
US943058310 Jun 201130 Aug 2016Salesforce.Com, Inc.Extracting a portion of a document, such as a web page
US94306702 Feb 201530 Aug 2016Salesforce.Com, Inc.Method, system, and computer program product for locating network files
US943232014 Mar 201330 Aug 2016Salesforce.Com, Inc.System and method for providing an information-centric application
US943634520 Jun 20126 Sep 2016Salesforce.Com, Inc.Method and system for customizing a user interface to an on-demand database service
US94367017 Jun 20136 Sep 2016Salesforce.Com, Inc.Methods and systems for regulating user engagement
US943683713 Mar 20136 Sep 2016Salesforce.Com, Inc.System, method and computer program product for messaging in an on-demand database service
US943684130 Apr 20146 Sep 2016Salesforce.Com, Inc.Enhanced system security
US944271313 Jun 201413 Sep 2016Salesforce.Com, Inc.System, method and computer program product for deploying an update between environments of a multi-tenant on-demand database system
US944277825 Sep 201313 Sep 2016Salesforce.Com, Inc.Method and system for secured inter-application communication in mobile devices
US944278324 Jun 201113 Sep 2016Salesforce.Com, Inc.Methods and systems for providing security for page framing
US944297429 Aug 201313 Sep 2016Salesforce.Com, Inc.Systems, methods and techniques for polymorphic queries
US94430072 Nov 201113 Sep 2016Salesforce.Com, Inc.Tools and techniques for extracting knowledge from unstructured data retrieved from personal data sources
US94432248 Jun 201113 Sep 2016Salesforce.Com, Inc.Systems, apparatus and methods for selecting updates to associated records to publish on an information feed
US944322511 Oct 201213 Sep 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for presentation of feed items in an information feed to be displayed on a display device
US944485710 Nov 201513 Sep 2016Salesforce.Com, Inc.Systems and methods for implementing instant social image cobrowsing through the cloud
US94487733 Apr 201420 Sep 2016Salesforce.Com, Inc.Systems and methods for implementing a uniform application user interface across a multi-tenant environment
US944910229 Jun 201520 Sep 2016Salesforce.Com, Inc.System, method and computer program product for enabling access to a resource utilizing a token
US945089613 Aug 201320 Sep 2016Salesforce.Com, Inc.Methods and systems for providing customized domain messages
US945094629 Jun 201520 Sep 2016Salesforce.Com, Inc.Secure identity federation for non-federated systems
US945476729 Aug 201327 Sep 2016Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing a related command with a predictive query interface
US94560383 Feb 201427 Sep 2016Salesforce.Com, Inc.Session table framework
US945604410 Jan 201427 Sep 2016Salesforce.Com, Inc.Business networking information feed alerts
US946044228 Aug 20154 Oct 2016Salesforce.Com, Inc.Sensor data gathering
US94604742 May 20144 Oct 2016Salesforce.Com, Inc.Providing access to a private resource in an enterprise social networking system
US94620025 Dec 20144 Oct 2016Salesforce.Com, Inc.System, method, and computer program product for sharing files based on user profile visibility
US94657203 Mar 201511 Oct 2016Salesforce.Com, Inc.Methods and systems for internally debugging code in an on-demand service environment
US946580630 Mar 201511 Oct 2016Salesforce.Com, Inc.Mechanism for facilitating evaluation of data types for dynamic lightweight objects in an on-demand services environment
US946582822 Jan 201411 Oct 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for identifying similar labels using collaborative filtering
US946584717 Aug 201211 Oct 2016Salesforce.Com, Inc.Methods and systems for optimizing text searches over structured data in a multi-tenant environment
US946588517 Aug 201111 Oct 2016Salesforce.Com, Inc.Method and system for providing information to a mobile handheld device from a database system
US946740521 Jul 201511 Oct 2016Salesforce.Com, Inc.Routing messages between applications
US946742423 Aug 201211 Oct 2016Salesforce.Com, Inc.Methods and systems for proxying data
US94674347 Jul 201411 Oct 2016Salesforce.Com, Inc.Document rendering service
US946756418 Apr 201411 Oct 2016Salesforce.Com, Inc.Methods and systems for partially updating a web page using an embedded iFrame
US946885519 Oct 201118 Oct 2016Salesforce.Com, Inc.Systems and methods for creating and joining tournaments in a multi-tenant database system environment
US947161927 Jul 201518 Oct 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for controlling the inclusion of edited information in an information feed
US947164813 Jan 201118 Oct 2016Salesforce.Com, Inc.System, method and computer program product for displaying one or more data sets to a user
US947166618 Jan 201218 Oct 2016Salesforce.Com, Inc.System and method for supporting natural language queries and requests against a user's personal data cloud
US947344320 Apr 201518 Oct 2016Salesforce.Com, Inc.Methods and systems for sharing email in a multitenant database system
US947346816 Sep 201518 Oct 2016Salesforce.Com, Inc.Methods and systems of data security in browser storage
US947353623 Feb 201518 Oct 2016Salesforce.Com, Inc.Method, system, and computer program product for facilitating communication in an interoperability network
US947736912 Nov 201025 Oct 2016Salesforce.Com, Inc.System, method and computer program product for displaying a record as part of a selected grouping of data
US94774492 Dec 201525 Oct 2016Salesforce.Com, Inc.Responsive self-service website template
US947769821 Feb 201325 Oct 2016Salesforce.Com, Inc.System and method for inferring reporting relationships from a contact database
US947776829 Jun 201525 Oct 2016Salesforce.Com, Inc.Disambiguation of online social mentions
US947938724 Jun 201325 Oct 2016Salesforce.Com, Inc.Methods and systems for priority-based notifications for mobile devices
US947956315 Mar 201325 Oct 2016Salesforce.Com, Inc.Adaptive configuration management databases
US948352621 Mar 20141 Nov 2016Salesforce.Com, Inc.Automatically subscribing users of an enterprise network to a record
US948941530 Aug 20138 Nov 2016Salesforce.Com, Inc.System and method for updating infographics based on multiple online social networks
US948966012 Jul 20128 Nov 2016Salesforce.Com, Inc.Methods and systems for public collaborative interface for private network groups
US949112621 Jul 20158 Nov 2016Salesforce.Com, Inc.Routing messages between applications
US94911809 Mar 20168 Nov 2016Salesforce.Com, Inc.System, method and computer program product for publicly providing web content using a multi-tenant system
US949507925 Feb 201315 Nov 2016Salesforce.Com, Inc.Persistent feeder component for displaying feed items received from information feeds of online social networks
US949528220 Jan 201115 Nov 2016Salesforce.Com, Inc.Method and systems for a dashboard testing framework in an online demand service environment
US94953425 Sep 201315 Nov 2016Salesforce.Com, Inc.System and method for automatically inserting correct escaping functions for field references in a multi-tenant computing environment
US949540321 Feb 201315 Nov 2016Salesforce.Com, Inc.Method and system for cleaning data in a customer relationship management system
US949541120 Sep 201315 Nov 2016Salesforce.Com, Inc.Increased parallelism performance of batch requests
US94954309 Aug 201315 Nov 2016Salesforce.ComSystems and methods for batch processing of data records in an on-demand system
US949555718 Sep 201315 Nov 2016Salesforce.Com, Inc.Methods and systems for managing access to data in an on-demand system
US950145323 Dec 200722 Nov 2016Salesforce.Com Inc.Method and system for a flexible-data column user interface
US950151410 Sep 201022 Nov 2016Salesforce.Com, Inc.Systems and methods for implementing customized drop-down menus
US950166130 Jun 201422 Nov 2016Salesforce.Com, Inc.Systems and methods for implementing an encrypted search index
US950350112 Sep 201322 Nov 2016Salesforce.Com, Inc.Cross domain in-browser proxy
US950353514 Feb 201322 Nov 2016Salesforce.Com, Inc.Computer implemented methods and apparatus for automatically following entities in an online social network
US950762723 Oct 201329 Nov 2016Salesforce.Com, Inc.Methods and systems for batch processing in an on-demand service environment
US950782223 Apr 201329 Nov 2016Salesforce.Com, Inc.Methods and systems for optimizing queries in a database system
US95078729 Jul 201429 Nov 2016Salesforce.Com, Inc.Accessing multi-page data using a page index in a scrollbar
US950794010 Aug 201029 Nov 2016Salesforce.Com, Inc.Adapting a security tool for performing security analysis on a software application
US950795729 Feb 201629 Nov 2016Salesforce.Com, Inc.Providing features in a database system environment
US950971518 Feb 201529 Nov 2016Salesforce.Com, Inc.Phishing and threat detection and prevention
US951954716 Sep 201413 Dec 2016Salesforce.Com, Inc.Systems and methods for supporting transactional message handling
US951963030 Jun 201413 Dec 2016Salesforce.Com, Inc.Fast CSS parser engineered for runtime use
US951971131 Dec 201313 Dec 2016Salesforce.Com, Inc.Integrating and managing social networking information in an on-demand database system
US951980119 Dec 201313 Dec 2016Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing data masking via compression dictionaries
US95210403 Apr 201413 Dec 2016Salesforce.Com, Inc.System and method for generic configuration management system application programming interface
US95241575 Aug 201420 Dec 2016Salesforce.Com, Inc.Providing an improved web user interface framework for building web applications
US95241857 Jul 201520 Dec 2016Salesforce.Com, Inc.Methods and systems for automating deployment of applications in a multi-tenant database environment
US952572011 Feb 201620 Dec 2016Salesforce.Com, Inc.Techniques for metadata-driven dynamic content serving
US952948816 Jul 201327 Dec 2016Salesforce.Com, Inc.Systems and methods for creating custom actions
US952962615 Mar 201327 Dec 2016Salesforce.Com, Inc.Facilitating equitable distribution of thread resources for job types associated with tenants in a multi-tenant on-demand services environment
US95296527 Nov 201427 Dec 2016Salesforce.Com, Inc.Triaging computing systems
US95296983 Mar 201127 Dec 2016Salesforce.Com, Inc.Method and system for multi-mode testing through operation interface and scenario abstraction in a multi-tenant database environment
US952991721 May 201327 Dec 2016Saleforce.com, inc.System and method for generating information feed based on contextual data
US953001512 Mar 201327 Dec 2016Salesforce.Com, Inc.System, method and computer program product for messaging in an on-demand database service
US953557324 Aug 20123 Jan 2017Salesforce.Com, Inc.Systems and methods for dynamic list views and detail pages
US953594129 Oct 20133 Jan 2017Salesforce.Com, Inc.Systems and methods for data object change history
US953596710 Sep 20093 Jan 2017Salesforce.Com, Inc.Method and system for providing efficient and complex database functionality to a mobile device
US953837720 Mar 20153 Jan 2017Salesforce.Com, Inc.Switching between restricted-access websites on mobile user devices
US954237219 Feb 201510 Jan 2017Salesforce.Com, Inc.System, method and computer program product for performing one or more actions utilizing a uniform resource locator
US95424289 Oct 201210 Jan 2017Salesforce.Com, Inc.Systems and methods for real-time de-duplication
US954247218 Apr 201410 Jan 2017Salesforce.Com, Inc.Facilitating collaboration on a record among a group of users of a feed-based enterprise network
US95427112 Jul 201210 Jan 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for providing selective notifications in an online social network
US954286430 Mar 201510 Jan 2017Salesforce.Com, Inc.Methods and apparatus for digital steganography
US954430729 Oct 201410 Jan 2017Salesforce.Com, Inc.Providing a security mechanism on a mobile device
US95476896 Oct 201417 Jan 2017Salesforce.Com, Inc.Security descriptors for record access queries
US95537839 Sep 201324 Jan 2017Salesforce.Com, Inc.Spam flood detection methodologies
US955821818 May 201531 Jan 2017Salesforce.Com, Inc.Truncating data associated with objects in a multi-tenant database
US95582773 Apr 201331 Jan 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for identifying topical influence in an online social network
US956368029 Dec 20157 Feb 2017Salesforce.Com, Inc.Method and system for document integration
US9563712 *16 Apr 20127 Feb 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for providing internal custom feed items
US956518219 Jul 20147 Feb 2017Salesforce.Com, Inc.Managing access to an on-demand service
US956906025 Jul 201314 Feb 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for composing and batch publishing feed items in a feed-based interaction context
US956923817 Sep 201414 Feb 2017Salesforce.Com, Inc.Methods and systems for generating a dynamic workflow in a multi-tenant database environment
US95694783 Jun 201514 Feb 2017Salesforce.Com, Inc.Following data records in an information feed
US956950929 Aug 201314 Feb 2017Salesforce.Com, Inc.Optimizing result presentation of a database operation
US956951126 Jul 201214 Feb 2017Salesforce.Com, Inc.Dynamic data management
US957261431 Oct 201221 Feb 2017Salesforce.Com, Inc.Mechanism for facilitating user-controlled management of webpage elements for dynamic customization of information
US95758714 Sep 201321 Feb 2017Salesforce.Com, Inc.System and method for dynamically debugging data in a multi-tenant database environment
US957783514 Jul 201421 Feb 2017Salesforce.Com, Inc.Online chats without displaying confidential information
US958450512 May 201528 Feb 2017Salesforce.Com, Inc.Cross instance user authentication architecture
US958882827 Jan 20147 Mar 2017Salesforce.Com, Inc.System and method for routing messages between applications
US958898230 Jul 20147 Mar 2017Salesforce.Com, Inc.Method and system for sharing documents between on-demand services
US95890703 Aug 20127 Mar 2017Salesforce.Com, Inc.Method and system for updating a filter logic expression representing a boolean filter
US95893069 Mar 20157 Mar 2017Salesforce.Com, Inc.Structured data in a business networking feed
US959094323 Oct 20147 Mar 2017Salesforce.Com, Inc.Offline prompts of online social network mentions
US959109025 Apr 20127 Mar 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for sharing data of an information feed of an online social network
US95947907 Nov 201314 Mar 2017Salesforce.Com, Inc.System and method for evaluating claims to update a record from conflicting data sources
US959624620 Jan 201514 Mar 2017Salesforce.Com, Inc.Provisioning access to customer organization data in a multi-tenant system
US96001559 Jul 201421 Mar 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for customizing a data interface in an on-demand service environment
US96005104 Dec 201521 Mar 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for feed-based case management
US960051210 Sep 201021 Mar 2017Salesforce.Com, Inc.Systems and methods for implementing customized drop-down menus
US960057517 Feb 201221 Mar 2017Salesforce.Com, Inc.System, method and computer program product for creating mobile custom views for tenants of an on-demand database service
US960259725 Mar 201621 Mar 2017Salesforce.Com, Inc.System and method for synchronizing data objects in a cloud based social networking environment
US960703428 Sep 201528 Mar 2017Salesforce.Com, Inc.System, method and computer program product for monitoring data activity utilizing a shared data store
US960709021 Jan 201428 Mar 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for recommending events
US961315231 Oct 20144 Apr 2017Salesforce.Com, Inc.Methods and apparatus for discontinuing the following of records in an on-demand database service environment
US961332624 Jul 20124 Apr 2017Salesforce.Com, Inc.Method and system for filtering common fields across multiple data sets
US961945811 Jun 201311 Apr 2017Salesforce.Com, Inc.System and method for phrase matching with arbitrary text
US961952412 May 201411 Apr 2017Salesforce.Com, Inc.Personalizing scoping and ordering of object types for search
US961953030 Apr 201311 Apr 2017Salesforce.Com, Inc.System, method and computer program product for displaying one or more data sets to a user
US961953424 Feb 201111 Apr 2017Salesforce.Com, Inc.Probabilistic tree-structured learning system for extracting contact data from quotes
US961964228 Aug 201511 Apr 2017Salesforce.Com, Inc.Unicode-based image generation and testing
US96196521 Nov 201011 Apr 2017Salesforce.Com, Inc.System, method and computer program product for determining a risk score for an entity
US961965520 Mar 201511 Apr 2017Salesforce.Com, Inc.Cloud-based security profiling, threat analysis and intelligence
US962148818 Aug 201511 Apr 2017Salesforce.Com, Inc.Method and system for selecting amongst a plurality of processes to send a message
US96264198 Sep 201418 Apr 2017Salesforce.Com, Inc.Optimizing data synchronization between mobile clients and database systems
US962652331 Dec 201318 Apr 2017Salesforce.Com, Inc.Systems and methods of audit trailing of data incorporation
US962663715 Mar 201318 Apr 2017Salesforce.Com, Inc.Method and system for managing business deals
US96284127 May 201318 Apr 2017Salesforce.Com, Inc.System and method for generic loop detection
US96284933 Jul 201318 Apr 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for managing permission sets and validating user assignments
US963284921 Dec 201525 Apr 2017Salesforce.Com, Inc.System having in-memory buffer service, temporary events file storage system and events file uploader service
US963285218 Mar 201525 Apr 2017Salesforce.Com, Inc.Detecting and managing flooding of multi-tenant message queues
US963310112 Mar 201325 Apr 2017Salesforce.Com, Inc.System, method and computer program product for portal user data access in a multi-tenant on-demand database system
US963497730 Aug 201325 Apr 2017Salesforce.Com, Inc.Systems and methods of redactive messaging
US963509030 Nov 201525 Apr 2017Salesforce.Com, Inc.Device abstraction for page generation
US963955610 Feb 20152 May 2017Salesforce.Com, Inc.Methods and systems for sharing database content
US96396162 Oct 20122 May 2017Salesforce.Com, Inc.Methods and systems for performing time-partitioned collaborative filtering
US964134921 Apr 20142 May 2017Salesforce.Com, Inc.Systems and methods of viral enablement of features by peer-to-peer connection
US96416858 Aug 20162 May 2017Salesforce.Com, Inc.Systems and methods for an omni-channel routing broker
US964571215 Dec 20049 May 2017Grand Central Communications, Inc.Multiple stakeholders for a single business process
US964606425 Jun 20159 May 2017Salesforce.Com, Inc.Template based software container
US964606830 Jun 20159 May 2017Salesforce.Com, Inc.System, method and computer program product for performing a synchronization of data
US964616910 Nov 20159 May 2017Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing cross organizational data sharing
US964624621 Feb 20139 May 2017Salesforce.Com, Inc.System and method for using a statistical classifier to score contact entities
US964792215 May 20149 May 2017Salesforce, Inc.Computer implemented methods and apparatus for trials onboarding
US965880121 Dec 201523 May 2017Salesforce.Com, Inc.System having in-memory buffer service, temporary events file storage system and backup events file uploader service
US965893328 Jun 201323 May 2017Salesforce.Com, Inc.Automatically modifying a test for a program on multiple electronic devices
US965904917 Apr 201523 May 2017Salesforce.Com, Inc.Creating and managing granular relationships on an online social network
US96590598 Sep 201523 May 2017Salesforce.Com, Inc.Matching large sets of words
US965925519 Nov 201323 May 2017Salesforce.Com, Inc.Systems, methods, and apparatuses for solving stochastic problems using probability distribution samples
US965930326 Mar 201423 May 2017Salesforce.Com, Inc.System and method for handling gamification fraud
US966526126 Aug 201430 May 2017Salesforce.Com, Inc.Providing a user interface for customizing state transitions of panes in a bounding window
US966533115 Mar 201330 May 2017Salesforce.Com, Inc.Systems, methods, and apparatuses for accepting late joiners with screen sharing
US966771215 Jan 201630 May 2017Salesforce.Com, Inc.Mechanism for facilitating spin mode-based dynamic updating of application servers in an on-demand services environment
US967237924 May 20166 Jun 2017Salesforce.Com, Inc.Method and system for granting access to secure data
US96725752 Apr 20146 Jun 2017Salesforce.Com, Inc.Capturing information regarding an interaction to a database
US967893520 Jun 201313 Jun 2017Salesforce.Com, Inc.Facilitating dynamic cross-block joining of reports in an on-demand services environment
US96808369 May 201613 Jun 2017Salesforce.Com, Inc.Generation of a visually obfuscated representation of an alphanumeric message that indicates availability of a proposed identifier
US968634828 Oct 201420 Jun 2017Salesforce.Com, Inc.Inter-entity connection maps
US96908084 Nov 201127 Jun 2017Salesforce.Com, Inc.Methods and systems for loose coupling between triggers and entities
US969081513 Jun 201627 Jun 2017Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing data upload, processing, and predictive query API exposure
US969104131 Aug 201627 Jun 2017Salesforce.Com, Inc.Providing access to a private resource in an enterprise social networking system
US96927221 May 201527 Jun 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for integrating a social network information feed with a network communications application
US969285118 Dec 201527 Jun 2017Salesforce.Com, Inc.Systems and methods for ghosting and providing proxies in a network feed
US96972879 Oct 20154 Jul 2017Salesforce.Com, Inc.Detection and handling of aggregated online content using decision criteria to compare similar or identical content items
US969737718 Feb 20164 Jul 2017Salesforce.Com, Inc.On-demand database service system, method and computer program product for conditionally allowing an application of an entity access to data of another entity
US970379921 Mar 201611 Jul 2017Salesforce.Com, Inc.Sharing information between tenants of a multi-tenant database
US970381518 Nov 201311 Jul 2017Salesforce.Com, Inc.Third party files in an on-demand database service
US970382618 Mar 201411 Jul 2017Salesforce.Com, Inc.Method and system for providing in-line scheduling in an on-demand service
US97101273 Dec 201418 Jul 2017Salesforce.Com, Inc.User-customizable permissions in a computing environment
US971063728 Aug 201518 Jul 2017Salesforce.Com, Inc.Unicode-based image generation and testing
US971063828 Aug 201518 Jul 2017Salesforce.Com, Inc.Unicode-based image generation and testing
US971257210 Nov 201518 Jul 2017Salesforce.Com, Inc.Systems, methods, and apparatuses for implementing a streaming platform IO pump and regulator
US971300417 Nov 201618 Jul 2017Salesforce.Com, Inc.Switching between restricted-access websites on mobile user devices
US971555528 Feb 201125 Jul 2017Salesforce.Com, Inc.System, method and computer program product for user registration with a multi-tenant on-demand database system
US97158792 Jul 201325 Jul 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for selectively interacting with a server to build a local database for speech recognition at a device
US971665629 Feb 201625 Jul 2017Salesforce.Com, Inc.Slipstream bandwidth management algorithm
US971673019 Dec 201425 Jul 2017Salesforce.Com, Inc.System, method and computer program product for sharing content via links
US97209519 Nov 20151 Aug 2017Salesforce.Com, Inc.Reducing database downtime
US972095422 Feb 20171 Aug 2017Salesforce.Com, Inc.Systems, methods, and apparatuses for fixing logical or physical corruption in databases using LSM trees
US972099017 Apr 20131 Aug 2017Salesforce.Com, Inc.Method, system, and computer program product for simulating an online session
US97209933 Sep 20151 Aug 2017Salesforce.Com, Inc.Methods and systems for synchronizing data in a multi-tenant database environment
US972744317 Nov 20158 Aug 2017Salesforce.Com, Inc.Methods and systems for debugging bytecode in an on-demand service environment
US972759813 Mar 20148 Aug 2017Salesforce.Com, Inc.Systems, methods, and apparatuses for fixing logical or physical corruption in databases using LSM trees
US97279245 Sep 20128 Aug 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for informing a user of social network data when the data is relevant to the user
US972955629 Apr 20158 Aug 2017Salesforce.Com, Inc.Digital badging for facilitating virtual recognition of an achievement
US97339206 Jan 201515 Aug 2017Salesforce.Com, Inc.System, method and computer program product for associating a plurality of stored elements with a creation of a patch
US973418718 Mar 201415 Aug 2017Salesforce.Com, Inc.Atomic transactions in a NOSQL database
US973435015 Jun 201515 Aug 2017Salesforce.Com, Inc.Method and computer program product for order preserving symbol based encryption
US973610712 Nov 201515 Aug 2017Salesforce.Com, Inc.Systems and methods of online social environment based translation of entity mentions
US973611727 Jun 201615 Aug 2017Salesforce.Com, Inc.Methods and systems for context-based application firewalls
US973616813 May 201515 Aug 2017Salesforce.Com, Inc.System, method, and computer program product for security verification of communications to tenants of an on-demand database service
US974037412 Apr 201322 Aug 2017Salesforce.Com, Inc.Systems and methods for implementing multi-application tabs and tab sets
US974046630 Apr 201322 Aug 2017Salesforce.Com, Inc.Systems and methods for exporting, publishing, browsing and installing on-demand applications in a multi-tenant database environment
US974074320 Oct 201422 Aug 2017Salesforce.Com, Inc.Matching objects using keys based on match rules
US974087123 Oct 201522 Aug 2017Salesforce.Com, Inc.System and method for initializing tokens in a dictionary encryption scheme
US97427081 Feb 201622 Aug 2017Salesforce.Com, Inc.Method and system for on-demand communities
US974700612 Apr 201329 Aug 2017Salesforce.Com, Inc.Systems and methods for implementing multi-application tabs and tab sets
US974738825 Feb 201429 Aug 2017Salesforce.Com, Inc.Systems and methods for providing access to external content objects
US97492674 Apr 201629 Aug 2017Salesforce.Com, Inc.Intelligent automated messaging for computer-implemented devices
US975370327 Jan 20155 Sep 2017Salesforce.Com, Inc.Generating identifiers for user interface elements of a web page of a web application
US975370628 Aug 20155 Sep 2017Salesforce.Com, Inc.Adding directives for versions of source files directly into source code
US975392630 Apr 20125 Sep 2017Salesforce.Com, Inc.Extracting a portion of a document, such as a web page
US975396211 Jan 20165 Sep 2017Salesforce.Com, Inc.Systems, methods, and apparatuses for populating a table having null values using a predictive query interface
US97559164 Aug 20155 Sep 2017Salesforce.Com, Inc.System, method and computer program product for serving an application from a custom subdomain
US975603914 Sep 20165 Sep 2017Salesforce.Com, Inc.Document rendering service
US975611010 Oct 20145 Sep 2017Salesforce.Com, Inc.Systems and methods for optimizing web page load time
US976059417 Feb 201612 Sep 2017Salesforce.Com, Inc.Statistics mechanisms in multitenant database environments
US976062022 Jul 201412 Sep 2017Salesforce.Com, Inc.Confidently adding snippets of search results to clusters of objects
US976084414 Jul 201412 Sep 2017Salesforce.Com, Inc.Forecasting method, system and machine readable storage medium for the selection between asynchronous or synchronous forecasting based on event criteria
US976252027 Jul 201512 Sep 2017Salesforce.Com, Inc.Automatic generation of dynamically assigned conditional follow-up tasks
US976258923 Jan 201712 Sep 2017Salesforce.Com, Inc.Methods and systems for generating a dynamic workflow in a multi-tenant database environment
US976688113 Jun 201319 Sep 2017Salesforce.Com, Inc.Social project management system and marketplace
US976696030 Jan 201519 Sep 2017Salesforce.Com, Inc.Workload-driven techniques for providing biased service level guarantees
US976696525 Nov 201519 Sep 2017Salesforce.Com, Inc.System and method for monitoring and detecting faulty storage devices
US976702212 Aug 201619 Sep 2017Salesforce.Com, Inc.In-memory buffer service
US976704031 Aug 201519 Sep 2017Salesforce.Com, Inc.System and method for generating and storing real-time analytics metric data using an in memory buffer service consumer framework
US97671329 Oct 201219 Sep 2017Salesforce.Com, Inc.Systems and methods for real-time de-duplication
US976713329 Oct 201319 Sep 2017Salesforce.Com, Inc.Systems and methods for alternative change processes for changes to data objects
US976713622 Dec 201019 Sep 2017Salesforce.Com, Inc.System, method and computer program product for maintaining data stored in a data structure
US976918023 Jan 201719 Sep 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for sharing data of an information feed of an online social network
US977305019 Jun 201526 Sep 2017Salesforce.Com, Inc.User interface for aggregated task data
US977455513 Sep 201326 Sep 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for managing objectives in an organization in a social network environment
US977455818 Dec 201526 Sep 2017Salesforce.Com, Inc.Method and system for inter-social network communications
US977460328 May 201526 Sep 2017Salesforce.Com, Inc.Managing user permissions in relation to system events occurring in a database system
US977468812 May 201526 Sep 2017Salesforce.Com, Inc.Discovery of server functions
US977882017 Jan 20143 Oct 2017Salesforce.Com, Inc.Managing applications on a computing device
US978104926 Apr 20113 Oct 2017Salesforce.Com, Inc.Resolving information in a database environment
US978556021 Apr 201410 Oct 2017Salesforce.Com, Inc.Scene-isolated internet application
US97856205 Feb 201510 Oct 2017Salesforce.Com, Inc.Creating linked communications
US97856409 Mar 201510 Oct 2017Salesforce.Com, Inc.Augmented reality display apparatus and related methods using database record data
US978578229 Dec 201410 Oct 2017Salesforce.Com, Inc.Monitoring system and shared access permissions for a plurality of users
US978771425 Oct 201610 Oct 2017Salesforce.Com, Inc.Phishing and threat detection and prevention
US979199319 Apr 201317 Oct 2017Salesforce.Com, IncSystem, method and computer program product for creating a re-usable component utilizing a multi-tenant on-demand database service
US979200214 Sep 201217 Oct 2017Salesforce.Com, Inc.Multiple stakeholders for a single business process
US979200816 Dec 201417 Oct 2017Salesforce.Com, Inc.User interface with analytics overlay
US97923567 Sep 201617 Oct 2017Salesforce.Com, Inc.System and method for supporting natural language queries and requests against a user's personal data cloud
US979245619 Aug 201617 Oct 2017Salesforce.Com, Inc.Methods and systems for regulating user engagement
US979425015 Sep 201417 Oct 2017Salesforce.Com, Inc.On-demand service security system and method for managing a risk of access as a condition of permitting access to the on-demand service
US979876415 Dec 201424 Oct 2017Salesforce.Com, Inc.Identifying recurring sequences of user interactions with an application
US979878422 Aug 200824 Oct 2017Salesforce.Com, Inc.System, method and computer program product for defining custom junction objects in an on-demand database service
US979881318 Jul 201424 Oct 2017Salesforce.Com, Inc.Extensible person container
US980058616 Sep 201624 Oct 2017Salesforce.Com, Inc.Secure identity federation for non-federated systems
US980505110 Sep 201431 Oct 2017Salesforce.Com, Inc.Synchronization and strategic storage of multiple versions of a file
US9805082 *10 Sep 200831 Oct 2017Sap SeRecording information about an item
US980542729 Jan 201531 Oct 2017Salesforce.Com, Inc.Systems and methods of data mining to customize software trial demonstrations
US980718726 Aug 201631 Oct 2017Salesforce.Com, Inc.Business networking information feed alerts
US98114444 Aug 20157 Nov 2017Salesforce.Com, Inc.Testing software enhancements in database applications
US981150630 Oct 20157 Nov 2017Salesforce.Com, Inc.Object-oriented system for creating and managing websites and their content
US981159715 Dec 20167 Nov 2017Salesforce.Com, Inc.Computer implemented methods and apparatus for identifying topical influence in an online social network
US981342515 Jan 20167 Nov 2017Salesforce.Com, Inc.System, method and computer program product for managing access to systems, products, and data based on information associated with a physical location of a user
US98135164 Feb 20157 Nov 2017Salesforce.Com, Inc.Transparent sharding of traffic across messaging brokers
US20030071815 *17 Oct 200117 Apr 2003Hao Ming C.Method for placement of data for visualization of multidimensional data sets using multiple pixel bar charts
US20050033725 *14 May 200410 Feb 2005Potter Charles MikeSystem and method of data modelling
US20060064436 *12 Aug 200523 Mar 2006Fowler James FContact information marketplace
US20060111975 *12 Aug 200525 May 2006Fowler James FSystem to solicit unknown corporate data
US20060242184 *22 Apr 200526 Oct 2006Microsoft CorporationEfficiently describing relationships between resources
US20060242566 *22 Apr 200526 Oct 2006Microsoft CorporationMethod and system for mapping between components of a packaging model and features of a physical representation of a package
US20070130137 *2 Dec 20057 Jun 2007Salesforce.Com, Inc.Methods and systems for optimizing text searches over structured data in a multi-tenant environment
US20080010243 *1 Jun 200710 Jan 2008Salesforce.Com, Inc.Method and system for pushing data to a plurality of devices in an on-demand service environment
US20080080689 *31 Aug 20073 Apr 2008Salesforce.Com, IncMethod and system for integrating a pbx-equipped client and an on-demand database service
US20080086447 *23 Feb 200710 Apr 2008Salesforce.Com, Inc.Methods and systems for bulk row save logic in an object relational mapping layer and application framework
US20080091690 *13 Oct 200617 Apr 2008International Business Machines CorporationDeriving a Data Model From a Hierarchy Of Related Terms, And Deriving a Hierarchy Of Related Terms From a Data Model
US20090031230 *14 Jul 200829 Jan 2009Innovation Management SciencesAutomated Generation of Dynamic Data Entry User Interface for Relational Database Management Systems
US20090048904 *18 Jul 200819 Feb 2009Christopher Daniel NewtonMethod and system for determining topical on-line influence of an entity
US20090049102 *15 Aug 200819 Feb 2009Salesforce.Com, Inc.On-demand database service system, method, and computer program product for enforcing the inclusion of tests in a developed application
US20090049288 *15 Aug 200819 Feb 2009Salesforce.Com, Inc.System, method, and computer program product for runtime invocation of an appropriate version of program instructions in an on-demand database
US20090157668 *11 Dec 200818 Jun 2009Christopher Daniel NewtonMethod and system for measuring an impact of various categories of media owners on a corporate brand
US20090192896 *20 Jan 200930 Jul 2009Christopher Daniel NewtonMethod and system for targeted advertising based on topical memes
US20090210244 *5 Feb 200720 Aug 2009Tn20 IncorporatedTrusted acquaintances network system
US20090281851 *7 May 200912 Nov 2009Christopher Daniel NewtonMethod and system for determining on-line influence in social media
US20100070480 *14 Sep 200918 Mar 2010Salesforce.Com, Inc.Synchronizing field values in an on-demand database prior to committing a change
US20100076931 *10 Sep 200825 Mar 2010Christof BornhoevdRecording Information About an Item
US20100077468 *10 Sep 200925 Mar 2010Salesforce.Com, Inc.Method and system for providing efficient and complex database functionality to a mobile device
US20100100367 *19 Oct 200922 Apr 2010Salesforce.Com, Inc.Offline simulation of online session between client and server
US20100185593 *19 Mar 201022 Jul 2010Salesforce.Com, Inc.Methods and systems for recursive saving of hierarchical objects to a database
US20100191719 *31 Mar 201029 Jul 2010Salesforce.Com, Inc.Query optimization in a multi-tenant database system
US20100192067 *25 Jan 201029 Jul 2010Salesforce.Com, Inc.Customer service & support systems and methods for use in an on demand database service
US20100205243 *14 Sep 200912 Aug 2010salesforce.com,inc.Methods and systems for polling an on demand service
US20100218245 *4 May 201026 Aug 2010Lev BroukMethod, system, and computer program product for managing interchange of enterprise data messages
US20100223100 *25 Jan 20102 Sep 2010Salesforce.Com, Inc.Methods and Systems for Sales Networking
US20100223467 *25 Jan 20102 Sep 2010Salesforce.Com, Inc.Methods and Systems for Sharing Database Content
US20100235322 *25 Jan 201016 Sep 2010Salesforce.Com, Inc.Methods and Systems for Sharing Information in a Supply Chain
US20100235837 *16 Apr 201016 Sep 2010Salesforce.Com, Inc.Query optimization in a multi-tenant database system
US20100257351 *30 Mar 20107 Oct 2010Salesforce. Com, Inc.Enhanced system security
US20100274779 *15 Apr 201028 Oct 2010Salesforce.Com, Inc.Query optimization in a multi-tenant database system
US20100325089 *4 May 201023 Dec 2010Hopkins Christopher DMethod, system, and computer program product for synchronizing data
US20100325174 *4 May 201023 Dec 2010Hopkins Christopher DMethod, system, and computer program product for simulating an online session
US20110029879 *28 Apr 20093 Feb 2011Salesforce.Com, Inc.Object-oriented system for creating and managing websites and their content
US20110072366 *18 Sep 201024 Mar 2011Barry SpencerSystems and methods for multimedia multipoint real-time conferencing
US20110078213 *29 Sep 200931 Mar 2011Salesforce.Com, Inc.Techniques for managing functionality changes of an on-demand database system
US20110083122 *5 Oct 20107 Apr 2011Salesforce.Com, Inc.Method and system for massive large scale test infrastructure
US20110106808 *16 Aug 20105 May 2011Salesforce.Com, Inc.Multi-dimensional content organization and delivery
US20110113058 *12 Nov 201012 May 2011salesforce.com,inc.Implementing enterprise level business information networking
US20110137940 *17 Feb 20119 Jun 2011Salesforce.Com, Inc.Methods And Apparatus For Selecting Updates To Associated Records To Publish On An Information Feed In An On-Demand Database Service Environment
US20110202508 *28 Jan 201118 Aug 2011Salesforce.Com, Inc.System, method and computer program product for validating one or more metadata objects
US20110202911 *28 Jan 201118 Aug 2011Salesforce.Com, Inc.Application installation system, method and computer program product for allowing a package to be installed by a third party
US20110208858 *24 Feb 201125 Aug 2011Salesforce.Com, Inc.System, method and computer program product for monitoring data activity utilizing a shared data store
US20110209121 *1 Feb 201125 Aug 2011Salesforce.Com, Inc.System, method and computer program product for providing automated testing by utilizing a preconfigured point of entry in a test or by converting a test to a predefined format
US20110213789 *28 Feb 20111 Sep 2011Salesforce.Com, Inc.System, method and computer program product for determining an amount of access to data, based on a role
US20110213797 *4 Feb 20111 Sep 2011Salesforce.Com, Inc.System, method and computer program product for sharing a single instance of a database stored using a tenant of a multi-tenant on-demand database system
US20110213816 *28 Feb 20111 Sep 2011Salesforce.Com, Inc.System, method and computer program product for using a database to access content stored outside of the database
US20110214064 *13 Jan 20111 Sep 2011Salesforce.Com, Inc.System, method and computer program product for displaying one or more data sets to a user
US20110214067 *28 Dec 20101 Sep 2011Salesforce.Com, Inc.Method and system for providing an adaptive input user interface for data entry applications
US20110219338 *12 Nov 20108 Sep 2011Salesforce.Com, Inc.System, method and computer program product for performing an action associated with a record
US20110225118 *14 Mar 201115 Sep 2011Salesforce.Com, Inc.System, method and computer program product for conditionally sharing an object with one or more entities
US20110225165 *30 Sep 201015 Sep 2011Salesforce.ComMethod and system for partitioning search indexes
US20110225206 *30 Dec 201015 Sep 2011Salesforce.Com, Inc.System, method and computer program product for creating a plurality of cnames for a website
US20110225232 *9 Sep 201015 Sep 2011Salesforce.Com, Inc.Service Cloud Console
US20110225486 *23 Dec 201015 Sep 2011Salesforce.Com, Inc.System, method and computer program product for navigating content on a single page
US20110225506 *9 Sep 201015 Sep 2011Salesforce.Com, Inc.Service Cloud Console
US20110225527 *9 Mar 201115 Sep 2011Salesforce.Com, Inc.Configurable highlights panel for display of database records
US20110231457 *15 Mar 201122 Sep 2011Salesforce.Com, Inc.Monitoring and managing job resources for database tasks
US20110231481 *16 Mar 201122 Sep 2011Saleforce.com, inc.System, method and computer program product for communicating data between a database and a cache
US20110231831 *2 Nov 201022 Sep 2011Salesforce.Com, Inc.System, method and computer program product for associating a plurality of stored elements with a creation of a patch
US20110231835 *13 Oct 201022 Sep 2011Salesforce.Com, Inc.System, method and computer program product for conditionally enabling an installation aspect
US20110231919 *28 Dec 201022 Sep 2011Salesforce.Com, Inc.Efficient single sign-on and identity provider configuration and deployment in a database system
US20110238705 *25 Mar 201129 Sep 2011Salesforce.Com, Inc.System, method and computer program product for extending a master-detail relationship
US20110238706 *25 Mar 201129 Sep 2011Salesforce.Com, Inc.System, method and computer program product for automatic code generation for database object deletion
US20110238707 *25 Mar 201129 Sep 2011Salesforce.Com, Inc.System, method and computer program product for creating an object within a system, utilizing a template
US20110238736 *6 Jul 201029 Sep 2011Salesforce.Com, Inc.Methods and systems for providing time and date specific software user interfaces
US20110238760 *6 Jan 201129 Sep 2011Salesforce.Com, Inc.Systems and methods for identifying contacts as users of a multi-tenant database and application system
US20130018869 *16 Apr 201217 Jan 2013Salesforce.Com, Inc.Computer implemented methods and apparatus for providing internal custom feed items
US20140279899 *7 Aug 201318 Sep 2014Unisys CorporationData bus architecture for inter-database data distribution
US20150213066 *29 Jan 201430 Jul 2015Nancy YanSystem and method for creating data models from complex raw log files
WO2006115615A2 *16 Mar 20062 Nov 2006Microsoft CorporationMethod and system for mapping between components of a packaging model and features of a physical representation of a package
WO2006115615A3 *16 Mar 200610 Jan 2008Microsoft CorpMethod and system for mapping between components of a packaging model and features of a physical representation of a package
Classifications
U.S. Classification1/1, 707/999.2
International ClassificationG06Q30/06, G06Q10/08
Cooperative ClassificationY10S707/99945, Y10S707/99943, Y10S707/99942, G06Q10/087, G06Q30/0603
European ClassificationG06Q10/087, G06Q30/0603
Legal Events
DateCodeEventDescription
13 Feb 2002ASAssignment
Owner name: SIEBEL SYSTEMS, INC., CALIFORNIA
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GONG, WEN G.;GRANCELL, ADAM SCOTT;REEL/FRAME:012728/0936;SIGNING DATES FROM 20011031 TO 20011109