Filter chains for exploring large data sets

Information

  • Patent Grant
  • 10452678
  • Patent Number
    10,452,678
  • Date Filed
    Friday, December 5, 2014
    10 years ago
  • Date Issued
    Tuesday, October 22, 2019
    6 years ago
  • CPC
    • G06F16/26
    • G06F16/335
    • G06F16/35
    • G06F16/904
  • Field of Search
    • US
    • NON E00000
  • International Classifications
    • G06F17/30
    • G06F16/26
    • G06F16/335
    • G06F16/904
    • G06F16/35
    • Term Extension
      545
Abstract
A multipath explorer may allow a user to quickly visualize an entire population of data hierarchically in a tree-like structure. For example, a user can select a first filter to be applied to a data set, and the multipath explorer can display data in the data set that satisfies the first filter requirements and data in the data set that does not satisfy the first filter requirements. A second filter can be applied to the data in the data set, and the multipath explorer can display data in the data set that satisfies the first and second filter requirements, data in the data set that satisfies the first filter requirements and not the second filter requirements, data in the data set that satisfies the second filter requirements and not the first filter requirements, and data in the data set that does not satisfy the first or second filter requirements.
Description
TECHNICAL FIELD

The present disclosure relates to systems and techniques for data integration, analysis, and visualization. More specifically, the present disclosure relates to systems and techniques for exploring large data sets in multipath views.


BACKGROUND

The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.


Data analysts often perform analysis of a large collection of data items, such as data relating to the medical field, the financial industry, the real estate market, and the like. In many instances, the amount of raw data about data items (also referred to as “inventory”) can be massive and dynamically increasing all the time. For example, such data may be updated in large volumes and/or numerous times in a day. Therefore, in addition to metadata that captures relatively stable aspects of the inventory, a huge amount of raw data may be accumulated over a particular period of time.


While inventory can possibly be analyzed based on the raw data, it is often difficult to make sense of the raw data, metadata, or related computations. This problem is drastically compounded when analyzing a large collection of inventory. Thus, an analyst often is forced to rely on inexact hunches, experience, and/or cumbersome spreadsheets to identify trends, diagnose problems, and/or otherwise evaluate the inventory.


SUMMARY

One aspect of this disclosure provides a computing system comprising a network interface that is coupled to a data network for receiving and transmitting one or more packet flows. The computer system further comprises a processor. The computer system further comprises one or more stored program instructions configured for execution by the processor in order to cause the computing system to create and store in computer memory a first filter chain indicating one or more first membership criteria. The executed stored program instructions may further cause the computing system to apply the first filter chain to a data set to identify one or more first data items that satisfy the first membership criteria and one or more second data items that do not satisfy the first membership criteria. The executed stored program instructions may further cause the computing system to transmit the first data items and the second data items to a client computer configured to display the first data items in a first filter view in a first graphically demarcated area and the second data items in a second filter view in a second graphically demarcated area. The executed stored program instructions may further cause the computing system to receive a user selection of the first graphically demarcated area and the second graphically demarcated area. The executed stored program instructions may further cause the computing system to determine one or more second membership criteria. The executed stored program instructions may further cause the computing system to create a second filter chain based on the first filter chain and the second membership criteria. The executed stored program instructions may further cause the computing system to apply the second filter chain to the data set to identify one or more third data items that satisfy the first membership criteria and the second membership criteria, one or more fourth data items that satisfy the first membership criteria and do not satisfy the second membership criteria, one or more fifth data items that satisfy the second membership criteria and do not satisfy the first membership criteria, and one or more sixth data items that do not satisfy the first membership criteria and do not satisfy the second membership criteria. The executed stored program instructions may further cause the computing system to transmit the third data items, the fourth data items, the fifth data items, and sixth data items to the client computer. The client computer may be configured to display the third data items and the fourth data items in the first graphically demarcated area, and the fifth data items and the sixth data items in the second graphically demarcated area.


Another aspect of this disclosure provides a computer-implemented method of analyzing and exploring a large amount of dynamically updating data. The computer-implemented method comprises, as implemented by one or more computer systems comprising computer hardware and memory, the one or more computer systems configured with specific executable instructions, receiving, from a user of the one or more computer systems, selection of a first membership criteria for application on a first data set comprising a plurality of data items. The computer-implemented method further comprises applying the first membership criteria to the data set to identify a first set of data items that satisfy the first membership criteria and a second set of data items that do not satisfy the first membership criteria. The computer-implemented method further comprises generating a user interface including indications of the first set of data items in a first area and indications of the second set of data items in a second area. The computer-implemented method further comprises receiving, from the user, selection of a second membership criteria for application on the first data set. The computer-implemented further comprises applying the first membership criteria and the second membership criteria to the data set to identify a third set of data items that satisfy the first membership criteria and the second membership criteria, a fourth set of data items that satisfy the first membership criteria and do not satisfy the second membership criteria, a fifth set of data items that satisfy the second membership criteria and do not satisfy the first membership criteria, and a sixth set of data items that do not satisfy the first membership criteria and do not satisfy the second membership criteria. The computer-implemented method further comprises updating the user interface to include an indication of the third set of data items and the fourth set of data items in the first area, and the fifth set of data items and the sixth set of data items in the second area.


Another aspect of this disclosure provides a non-transitory computer-readable medium comprising one or more program instructions recorded thereon, the instructions configured for execution by a computing system comprising one or more processors in order to cause the computing system to determine a first membership criteria to be applied to a data set including a plurality of data items. The medium further comprises one or more program instructions configured for execution by the computing system to cause the computing system to identify one or more first data items of the data set that satisfy the first membership criteria. The medium further comprises one or more program instructions configured for execution by the computing system to cause the computing system to identify one or more second data items of the data set that do not satisfy the first membership criteria. The medium further comprises one or more program instructions configured for execution by the computing system to cause the computing system to transmit display instructions to a client computer device, the display instructions indicating display of a first filter view of the one or more first data items in a first graphically demarcated area and display of a second filter view of the one or more second data items in a second graphically demarcated area, such that information regarding both the data items matching the first membership criteria and data items not matching the first membership criteria are viewable by a user of the client computer device.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 illustrates an example data analysis system for analyzing a universe of data items.



FIG. 2A illustrates an example process flow for analyzing a data set.



FIG. 2B illustrates another example process flow for analyzing a data set.



FIG. 2C illustrates another example process flow for analyzing a data set.



FIG. 3 illustrates one embodiment of a database system using an ontology.



FIG. 4 illustrates one embodiment of a system for creating data in a data store using a dynamic ontology.



FIG. 5A illustrates a toolbar that allows a user to create a root node of a multipath view.



FIG. 5B illustrates a widget that displays a created root node.



FIG. 6A illustrates a toolbar that allows a user to create a child node of a multipath view.



FIG. 6B illustrates the widget that displays the created root node and created child nodes.



FIG. 7 illustrates the widget that displays a root node and a series of child nodes in a tree structure.



FIG. 8 illustrates an example graphical user interface (GUI) for a multipath explorer.



FIG. 9 illustrates another example GUI for a multipath explorer.



FIG. 9-1 illustrates a content pane included in the GUI of FIG. 9.



FIG. 9-2 illustrates another content pane included in the GUI of FIG. 9.



FIG. 9-3 illustrates another content pane included in the GUI of FIG. 9.



FIG. 9-4 illustrates another content pane included in the GUI of FIG. 9.



FIG. 10 illustrates another example GUI for a multipath explorer.



FIG. 10-1A illustrates a content pane included in the GUI of FIG. 10.



FIG. 10-1B illustrates another content pane included in the GUI of FIG. 10.



FIG. 10-2A illustrates another content pane included in the GUI of FIG. 10.



FIG. 10-2B illustrates another content pane included in the GUI of FIG. 10.



FIG. 10-3A illustrates another content pane included in the GUI of FIG. 10.



FIG. 10-3B illustrates another content pane included in the GUI of FIG. 10.



FIG. 10-4A illustrates another content pane included in the GUI of FIG. 10.



FIG. 10-4B illustrates another content pane included in the GUI of FIG. 10.



FIG. 11 illustrates another example GUI for a multipath explorer.



FIG. 11-1A illustrates a content pane included in the GUI of FIG. 11.



FIG. 11-1B illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-1C illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-1D illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-2A illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-2B illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-2C illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-2D illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-3A illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-3B illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-3C illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-3D illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-4A illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-4B illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-4C illustrates another content pane included in the GUI of FIG. 11.



FIG. 11-4D illustrates another content pane included in the GUI of FIG. 11.



FIG. 12 illustrates another example GUI for a multipath explorer.



FIG. 12-1A illustrates a content pane included in the GUI of FIG. 12.



FIG. 12-1B illustrates another content pane included in the GUI of FIG. 12.



FIG. 12-1C illustrates another content pane included in the GUI of FIG. 12.



FIG. 12-1D illustrates another content pane included in the GUI of FIG. 12.



FIG. 12-2A illustrates another content pane included in the GUI of FIG. 12.



FIG. 12-2B illustrates another content pane included in the GUI of FIG. 12.



FIG. 12-3A illustrates another content pane included in the GUI of FIG. 12.



FIG. 12-3B illustrates another content pane included in the GUI of FIG. 12.



FIG. 12-4A illustrates another content pane included in the GUI of FIG. 12.



FIG. 12-4B illustrates another content pane included in the GUI of FIG. 12.



FIG. 13A illustrates an example GUI for selecting a starting set of inventory.



FIG. 13B illustrates a box that represents the starting set of inventory



FIG. 13C illustrates a first filter and a second filter that are applied to the starting set of inventory.



FIG. 13D illustrates the box of FIG. 13B, a second box, which represents a subset of the starting set of inventory based on the first filter membership criteria, and a third box, which represents a subset of the starting set of inventory based on the first filter membership criteria and the second filter membership criteria.



FIG. 13E illustrates an add filter that is applied to the starting set of inventory.



FIG. 13F illustrates the box of FIG. 13B, the boxes of FIG. 13D, and a fourth box, which represents a subset of the starting set of inventory based on the add filter membership criteria.



FIG. 13G illustrates a transform filter that is applied to the subset of data that results from applying the second filter of FIG. 13C.



FIG. 13H illustrates the box of FIG. 13B, the boxes of FIG. 13D, the box of FIG. 13F, and a fifth box, which represents a subset of the starting set of inventory based on the first filter membership criteria, the add filter membership criteria, the second filter membership criteria, and the transform filter membership criteria.



FIG. 14 illustrates a computer system with which certain methods discussed herein may be implemented.





DETAILED DESCRIPTION OF SPECIFIC EMBODIMENTS

Overview


Aspects of the disclosure provided herein describe the creation and implementation of a multipath explorer. As described above, it can be very difficult to make sense of raw data, metadata, or related computations, especially when analyzing a large collection of inventory. The multipath explorer reduces or eliminates the need for an analyst to rely on inexact hunches, experience, and/or cumbersome spreadsheets to identify trends, diagnose problems, and/or otherwise evaluate inventory or objects in one or more databases. In particular, the multipath explorer simplifies the analysis such that an analyst can make sense of raw data, metadata, or related computations, even when analyzing a large collection of inventory that is dynamically updating all the time.


In one embodiment, the multipath explorer allows a user (e.g., analyst) to quickly (e.g., immediately or substantially immediately) visualize an entire population (e.g., all the data in a data set), one or more subsets of the entire population (e.g., certain data in the data set that satisfies membership criteria), and one or more endpoints of an analysis of subsets of the entire population arranged hierarchically in a structure, such as a tree, a directed acyclic graph (DAG), or other structure. Any discussion herein of a particular structure or view, such as a tree structure, may also be applicable to any other structure or view, such as a DAG. As the population is updated, the multipath explorer dynamically updates one or more views such that the user can immediately visualize the entire updated population, one or more subsets of the entire updated population, and one or more endpoints of an analysis of subsets of the entire updated population. The speed and accuracy by which the multipath explorer updates the one or more views cannot be performed manually by a human since a human would need to continuously redo hundreds to millions or more computations each time the inventory is updated.


For example, a user can select a first filter to be applied to a data set, and the multipath explorer can display data in the data set that satisfies the first filter requirements and data in the data set that does not satisfy the first filter requirements. A second filter can be applied to some or all of the data in the data set, and the multipath explorer can display data in the data set that satisfies the first filter and second filter requirements, data in the data set that satisfies the first filter requirements and not the second filter requirements, data in the data set that satisfies the second filter requirements and not the first filter requirements, and/or data in the data set that does not satisfy the first filter or second filter requirements. Additional filters may be applied and the multipath explorer may generate corresponding views.


As an example use case, the data set may correspond to loan values for homes. A first filter may require that the homes be in California and a second filter may require that the homes be single family homes. Once the first filter is applied, the multipath explorer may display loan values for homes in California and loan values for homes not in California. The second filter may then be applied to only homes in California, only homes not in California, and/or to all homes. For example, if the second filter is applied to only homes in California, the multipath explorer may display loan values for single family homes in California, loan values for homes in California that are not single family homes (e.g., multi family homes in California), and loan values for homes not in California. As another example, if the second filter is applied to only homes not in California, the multipath explorer may display loan values for homes in California, loan values for single family homes not in California, and loan values for homes that are not single family homes and that are not in California (e.g., multi family homes not in California). As another example, if the second filter is applied to all homes, the multipath explorer may display loan values for single family homes in California, loan values for homes in California that are not single family homes (e.g., multi family homes in California), loan values for single family homes not in California, and loan values for homes that are not single family homes and that are not in California (e.g., multi family homes not in California).


Definitions


In order to facilitate an understanding of the systems and methods discussed herein, a number of terms are defined below. The terms defined below, as well as other terms used herein, should be construed to include the provided definitions, the ordinary and customary meaning of the terms, and/or any other implied meaning for the respective terms. Thus, the definitions below do not limit the meaning of these terms, but only provide exemplary definitions.


Ontology: Stored information that provides a data model for storage of data in one or more databases. For example, the stored data may comprise definitions for object types and property types for data in a database, and how objects and properties may be related.


Database: A broad term for any data structure for storing and/or organizing data, including, but not limited to, relational databases (Oracle database, mySQL database, etc.), spreadsheets, XML files, and text file, among others.


Data Object or Object: A data container for information representing specific things in the world that have a number of definable properties. For example, a data object can represent an entity such as a person, a place, an organization, a market instrument, an inventory, an item, a product, or other noun. A data object can represent an event that happens at a point in time or for a duration. A data object can represent a document or other unstructured data source such as an e-mail message, a news report, or a written paper or article. Each data object may be associated with a unique identifier that uniquely identifies the data object. The object's attributes (e.g. metadata about the object) may be represented in one or more properties.


Object Type: Type of a data object (e.g., Person, Event, or Document). Object types may be defined by an ontology and may be modified or updated to include additional object types. An object definition (e.g., in an ontology) may include how the object is related to other objects, such as being a sub-object type of another object type (e.g. an agent may be a sub-object type of a person object type), and the properties the object type may have.


Properties: Attributes of a data object that represent individual data items. At a minimum, each property of a data object has a property type and a value or values.


Property Type: The type of data a property is, such as a string, an integer, or a double. Property types may include complex property types, such as a series data values associated with timed ticks (e.g. a time series), etc.


Property Value: The value associated with a property, which is of the type indicated in the property type associated with the property. A property may have multiple values.


Link: A connection between two data objects, based on, for example, a relationship, an event, and/or matching properties. Links may be directional, such as one representing a payment from person A to B, or bidirectional.


Link Set: Set of multiple links that are shared between two or more data objects.


Data Item: An attribute of a data object. A data item can be represented by a number of attributes. These attributes may comprise relatively stable attributes along a dimension, such as time, and a number of measurable attributes that are dynamic along the same dimension. Values of the relatively stable properties of a data item constitute metadata. Values of the measurable properties of a data item constitute measured data along a certain dimension, say time. Examples of measured data include, but are not limited to, one or more sequences of measurements (e.g., raw measurement data) on one or more of the measurable properties. The data analysis system may determine a plurality of attributes for a data item based on the sequences of measurements. In an embodiment, a data item may be represented by a combination of metadata, sequences of measurements, and/or attributes based on the sequences of measurements.


Data Set: A starting set of data items for a filter chain, a universe of data items, a result set from one or more prior filtering operations performed on the universe of data items, or a subset in the universe of data items.


Filter: A filter link that can be selected by a user to be a part of a filter chain; and/or a filter view that provides a display of results of an evaluation of the filter chain. In some embodiments, a filter view can be used to modify an existing filter that is within the filter view.


Filter Chain: An object that consists of a starting set of data items, such as inventory, and a set of zero or more filter links.


Filter Link: A component object that consists of a set operation (e.g., narrow, expand, modify, transform, average, plot, etc.) and a membership criterion. A filter link may be one of many in a filter chain.


Filter View: A view of results of an evaluation of an existing filter chain. Each filter link in the filter chain can have a filter view associated with it. Filter views may be paired 1:1 with filter links. An individual filter view gives some graphical representation of some internal state of the computation involved in applying the membership criterion in the filter link to a set of data items that has made it to the filter link in question (which has passed all the previous filter links in the chain). The user can interact with the view associated with a particular filter link in order to change membership criterion for the particular filter link. For example, a histogram view shown in FIG. 3B is a view attached to the Histogram filter, and by clicking and dragging to select ranges along the x-axis of the histogram view, one actually changes the membership criterion for that filter.


Frame: A graphical representation object that is configurable to include one or more GUI components. Examples of frames include, but are not limited to, dialog boxes, forms, and other types of windows or graphical containers.


Graphically Demarcated Area: A bounded area on a graphic user interface. In some embodiments, a graphically demarcated area may be implemented as a window, a frame, or a content pane that is separate and apart from a portion of GUI that concurrently displays a list view, a table view, or a tree view, of data items. Examples of a graphically demarcated area also include a specific portion of a display on a handheld computing device.


Inventory: A data object that can be monitored. For example, medical data (e.g., types of surgeries, number of heart attacks, ailments that cause illness and/or death, etc.), financial data (e.g., stocks, bonds and derivatives thereof (e.g. stock options, bond futures, mutual funds) that can be traded on stock markets and/or exchanges), real estate data (e.g., loan values, number of plots and/or homes sold, number of homes and/or buildings constructed, etc.), and the like can be types of inventory that can be monitored.


Membership Criterion: A function that selects a set of inventory. Starting Set of Inventory: A set of inventory that can be specified independent of the rest of the filter chain. This can be the “universe” of all the inventory known to a system or it can be the empty set.


Universe of Data Items: A set of data items that is known to a data analysis system.


Data Analysis System Overview



FIG. 1 illustrates an example data analysis system for analyzing a universe of data items. Data analysis system 100 comprises application server 102 and one or more clients, such as client 120.


In the embodiment illustrated in FIG. 1, client 120, which may be implemented by one or more first physical computing devices, is communicatively connected to application server 102, which may be implemented by one or more second physical computing devices, over a network. In some embodiments, each such physical computing device may be implemented as a computer system as shown in FIG. 14. For example, client 120 may be implemented in a computer system as a set of program instructions recorded on a machine-readable storage medium. Client 120 comprises graphical user interface (GUI) logic 122. GUI logic 122 may be a set of program instructions which, when executed by one or more processors of the computer system, are operable to receive user input and to display a graphical representation of analytical results of a universe of data items using the approaches herein. GUI logic 122 may be operable to receive user input from, and display analytical results to, a graphical user interface that is provided on display 124 by the computer system on which client 120 executes.


In some embodiments, GUI logic 122 is omitted. For example, in one embodiment, client 120 may comprise an application program or process that issues one or more function calls or application programming interface (API) calls to application server 102 to obtain information resulting from, to provide input to, and to execute along with application server 102, the processes or one or more steps thereof as described herein. For example, client 120 may request and obtain filtered data, filter chains, sets and other data as described further herein using a programmatic interface, and then the client may use, process, log, store, or otherwise interact with the received data according to local logic. Client 120 may also interact with application server 102 to provide input, definition, editing instructions, expressions related to filtered data, filter chains, sets and other data as described herein using a programmatic interface, and then the application server 102 may use, process, log, store, or otherwise interact with the received input according to application server logic.


Application server 102 may be implemented as a special-purpose computer system having the logical elements shown in FIG. 1. In an embodiment, the logical elements may comprise program instructions recorded on one or more machine-readable storage media. Alternatively, the logical elements may be implemented in hardware, firmware, or a combination.


When executed by one or more processors of the computer system, logic in application server 102 is operable to analyze the universe of data items according to the techniques described herein. In one embodiment, application server 102 may be implemented in a Java Virtual Machine (JVM) that is executing in a distributed or non-distributed computer system. In other embodiments, application server 102 may be implemented as a combination of programming instructions written in any programming language (e.g. C++ or Visual Basic) and hardware components (e.g., memory, CPU time) that have been allocated for executing the program instructions.


In an embodiment, application server 102 comprises repository access logic 110 and cascading filtering logic 104. Repository access logic 110 may comprise a set of program instructions which, when executed by one or more processors, are operable to access and retrieve data from data repository 112. For example, repository access logic 110 may be a database client or an Open Database Connectivity (ODBC) client that supports calls to a database server that manages data repository 112. Data repository 112 may be any type of structured storage for storing data including, but not limited to, relational or object-oriented databases, data warehouses, directories, data files, and any other structured data storage.


In an embodiment, cascading filtering logic 104 is operable to retrieve an existing filter chain based on prior saved information or prior user selections, receive new user selection of membership criteria and set operations from a client, create a new filter chain based on the user selection and the existing filter chain, create a new inventory group based on the new filter chain, and generate a filter view that may be operated on by a user of a client. In the embodiment illustrated in FIG. 1, cascading filtering logic 104 comprises input receiver 106 and filtering module 108. Cascading filtering logic 104 may be object-oriented logic. As used herein, the universe of data items can be accessed and/or operated by the cascading filtering logic 104 to generate the analytical results.


In an embodiment, input receiver 106 is a set of program instructions which, when executed by one or more processors, are operable to receive input, including user selection of membership criteria and set operations, from a client.


Filtering module 108 is a set of program instructions that implement logic to create filter chains based on membership criteria and set operations and apply the filter chains to a universe of data items to create filter views that may be provided to a client. Filter views may also be rendered by GUI logic 122 on display 120.


Example Process Flows



FIG. 2A illustrates an example process flow for analyzing a data set. In block 202, the data analysis system 100 creates a filter chain based on one or more membership criteria and zero or more set operations. For example, the filter chain may be retrieved from the data repository 112 in which the filter chain has been previously defined and saved, or may defined by one or more user inputs.


In block 204, the data analysis system 100 applies the filter chain to a data set to cause one or more first selected data items to be selected from the data set and one or more second selected data items to be selected from the data set. For example, the first selected data items may be data items that satisfy the membership criteria and the second selected data items may be data items that do not satisfy the membership criteria. The filter chain may be a histogram filter that selects all data items in a data set that satisfy the membership criteria. In alternative embodiments, zero data items may be returned when the filter chain is applied to the data set.


In block 206, the data analysis system 100 sends the one or more first selected data items to a client computer for constructing a first filter view in a first graphically demarcated area (e.g., the one or more first selected data items are configured to be viewed in the first filter view). For example, the first filter view may be a list view filter that displays all homes for sale in a region specified by the membership criteria. As another example, the first filter view may be a list view filter that displays all heart attacks that occurred in a region specified by the membership criteria. As another example, the first filter view may be a histogram view filter that displays the number of stocks purchased over a period specified by the membership criteria. The first graphically demarcated area may be a content pane that is separate and apart from a list, table, or tree view that presents a scrollable listing of all inventory.


In block 208, the data analysis system 100 sends the one or more second selected data items to a client computer for constructing a second filter view in a second graphically demarcated area (e.g., the one or more second selected data items are configured to be viewed in the second filter view). For example, the second filter view may be a list view filter that displays all homes for sale in all regions not specified by the membership criteria. The second graphically demarcated area may be a content pane that is separate and apart from a list, table, or tree view that presents a scrollable listing of all inventory. Thus the user can advantageously view homes for sale (or other objects) that match the provided membership criteria in a first graphical display and also view homes for sale (or other objects) that do not match the provided membership criteria in a second graphical display.



FIG. 2B illustrates another example process flow for analyzing a data set, wherein a second filter chain is applied in order to generate further visualizations of various combinations of data sets matching and not matching the first and second filter chain. In block 212, the data analysis system 100 creates a first filter chain based on one or more first membership criteria and zero or more first set operations. For example, the first filter chain may be retrieved from the data repository 112 in which the first filter chain has been previously defined and saved.


In block 214, the data analysis system 100 applies the first filter chain to a data set to cause one or more first selected data items to be selected from the data set and one or more second selected data items to be selected from the data set. For example, the first selected data items may be data items that satisfy the first membership criteria and the second selected data items may be data items that do not satisfy the first membership criteria. The first filter chain may be a histogram filter that selects all data items in a data set that satisfy the first membership criteria. In alternative embodiments, zero data items may be returned when the first filter chain is applied to the data set.


In block 216, the data analysis system 100 sends the one or more first selected data items to a client computer for constructing a first filter view in a first graphically demarcated area (e.g., the one or more first selected data items are configured to be viewed in the first filter view). For example, the first filter view may be a list view filter that displays all homes for sale in a region specified by the first membership criteria. The first graphically demarcated area may be a content pane that is separate and apart from a list, table, or tree view that presents a scrollable listing of all inventory.


In block 218, the data analysis system 100 sends the one or more second selected data items to a client computer for constructing a second filter view in a second graphically demarcated area (e.g., the one or more second selected data items are configured to be viewed in the second filter view). For example, the second filter view may be a list view filter that displays all homes for sale in all regions not specified by the first membership criteria. The second graphically demarcated area may be a content pane that is separate and apart from a list, table, or tree view that presents a scrollable listing of all inventory.


In block 220, the data analysis system 100 receives user selection data representing a user selection of a portion of the first graphically demarcated area and a portion of the second graphically demarcated area. For example, the user may select a particular type of home in the list view, where the particular type of home represents homes of a particular type of use (e.g., single family, multi family, etc.). The user may select the same type of home in the first graphically demarcated area and the second graphically demarcated area. In alternative embodiments, the user may additionally or alternatively enter criteria in a suitable input means such as a text field entry. For example, the user may specify in a text field entry the type of home to be selected.


In block 222, the data analysis system 100 determines, based on the user selection, one or more second membership criteria and one or more second set operations. For example, the one or more second membership criteria may comprise a membership criterion that an inventory must be the selected type of home.


In block 224, the data analysis system 100 creates a second filter chain based on the first filter chain, the one or more second membership criteria, and the one or more second set operations. For example, this second filter chain comprises two filter links, with the first filter link selecting all the homes in a particular region and the second filter link selecting only those inventories in the particular region that are of the selected type of home.


In block 226, the data analysis system 100 applies the second filter chain to the data set to cause one or more third selected data items, one or more fourth selected data items, one or more fifth data items, and one or more sixth data items to be selected from the data set. For example, the third selected data items may be data items that satisfy the first membership criteria and the second membership criteria, the fourth selected data items may be data items that satisfy the first membership criteria and do not satisfy the second membership criteria, the fifth selected data items may be data items that do not satisfy the first membership criteria and do satisfy the second membership criteria, and the sixth selected data items may be data items that do not satisfy the first membership criteria and do not satisfy the second membership criteria.


In block 228, the data analysis system 100 sends the one or more third selected data items to the client computer for constructing a third filter view in the first graphically demarcated area (e.g., the one or more third selected data items are configured to be viewed in the third filter view). For example, the third filter view may be a histogram filter view that displays the number of homes and the sale value for those homes in a region specified by the first membership criteria and that are of a type specified by the second membership criteria. In alternative embodiments, zero data items may be returned when the second filter chain is applied to the data set.


In block 230, the data analysis system 100 sends the one or more fourth selected data items to the client computer for constructing a fourth filter view in the first graphically demarcated area (e.g., the one or more fourth selected data items are configured to be viewed in the fourth filter view). For example, the fourth filter view may be a histogram filter view that displays the number of homes and the sale value for those homes in a region specified by the first membership criteria and that are not of a type specified by the second membership criteria. In alternative embodiments, zero data items may be returned when the second filter chain is applied to the data set.


In block 232, the data analysis system 100 sends the one or more fifth selected data items to the client computer for constructing a fifth filter view in the second graphically demarcated area (e.g., the one or more fifth selected data items are configured to be viewed in the fifth filter view). For example, the fifth filter view may be a histogram filter view that displays the number of homes and the sale value for those homes that are not in a region specified by the first membership criteria and that are of a type specified by the second membership criteria. In alternative embodiments, zero data items may be returned when the second filter chain is applied to the data set.


In block 234, the data analysis system 100 sends the one or more sixth selected data items to the client computer for constructing a sixth filter view in the second graphically demarcated area (e.g., the one or more sixth selected data items are configured to be viewed in the sixth filter view). For example, the sixth filter view may be a histogram filter view that displays the number of homes and the sale value for those homes that are not in a region specified by the first membership criteria and that are not of a type specified by the second membership criteria. In alternative embodiments, zero data items may be returned when the second filter chain is applied to the data set.



FIG. 2C illustrates another example process flow for analyzing a data set. In block 252, the data analysis system 100 creates a first filter chain based on one or more first membership criteria and zero or more first set operations. For example, the first filter chain may be retrieved from the data repository 112 in which the first filter chain has been previously defined and saved, or may be determined based on user input.


In block 254, the data analysis system 100 applies the first filter chain to a data set to cause one or more first selected data items to be selected from the data set and one or more second selected data items to be selected from the data set. For example, the first selected data items may be data items that satisfy the first membership criteria and the second selected data items may be data items that do not satisfy the first membership criteria. The first filter chain may be a histogram filter that selects all data items in a data set that satisfy the first membership criteria. In alternative embodiments, zero data items may be returned when the first filter chain is applied to the data set.


In block 256, the data analysis system 100 sends the one or more first selected data items to a client computer for constructing a first filter view in a first graphically demarcated area (e.g., the one or more first selected data items are configured to be viewed in the first filter view). For example, the first filter view may be a list view filter that displays all homes for sale in a region specified by the first membership criteria. The first graphically demarcated area may be a content pane that is separate and apart from a list, table, or tree view that presents a scrollable listing of all inventory.


In block 258, the data analysis system 100 sends the one or more second selected data items to a client computer for constructing a second filter view in a second graphically demarcated area (e.g., the one or more second selected data items are configured to be viewed in the second filter view). For example, the second filter view may be a list view filter that displays all homes for sale in all regions not specified by the first membership criteria. The second graphically demarcated area may be a content pane that is separate and apart from a list, table, or tree view that presents a scrollable listing of all inventory.


In block 260, the data analysis system 100 receives user selection data representing a user selection of a portion of the first graphically demarcated area. For example, the user may select a particular type of home in the list view in the first graphically demarcated area, where the particular type of home represents homes of a particular type of use (e.g., single family, multi family, etc.). In alternative embodiments, the user may additionally or alternatively enter criteria in a suitable input means such as a text field entry. For example, the user may specify in a text field entry the type of home to be selected.


In block 262, the data analysis system 100 determines, based on the user selection, one or more second membership criteria and one or more second set operations. For example, the one or more second membership criteria may comprise a membership criterion that an inventory must be the selected type of home.


In block 264, the data analysis system 100 creates a second filter chain based on the first filter chain, the one or more second membership criteria, and the one or more second set operations. For example, this second filter chain comprises two filter links, with the first filter link selecting all the homes in a particular region and the second filter link selecting only those inventories in the particular region that are of the selected type of home.


In block 266, the data analysis system 100 applies the second filter chain to the data set to cause one or more third selected data items and one or more fourth selected data items to be selected from the data set. For example, the third selected data items may be data items that satisfy the first membership criteria and the second membership criteria and the fourth selected data items may be data items that satisfy the first membership criteria and do not satisfy the second membership criteria.


In block 268, the data analysis system 100 sends the one or more third selected data items to the client computer for constructing a third filter view in the first graphically demarcated area (e.g., the one or more third selected data items are configured to be viewed in the third filter view). For example, the third filter view may be a histogram filter view that displays the number of homes and the sale value for those homes in a region specified by the first membership criteria and that are of a type specified by the second membership criteria. In alternative embodiments, zero data items may be returned when the second filter chain is applied to the data set.


In block 270, the data analysis system 100 sends the one or more fourth selected data items to the client computer for constructing a fourth filter view in the first graphically demarcated area (e.g., the one or more fourth selected data items are configured to be viewed in the fourth filter view). For example, the fourth filter view may be a histogram filter view that displays the number of homes and the sale value for those homes in a region specified by the first membership criteria and that are not of a type specified by the second membership criteria. In alternative embodiments, zero data items may be returned when the second filter chain is applied to the data set.


In this way, the second filter chain can be applied to the first graphically demarcated area and not the second graphically demarcated area such that the first graphically demarcated includes filter views that are more refined than the filter views included in the second graphically demarcated area.


Object Centric Data Model


To provide a framework for the following discussion of specific systems and methods described herein, an example database system 310 using an ontology 305 will now be described. This description is provided for the purpose of providing an example and is not intended to limit the techniques to the example data model, the example database system, or the example database system's use of an ontology to represent information.


In one embodiment, a body of data is conceptually structured according to an object-centric data model represented by ontology 305. The conceptual data model is independent of any particular database used for durably storing one or more database(s) 309 based on the ontology 305. For example, each object of the conceptual data model may correspond to one or more rows in a relational database or an entry in Lightweight Directory Access Protocol (LDAP) database, or any combination of one or more databases.



FIG. 3 illustrates an object-centric conceptual data model according to an embodiment. An ontology 305, as noted above, may include stored information providing a data model for storage of data in the database 309. The ontology 305 may be defined by one or more object types, which may each be associated with one or more property types. At the highest level of abstraction, data object 301 is a container for information representing things in the world. For example, data object 301 can represent an entity such as a person, a place, an organization, a market instrument, an inventory, or other noun. Data object 301 can represent an event that happens at a point in time or for a duration. Data object 301 can represent a document or other unstructured data source such as an e-mail message, a news report, or a written paper or article. Each data object 301 is associated with a unique identifier that uniquely identifies the data object within the database system.


Different types of data objects may have different property types. For example, a “Person” data object might have an “Eye Color” property type and an “Event” data object might have a “Date” property type. Each property 303 as represented by data in the database system 310 may have a property type defined by the ontology 305 used by the database 305.


Objects may be instantiated in the database 309 in accordance with the corresponding object definition for the particular object in the ontology 305. For example, a specific monetary payment (e.g., an object of type “event”) of US$30.00 (e.g., a property of type “currency”) taking place on Mar. 27, 2009 (e.g., a property of type “date”) may be stored in the database 309 as an event object with associated currency and date properties as defined within the ontology 305.


The data objects defined in the ontology 305 may support property multiplicity. In particular, a data object 301 may be allowed to have more than one property 303 of the same property type. For example, a “Person” data object might have multiple “Address” properties or multiple “Name” properties.


Each link 302 represents a connection between two data objects 301. In one embodiment, the connection is either through a relationship, an event, or through matching properties. A relationship connection may be asymmetrical or symmetrical. For example, “Person” data object A may be connected to “Person” data object B by a “Child Of” relationship (where “Person” data object B has an asymmetric “Parent Of” relationship to “Person” data object A), a “Kin Of” symmetric relationship to “Person” data object C, and an asymmetric “Member Of” relationship to “Organization” data object X. The type of relationship between two data objects may vary depending on the types of the data objects. For example, “Person” data object A may have an “Appears In” relationship with “Document” data object Y or have a “Participate In” relationship with “Event” data object E. As an example of an event connection, two “Person” data objects may be connected by an “Airline Flight” data object representing a particular airline flight if they traveled together on that flight, or by a “Meeting” data object representing a particular meeting if they both attended that meeting. In one embodiment, when two data objects are connected by an event, they are also connected by relationships, in which each data object has a specific relationship to the event, such as, for example, an “Appears In” relationship.


As an example of a matching properties connection, two “Person” data objects representing a brother and a sister, may both have an “Address” property that indicates where they live. If the brother and the sister live in the same home, then their “Address” properties likely contain similar, if not identical property values. In one embodiment, a link between two data objects may be established based on similar or matching properties (e.g., property types and/or property values) of the data objects. These are just some examples of the types of connections that may be represented by a link and other types of connections may be represented; embodiments are not limited to any particular types of connections between data objects. For example, a document might contain references to two different objects. For example, a document may contain a reference to a payment (one object), and a person (a second object). A link between these two objects may represent a connection between these two entities through their co-occurrence within the same document.


Each data object 301 can have multiple links with another data object 301 to form a link set 304. For example, two “Person” data objects representing a husband and a wife could be linked through a “Spouse Of” relationship, a matching “Address” property, and one or more matching “Event” properties (e.g., a wedding). Each link 302 as represented by data in a database may have a link type defined by the database ontology used by the database.



FIG. 4 is a block diagram illustrating exemplary components and data that may be used in identifying and storing data according to an ontology. In this example, the ontology may be configured, and data in the data model populated, by a system of parsers and ontology configuration tools. In the embodiment of FIG. 4, input data 400 is provided to parser 402. The input data may comprise data from one or more sources. For example, an institution may have one or more databases with information on credit card transactions, rental cars, and people. The databases may contain a variety of related information and attributes about each type of data, such as a “date” for a credit card transaction, an address for a person, and a date for when a rental car is rented. The parser 402 is able to read a variety of source input data types and determine which type of data it is reading.


In accordance with the discussion above, the example ontology 305 comprises stored information providing the data model of data stored in database 309, and the ontology is defined by one or more object types 410, one or more property types 416, and one or more link types 430. Based on information determined by the parser 402 or other mapping of source input information to object type, one or more data objects 301 may be instantiated in the database 309 based on respective determined object types 410, and each of the objects 301 has one or more properties 303 that are instantiated based on property types 416. Two data objects 301 may be connected by one or more links 302 that may be instantiated based on link types 430. The property types 416 each may comprise one or more data types 418, such as a string, number, etc. Property types 416 may be instantiated based on a base property type 420. For example, a base property type 420 may be “Locations” and a property type 416 may be “Home.”


In an embodiment, a user of the system uses an object type editor 424 to create and/or modify the object types 410 and define attributes of the object types. In an embodiment, a user of the system uses a property type editor 426 to create and/or modify the property types 416 and define attributes of the property types. In an embodiment, a user of the system uses link type editor 428 to create the link types 430. Alternatively, other programs, processes, or programmatic controls may be used to create link types and property types and define attributes, and using editors is not required.


In an embodiment, creating a property type 416 using the property type editor 426 involves defining at least one parser definition using a parser editor 422. A parser definition comprises metadata that informs parser 402 how to parse input data 400 to determine whether values in the input data can be assigned to the property type 416 that is associated with the parser definition. In an embodiment, each parser definition may comprise a regular expression parser 404A or a code module parser 404B. In other embodiments, other kinds of parser definitions may be provided using scripts or other programmatic elements. Once defined, both a regular expression parser 404A and a code module parser 404B can provide input to parser 402 to control parsing of input data 400.


Using the data types defined in the ontology, input data 400 may be parsed by the parser 402 determine which object type 410 should receive data from a record created from the input data, and which property types 416 should be assigned to data from individual field values in the input data. Based on the object-property mapping 401, the parser 402 selects one of the parser definitions that is associated with a property type in the input data. The parser parses an input data field using the selected parser definition, resulting in creating new or modified data 403. The new or modified data 403 is added to the database 309 according to ontology 305 by storing values of the new or modified data in a property of the specified property type. As a result, input data 400 having varying format or syntax can be created in database 309. The ontology 305 may be modified at any time using object type editor 424, property type editor 426, and link type editor 428, or under program control without human use of an editor. Parser editor 422 enables creating multiple parser definitions that can successfully parse input data 400 having varying format or syntax and determine which property types should be used to transform input data 400 into new or modified input data 403.


The properties, objects, and the links (e.g. relationships) between the objects can be visualized using a graphical user interface (GUI). In an embodiment, a user interface that allows for searching, inspecting, filtering, and/or statistically aggregating data in a multipath format is illustrated and described below with respect to FIGS. 5A through 12-4B.


Multipath Explorer Creation


A multipath explorer can provide an interface that allows a user to apply one or more filters to a data set and visually identify data that satisfies the one or more filters and data that does not satisfy one or more of the filters. For example, a user can apply a first filter to a data set and the multipath explorer displays data in the data set that satisfies the first filter. The multipath explorer can also display data in the data set that does not satisfy the first filter (e.g., in a different view of window). As additional filters are applied by the user, the multipath explorer can display additional views or windows that show data that satisfy all of the filters, some of the filters, and/or none of the filters. In this way, the multipath explorer can display all combinations of data that do and do not satisfy the filters applied by the user. In other words, the multipath explorer allows a user to immediately visualize an entire population, one or more subsets of the entire population, and one or more endpoints of an analysis of subsets of the entire population. FIGS. 5A-7 illustrate how the different paths displayed by the multipath explorer can be generated.



FIG. 5A illustrates an example toolbar 500 that allows a user to create a root node of a multipath view. In an embodiment, the multipath view may be illustrated in a tree structure. In another embodiment, the multipath view may be illustrated in a DAG structure. As illustrated in FIG. 5A, the toolbar 500 (also referred to as a dashboard) includes a tab 510. The tab 510 includes buttons, text fields, and/or other options that allow a user to create a root node (e.g., add new child button 530, add new child group button 535, and metrics group 540). The root node may represent all inventory in a data set. For example, the inventory may comprise all homes that currently have pending loans and a title of the root node may be “All Loans,” as illustrated in text field 520.



FIG. 5B illustrates an example widget 550 that displays a created root node 560. In the example of FIG. 5B, the root node 560 is represented as a rectangular box and includes the title of the root node (e.g., “All Loans”), the number of inventory in the data set (e.g., 715,639 homes), and/or a metric or attribute associated with the inventory (e.g., an average or median value of the pending loans, etc.). While the root node 560 is illustrated in the shape of a rectangular box, this is not meant to be limiting as the root node 560 may be illustrated in any shape or form.



FIG. 6A illustrates an example toolbar 600 that allows a user to create a child node of a multipath view. As illustrated in FIG. 6A, the toolbar 600 (also referred to as a dashboard) includes a tab 610. The tab 610 includes buttons, text fields, and/or other options that allow a user to create a child node (e.g., add new child button 530, add new child group button 535, and metrics group 540). In an embodiment, the child node represents all inventory in a data set that corresponds to a membership criteria. For example, the inventory may comprise all homes that currently have pending loans and a membership criteria may be that the homes must be in California. In an alternative embodiment, the child node represents all inventory in a data set that does not correspond to a membership criteria. For example, the inventory may comprise all homes that currently have pending loans and the membership criteria may be that the homes cannot be in California. The membership criteria may be selected and/or entered in a text field, and name of the child node may be provided in text field 620.


In an embodiment, the child node inherits the metrics or attributes of its parent node. Alternatively or in addition, other metrics or attributes may be specified in metrics group 540.


In an embodiment, the add new child button 530 adds a new child node to a parent node selected by the user. The new child node includes the criteria set forth by the user in the tab 610. For example, the new child node may specify additional membership criteria to be applied to the data included in the parent node. In this way, a parent node may include one or more child nodes, whereas sibling nodes of the parent node may not include any child nodes.


In an embodiment, the add new child group button 535 adds a new child node to a parent node selected by the user and one or more sibling nodes of the parent node. For example, the new child node may specify additional membership criteria to be applied to the data included in the parent node and the data included in the sibling nodes of the parent node. In this way, a parent node and sibling nodes of the parent node may each include one or more child nodes (e.g., the parent node and the sibling nodes of the parent node may each include the same number of child nodes with the same membership criteria).


In another embodiment, the add new child group button 535 adds some or all of the possible results of a criteria as new child nodes to a parent node. For example, a parent node can include a data set that comprises a group of loans for homes. When the add new child group button 535 is selected, the membership criteria “homeType” may be entered, and a new child node may be added to the parent node for each unique value of “homeType” for all of the homes in the parent node.


In a further embodiment, the tab 610 includes an add new sibling button, not shown. The add new sibling button may add a sibling node to a parent node selected by the user. For example, the sibling node may specify the same membership criteria as the parent node.


In a further embodiment, the tab 610 include an add new parent button, not shown. The add new parent button may create a parent node (or a child node) based on one or more child nodes selected by the user. For example, a first child node may include a first data set and a second child node may include a second data set. The add new parent button may, when selected, create a parent node (or a child node) based on the first child node and the second child node. The parent node (or child node) may include a master data set, where the master data set is based on at least one common attribute of the first data set and the second data set (e.g. one common data type or property, such as the two nodes both being a collection of “house” object types). The creation of a new node based on at least one common attribute of a first data set and a second data set may be displayed in a manner as illustrated in FIGS. 13E-F, which are described in greater detail below. In some embodiments, the one or more child nodes used to create the parent node (or the child node) share another parent node. In other embodiments, the one or more child nodes used to create the parent node (or the child node) do not share any other parent node. If one or more child nodes are used to create a child node, the one or more child nodes may be considered parent nodes of the created child node.


In a further embodiment, the tab 610 includes a transform object type button, not shown. The transform object type button may, when selected, transform a data set from a first object type to a second object type. For example, a data set may include homes having a default mortgage and a result of a node may be documents (e.g., the mortgages). The data set may be transformed into new objects, such as real estate agents associated with those homes, so that a result of the node is now a person (e.g., the real estate agents). Additional child nodes may then be created based on the real estate agent data set (e.g., by requesting the names of real estate agents that appear three or more times). Such a transformation may be displayed in a manner as illustrated in FIGS. 13H-G, which are described in greater detail below.



FIG. 6B illustrates the widget 550 that displays the created root node 560 and created child nodes 662, 664, 666, and 668. As illustrated in FIG. 6B, like the root node 560, the child nodes 662, 664, 666, and 668 are represented as rectangular boxes and include the title of the child node (e.g., “CA,” “FL,” “AZ,” and “Other”), the number of inventory in the data set (e.g., 158,419 homes, 95,198 homes, 46,074 homes, and 415,948 homes), and/or a metric or attribute associated with the inventory (e.g., an average or median value of the pending loans, etc.). While the child nodes 662, 664, 666, and 668 are illustrated in the shape of a rectangular box, this is not meant to be limiting as the child nodes 662, 664, 666, and 668 may be illustrated in any shape or form.


In an embodiment, the child nodes 662, 664, 666, and 668 are created by selecting the root node 560 and the add new child button 530 or the add new child group button 535. For example, the membership criteria specified for the child node may be homes in California, Florida, and Arizona. Thus, child nodes 662, 664, and 666 may be created for each value (e.g., California, Florida, and Arizona) and display the data that satisfies the membership criteria. The child node 668 may be created to illustrate the data that does not satisfy the membership criteria. In some embodiments, the data that does not satisfy the membership criteria may be identified by identifying all items from the parent node that are not included in the other child nodes. In other embodiments, the data that does not satisfy the membership criteria may be identified by identifying all items from the parent node that are not included in the other child nodes and that are above or below a certain percentage.


In an embodiment, the root node 560 and/or the child nodes 662, 664, 666, and/or 668 auto arrange, auto size and/or auto shape such that all nodes can fit in the widget 550. In a further embodiment, the user can adjust the background color, the font, the font size, the font color, the alignment, and/or the border of the root node 560 and/or the child nodes 662, 664, 666, and/or 668. In a further embodiment, the user can copy, drag (e.g., to change order or location), resize, and/or rotate the root node 560 and/or the child nodes 662, 664, 666, and/or 668. In a further embodiment, the user can select the root node 560 and/or the child nodes 662, 664, 666, and/or 668 to view additional information (e.g., data associated with the root node and/or child node displayed in a list, in a graph, etc.).



FIG. 7 illustrates the widget 550 that displays a root node and a series of child nodes in a tree structure. As illustrated in FIG. 7, each parent node includes child nodes with the same membership criteria as the parent node's sibling nodes (e.g., the parent nodes titled “CA,” “FL,” “AZ,” and “Other” each include child nodes titled “Single Family,” which represent data that does satisfy a specified membership criteria). In addition, each parent node and each of the parent node's sibling nodes include child nodes that do not satisfy the membership criteria at a particular level in the tree structure (e.g., the parent nodes titled “CA,” “FL,” “AZ,” and “Other” each include child nodes titled “Multi Family,” which represent data that does not satisfy the membership criteria specified by the “Single Family” child nodes). While the parent nodes and child nodes are illustrated in the shape of a rectangular box, this is not meant to be limiting as the parent nodes and child nodes may be illustrated in any shape or form.


In an embodiment, the widget 550 provides functionality such that the user can save a filtered or defiltered data set (e.g., a parent-child node chain or a root node) as a new object series. The user may be able to title the new object series. The new object series may be shared with other users, or restricted from other users viewing. The new object series may also be used in later analysis or filtering. For example, the new object series may be applied to the same data set at a later time (e.g., after the data set has been updated). As another example, the new object series may be applied to a different data set. When applying the new object series to the different data set, root nodes, parent nodes, and/or child nodes may be created and be formed in the same or similar tree structure as the root nodes, parent nodes, and/or child nodes of the saved data set.


In an embodiment (not shown), a parent node can include child nodes that are not included in the parent node's sibling nodes. For example, the “CA” parent node may include the “Single Family” and the “Multi Family” child nodes, whereas the “FL,” “AZ,” and/or “Other” parent nodes may not include the “Single Family” and the “Multi Family” child nodes.


In an embodiment (not shown), filter chains (e.g., a parent-child node chain) are color coded. The filter chains may be color coded based on a metric or attribute (e.g., magnitude, name, value, etc.) determined by the user. For example, if the output of nodes are numbers (e.g., home loan values), then filter chains that include nodes with loan values in a high range may appear red and filter chains that include nodes with loan values in a low range may appear blue.


The widget 550 as illustrated in FIG. 7 allows a user to immediately visualize an entire population, one or more subsets of the entire population, and one or more endpoints of an analysis of subsets of the entire population.


Multipath Explorer Graphical User Interface



FIG. 8 illustrates an example graphical user interface (GUI) 800 for a multipath explorer. As illustrated in FIG. 8, the GUI 800 includes an all filters tab 802 and a histogram filter tab 804. While the GUI 800 includes the all filters tab 802 and the histogram filter tab 804, this is not meant to be limiting as the GUI 800 may include fewer or additional tabs, such as tabs associated with each of the filters discussed below.


In an embodiment, the all filters tab 802 is selected by the user and includes list filters group 806, histogram filters group 808, scatterplot filters group 810, timeline filters group 812, other filters group 814, and date group 816. The list filters group 806 includes list filters that can be applied to a data set. For example, list filters may include filters that display data in the data set in a list form. The histogram filters group 808 includes histogram filters that can be applied to a data set. For example, the histogram filters may include filters that display data in the data set in a graphical (e.g., bar graph, line graph, etc.) form. The scatterplot filters group 810 includes scatterplot filters that can be applied to a data set. For example, the scatterplot filters may include filters that display data in the data set in a scatterplot form. The timeline filters group 812 includes timeline filters that can be applied to a data set. For example, the timeline filters may include filters that display data in the data set in a timeline. The other filters group 814 include filters other than the filters described above that can be applied to a data set. The date group 816 includes options that can display data in the data set that correspond to a range of dates, a particular date, and/or the like.


As illustrated in FIG. 8, the GUI 800 includes a content pane 818 and a content pane 820. In an embodiment, the inventory includes homes with currently pending loans. Content pane 818 includes information related to the inventory, including the total number of homes with currently pending loans. In an embodiment, no filter has been applied to content pane 818 such that content pane 818 includes information on the entire inventory (e.g., the entire population).


In an embodiment, a histogram filter has been applied to the entire inventory. Thus, the content pane 820 displays a histogram for the entire inventory. The histogram includes a loan value on the x-axis and a count on the y-axis (e.g., a number of homes that have a particular loan value).


In an embodiment, the content pane 818 and/or the content pane 820 are embedded in the GUI 800. In another embodiment, the content pane 818 and/or the content pane 820 can open in separate windows within or outside the GUI 800.



FIG. 9 illustrates another example graphical user interface (GUI) 900 for a multipath explorer. As illustrated in FIG. 9, the GUI 900 includes the all filters tab 802 and the histogram filter tab 804. While the GUI 900 includes the all filters tab 802 and the histogram filter tab 804, this is not meant to be limiting as the GUI 900 may include fewer or additional tabs, such as tabs associated with each of the filters discussed below.


As illustrated in FIG. 9, the GUI 900 includes the content pane 818 and a content pane 902. In an embodiment, the content pane 902 includes a filter that is applied to the entire inventory in content pane 818 such that 299,691 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the homes must be in a particular region (e.g., California, Florida, or Arizona). Based on this membership criteria, four additional content panes may be included in the GUI 900. The first additional content pane is illustrated in FIG. 9-1, the second in FIG. 9-2, the third in FIG. 9-3, and the fourth in FIG. 9-4. The additional content panes may display data that satisfies the membership criteria and data that does not satisfy the membership criteria.



FIG. 9-1 illustrates a content pane 912 included in the GUI 900 of FIG. 9. In an embodiment, the content pane 912 includes a filter that is applied to the data in content pane 902 such that 158,419 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be in California. Thus, content pane 912 displays data that satisfies the membership criteria originally specified in content pane 902.



FIG. 9-2 illustrates another content pane 922 included in the GUI 900 of FIG. 9. In an embodiment, the content pane 922 includes a filter that is applied to the data in content pane 902 such that 95,196 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be in Florida. Thus, content pane 922 displays data that satisfies the membership criteria originally specified in content pane 902.



FIG. 9-3 illustrates another content pane 932 included in the GUI 900 of FIG. 9. In an embodiment, the content pane 932 includes a filter that is applied to the data in content pane 902 such that 46,074 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be in Arizona. Thus, content pane 932 displays data that satisfies the membership criteria originally specified in content pane 902.



FIG. 9-4 illustrates another content pane 942 included in the GUI 900 of FIG. 9. In an embodiment, the content pane 942 includes a filter that is applied to the data in content pane 902 such that 415,948 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be in California, Florida, or Arizona (e.g., “Other”). Thus, content pane 942 displays data that does not satisfy the membership criteria originally specified in content pane 902.



FIG. 10 illustrates another example graphical user interface (GUI) 1000 for a multipath explorer. As illustrated in FIG. 10, the GUI 1000 includes the all filters tab 802 and the histogram filter tab 804. While the GUI 1000 includes the all filters tab 802 and the histogram filter tab 804, this is not meant to be limiting as the GUI 1000 may include fewer or additional tabs, such as tabs associated with each of the filters discussed below.


As illustrated in FIG. 10, the GUI 1000 includes the content pane 818, the content pane 902, and a content pane 1002. In an embodiment, the content pane 1002 includes a filter that is applied to the inventory in content pane 902 such that 197,479 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the homes must be of a particular type (e.g., single family homes). Based on this membership criteria, eight additional content panes may be included in the GUI 1000. The first additional content pane is illustrated in FIG. 10-1A, the second in FIG. 10-1B, the third in FIG. 10-2A, the fourth in FIG. 10-2B, the fifth in FIG. 10-3A, the sixth in FIG. 10-3B, the seventh in FIG. 10-4A, and the eight in FIG. 10-4B. The additional content panes may display data that satisfies the membership criteria, data that satisfies some of the membership criteria, and data that does not satisfy the membership criteria.



FIG. 10-1A illustrates a content pane 1012 included in the GUI 1000 of FIG. 10. In an embodiment, the content pane 1012 includes a filter that is applied to the data in content pane 1002 such that 109,125 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes in California. Thus, content pane 1012 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1002.



FIG. 10-1B illustrates another content pane 1013 included in the GUI 1000 of FIG. 10. In an embodiment, the content pane 1013 includes a filter that is applied to the data in content pane 1002 such that 19,108 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in California (e.g., must be multi family homes in California). Thus, content pane 1013 displays data that satisfies the membership criteria originally specified in content pane 902 and that does not satisfy the membership criteria originally specified in content pane 1002.



FIG. 10-2A illustrates another content pane 1022 included in the GUI 1000 of FIG. 10. In an embodiment, the content pane 1022 includes a filter that is applied to the data in content pane 1002 such that 55,055 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes in Florida. Thus, content pane 1022 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1002.



FIG. 10-2B illustrates another content pane 1023 included in the GUI 1000 of FIG. 10. In an embodiment, the content pane 1023 includes a filter that is applied to the data in content pane 1002 such that 16,404 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in Florida (e.g., must be multi family homes in Florida). Thus, content pane 1023 displays data that satisfies the membership criteria originally specified in content pane 902 and that does not satisfy the membership criteria originally specified in content pane 1002.



FIG. 10-3A illustrates another content pane 1032 included in the GUI 1000 of FIG. 10. In an embodiment, the content pane 1032 includes a filter that is applied to the data in content pane 1002 such that 33,299 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes in Arizona. Thus, content pane 1032 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1002.



FIG. 10-3B illustrates another content pane 1033 included in the GUI 1000 of FIG. 10. In an embodiment, the content pane 1033 includes a filter that is applied to the data in content pane 1002 such that 5,478 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in Arizona (e.g., must be multi family homes in Arizona). Thus, content pane 1033 displays data that satisfies the membership criteria originally specified in content pane 902 and that does not satisfy the membership criteria originally specified in content pane 1002.



FIG. 10-4A illustrates another content pane 1042 included in the GUI 1000 of FIG. 10. In an embodiment, the content pane 1042 includes a filter that is applied to the data in content pane 1002 such that 261,448 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes not in California, Florida, or Arizona. Thus, content pane 1042 displays data that does not satisfy the membership criteria originally specified in content pane 902 and that does satisfy the membership criteria originally specified in content pane 1002.



FIG. 10-4B illustrates another content pane 1043 included in the GUI 1000 of FIG. 10. In an embodiment, the content pane 1043 includes a filter that is applied to the data in content pane 1002 such that 50,334 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram, that the homes must not be single family homes, and that the homes must not be in California, Florida, or Arizona (e.g., must be multi family homes locations other than California, Florida, or Arizona). Thus, content pane 1043 displays data that does not satisfy the membership criteria originally specified in content pane 902 and content pane 1002.



FIG. 11 illustrates another example graphical user interface (GUI) 1100 for a multipath explorer. As illustrated in FIG. 11, the GUI 1100 includes the all filters tab 802 and the histogram filter tab 804. While the GUI 1100 includes the all filters tab 802 and the histogram filter tab 904, this is not meant to be limiting as the GUI 1200 may include fewer or additional tabs, such as tabs associated with each of the filters discussed below.


As illustrated in FIG. 11, the GUI 1100 includes the content pane 818, the content pane 902, the content pane 1002, and a content pane 1102. In an embodiment, the content pane 1102 includes a filter that is applied to the inventory in content pane 1002 such that 47,649 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the homes must include a certain number of bedrooms (e.g., zero to three bedrooms). Based on this membership criteria, sixteen additional content panes may be included in the GUI 1100. The first additional content pane is illustrated in FIG. 11-1A, the second in FIG. 11-1B, the third in FIG. 11-1C, the fourth in FIG. 11-1D, the fifth in FIG. 11-2A, the sixth in FIG. 11-2B, the seventh in FIG. 11-2C, the eight in FIG. 11-2D, the ninth in FIG. 11-3A, the tenth in FIG. 11-3B, the eleventh in FIG. 11-3C, the twelfth in FIG. 11-3D, the thirteenth in FIG. 11-4A, the fourteenth in FIG. 11-4B, the fifteenth in FIG. 11-4C, and the sixteenth in FIG. 11-4D. The additional content panes may display data that satisfies the membership criteria, data that satisfies some of the membership criteria, and data that does not satisfy the membership criteria.



FIG. 11-1A illustrates a content pane 1112 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1112 includes a filter that is applied to the data in content pane 1102 such that 12,524 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes with zero to three bedrooms in California. Thus, content pane 1112 displays data that satisfies the membership criteria originally specified in content pane 902, content pane 1002, and content pane 1102.



FIG. 11-1B illustrates another content pane 1113 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1113 includes a filter that is applied to the data in content pane 1102 such that 45,793 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes not with zero to three bedrooms in California (e.g., must be single family homes with four or more bedrooms in California). Thus, content pane 1113 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1002 and that does not satisfy the membership criteria originally specified in content pane 1102.



FIG. 11-1C illustrates another content pane 1114 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1114 includes a filter that is applied to the data in content pane 1102 such that 12,575 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes with zero to three bedrooms in California (e.g., must be multi family homes with zero to three bedrooms in California). Thus, content pane 1114 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1102 and that does not satisfy the membership criteria originally specified in content pane 1002.



FIG. 11-1D illustrates another content pane 1115 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1215 includes a filter that is applied to the data in content pane 1102 such that 683 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in California and must not include zero to three bedrooms (e.g., must be multi family homes with four or more bedrooms in California). Thus, content pane 1115 displays data that satisfies the membership criteria originally specified in content pane 902 and does not satisfy the membership criteria originally specified in content pane 1002 and content pane 1102.



FIG. 11-2A illustrates another content pane 1122 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1122 includes a filter that is applied to the data in content pane 1102 such that 7,793 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes with zero to three bedrooms in Florida. Thus, content pane 1122 displays data that satisfies the membership criteria originally specified in content pane 902, content pane 1002, and content pane 1102.



FIG. 11-2B illustrates another content pane 1123 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1123 includes a filter that is applied to the data in content pane 1102 such that 18,513 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes not with zero to three bedrooms in Florida (e.g., must be single family homes with four or more bedrooms in Florida). Thus, content pane 1123 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1002 and that does not satisfy the membership criteria originally specified in content pane 1102.



FIG. 11-2C illustrates another content pane 1124 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1124 includes a filter that is applied to the data in content pane 1102 such that 11,638 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes with zero to three bedrooms in Florida (e.g., must be multi family homes with zero to three bedrooms in Florida). Thus, content pane 1124 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1102 and that does not satisfy the membership criteria originally specified in content pane 1002.



FIG. 11-2D illustrates another content pane 1125 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1125 includes a filter that is applied to the data in content pane 1102 such that 325 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in Florida and must not include zero to three bedrooms (e.g., must be multi family homes with four or more bedrooms in Florida). Thus, content pane 1125 displays data that satisfies the membership criteria originally specified in content pane 902 and does not satisfy the membership criteria originally specified in content pane 1102 and content pane 1102.



FIG. 11-3A illustrates another content pane 1132 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1132 includes a filter that is applied to the data in content pane 1102 such that 3,119 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes with zero to three bedrooms in Arizona. Thus, content pane 1132 displays data that satisfies the membership criteria originally specified in content pane 902, content pane 1002, and content pane 1102.



FIG. 11-3B illustrates another content pane 1133 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1133 includes a filter that is applied to the data in content pane 1102 such that 14,201 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes not with zero to three bedrooms in Arizona (e.g., must be single family homes with four or more bedrooms in Arizona). Thus, content pane 1133 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1002 and that does not satisfy the membership criteria originally specified in content pane 1102.



FIG. 11-3C illustrates another content pane 1134 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1134 includes a filter that is applied to the data in content pane 1102 such that 4,137 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes with zero to three bedrooms in Arizona (e.g., must be multi family homes with zero to three bedrooms in Arizona). Thus, content pane 1134 displays data that satisfies the membership criteria originally specified in content pane 1002 and content pane 1102 and that does not satisfy the membership criteria originally specified in content pane 1002.



FIG. 11-3D illustrates another content pane 1135 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1135 includes a filter that is applied to the data in content pane 1102 such that 86 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in Arizona and must not include zero to three bedrooms (e.g., must be multi family homes with four or more bedrooms in Arizona). Thus, content pane 1135 displays data that satisfies the membership criteria originally specified in content pane 902 and does not satisfy the membership criteria originally specified in content pane 1102 and content pane 1102.



FIG. 11-4A illustrates another content pane 1142 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1142 includes a filter that is applied to the data in content pane 1102 such that 23,991 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes with zero to three bedrooms not in California, Florida, or Arizona. Thus, content pane 1142 displays data that satisfies the membership criteria originally specified in content pane 1002 and content pane 1102 and that does not satisfy the membership criteria originally specified in content pane 902.



FIG. 11-4B illustrates another content pane 1143 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1143 includes a filter that is applied to the data in content pane 1102 such that 105,705 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes not with zero to three bedrooms and not in California, Florida, or Arizona (e.g., must be single family homes with four or more bedrooms in locations other than California, Florida, or Arizona). Thus, content pane 1143 displays data that satisfies the membership criteria originally specified in content pane 1002 and that does not satisfy the membership criteria originally specified in content pane 902 and content pane 1102.



FIG. 11-4C illustrates another content pane 1144 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1144 includes a filter that is applied to the data in content pane 1102 such that 25,001 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes with zero to three bedrooms and must not be in California, Florida, or Arizona (e.g., must be multi family homes with zero to three bedrooms in locations other than California, Florida, or Arizona). Thus, content pane 1144 displays data that satisfies the membership criteria originally specified in content pane 1102 and that does not satisfy the membership criteria originally specified in content pane 902 and content pane 1002.



FIG. 11-4D illustrates another content pane 1145 included in the GUI 1100 of FIG. 11. In an embodiment, the content pane 1145 includes a filter that is applied to the data in content pane 1102 such that 3,883 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in California, Florida, or Arizona and must not include zero to three bedrooms (e.g., must be multi family homes with four or more bedrooms in locations other than California, Florida, or Arizona). Thus, content pane 1145 displays data that does not satisfy the membership criteria originally specified in content pane 902, content pane 1002, and content pane 1102.



FIG. 12 illustrates another example graphical user interface (GUI) 1200 for a multipath explorer. As illustrated in FIG. 12, the GUI 1200 includes the all filters tab 802 and the histogram filter tab 804. While the GUI 1200 includes the all filters tab 802 and the histogram filter tab 804, this is not meant to be limiting as the GUI 1200 may include fewer or additional tabs, such as tabs associated with each of the filters discussed below.


As illustrated in FIG. 12, the GUI 1200 includes the content pane 818, the content pane 902, the content pane 1002, and a content pane 1202. In an embodiment, the content pane 1202 is similar to the content pane 1102 of FIG. 11. However, unlike the content pane 1102, which includes a filter that is applied to the inventory in content pane 1002, the content pane 1202 includes a filter that is only applied to a portion of the inventory in content pane 1002 such that 12,524 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may apply only to homes in California (e.g., one of the three regions specified in the filter of content pane 902) and may specify that the homes must include a certain number of bedrooms (e.g., zero to three bedrooms).


As described above, the filter in content pane 902 creates four paths (e.g., four additional content panes). The filter in content pane 1002 creates two additional paths for each of the four paths created by the filter in content pane 902, resulting in eight total paths. The filter in content pane 1102 created two more paths for each of the eight paths created by the filter in content pane 1002, resulting in sixteen total paths. However, as described below, the filter in content pane 1202 is applied only to two of the eight paths created by the filter in content pane 1002, resulting in ten total paths.


Based on this membership criteria, ten additional content panes may be included in the GUI 1200. The first additional content pane is illustrated in FIG. 12-1A, the second in FIG. 12-1B, the third in FIG. 12-1C, the fourth in FIG. 12-1D, the fifth in FIG. 12-2A, the sixth in FIG. 12-2B, the seventh in FIG. 12-3A, the eight in FIG. 12-3B, the ninth in FIG. 12-4A, and the tenth in FIG. 12-4B. The additional content panes may display data that satisfies the membership criteria, data that satisfies some of the membership criteria, and data that does not satisfy the membership criteria.



FIG. 12-1A illustrates a content pane 1212 included in the GUI 1200 of FIG. 12. In an embodiment, the content pane 1212 includes a filter that is applied to the data in content pane 1202 such that 12,524 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes with zero to three bedrooms in California. Thus, content pane 1212 displays data that satisfies the membership criteria originally specified in content pane 902, content pane 1002, and content pane 1202.



FIG. 12-1B illustrates another content pane 1213 included in the GUI 1200 of FIG. 12. In an embodiment, the content pane 1213 includes a filter that is applied to the data in content pane 1202 such that 45,793 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes not with zero to three bedrooms in California (e.g., must be single family homes with four or more bedrooms in California). Thus, content pane 1213 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1002 and that does not satisfy the membership criteria originally specified in content pane 1202.



FIG. 12-1C illustrates another content pane 1214 included in the GUI 1200 of FIG. 12. In an embodiment, the content pane 1214 includes a filter that is applied to the data in content pane 1202 such that 12,575 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes with zero to three bedrooms in California (e.g., must be multi family homes with zero to three bedrooms in California). Thus, content pane 1214 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1202 and that does not satisfy the membership criteria originally specified in content pane 1002.



FIG. 12-1D illustrates another content pane 1215 included in the GUI 1200 of FIG. 12. In an embodiment, the content pane 1215 includes a filter that is applied to the data in content pane 1202 such that 683 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in California and must not include zero to three bedrooms (e.g., must be multi family homes with four or more bedrooms in California). Thus, content pane 1215 displays data that satisfies the membership criteria originally specified in content pane 902 and does not satisfy the membership criteria originally specified in content pane 1002 and content pane 1202.



FIG. 12-2A illustrates another content pane 1222 included in the GUI 1200 of FIG. 12. In an embodiment, the content pane 1222 includes a filter that is applied to the data in content pane 1002 such that 55,055 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes in Florida. Thus, content pane 1222 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1002.



FIG. 12-2B illustrates another content pane 1223 included in the GUI 1200 of FIG. 12. In an embodiment, the content pane 1223 includes a filter that is applied to the data in content pane 1002 such that 16,404 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in Florida (e.g., must be multi family homes in Florida). Thus, content pane 1223 displays data that satisfies the membership criteria originally specified in content pane 902 and that does not satisfy the membership criteria originally specified in content pane 1002.



FIG. 12-3A illustrates another content pane 1232 included in the GUI 1000 of FIG. 10. In an embodiment, the content pane 1232 includes a filter that is applied to the data in content pane 1002 such that 33,299 out of 715,639 homes satisfy the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes in Arizona. Thus, content pane 1232 displays data that satisfies the membership criteria originally specified in content pane 902 and content pane 1002.



FIG. 12-3B illustrates another content pane 1233 included in the GUI 1200 of FIG. 12. In an embodiment, the content pane 1333 includes a filter that is applied to the data in content pane 1002 such that 5,478 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must not be single family homes in Arizona (e.g., must be multi family homes in Arizona). Thus, content pane 1233 displays data that satisfies the membership criteria originally specified in content pane 902 and that does not satisfy the membership criteria originally specified in content pane 1002.



FIG. 12-4A illustrates another content pane 1242 included in the GUI 1200 of FIG. 12. In an embodiment, the content pane 1242 includes a filter that is applied to the data in content pane 1002 such that 261,448 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram and that the homes must be single family homes not in California, Florida, or Arizona. Thus, content pane 1242 displays data that does not satisfy the membership criteria originally specified in content pane 902 and that does satisfy the membership criteria originally specified in content pane 1002.



FIG. 12-4B illustrates another content pane 1243 included in the GUI 1200 of FIG. 12. In an embodiment, the content pane 1243 includes a filter that is applied to the data in content pane 1002 such that 50,334 out of 715,639 homes are identified as not satisfying the membership criteria embodied by the filter. For example, the membership criteria may specify that the data is to be displayed in a histogram, that the homes must not be single family homes, and that the homes must not be in California, Florida, or Arizona (e.g., must be multi family homes locations other than California, Florida, or Arizona). Thus, content pane 1243 displays data that does not satisfy the membership criteria originally specified in content pane 902 and content pane 1002.


In an embodiment, the data displayed in the various content panes described herein is updated dynamically as new data is entered, updated, deleted, and/or otherwise changed. In a further embodiment, the data displayed in the various content panes described herein is updated if the user selects the refresh data button illustrated in content pane 818.


As described above, one or more child nodes can be combined to form a parent node. For example, the GUI 800, 900, 1000, 1100, and/or 1200 may include functionality to allow a user to combine one or more child content panes to form a master content pane. The data displayed in the master content pane may be based on one or more common attributes of the data displayed in the child content panes. The master content pane may be positioned as a parent of the one or more child content panes in the content pane hierarchy or may be positioned as a child of the one or more child content panes in the content pane hierarchy. The data displayed in the child content panes may or may not be derived from a common data set. For example, the data displayed in the child content panes may be subsets of a data set that includes loan values for homes. As another example, the data displayed in a first child content pane may be a subset of a data set that includes loan values for homes and the data displayed in a second child content pane may be a subset of a data set that includes sales prices for homes.


In a further embodiment, not shown, the GUI 800, 900, 1000, 1100, and/or 1200 includes functionality to allow a user to transform a data set from a first object type to a second object type. For example, a data set may include homes having a default mortgage and the content panes may display documents (e.g., the mortgages) according to one of the views described herein. The data set may be transformed into new objects, such as real estate agents associated with those homes, so that the content panes then display persons (e.g., the real estate agents) according to one of the views described herein. Additional content panes may then be generated based on the real estate agent data set (e.g., a new membership criteria may require that the names of real estate agents must appear three or more times).


In a further embodiment, the GUI 800, 900, 1000, 1100, and/or 1200 includes functionality to allow a user to save a filtered or defiltered data set as a new object series (e.g., one or more of the membership criteria and the order in which they are used in determining how to display data in the content panes). The user may be able to title the new object series. The new object series may be shared with other users, or restricted from other users viewing. The new object series may also be used in later analysis or filtering. For example, the new object series may be applied to the same data set at a later time (e.g., after the data set has been updated). As another example, the new object series may be applied to a different data set. When applying the new object series to the different data set, the content panes may be created and displayed in the same or similar hierarchy as the content panes of the saved data set.


In a further embodiment, not shown, one or more reports can be generated based on the data displayed in one or more content panes. The reports may be generated in any suitable format (e.g., .doc, .xls, .pdf, etc.). For example, a report may include text based on the data displayed in one or more content panes. As another example, a report may include a visual representation of the data in the data set, such as in a manner similar to or the same as the manner in which data is displayed in one or more content panes (e.g., the report may look similar to the view provided by GUI 800, 900, 1000, 1100, and/or 1200).


In a further embodiment, not shown, the various content panes in the GUI 800, 900, 1000, 1100, and/or 1200 are color coded. The content panes may be color coded based on a metric or attribute (e.g., magnitude, name, value, etc.) determined by the user. For example, if the output of a content pane are numbers (e.g., home loan values), then content panes with loan values in a high range may appear red and content panes with loan values in a low range may appear blue.


Example Node Combination and Object Transformation



FIG. 13A illustrates an example graphical user interface (GUI) 1300 for selecting a starting set of inventory. As illustrated in FIG. 13A, a starting set of inventory is selected (e.g., indicated by the word “all” followed by an object type). For example, the starting set of inventory may include all homes.



FIG. 13B illustrates a box 1310 that represents the starting set of inventory. In some embodiments, the size of the box 1310 is determined by the content (e.g., the font becomes smaller to fit more content if needed). In other embodiments, the size of the box 1410 is fixed at a default starting size. As described above, the box 1310 may be copied, dragged (e.g., to change order or location), resized, and/or rotated by the user. The content of the box 1310 may likewise be copied, dragged, resized, and/or rotated by the user. In addition, the contents of the box 1310 may be enlarged or shrunken (e.g., zoom in, zoom out) by the user and the box 1310 may be deleted by the user.



FIG. 13C illustrates a first filter 1312 and a second filter 1314 that are applied to the starting set of inventory. In an embodiment, the first filter 1312 specifies that the homes must have a first list price greater than or equal to 100,000 and be displayed in a histogram. In an embodiment, the second filter 1314 specifies that the homes must be in California. As illustrated in FIG. 13C, the first filter 1312, when applied to the starting set of inventory, identifies 407,286 out of 715,639 homes that satisfy the first filter 1312 membership criteria. As illustrated in FIG. 13C, the second filter 1314, when applied to the 407,286 homes, identifies 117,800 out of 715,639 homes that satisfy the first filter 1312 membership criteria and the second filter 1314 membership criteria. The pairing of the starting set of inventory from 715,639 homes to 407,286 homes to 117,800 homes may be graphically represented via diagram 1316.



FIG. 13D illustrates the box 1310, which represents the starting set of inventory, a box 1320, which represents a subset of the starting set of inventory based on the first filter 1312 membership criteria, and a box 1330, which represents a subset of the starting set of inventory based on the first filter 1312 membership criteria and the second filter 1314 membership criteria. The boxes 1320, and/or 1330 may have the same properties as the properties of box 1310 described above.



FIG. 13E illustrates an add filter 1318 that is applied to the starting set of inventory. In an embodiment, the add filter 1318 specifies that the homes must have a second list price greater than or equal to 100,000 and be displayed in a histogram. As illustrated in FIG. 13E, the add filter 1318, when applied to the starting set of inventory, identifies 420,889 out of 715,639 homes that satisfy the add filter 1318 membership criteria. As illustrated in FIG. 13E, the second filter 1314 is then applied to the subset of data that results from applying the first filter 1312 and to the subset of data that results from applying the add filter 1318. In other words, as described above, the second filter 1314 is used to identify common attributes within the subset of data that results from applying the first filter 1312 and the subset of data that results from applying the add filter 1318 (e.g., the common attributes being that the homes are in California). The add filter 1318, when applied to the 407,286 homes and the 420,889 homes, identifies 120,797 out of 715,639 homes that satisfy the first filter 1312 membership criteria and the second filter 1314 membership criteria and the add filter 1318 membership criteria and the second filter 1314 membership criteria. The pairing of the starting set of inventory from 715,639 homes to 407,286 homes to 420,889 homes to 120,797 homes may be graphically represented via the diagram 1316.



FIG. 13F illustrates the box 1310, which represents the starting set of inventory, the box 1320, which represents a subset of the starting set of inventory based on the first filter 1312 membership criteria, the box 1330, which represents a subset of the starting set of inventory based on the first filter 1312 membership criteria, the add filter 1318 membership criteria, and the second filter 1314 membership criteria, and a box 1340, which represents a subset of the starting set of inventory based on the add filter 1318 membership criteria. The box 1340 may have the same properties as the properties of box 1310 described above.



FIG. 13G illustrates a transform filter 1322 that is applied to the subset of data that results from applying the second filter 1314. In an embodiment, the transform filter 1322 transforms the subset of data that results from applying the second filter 1314 from a first object type into a second object type. The second object type may be specified by the user via an entry in text field box 1324 (e.g., the user may specify a transform metric in the text field box 1324). As an example, the transform filter 1322, when applied to the 120,797 homes, identifies 1,354 out of 715,639 homes that satisfy the first filter 1312 membership criteria, the second filter 1314 membership criteria, and the transform filter 1322 membership criteria and the add filter 1318 membership criteria, the second filter 1314 membership criteria, and the transform filter 1322 membership criteria. The pairing of the starting set of inventory from 715,639 homes to 407,286 homes to 420,889 homes to 120,797 homes to 1,354 home may be graphically represented via the diagram 1316.



FIG. 13H illustrates the box 1310, which represents the starting set of inventory, the box 1320, which represents a subset of the starting set of inventory based on the first filter 1312 membership criteria, the box 1330, which represents a subset of the starting set of inventory based on the first filter 1312 membership criteria, the add filter 1318 membership criteria, and the second filter 1314 membership criteria, the box 1340, which represents a subset of the starting set of inventory based on the add filter 1318 membership criteria, and a box 1350, which represents a subset of the starting set of inventory based on the first filter 1312 membership criteria, the add filter 1318 membership criteria, the second filter 1314 membership criteria, and the transform filter 1322 membership criteria. The box 1350 may have the same properties as the properties of box 1310 described above.


Implementation Mechanisms


According to one embodiment, the techniques described herein are implemented by one or more special-purpose computing devices. The special-purpose computing devices may be hard-wired to perform the techniques, or may include digital electronic devices such as one or more application-specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs) that are persistently programmed to perform the techniques, or may include one or more general purpose hardware processors programmed to perform the techniques pursuant to program instructions in firmware, memory, other storage, or a combination. Such special-purpose computing devices may also combine custom hard-wired logic, ASICs, or FPGAs with custom programming to accomplish the techniques. The special-purpose computing devices may be desktop computer systems, server computer systems, portable computer systems, handheld devices, networking devices or any other device or combination of devices that incorporate hard-wired and/or program logic to implement the techniques.


Computing device(s) are generally controlled and coordinated by operating system software, such as iOS, Android, Chrome OS, Windows XP, Windows Vista, Windows 7, Windows 8, Windows Server, Windows CE, Unix, Linux, SunOS, Solaris, iOS, Blackberry OS, VxWorks, or other compatible operating systems. In other embodiments, the computing device may be controlled by a proprietary operating system. Conventional operating systems control and schedule computer processes for execution, perform memory management, provide file system, networking, I/O services, and provide a user interface functionality, such as a graphical user interface (“GUI”), among other things.


For example, FIG. 14 is a block diagram that illustrates a computer system 1400 upon which an embodiment may be implemented. Computer system 1400 includes a bus 1402 or other communication mechanism for communicating information, and a hardware processor, or multiple processors, 1404 coupled with bus 1402 for processing information. Hardware processor(s) 1404 may be, for example, one or more general purpose microprocessors.


Computer system 1400 also includes a main memory 1406, such as a random access memory (RAM), cache and/or other dynamic storage devices, coupled to bus 1402 for storing information and instructions to be executed by processor 1404. Main memory 1406 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 1404. Such instructions, when stored in storage media accessible to processor 1404, render computer system 1400 into a special-purpose machine that is customized to perform the operations specified in the instructions.


Computer system 1400 further includes a read only memory (ROM) 1408 or other static storage device coupled to bus 1402 for storing static information and instructions for processor 1404. A storage device 1410, such as a magnetic disk, optical disk, or USB thumb drive (Flash drive), etc., is provided and coupled to bus 1402 for storing information and instructions.


Computer system 1400 may be coupled via bus 1402 to a display 1412, such as a cathode ray tube (CRT) or LCD display (or touch screen), for displaying information to a computer user. An input device 1414, including alphanumeric and other keys, is coupled to bus 1402 for communicating information and command selections to processor 1404. Another type of user input device is cursor control 1416, such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 1404 and for controlling cursor movement on display 1412. This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane. In some embodiments, the same direction information and command selections as cursor control may be implemented via receiving touches on a touch screen without a cursor.


Computing system 1400 may include a user interface module to implement a GUI that may be stored in a mass storage device as executable software codes that are executed by the computing device(s). This and other modules may include, by way of example, components, such as software components, object-oriented software components, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables.


In general, the word “module,” as used herein, refers to logic embodied in hardware or firmware, or to a collection of software instructions, possibly having entry and exit points, written in a programming language, such as, for example, Java, Lua, C or C++. A software module may be compiled and linked into an executable program, installed in a dynamic link library, or may be written in an interpreted programming language such as, for example, BASIC, Perl, or Python. It will be appreciated that software modules may be callable from other modules or from themselves, and/or may be invoked in response to detected events or interrupts. Software modules configured for execution on computing devices may be provided on a computer readable medium, such as a compact disc, digital video disc, flash drive, magnetic disc, or any other tangible medium, or as a digital download (and may be originally stored in a compressed or installable format that requires installation, decompression or decryption prior to execution). Such software code may be stored, partially or fully, on a memory device of the executing computing device, for execution by the computing device. Software instructions may be embedded in firmware, such as an EPROM. It will be further appreciated that hardware modules may be comprised of connected logic units, such as gates and flip-flops, and/or may be comprised of programmable units, such as programmable gate arrays or processors. The modules or computing device functionality described herein are preferably implemented as software modules, but may be represented in hardware or firmware. Generally, the modules described herein refer to logical modules that may be combined with other modules or divided into sub-modules despite their physical organization or storage


Computer system 1400 may implement the techniques described herein using customized hard-wired logic, one or more ASICs or FPGAs, firmware and/or program logic which in combination with the computer system causes or programs computer system 1400 to be a special-purpose machine. According to one embodiment, the techniques herein are performed by computer system 1400 in response to processor(s) 1404 executing one or more sequences of one or more instructions contained in main memory 1406. Such instructions may be read into main memory 1406 from another storage medium, such as storage device 1410. Execution of the sequences of instructions contained in main memory 1406 causes processor(s) 1404 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions.


The term “non-transitory media,” and similar terms, as used herein refers to any media that store data and/or instructions that cause a machine to operate in a specific fashion. Such non-transitory media may comprise non-volatile media and/or volatile media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 1410. Volatile media includes dynamic memory, such as main memory 1406. Common forms of non-transitory media include, for example, a floppy disk, a flexible disk, hard disk, solid state drive, magnetic tape, or any other magnetic data storage medium, a CD-ROM, any other optical data storage medium, any physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, NVRAM, any other memory chip or cartridge, and networked versions of the same.


Non-transitory media is distinct from but may be used in conjunction with transmission media. Transmission media participates in transferring information between nontransitory media. For example, transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 1402. Transmission media can also take the form of acoustic or light waves, such as those generated during radio-wave and infra-red data communications.


Various forms of media may be involved in carrying one or more sequences of one or more instructions to processor 1404 for execution. For example, the instructions may initially be carried on a magnetic disk or solid state drive of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 1400 can receive the data on the telephone line and use an infra-red transmitter to convert the data to an infra-red signal. An infra-red detector can receive the data carried in the infra-red signal and appropriate circuitry can place the data on bus 1402. Bus 1402 carries the data to main memory 1406, from which processor 1404 retrieves and executes the instructions. The instructions received by main memory 1406 may retrieves and executes the instructions. The instructions received by main memory 1406 may optionally be stored on storage device 1410 either before or after execution by processor 1404.


Computer system 1400 also includes a communication interface 1418 coupled to bus 1402. Communication interface 1418 provides a two-way data communication coupling to a network link 1420 that is connected to a local network 1422. For example, communication interface 1418 may be an integrated services digital network (ISDN) card, cable modem, satellite modem, or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, communication interface 1418 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN (or WAN component to communicated with a WAN). Wireless links may also be implemented. In any such implementation, communication interface 1418 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.


Network link 1420 typically provides data communication through one or more networks to other data devices. For example, network link 1420 may provide a connection through local network 1422 to a host computer 1424 or to data equipment operated by an Internet Service Provider (ISP) 1426. ISP 1426 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the “Internet” 1428. Local network 1422 and Internet 1428 both use electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on network link 1420 and through communication interface 1418, which carry the digital data to and from computer system 1400, are example forms of transmission media.


Computer system 1400 can send messages and receive data, including program code, through the network(s), network link 1420 and communication interface 1418. In the Internet example, a server 1430 might transmit a requested code for an application program through Internet 1428, ISP 1426, local network 1422 and communication interface 1418.


The received code may be executed by processor 1404 as it is received, and/or stored in storage device 1410, or other non-volatile storage for later execution.


Each of the processes, methods, and algorithms described in the preceding sections may be embodied in, and fully or partially automated by, code modules executed by one or more computer systems or computer processors comprising computer hardware. The processes and algorithms may be implemented partially or wholly in application-specific circuitry.


The various features and processes described above may be used independently of one another, or may be combined in various ways. All possible combinations and subcombinations are intended to fall within the scope of this disclosure. In addition, certain method or process blocks may be omitted in some implementations. The methods and processes described herein are also not limited to any particular sequence, and the blocks or states relating thereto can be performed in other sequences that are appropriate. For example, described blocks or states may be performed in an order other than that specifically disclosed, or multiple blocks or states may be combined in a single block or state. The example blocks or states may be performed in serial, in parallel, or in some other manner. Blocks or states may be added to or removed from the disclosed example embodiments. The example systems and components described herein may be configured differently than described. For example, elements may be added to, removed from, or rearranged compared to the disclosed example embodiments.


Conditional language, such as, among others, “can,” “could,” “might,” or “may,” unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements and/or steps. Thus, such conditional language is not generally intended to imply that features, elements and/or steps are in any way required for one or more embodiments or that one or more embodiments necessarily include logic for deciding, with or without user input or prompting, whether these features, elements and/or steps are included or are to be performed in any particular embodiment.


Any process descriptions, elements, or blocks in the flow diagrams described herein and/or depicted in the attached figures should be understood as potentially representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps in the process. Alternate implementations are included within the scope of the embodiments described herein in which elements or functions may be deleted, executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those skilled in the art.


It should be emphasized that many variations and modifications may be made to the above-described embodiments, the elements of which are to be understood as being among other acceptable examples. All such modifications and variations are intended to be included herein within the scope of this disclosure. The foregoing description details certain embodiments of the invention. It will be appreciated, however, that no matter how detailed the foregoing appears in text, the invention can be practiced in many ways. As is also stated above, it should be noted that the use of particular terminology when describing certain features or aspects of the invention should not be taken to imply that the terminology is being re-defined herein to be restricted to including any specific characteristics of the features or aspects of the invention with which that terminology is associated. The scope of the invention should therefore be construed in accordance with the appended claims and any equivalents thereof.

Claims
  • 1. A computing system comprising: non-transitory computer storage storing a plurality of data objects, each data object of the plurality of data objects associated with a first object type; andone or more computing devices programmed, via executable code instructions, to: access a first filter to apply to the plurality of data objects, the first filter comprising a first membership criterion;apply the first filter to the plurality of data objects to determine: a first set of data objects that satisfy the first membership criterion, anda second set of data objects that do not satisfy the first membership criterion;apply a second membership criterion associated with a second filter to the first set of data objects to determine (i) a first matching subset and (ii) a first non-matching subset of the first set of data objects, wherein the first non-matching subset satisfies the first membership criterion but does not satisfy the second membership criterion;apply the second membership criterion to the second set of data objects that do not satisfy the first membership criterion to determine (i) a second matching subset and a (ii) second non-matching subset of the second set of data objects, wherein the second non-matching subset does not satisfy either of the first membership criterion or the second membership criterion,wherein the second non-matching subset and the first non-matching subset comprise a mutually exclusive set of data objects;generate or update a single user interface to include concurrent graphical representations of: first summary information indicating at least a first quantity of objects in the first set of data objects, wherein the first summary information is selectable to retrieve additional information regarding the first set of data objects,second summary information indicating at least a second quantity of objects in the second set of data objects, andsummary information regarding the first non-matching subset and the second non-matching subset; and
  • 2. The computing system of claim 1, wherein the first object type comprises a home object type.
  • 3. The computing system of claim 1, wherein at least one data object of the plurality of data objects corresponds to at least one of a buyer, seller, entity, or real estate agent.
  • 4. The computing system of claim 1, wherein the first membership criterion comprises at least one of a status, category, numeric range, geographic location, or mortgage status.
  • 5. The computing system of claim 1, wherein the application of the first filter is in response to a user selection.
  • 6. The computing system of claim 1, wherein a data type of the second set of data objects is selected by a user.
  • 7. The computing system of claim 1, wherein the first membership criterion of the first filter is selected by a first user, and wherein the one or more computing devices are further programmed, via executable code instructions, to: create an object series from the first matching subset of data objects and at least one data object from the first non-matching subset of data objects or the second non-matching subset of data objects; andshare the object series with a second user, the object series presentable in a second user interface corresponding to the second user.
  • 8. The computing system of claim 1, wherein the one or more computing devices are further programmed, via executable code instructions, to: generate a report based at least on data from the first set of data objects and the second set of data objects, wherein a format of the report comprises at least one of a text format, a word processing format, a spreadsheet format, or a portable document format.
  • 9. Non-transitory computer storage comprising instructions for causing one or more computing devices to perform operations comprising: accessing a first filter to apply to a plurality of data objects, the first filter comprising a first membership criterion, wherein each data object of the plurality of data objects is associated with a first object type;applying the first filter to the plurality of data objects to determine: a first set of data objects that satisfy the first membership criterion, anda second set of data objects that do not satisfy the first membership criterion;applying a second membership criterion of a second filter to the first set of data objects to determine (i) a first matching subset and (ii) first non-matching subset of the first set of data objects;applying the second membership criterion to the second set of data objects that do not satisfy the first membership criterion to determine (i) a second matching subset and (ii) a second non-matching subset of the second set of data objects,wherein the second non-matching subset and the first non-matching subset comprise a mutually exclusive set of data objects;generating or updating a single user interface to include concurrent graphical representations of at least first summary information indicating at least a quantity of objects in the first set of data objects, second summary information indicating at least a second quantity of objects in the second set of data objects, and summary information regarding the first non-matching subset and the second non-matching subset; andcausing the user interface to be presented to the user, wherein another user interface is configured to restrict from view data objects associated with the second non-matching subset.
  • 10. The non-transitory computer storage of claim 9, wherein the first object type comprises a home object type.
  • 11. The non-transitory computer storage of claim 9, wherein at least one data object of the plurality of data objects corresponds to at least one of a buyer, seller, entity, or real estate agent.
  • 12. The non-transitory computer storage of claim 9, wherein the first membership criterion comprises at least one of a status, category, numeric range, geographic location, or mortgage status.
  • 13. The non-transitory computer storage of claim 9, wherein the application of the first filter is in response to a user selection.
  • 14. The non-transitory computer storage of claim 9, wherein an object type of the second matching subset was selected by a user.
  • 15. The non-transitory computer storage of claim 9, wherein the membership criterion of the first filter was selected by a first user, and the non-transitory computer storage further comprising instructions for causing one or more computing devices to perform operations comprising: creating an object series comprising data objects from the second set of data objects and at least one data object from the first set of data objects; andsharing the object series with a second user, the object series presentable in a second user interface corresponding to the second user.
  • 16. The non-transitory computer storage of claim 9, further comprising instructions for causing one or more computing devices to perform operations comprising: generating a report based at least on data from the first set of data objects and the second set of data objects, wherein a format of the report comprises at least one of a text format, a word processing format, a spreadsheet format, or a portable document format.
  • 17. A computing system comprising: non-transitory computer storage storing a plurality of data objects, each data object of the plurality of data objects associated with a first object type; andone or more computing devices programmed, via executable code instructions, to: access a filter to apply to the plurality of data objects, the filter comprising a first membership criterion;apply the first filter to the plurality of data objects to determine: a first set of data objects that satisfy the first membership criterion, anda second set of data objects that do not satisfy the first membership criterion;apply a second membership criterion to the first set of data objects and the second set of data objects to determine a child node, comprising: a first matching subset and a first non-matching subset of the first set of data objects; anda second matching subset and a second non-matching subset of the second set of data objects;generate or update a user interface to include concurrent graphical representations of: first summary information indicating at least a first quantity of objects in the first set of data objects, wherein the first summary information is selectable to retrieve additional information regarding the first set of data objects,second summary information indicating at least a second quantity of objects in the second set of data objects, andsummary information regarding the first non-matching subset and the second non-matching subset; andrestrict from view, in another user interface, data objects associated with the second non-matching subset.
INCORPORATION BY REFERENCE TO ANY PRIORITY APPLICATIONS

Any and all applications for which a foreign or domestic priority claim is identified in the Application Data Sheet as filed with the present application are hereby incorporated by reference under 37 CFR 1.57. This application is a continuation of U.S. patent application Ser. No. 14/149,608 filed Jan. 7, 2014, which claims benefit of U.S. Provisional Application No. 61/794,653, entitled “FILTER CHAINS WITH ASSOCIATED MULTIPLATH VIEWS FOR EXPLORING LARGE DATA SETS,” which was filed Mar. 15, 2013. Each of these applications are hereby incorporated by reference herein in their entireties.

US Referenced Citations (1155)
Number Name Date Kind
5109399 Thompson Apr 1992 A
5241625 Epard et al. Aug 1993 A
5329108 Lamoure Jul 1994 A
5412769 Maruoka et al. May 1995 A
5414838 Kolton et al. May 1995 A
5418950 Li et al. May 1995 A
5428737 Li et al. Jun 1995 A
5428776 Rothfield Jun 1995 A
5444819 Negishi Aug 1995 A
5454104 Steidlmayer et al. Sep 1995 A
5542089 Lindsay et al. Jul 1996 A
5568390 Hirota et al. Oct 1996 A
5608899 Li et al. Mar 1997 A
5613105 Xbikowski et al. Mar 1997 A
5632009 Rao et al. May 1997 A
5670987 Doi et al. Sep 1997 A
5701456 Jacopi et al. Dec 1997 A
5724575 Hoover et al. Mar 1998 A
5781704 Rossmo Jul 1998 A
5794228 French et al. Aug 1998 A
5794229 French et al. Aug 1998 A
5798769 Chiu et al. Aug 1998 A
5819226 Gopinathan et al. Oct 1998 A
5819238 Fernholz Oct 1998 A
5826021 Mastors et al. Oct 1998 A
5832218 Gibbs et al. Nov 1998 A
5845300 Comer Dec 1998 A
5845530 Brookmeyer et al. Dec 1998 A
5857329 Bingham Jan 1999 A
5872973 Mitchell et al. Feb 1999 A
5878434 Draper et al. Mar 1999 A
5892900 Ginter et al. Apr 1999 A
5897636 Kaeser Apr 1999 A
5902349 Endo et al. May 1999 A
5911138 Li et al. Jun 1999 A
5918225 White et al. Jun 1999 A
5966706 Biliris et al. Oct 1999 A
5999911 Berg et al. Dec 1999 A
6006242 Poole et al. Dec 1999 A
6012042 Black et al. Jan 2000 A
6057757 Arrowsmith et al. May 2000 A
6065026 Cornelia et al. May 2000 A
6072942 Stockwell et al. Jun 2000 A
6091956 Hollenberg Jul 2000 A
6094643 Anderson et al. Jul 2000 A
6104401 Parsons Aug 2000 A
6134582 Kennedy Oct 2000 A
6161098 Wallman Dec 2000 A
6189005 Chakrabarti et al. Feb 2001 B1
6208985 Krehel Mar 2001 B1
6219053 Tachibana et al. Apr 2001 B1
6232971 Haynes May 2001 B1
6236994 Swartz et al. May 2001 B1
6237138 Hameluck et al. May 2001 B1
6243706 Moreau et al. Jun 2001 B1
6243717 Gordon et al. Jun 2001 B1
6247019 Davies Jun 2001 B1
6279018 Kudrolli et al. Aug 2001 B1
6289334 Reiner et al. Sep 2001 B1
6289338 Stoffel et al. Sep 2001 B1
6311181 Lee et al. Oct 2001 B1
6313833 Knight Nov 2001 B1
6321274 Shakib et al. Nov 2001 B1
6341310 Leshem et al. Jan 2002 B1
6349315 Sonoyama et al. Feb 2002 B1
6366933 Ball et al. Apr 2002 B1
6369835 Lin Apr 2002 B1
6370538 Lamping et al. Apr 2002 B1
6430305 Decker Aug 2002 B1
6456997 Shukla Sep 2002 B1
6463404 Appleby Oct 2002 B1
6496774 Davies Dec 2002 B1
6496817 Whang et al. Dec 2002 B1
6513019 Lewis Jan 2003 B2
6519627 Dan et al. Feb 2003 B1
6523019 Borthwick Feb 2003 B1
6532449 Goertzel et al. Mar 2003 B1
6549944 Weinberg et al. Apr 2003 B1
6560620 Ching May 2003 B1
6581068 Bensoussan et al. Jun 2003 B1
6594672 Lampson et al. Jul 2003 B1
6608559 Lemelson et al. Aug 2003 B1
6631496 Li et al. Oct 2003 B1
6640231 Andersen et al. Oct 2003 B1
6642945 Sharpe Nov 2003 B1
6643613 McGee et al. Nov 2003 B2
6662202 Krusche et al. Dec 2003 B1
6665683 Meltzer Dec 2003 B1
6674434 Chojnacki et al. Jan 2004 B1
6714936 Nevin, III Mar 2004 B1
6745382 Zothner Jun 2004 B1
6748481 Parry et al. Jun 2004 B1
6775675 Nwabueze et al. Aug 2004 B1
6801201 Escher Oct 2004 B2
6820135 Dingman Nov 2004 B1
6828920 Owen et al. Dec 2004 B2
6839745 Dingari et al. Jan 2005 B1
6851108 Syme et al. Feb 2005 B1
6857120 Arnold et al. Feb 2005 B1
6876981 Berckmans Apr 2005 B1
6877137 Rivette et al. Apr 2005 B1
6907426 Hellerstein et al. Jun 2005 B2
6920453 Mannila et al. Jul 2005 B2
6944821 Bates et al. Sep 2005 B1
6976024 Chavez et al. Dec 2005 B1
6976210 Silva et al. Dec 2005 B1
6978419 Kantrowitz Dec 2005 B1
6980984 Huffman et al. Dec 2005 B1
6985950 Hanson et al. Jan 2006 B1
7028223 Kolawa et al. Apr 2006 B1
7036085 Barros Apr 2006 B2
7043449 Li et al. May 2006 B1
7043702 Chi et al. May 2006 B2
7055110 Kupka et al. May 2006 B2
7058648 Lightfoot et al. Jun 2006 B1
7085890 Kashyap Aug 2006 B2
7086028 Davis et al. Aug 2006 B1
7089541 Ungar Aug 2006 B2
7111231 Huck et al. Sep 2006 B1
7133409 Willardson Nov 2006 B1
7139800 Bellotti et al. Nov 2006 B2
7155728 Prabhu et al. Dec 2006 B1
7158878 Rasmussen et al. Jan 2007 B2
7162475 Ackerman Jan 2007 B2
7168039 Bertram Jan 2007 B2
7171427 Witowski et al. Jan 2007 B2
7174377 Bernard et al. Feb 2007 B2
7181423 Blanchard et al. Feb 2007 B2
7185065 Holtzman et al. Feb 2007 B1
7213030 Jenkins May 2007 B1
7216133 Wu et al. May 2007 B2
7216299 Knight May 2007 B2
7237192 Stephenson et al. Jun 2007 B1
7240330 Fairweather Jul 2007 B2
7246090 Thomas Jul 2007 B1
7269786 Malloy et al. Sep 2007 B1
7278105 Kitts Oct 2007 B1
7290698 Poslinski et al. Nov 2007 B2
7333998 Heckerman et al. Feb 2008 B2
7356504 Müller Apr 2008 B2
7370047 Gorman May 2008 B2
7379811 Rasmussen et al. May 2008 B2
7379903 Caballero et al. May 2008 B2
7392254 Jenkins Jun 2008 B1
7401038 Masuda Jul 2008 B2
7403921 Tanpoco et al. Jul 2008 B2
7403922 Lewis et al. Jul 2008 B1
7403942 Bayliss Jul 2008 B1
7406592 Polyudov Jul 2008 B1
7409357 Schaf et al. Aug 2008 B2
7426654 Adams et al. Sep 2008 B2
7437728 Stackhouse et al. Oct 2008 B2
7441182 Beilinson et al. Oct 2008 B2
7454466 Bellotti et al. Nov 2008 B2
7461158 Rider et al. Dec 2008 B2
7467375 Tondreau et al. Dec 2008 B2
7469238 Satchwell Dec 2008 B2
7487139 Fraleigh et al. Feb 2009 B2
7502786 Liu et al. Mar 2009 B2
7519589 Charnock et al. Apr 2009 B2
7525422 Bishop et al. Apr 2009 B2
7529727 Arning et al. May 2009 B2
7529734 Dirisala May 2009 B2
7533069 Fairweather May 2009 B2
7542934 Markel Jun 2009 B2
7546245 Surpin Jun 2009 B2
7546353 Hesselink et al. Jun 2009 B2
7558677 Jones Jul 2009 B2
7574409 Patinkin Aug 2009 B2
7574428 Leiserowitz et al. Aug 2009 B2
7579965 Bucholz Aug 2009 B2
7587352 Arnott Sep 2009 B2
7590582 Dunne Sep 2009 B2
7596285 Brown et al. Sep 2009 B2
7603229 Goldberg et al. Oct 2009 B2
7610290 Kruy et al. Oct 2009 B2
7614006 Molander Nov 2009 B2
7617232 Gabbert et al. Nov 2009 B2
7620582 Masuda Nov 2009 B2
7620628 Kapur et al. Nov 2009 B2
7627489 Schaeffer et al. Dec 2009 B2
7627812 Chamberlain et al. Dec 2009 B2
7630931 Rachev et al. Dec 2009 B1
7634717 Chamberlain et al. Dec 2009 B2
7640173 Surpin et al. Dec 2009 B2
7657478 De Diego Feb 2010 B2
7685042 Monroe et al. Mar 2010 B1
7685083 Fairweather Mar 2010 B2
7716067 Surpin et al. Mar 2010 B2
7703021 Flam Apr 2010 B1
7706817 Bamrah et al. Apr 2010 B2
7712049 Williams et al. May 2010 B2
7716077 Mikurak May 2010 B1
7716227 Hao et al. May 2010 B1
7725530 Sah et al. May 2010 B2
7725547 Albertson et al. May 2010 B2
7725728 Ama et al. May 2010 B2
7730082 Sah et al. Jun 2010 B2
7730109 Rohrs et al. Jun 2010 B2
7756843 Palmer Jul 2010 B1
7757220 Griffith et al. Jul 2010 B2
7770100 Chamberlain et al. Aug 2010 B2
7783679 Bley Aug 2010 B2
7805457 Viola et al. Sep 2010 B1
7809703 Balabhadrapatruni et al. Oct 2010 B2
7818291 Ferguson et al. Oct 2010 B2
7818658 Chen Oct 2010 B2
7835966 Satchwell Nov 2010 B2
7848995 Dalal Dec 2010 B2
7853573 Warner et al. Dec 2010 B2
7870493 Pall et al. Jan 2011 B2
7877421 Berger et al. Jan 2011 B2
7880921 Dattilo et al. Feb 2011 B2
7894984 Rasmussen et al. Feb 2011 B2
7899611 Downs et al. Mar 2011 B2
7904913 Sim-Tang et al. Mar 2011 B2
7908521 Sridharan et al. Mar 2011 B2
7912842 Bayliss Mar 2011 B1
7917376 Bellin et al. Mar 2011 B2
7920963 Jouline et al. Apr 2011 B2
7933862 Chamberlain et al. Apr 2011 B2
7941321 Greenstein et al. May 2011 B2
7958147 Turner et al. Jun 2011 B1
7962281 Rasmussen et al. Jun 2011 B2
7962495 Jain et al. Jun 2011 B2
7962848 Bertram Jun 2011 B2
7970240 Chao et al. Jun 2011 B1
7971150 Raskutti et al. Jun 2011 B2
7984374 Caro et al. Jun 2011 B2
7979424 Dettinger et al. Jul 2011 B2
8001465 Kudrolli et al. Aug 2011 B2
8001482 Bhattiprolu et al. Aug 2011 B2
8010507 Poston et al. Aug 2011 B2
8010545 Stefik et al. Aug 2011 B2
8015487 Roy et al. Sep 2011 B2
8024778 Cash et al. Sep 2011 B2
8036632 Cona et al. Oct 2011 B1
8036971 Aymeloglu et al. Oct 2011 B2
8041714 Aymeloglu et al. Oct 2011 B2
8042110 Kawahara et al. Oct 2011 B1
8046283 Burns Oct 2011 B2
8054756 Chand et al. Nov 2011 B2
8060421 Wang Nov 2011 B1
8065606 Gralnick et al. Nov 2011 B1
8073857 Sreekanth Dec 2011 B2
8082172 Chao et al. Dec 2011 B2
8103543 Zwicky Jan 2012 B1
8103962 Embley et al. Jan 2012 B2
8108138 Bruce et al. Jan 2012 B2
8112425 Baum et al. Feb 2012 B2
8117022 Linker Feb 2012 B2
8126848 Wagner Feb 2012 B2
8134457 Velipasalar et al. Mar 2012 B2
8145703 Frishert et al. Mar 2012 B2
8185819 Sah et al. May 2012 B2
8214361 Sandler et al. Jul 2012 B1
8214490 Vos et al. Jul 2012 B1
8214764 Gemmell et al. Jul 2012 B2
8225201 Michael Jul 2012 B2
8229902 Vishniac et al. Jul 2012 B2
8229947 Fujinaga Jul 2012 B2
8230333 Decherd et al. Jul 2012 B2
8271461 Pike et al. Sep 2012 B2
8280880 Aymeloglu et al. Oct 2012 B1
8290838 Thakur et al. Oct 2012 B1
8290926 Ozzie et al. Oct 2012 B2
8290942 Jones et al. Oct 2012 B2
8301464 Cave et al. Oct 2012 B1
8301904 Gryaznov Oct 2012 B1
8302855 Ma et al. Nov 2012 B2
8312367 Foster Nov 2012 B2
8312546 Alme Nov 2012 B2
8326727 Aymeloglu et al. Dec 2012 B2
8352174 Milstein et al. Jan 2013 B2
8352881 Champion et al. Jan 2013 B2
8364642 Garrod Jan 2013 B1
8368695 Howell et al. Feb 2013 B2
8397171 Klassen et al. Mar 2013 B2
8412707 Mianji Apr 2013 B1
8417409 Bast et al. Apr 2013 B2
8417715 Bruckhaus et al. Apr 2013 B1
8429194 Aymeloglu et al. Apr 2013 B2
8429527 Arbogast Apr 2013 B1
8433702 Carrino et al. Apr 2013 B1
8433703 Schneider et al. Apr 2013 B1
8447722 Ahuja et al. May 2013 B1
8452790 Mianji May 2013 B1
8463036 Ramesh et al. Jun 2013 B1
8473454 Evanitsky et al. Jun 2013 B2
8484115 Aymeloglu et al. Jul 2013 B2
8484549 Burr et al. Jul 2013 B2
8489331 Kopf et al. Jul 2013 B2
8489641 Seefeld et al. Jul 2013 B1
8494941 Aymeloglu et al. Jul 2013 B2
8498984 Hwang et al. Jul 2013 B1
8499287 Shafi et al. Jul 2013 B2
8510743 Hackborn et al. Aug 2013 B2
8514082 Cova et al. Aug 2013 B2
8515207 Chau Aug 2013 B2
8554579 Tribble et al. Oct 2013 B2
8554653 Falkenborg et al. Oct 2013 B2
8554709 Goodson et al. Oct 2013 B2
8554719 McGrew Oct 2013 B2
8560413 Quarterman Oct 2013 B1
8560494 Downing Oct 2013 B1
8577911 Stepinski et al. Nov 2013 B1
8589273 Creeden et al. Nov 2013 B2
8595234 Siripuapu et al. Nov 2013 B2
8600872 Yan Dec 2013 B1
8601326 Kirn Dec 2013 B1
8620641 Farnsworth et al. Dec 2013 B2
8639552 Chen et al. Jan 2014 B1
8639757 Zang et al. Jan 2014 B1
8645332 Cohen et al. Feb 2014 B1
8646080 Williamson et al. Feb 2014 B2
8666861 Li et al. Mar 2014 B2
8676857 Adams et al. Mar 2014 B1
8688573 Ruknoic et al. Apr 2014 B1
8689108 Duffield et al. Apr 2014 B1
8713467 Goldenberg et al. Apr 2014 B1
8726379 Stiansen et al. May 2014 B1
8732574 Burr et al. May 2014 B2
8739278 Varghese May 2014 B2
8742934 Sarpy et al. Jun 2014 B1
8744890 Bernier Jun 2014 B1
8745516 Mason et al. Jun 2014 B2
8763078 Castellucci et al. Jun 2014 B1
8781169 Jackson et al. Jul 2014 B2
8786605 Curtis et al. Jul 2014 B1
8787939 Papakipos et al. Jul 2014 B2
8788407 Singh et al. Jul 2014 B1
8798354 Bunzel et al. Aug 2014 B1
8799799 Cervelli et al. Aug 2014 B1
8799867 Peri-Glass et al. Aug 2014 B1
8812960 Sun et al. Aug 2014 B1
8830322 Nerayoff et al. Sep 2014 B2
8832594 Thompson et al. Sep 2014 B1
8868537 Colgrove et al. Oct 2014 B1
8903717 Elliot Dec 2014 B2
8909597 Aymeloglu et al. Dec 2014 B2
8909656 Kumar et al. Dec 2014 B2
8917274 Ma et al. Dec 2014 B2
8924388 Elliot et al. Dec 2014 B2
8924389 Elliot et al. Dec 2014 B2
8924429 Fisher et al. Dec 2014 B1
8924872 Bogomolov et al. Dec 2014 B1
8935201 Fisher et al. Jan 2015 B1
8937619 Sharma et al. Jan 2015 B2
8938686 Erenrich et al. Jan 2015 B1
8949164 Mohler Feb 2015 B1
8984390 Aymeloglu et al. Mar 2015 B2
9009171 Grossman et al. Apr 2015 B1
9009827 Albertson et al. Apr 2015 B1
9021260 Falk et al. Apr 2015 B1
9021384 Beard et al. Apr 2015 B1
9031981 Potter et al. May 2015 B1
9032531 Scorvo et al. May 2015 B1
9043696 Meiklejohn et al. May 2015 B1
9043894 Dennison et al. May 2015 B1
9092482 Harris et al. Jul 2015 B2
9100428 Visbal Aug 2015 B1
9105000 White et al. Aug 2015 B1
9116975 Shankar et al. Aug 2015 B2
9129219 Robertson et al. Sep 2015 B1
9229966 Aymeloglu et al. Jan 2016 B2
9280532 Cicerone Mar 2016 B2
9292388 Fisher et al. Mar 2016 B2
9330120 Colgrove et al. May 2016 B2
9348677 Marinelli, III et al. May 2016 B2
9367463 Biswal et al. Jun 2016 B2
9378524 Aymeloglu et al. Jun 2016 B2
9449074 Fisher et al. Sep 2016 B1
9852205 Tamayo Dec 2017 B2
9880987 Burr et al. Jan 2018 B2
9898335 Marinelli, III Feb 2018 B1
10180977 Fisher et al. Jan 2019 B2
10198515 White et al. Feb 2019 B1
20010011243 Dembo et al. Aug 2001 A1
20010021936 Bertram Sep 2001 A1
20010027424 Torigoe Oct 2001 A1
20020007329 Alcaly et al. Jan 2002 A1
20020007331 Lo et al. Jan 2002 A1
20020026404 Thompson Feb 2002 A1
20020030701 Knight Mar 2002 A1
20020032677 Morgenthaler et al. Mar 2002 A1
20020033848 Sciammarella et al. Mar 2002 A1
20020035590 Eibach et al. Mar 2002 A1
20020040336 Blanchard et al. Apr 2002 A1
20020059126 Ricciardi May 2002 A1
20020065708 Senay et al. May 2002 A1
20020087570 Jacquez et al. Jul 2002 A1
20020091707 Keller Jul 2002 A1
20020095360 Joao Jul 2002 A1
20020095658 Shulman Jul 2002 A1
20020099870 Miller et al. Jul 2002 A1
20020103705 Brady Aug 2002 A1
20020116120 Ruiz et al. Aug 2002 A1
20020130907 Chi et al. Sep 2002 A1
20020138383 Rhee Sep 2002 A1
20020147671 Sloan et al. Oct 2002 A1
20020156812 Krasnoiarov et al. Oct 2002 A1
20020174201 Ramer et al. Nov 2002 A1
20020184111 Swanson Dec 2002 A1
20020194119 Wright et al. Dec 2002 A1
20030004770 Miller et al. Jan 2003 A1
20030009392 Perkowski Jan 2003 A1
20030009399 Boerner Jan 2003 A1
20030023620 Trotta Jan 2003 A1
20030028560 Kudrolli et al. Feb 2003 A1
20030039948 Donahue Feb 2003 A1
20030065605 Gatto Apr 2003 A1
20030065606 Satchwell Apr 2003 A1
20030065607 Satchwell Apr 2003 A1
20030078827 Hoffman Apr 2003 A1
20030093401 Czahkowski et al. May 2003 A1
20030093755 O'Carroll May 2003 A1
20030105759 Bess et al. Jun 2003 A1
20030105833 Daniels Jun 2003 A1
20030115481 Baird et al. Jun 2003 A1
20030126102 Borthwick Jul 2003 A1
20030130996 Bayerl et al. Jul 2003 A1
20030140106 Raguseo Jul 2003 A1
20030144868 MacIntyre et al. Jul 2003 A1
20030163352 Surpin et al. Aug 2003 A1
20030167423 Murakami et al. Sep 2003 A1
20030172021 Huang Sep 2003 A1
20030172053 Fairweather Sep 2003 A1
20030177112 Gardner Sep 2003 A1
20030182177 Gallagher Sep 2003 A1
20030182313 Federwisch et al. Sep 2003 A1
20030184588 Lee Oct 2003 A1
20030187761 Olsen et al. Oct 2003 A1
20030200217 Ackerman Oct 2003 A1
20030212670 Yalamanchi et al. Nov 2003 A1
20030212718 Tester Nov 2003 A1
20030225755 Iwayama et al. Dec 2003 A1
20030229848 Arend et al. Dec 2003 A1
20040003009 Wilmot Jan 2004 A1
20040006523 Coker Jan 2004 A1
20040032432 Baynger Feb 2004 A1
20040034570 Davis Feb 2004 A1
20040044648 Anfindsen et al. Mar 2004 A1
20040064256 Barinek et al. Apr 2004 A1
20040083466 Dapp et al. Apr 2004 A1
20040085318 Hassler et al. May 2004 A1
20040088177 Travis et al. May 2004 A1
20040095349 Bito et al. May 2004 A1
20040098731 Demsey et al. May 2004 A1
20040103088 Cragun et al. May 2004 A1
20040103124 Kupkova May 2004 A1
20040111410 Burgoon et al. Jun 2004 A1
20040111480 Yue Jun 2004 A1
20040117387 Civetta et al. Jun 2004 A1
20040126840 Cheng et al. Jul 2004 A1
20040133500 Thompson et al. Jul 2004 A1
20040139212 Mukherjee et al. Jul 2004 A1
20040143602 Ruiz et al. Jul 2004 A1
20040143796 Lerner et al. Jul 2004 A1
20040153418 Hanweck Aug 2004 A1
20040153451 Phillips et al. Aug 2004 A1
20040153837 Preston et al. Aug 2004 A1
20040163039 Gorman Aug 2004 A1
20040181554 Heckerman et al. Sep 2004 A1
20040193599 Liu et al. Sep 2004 A1
20040193600 Kaasten et al. Sep 2004 A1
20040193608 Gollapudi et al. Sep 2004 A1
20040205492 Newsome Oct 2004 A1
20040205644 Shaughnessy et al. Oct 2004 A1
20040210763 Jonas Oct 2004 A1
20040221223 Yu et al. Nov 2004 A1
20040236688 Bozeman Nov 2004 A1
20040254658 Sherriff et al. Dec 2004 A1
20040260702 Cragun et al. Dec 2004 A1
20040267746 Marcjan et al. Dec 2004 A1
20050004911 Goldberg et al. Jan 2005 A1
20050010472 Quatse et al. Jan 2005 A1
20050021397 Cui et al. Jan 2005 A1
20050021877 Varpela et al. Jan 2005 A1
20050027632 Zeitoun et al. Feb 2005 A1
20050027705 Sadri et al. Feb 2005 A1
20050028094 Allyn Feb 2005 A1
20050039116 Slack-Smith Feb 2005 A1
20050039119 Parks et al. Feb 2005 A1
20050060712 Miller et al. Mar 2005 A1
20050060713 Miller et al. Mar 2005 A1
20050065811 Chu et al. Mar 2005 A1
20050075962 Dunne Apr 2005 A1
20050075966 Duka Apr 2005 A1
20050080769 Gemmell Apr 2005 A1
20050086207 Heuer et al. Apr 2005 A1
20050090911 Ingargiola et al. Apr 2005 A1
20050091186 Elish Apr 2005 A1
20050097441 Herbach et al. May 2005 A1
20050108001 Aarskog May 2005 A1
20050120080 Weinreb et al. Jun 2005 A1
20050125715 Di Franco et al. Jun 2005 A1
20050131935 O'Leary et al. Jun 2005 A1
20050133588 Williams Jun 2005 A1
20050149455 Bruesewitz et al. Jul 2005 A1
20050154628 Eckart et al. Jul 2005 A1
20050154769 Eckart et al. Jul 2005 A1
20050162523 Darrell et al. Jul 2005 A1
20050166144 Gross Jul 2005 A1
20050171881 Ghassemieh et al. Aug 2005 A1
20050180330 Shapiro Aug 2005 A1
20050182709 Belcsak et al. Aug 2005 A1
20050182793 Keenan et al. Aug 2005 A1
20050183005 Denoue et al. Aug 2005 A1
20050210409 Jou Sep 2005 A1
20050226473 Ramesh Oct 2005 A1
20050246327 Yeung et al. Nov 2005 A1
20050251786 Citron et al. Nov 2005 A1
20050256703 Markel Nov 2005 A1
20050262004 Sakata et al. Nov 2005 A1
20050262057 Lesh et al. Nov 2005 A1
20050262493 Schmidt et al. Nov 2005 A1
20050262512 Schmidt et al. Nov 2005 A1
20050278286 Djugash et al. Dec 2005 A1
20060004740 Dettinger et al. Jan 2006 A1
20060010130 Leff et al. Jan 2006 A1
20060020398 Vernon et al. Jan 2006 A1
20060026120 Carolan et al. Feb 2006 A1
20060026170 Kreitler et al. Feb 2006 A1
20060026561 Bauman et al. Feb 2006 A1
20060031779 Theurer et al. Feb 2006 A1
20060045470 Poslinski et al. Mar 2006 A1
20060047590 Anderson et al. Mar 2006 A1
20060052984 Nakadate et al. Mar 2006 A1
20060053097 King et al. Mar 2006 A1
20060053170 Hill et al. Mar 2006 A1
20060059072 Boglaev Mar 2006 A1
20060059139 Robinson Mar 2006 A1
20060059423 Lehmann et al. Mar 2006 A1
20060064181 Kato Mar 2006 A1
20060070046 Balakrishnan et al. Mar 2006 A1
20060074730 Shukla et al. Apr 2006 A1
20060074866 Chamberlain et al. Apr 2006 A1
20060074881 Vembu et al. Apr 2006 A1
20060074967 Shaburov Apr 2006 A1
20060080316 Gilmore et al. Apr 2006 A1
20060080616 Vogel et al. Apr 2006 A1
20060080619 Carlson et al. Apr 2006 A1
20060093222 Saffer et al. May 2006 A1
20060116943 Willain Jun 2006 A1
20060116991 Calderwood Jun 2006 A1
20060129746 Porter Jun 2006 A1
20060129992 Oberholtzer et al. Jun 2006 A1
20060136513 Ngo et al. Jun 2006 A1
20060139375 Rasmussen et al. Jun 2006 A1
20060142949 Helt Jun 2006 A1
20060143034 Rothermel Jun 2006 A1
20060143075 Carr et al. Jun 2006 A1
20060143079 Basak et al. Jun 2006 A1
20060149596 Surpin et al. Jul 2006 A1
20060155654 Plessis et al. Jul 2006 A1
20060203337 White Sep 2006 A1
20060209085 Wong et al. Sep 2006 A1
20060218206 Bourbonnais et al. Sep 2006 A1
20060218405 Ama et al. Sep 2006 A1
20060218491 Grossman et al. Sep 2006 A1
20060218637 Thomas et al. Sep 2006 A1
20060224356 Castelli et al. Oct 2006 A1
20060235786 DiSalvo Oct 2006 A1
20060241856 Cobleigh et al. Oct 2006 A1
20060241974 Chao et al. Oct 2006 A1
20060242040 Rader Oct 2006 A1
20060242630 Koike et al. Oct 2006 A1
20060253502 Raman et al. Nov 2006 A1
20060259524 Horton Nov 2006 A1
20060265311 Dean et al. Nov 2006 A1
20060265397 Bryan et al. Nov 2006 A1
20060265417 Amato et al. Nov 2006 A1
20060271277 Hu et al. Nov 2006 A1
20060271838 Carro Nov 2006 A1
20060271884 Hurst Nov 2006 A1
20060277460 Forstall et al. Dec 2006 A1
20060279630 Aggarwal et al. Dec 2006 A1
20060288046 Gupta et al. Dec 2006 A1
20070000999 Kubo et al. Jan 2007 A1
20070005582 Navratil et al. Jan 2007 A1
20070011150 Frank Jan 2007 A1
20070011304 Error Jan 2007 A1
20070016363 Huang et al. Jan 2007 A1
20070027851 Kruy et al. Feb 2007 A1
20070038646 Thota Feb 2007 A1
20070038962 Fuchs et al. Feb 2007 A1
20070043686 Teng et al. Feb 2007 A1
20070055598 Arnott et al. Mar 2007 A1
20070055599 Arnott Mar 2007 A1
20070057966 Ohno et al. Mar 2007 A1
20070061259 Zoldi et al. Mar 2007 A1
20070061752 Cory Mar 2007 A1
20070067233 Dalal Mar 2007 A1
20070067285 Blume Mar 2007 A1
20070078832 Ott et al. Apr 2007 A1
20070083541 Fraleigh et al. Apr 2007 A1
20070088596 Berkelhamer et al. Apr 2007 A1
20070091868 Hollman et al. Apr 2007 A1
20070094248 McVeigh et al. Apr 2007 A1
20070094312 Sim-Tang Apr 2007 A1
20070094389 Nussey et al. Apr 2007 A1
20070106582 Baker et al. May 2007 A1
20070112714 Fairweather May 2007 A1
20070113164 Hansen et al. May 2007 A1
20070118527 Winje et al. May 2007 A1
20070136115 Doganaksoy et al. Jun 2007 A1
20070150369 Zivin Jun 2007 A1
20070150801 Chidlovskii et al. Jun 2007 A1
20070150805 Misovski Jun 2007 A1
20070156673 Maga Jul 2007 A1
20070168269 Chuo Jul 2007 A1
20070168270 De Diego Arozamena et al. Jul 2007 A1
20070168336 Ransil et al. Jul 2007 A1
20070168871 Jenkins Jul 2007 A1
20070174760 Chamberlain et al. Jul 2007 A1
20070178501 Rabinowitz et al. Aug 2007 A1
20070185867 Maga Aug 2007 A1
20070192265 Chopin et al. Aug 2007 A1
20070192281 Cradick et al. Aug 2007 A1
20070198571 Ferguson et al. Aug 2007 A1
20070208497 Downs et al. Sep 2007 A1
20070208498 Barker et al. Sep 2007 A1
20070208736 Tanigawa et al. Sep 2007 A1
20070219882 May Sep 2007 A1
20070220604 Long Sep 2007 A1
20070226617 Traub et al. Sep 2007 A1
20070233709 Abnous Oct 2007 A1
20070233756 D'Souza et al. Oct 2007 A1
20070239606 Eisen Oct 2007 A1
20070240062 Christena et al. Oct 2007 A1
20070245339 Bauman et al. Oct 2007 A1
20070260582 Liang Nov 2007 A1
20070266336 Nojima et al. Nov 2007 A1
20070271317 Carmel Nov 2007 A1
20070282951 Selimis et al. Dec 2007 A1
20070284433 Domenica et al. Dec 2007 A1
20070294643 Kyle Dec 2007 A1
20070299697 Friedlander et al. Dec 2007 A1
20080005063 Seeds Jan 2008 A1
20080010440 Altman et al. Jan 2008 A1
20080015920 Fawls et al. Jan 2008 A1
20080016155 Khalatian Jan 2008 A1
20080016216 Worley et al. Jan 2008 A1
20080040250 Salter Feb 2008 A1
20080040684 Crump Feb 2008 A1
20080046481 Gould et al. Feb 2008 A1
20080046803 Beauchamp et al. Feb 2008 A1
20080051989 Welsh Feb 2008 A1
20080052142 Bailey et al. Feb 2008 A1
20080069081 Chand et al. Mar 2008 A1
20080077597 Butler Mar 2008 A1
20080077642 Carbone et al. Mar 2008 A1
20080082486 Lermant et al. Apr 2008 A1
20080091693 Murthy Apr 2008 A1
20080097816 Freire et al. Apr 2008 A1
20080103798 Domenikos et al. May 2008 A1
20080103996 Forman et al. May 2008 A1
20080104019 Nath May 2008 A1
20080104407 Horne et al. May 2008 A1
20080109714 Kumar et al. May 2008 A1
20080126344 Hoffman et al. May 2008 A1
20080126951 Sood et al. May 2008 A1
20080133310 Kim et al. Jun 2008 A1
20080140387 Linker Jun 2008 A1
20080140576 Lewis et al. Jun 2008 A1
20080148398 Mezack et al. Jun 2008 A1
20080155440 Trevor et al. Jun 2008 A1
20080162616 Worley et al. Jul 2008 A1
20080172607 Baer Jul 2008 A1
20080177782 Poston et al. Jul 2008 A1
20080177994 Mayer Jul 2008 A1
20080183639 DiSalvo Jul 2008 A1
20080195417 Surpin et al. Aug 2008 A1
20080195608 Clover Aug 2008 A1
20080195672 Hamel et al. Aug 2008 A1
20080196016 Todd Aug 2008 A1
20080201313 Dettinger et al. Aug 2008 A1
20080208820 Usey et al. Aug 2008 A1
20080215543 Huang et al. Sep 2008 A1
20080215546 Baum et al. Sep 2008 A1
20080222295 Robinson et al. Sep 2008 A1
20080228467 Womack et al. Sep 2008 A1
20080243711 Aymeloglu et al. Oct 2008 A1
20080243799 Rozich Oct 2008 A1
20080249845 Aronowich et al. Oct 2008 A1
20080249957 Masuyama et al. Oct 2008 A1
20080255973 El Wade et al. Oct 2008 A1
20080263468 Cappione et al. Oct 2008 A1
20080267107 Rosenberg Oct 2008 A1
20080267386 Cooper Oct 2008 A1
20080270316 Guidotti et al. Oct 2008 A1
20080276167 Michael Nov 2008 A1
20080278311 Grange et al. Nov 2008 A1
20080281580 Zabokritski Nov 2008 A1
20080288306 MacIntyre et al. Nov 2008 A1
20080288471 Wu et al. Nov 2008 A1
20080301042 Patzer Dec 2008 A1
20080301559 Martinsen et al. Dec 2008 A1
20080301643 Appleton et al. Dec 2008 A1
20080313132 Hao et al. Dec 2008 A1
20080313243 Poston et al. Dec 2008 A1
20080313281 Scheidl et al. Dec 2008 A1
20090002492 Velipasalar et al. Jan 2009 A1
20090006150 Prigge et al. Jan 2009 A1
20090006271 Crowder Jan 2009 A1
20090007056 Prigge et al. Jan 2009 A1
20090018996 Hunt et al. Jan 2009 A1
20090027418 Maru et al. Jan 2009 A1
20090030915 Winter et al. Jan 2009 A1
20090031401 Cudich et al. Jan 2009 A1
20090037912 Stoitsev et al. Feb 2009 A1
20090043762 Shiverick et al. Feb 2009 A1
20090055251 Shah et al. Feb 2009 A1
20090055487 Moraes et al. Feb 2009 A1
20090076845 Bellin et al. Mar 2009 A1
20090083275 Jacob et al. Mar 2009 A1
20090088964 Schaaf et al. Apr 2009 A1
20090089651 Herberger et al. Apr 2009 A1
20090094166 Aymeloglu et al. Apr 2009 A1
20090094217 Dettinger et al. Apr 2009 A1
20090106178 Chu Apr 2009 A1
20090106242 McGrew Apr 2009 A1
20090106305 Murakami Apr 2009 A1
20090106308 Killian et al. Apr 2009 A1
20090112678 Luzardo Apr 2009 A1
20090112745 Stefanescu Apr 2009 A1
20090112922 Barinaga Apr 2009 A1
20090119309 Gibson et al. May 2009 A1
20090125359 Knapic May 2009 A1
20090125369 Kloosstra et al. May 2009 A1
20090125459 Norton et al. May 2009 A1
20090132921 Hwangbo et al. May 2009 A1
20090132953 Reed et al. May 2009 A1
20090138307 Belcsak et al. May 2009 A1
20090143052 Bates et al. Jun 2009 A1
20090144262 White et al. Jun 2009 A1
20090144274 Fraleigh et al. Jun 2009 A1
20090144747 Baker Jun 2009 A1
20090150868 Chakra et al. Jun 2009 A1
20090161147 Klave Jun 2009 A1
20090164387 Armstrong et al. Jun 2009 A1
20090164934 Bhattiprolu et al. Jun 2009 A1
20090171939 Athsani et al. Jul 2009 A1
20090172511 Decherd et al. Jul 2009 A1
20090172674 Bobak et al. Jul 2009 A1
20090172821 Daira et al. Jul 2009 A1
20090177962 Gusmorino et al. Jul 2009 A1
20090179892 Tsuda et al. Jul 2009 A1
20090187464 Bai et al. Jul 2009 A1
20090187546 Whyte et al. Jul 2009 A1
20090187548 Ji et al. Jul 2009 A1
20090187556 Ross et al. Jul 2009 A1
20090193012 Williams Jul 2009 A1
20090193050 Olson Jul 2009 A1
20090199047 Vaitheeswaran et al. Aug 2009 A1
20090199106 Jonsson et al. Aug 2009 A1
20090222400 Kupershmidt et al. Sep 2009 A1
20090222759 Drieschner Sep 2009 A1
20090222760 Halverson et al. Sep 2009 A1
20090228365 Tomchek et al. Sep 2009 A1
20090228507 Jain et al. Sep 2009 A1
20090234720 George et al. Sep 2009 A1
20090248721 Burton et al. Oct 2009 A1
20090248757 Havewala et al. Oct 2009 A1
20090249244 Robinson et al. Oct 2009 A1
20090254970 Agarwal et al. Oct 2009 A1
20090271343 Vaiciulis et al. Oct 2009 A1
20090281839 Lynn et al. Nov 2009 A1
20090282068 Shockro et al. Nov 2009 A1
20090287470 Farnsworth et al. Nov 2009 A1
20090292626 Oxford Nov 2009 A1
20090299830 West et al. Dec 2009 A1
20090307049 Elliott et al. Dec 2009 A1
20090313250 Folting et al. Dec 2009 A1
20090313311 Hoffmann et al. Dec 2009 A1
20090313463 Pang et al. Dec 2009 A1
20090319418 Herz Dec 2009 A1
20090319891 MacKinlay Dec 2009 A1
20090319996 Shafi et al. Dec 2009 A1
20090327157 Dunne Dec 2009 A1
20100011282 Dollard et al. Jan 2010 A1
20100030722 Goodson et al. Feb 2010 A1
20100031141 Summers et al. Feb 2010 A1
20100042922 Bradateanu et al. Feb 2010 A1
20100057600 Johansen et al. Mar 2010 A1
20100057622 Faith et al. Mar 2010 A1
20100057716 Stefik et al. Mar 2010 A1
20100070426 Aymeloglu et al. Mar 2010 A1
20100070427 Aymeloglu et al. Mar 2010 A1
20100070464 Aymeloglu et al. Mar 2010 A1
20100070489 Aymeloglu et al. Mar 2010 A1
20100070523 Delgo et al. Mar 2010 A1
20100070531 Aymeloglu et al. Mar 2010 A1
20100070842 Aymeloglu et al. Mar 2010 A1
20100070844 Aymeloglu et al. Mar 2010 A1
20100070845 Facemire et al. Mar 2010 A1
20100070897 Aymeloglu et al. Mar 2010 A1
20100073315 Lee et al. Mar 2010 A1
20100082541 Kottomtharayil Apr 2010 A1
20100082671 Li et al. Apr 2010 A1
20100094765 Nandy Apr 2010 A1
20100098318 Anderson Apr 2010 A1
20100100963 Mahaffey Apr 2010 A1
20100114817 Broeder et al. May 2010 A1
20100114831 Gilbert et al. May 2010 A1
20100114887 Conway et al. May 2010 A1
20100122152 Chamberlain et al. May 2010 A1
20100131457 Heimendinger May 2010 A1
20100131502 Fordham May 2010 A1
20100145902 Boyan et al. Jun 2010 A1
20100145909 Ngo Jun 2010 A1
20100161646 Ceballos et al. Jun 2010 A1
20100161735 Sharma Jun 2010 A1
20100162176 Dunton Jun 2010 A1
20100162371 Geil Jun 2010 A1
20100169192 Zoldi et al. Jul 2010 A1
20100169376 Chu Jul 2010 A1
20100169405 Zhang Jul 2010 A1
20100191563 Schlaifer et al. Jul 2010 A1
20100198684 Eraker et al. Aug 2010 A1
20100199167 Uematsu et al. Aug 2010 A1
20100199225 Coleman et al. Aug 2010 A1
20100204983 Chung et al. Aug 2010 A1
20100205108 Mun Aug 2010 A1
20100205662 Ibrahim et al. Aug 2010 A1
20100223260 Wu Sep 2010 A1
20100228812 Uomini Sep 2010 A1
20100235915 Memon et al. Sep 2010 A1
20100250412 Wagner Sep 2010 A1
20100262688 Hussain et al. Oct 2010 A1
20100280857 Liu et al. Nov 2010 A1
20100283787 Hamedi et al. Nov 2010 A1
20100293174 Bennett et al. Nov 2010 A1
20100306285 Shah et al. Dec 2010 A1
20100306713 Geisner et al. Dec 2010 A1
20100312530 Capriotti Dec 2010 A1
20100312837 Bodapati et al. Dec 2010 A1
20100313119 Baldwin et al. Dec 2010 A1
20100313239 Chakra et al. Dec 2010 A1
20100318924 Frankel et al. Dec 2010 A1
20100321399 Ellren et al. Dec 2010 A1
20100325526 Ellis et al. Dec 2010 A1
20100325581 Finkelstein et al. Dec 2010 A1
20100330801 Rouh Dec 2010 A1
20110004626 Naeymi-Rad et al. Jan 2011 A1
20110016108 Pelenur Jan 2011 A1
20110029526 Knight et al. Feb 2011 A1
20110035396 Merz et al. Feb 2011 A1
20110041084 Karam Feb 2011 A1
20110047159 Baid et al. Feb 2011 A1
20110055074 Chen et al. Mar 2011 A1
20110060753 Shaked et al. Mar 2011 A1
20110061013 Bilicki et al. Mar 2011 A1
20110066497 Gopinath et al. Mar 2011 A1
20110066933 Ludwig Mar 2011 A1
20110074811 Hanson et al. Mar 2011 A1
20110078055 Faribault et al. Mar 2011 A1
20110078173 Seligmann et al. Mar 2011 A1
20110093327 Fordyce, III et al. Apr 2011 A1
20110093490 Schindlauer et al. Apr 2011 A1
20110099133 Chang et al. Apr 2011 A1
20110099628 Lanxner et al. Apr 2011 A1
20110117878 Barash et al. May 2011 A1
20110119100 Ruhl et al. May 2011 A1
20110131082 Manser et al. Jun 2011 A1
20110131122 Griffin et al. Jun 2011 A1
20110131547 Elaasar Jun 2011 A1
20110137766 Rasmussen et al. Jun 2011 A1
20110145401 Westlake Jun 2011 A1
20110153384 Horne et al. Jun 2011 A1
20110153592 DeMarcken Jun 2011 A1
20110161096 Buehler et al. Jun 2011 A1
20110167105 Ramakrishnan et al. Jul 2011 A1
20110170799 Carrino et al. Jul 2011 A1
20110173032 Payne et al. Jul 2011 A1
20110173093 Psota et al. Jul 2011 A1
20110179042 Aymeloglu et al. Jul 2011 A1
20110185316 Reid et al. Jul 2011 A1
20110185401 Bak et al. Jul 2011 A1
20110208565 Ross et al. Aug 2011 A1
20110208724 Jones et al. Aug 2011 A1
20110208822 Rathod Aug 2011 A1
20110213655 Henkin Sep 2011 A1
20110218934 Elser Sep 2011 A1
20110218955 Tang Sep 2011 A1
20110219450 McDougal et al. Sep 2011 A1
20110225198 Edwards et al. Sep 2011 A1
20110225482 Chan et al. Sep 2011 A1
20110225586 Bentley et al. Sep 2011 A1
20110231305 Winters Sep 2011 A1
20110238495 Kang Sep 2011 A1
20110251951 Kolkowtiz Oct 2011 A1
20110252282 Meek et al. Oct 2011 A1
20110258072 Kerker et al. Oct 2011 A1
20110258158 Resende et al. Oct 2011 A1
20110258216 Supakkul et al. Oct 2011 A1
20110270604 Qi et al. Nov 2011 A1
20110270705 Parker Nov 2011 A1
20110270834 Sokolan et al. Nov 2011 A1
20110270871 He et al. Nov 2011 A1
20110289397 Eastmond et al. Nov 2011 A1
20110289407 Naik et al. Nov 2011 A1
20110289420 Morioka et al. Nov 2011 A1
20110291851 Whisenant Dec 2011 A1
20110295649 Fine Dec 2011 A1
20110307382 Siegel et al. Dec 2011 A1
20110310005 Chen et al. Dec 2011 A1
20110314007 Dassa et al. Dec 2011 A1
20110314024 Chang et al. Dec 2011 A1
20110321008 Jhoney et al. Dec 2011 A1
20120011238 Rathod Jan 2012 A1
20120011245 Gillette et al. Jan 2012 A1
20120013684 Robertson et al. Jan 2012 A1
20120019559 Siler et al. Jan 2012 A1
20120022945 Falkenborg et al. Jan 2012 A1
20120030140 Aymeloglu et al. Feb 2012 A1
20120036013 Neuhaus et al. Feb 2012 A1
20120036434 Oberstein Feb 2012 A1
20120050293 Carlhian et al. Mar 2012 A1
20120054284 Rakshit Mar 2012 A1
20120059853 Jagota Mar 2012 A1
20120066166 Curbera et al. Mar 2012 A1
20120066296 Appleton et al. Mar 2012 A1
20120072825 Sherkin et al. Mar 2012 A1
20120078595 Balandin et al. Mar 2012 A1
20120079363 Folting et al. Mar 2012 A1
20120084117 Tavares et al. Apr 2012 A1
20120084118 Bai et al. Apr 2012 A1
20120084287 Lakshminarayan et al. Apr 2012 A1
20120101952 Raleigh et al. Apr 2012 A1
20120102022 Miranker et al. Apr 2012 A1
20120106801 Jackson May 2012 A1
20120117082 Koperda et al. May 2012 A1
20120131512 Takeuchi et al. May 2012 A1
20120136804 Lucia May 2012 A1
20120137235 Ts et al. May 2012 A1
20120143816 Zhang et al. Jun 2012 A1
20120144335 Abeln et al. Jun 2012 A1
20120158585 Ganti Jun 2012 A1
20120158752 Chakka Jun 2012 A1
20120159307 Chung et al. Jun 2012 A1
20120159362 Brown et al. Jun 2012 A1
20120159399 Bastide et al. Jun 2012 A1
20120159449 Arnold et al. Jun 2012 A1
20120170847 Tsukidate Jul 2012 A1
20120173381 Smith Jul 2012 A1
20120173985 Peppel Jul 2012 A1
20120174057 Narendra et al. Jul 2012 A1
20120180002 Campbell et al. Jul 2012 A1
20120188252 Law Jul 2012 A1
20120191446 Binsztok et al. Jul 2012 A1
20120196557 Reich et al. Aug 2012 A1
20120196558 Reich et al. Aug 2012 A1
20120197651 Robinson et al. Aug 2012 A1
20120203708 Psota et al. Aug 2012 A1
20120208636 Feige Aug 2012 A1
20120215784 King et al. Aug 2012 A1
20120221511 Gibson et al. Aug 2012 A1
20120221553 Wittmer et al. Aug 2012 A1
20120221580 Barney Aug 2012 A1
20120226523 Weiss Sep 2012 A1
20120245976 Kumar et al. Sep 2012 A1
20120246148 Dror Sep 2012 A1
20120254129 Wheeler et al. Oct 2012 A1
20120278249 Duggal et al. Nov 2012 A1
20120284345 Costenaro et al. Nov 2012 A1
20120284719 Phan et al. Nov 2012 A1
20120290506 Muramatsu et al. Nov 2012 A1
20120290879 Shibuya et al. Nov 2012 A1
20120296907 Long et al. Nov 2012 A1
20120311684 Paulsen et al. Dec 2012 A1
20120323888 Osann, Jr. Dec 2012 A1
20120330801 McDougal et al. Dec 2012 A1
20120330973 Ghuneim et al. Dec 2012 A1
20130006426 Healey et al. Jan 2013 A1
20130006725 Simanek et al. Jan 2013 A1
20130006916 McBride et al. Jan 2013 A1
20130013577 Fee et al. Jan 2013 A1
20130016106 Yip et al. Jan 2013 A1
20130018796 Kolhatkar et al. Jan 2013 A1
20130024268 Manickavelu Jan 2013 A1
20130024731 Shochat et al. Jan 2013 A1
20130036346 Cicerone Feb 2013 A1
20130046635 Grigg et al. Feb 2013 A1
20130046842 Muntz et al. Feb 2013 A1
20130054306 Bhalla Feb 2013 A1
20130054551 Lange Feb 2013 A1
20130057551 Ebert et al. Mar 2013 A1
20130060786 Serrano et al. Mar 2013 A1
20130061169 Pearcy et al. Mar 2013 A1
20130073377 Heath Mar 2013 A1
20130073454 Busch Mar 2013 A1
20130078943 Biage et al. Mar 2013 A1
20130086482 Parsons Apr 2013 A1
20130096968 Van Pelt et al. Apr 2013 A1
20130096988 Grossman et al. Apr 2013 A1
20130097130 Bingol et al. Apr 2013 A1
20130097482 Marantz et al. Apr 2013 A1
20130101159 Chao et al. Apr 2013 A1
20130110746 Ahn May 2013 A1
20130110822 Ikeda et al. May 2013 A1
20130110877 Bonham et al. May 2013 A1
20130111320 Campbell et al. May 2013 A1
20130117651 Waldman et al. May 2013 A1
20130124193 Holmberg May 2013 A1
20130132348 Garrod May 2013 A1
20130150004 Rosen Jun 2013 A1
20130151148 Parundekar et al. Jun 2013 A1
20130151305 Akinola et al. Jun 2013 A1
20130151388 Falkenborg et al. Jun 2013 A1
20130151453 Bhanot et al. Jun 2013 A1
20130157234 Gulli et al. Jun 2013 A1
20130166348 Scotto Jun 2013 A1
20130166480 Popescu et al. Jun 2013 A1
20130166550 Buchmann et al. Jun 2013 A1
20130176321 Mitchell et al. Jul 2013 A1
20130179420 Park et al. Jul 2013 A1
20130185245 Anderson Jul 2013 A1
20130185307 El-Yaniv et al. Jul 2013 A1
20130198624 Aymeloglu et al. Aug 2013 A1
20130218974 Cao et al. Aug 2013 A1
20130224696 Wolfe et al. Aug 2013 A1
20130225212 Khan Aug 2013 A1
20130226318 Procyk Aug 2013 A1
20130226944 Baid et al. Aug 2013 A1
20130226953 Markovich et al. Aug 2013 A1
20130231862 Delling et al. Sep 2013 A1
20130232045 Tai et al. Sep 2013 A1
20130232220 Sampson Sep 2013 A1
20130238616 Rose et al. Sep 2013 A1
20130238664 Hsu et al. Sep 2013 A1
20130246170 Gross et al. Sep 2013 A1
20130246537 Gaddala Sep 2013 A1
20130246597 Iizawa et al. Sep 2013 A1
20130251233 Yang et al. Sep 2013 A1
20130262328 Federgreen Oct 2013 A1
20130262527 Hunter et al. Oct 2013 A1
20130263019 Castellanos et al. Oct 2013 A1
20130267207 Hao et al. Oct 2013 A1
20130268520 Fisher et al. Oct 2013 A1
20130279757 Kephart Oct 2013 A1
20130282696 John et al. Oct 2013 A1
20130290011 Lynn et al. Oct 2013 A1
20130290161 Aymeloglu et al. Oct 2013 A1
20130290825 Arndt et al. Oct 2013 A1
20130293553 Burr et al. Nov 2013 A1
20130297619 Chandrasekaran et al. Nov 2013 A1
20130304770 Boero et al. Nov 2013 A1
20130311375 Priebatsch Nov 2013 A1
20130325826 Agarwal et al. Dec 2013 A1
20140006404 McGrew et al. Jan 2014 A1
20140012724 O'Leary et al. Jan 2014 A1
20140012796 Petersen et al. Jan 2014 A1
20140012886 Downing et al. Jan 2014 A1
20140019936 Cohanoff Jan 2014 A1
20140032506 Hoey et al. Jan 2014 A1
20140033010 Richardt et al. Jan 2014 A1
20140040371 Gurevich et al. Feb 2014 A1
20140047319 Eberlein Feb 2014 A1
20140047357 Alfaro et al. Feb 2014 A1
20140058914 Song et al. Feb 2014 A1
20140059038 McPherson et al. Feb 2014 A1
20140067611 Adachi et al. Mar 2014 A1
20140068487 Steiger et al. Mar 2014 A1
20140074855 Zhao et al. Mar 2014 A1
20140074888 Potter et al. Mar 2014 A1
20140081685 Thacker et al. Mar 2014 A1
20140095273 Tang et al. Apr 2014 A1
20140095363 Caldwell Apr 2014 A1
20140095509 Patton Apr 2014 A1
20140108068 Williams Apr 2014 A1
20140108074 Miller et al. Apr 2014 A1
20140108380 Gotz et al. Apr 2014 A1
20140108985 Scott et al. Apr 2014 A1
20140115589 Marinelli, III et al. Apr 2014 A1
20140115610 Marinelli, III et al. Apr 2014 A1
20140120864 Manolarakis et al. May 2014 A1
20140123279 Bishop et al. May 2014 A1
20140129261 Bothwell et al. May 2014 A1
20140129936 Richards et al. May 2014 A1
20140136285 Carvalho May 2014 A1
20140143009 Brice et al. May 2014 A1
20140143025 Fish et al. May 2014 A1
20140149436 Bahrami et al. May 2014 A1
20140156527 Grigg et al. Jun 2014 A1
20140157172 Peery et al. Jun 2014 A1
20140164502 Khodorenko et al. Jun 2014 A1
20140181833 Bird et al. Jun 2014 A1
20140189536 Lange et al. Jul 2014 A1
20140195515 Baker et al. Jul 2014 A1
20140195887 Ellis et al. Jul 2014 A1
20140214482 Williams et al. Jul 2014 A1
20140214579 Shen et al. Jul 2014 A1
20140222521 Chait Aug 2014 A1
20140222752 Isman et al. Aug 2014 A1
20140222793 Sadkin et al. Aug 2014 A1
20140229554 Grunin et al. Aug 2014 A1
20140237354 Burr et al. Aug 2014 A1
20140244388 Manouchehri et al. Aug 2014 A1
20140258285 Lavine Sep 2014 A1
20140267294 Ma Sep 2014 A1
20140267295 Sharma Sep 2014 A1
20140279824 Tamayo Sep 2014 A1
20140279865 Kumar Sep 2014 A1
20140310266 Greenfield Oct 2014 A1
20140316911 Gross Oct 2014 A1
20140333651 Cervelli et al. Nov 2014 A1
20140337772 Cervelli et al. Nov 2014 A1
20140344230 Krause et al. Nov 2014 A1
20140358789 Boding et al. Dec 2014 A1
20140358829 Hurwitz Dec 2014 A1
20140366132 Stiansen et al. Dec 2014 A1
20150012509 Kirn Jan 2015 A1
20150019394 Unser et al. Jan 2015 A1
20150046481 Elliot Feb 2015 A1
20150046870 Goldenberg et al. Feb 2015 A1
20150073929 Psota et al. Mar 2015 A1
20150073954 Braff Mar 2015 A1
20150089424 Duffield et al. Mar 2015 A1
20150095773 Gonsalves et al. Apr 2015 A1
20150100897 Sun et al. Apr 2015 A1
20150100907 Erenrich et al. Apr 2015 A1
20150106379 Elliot et al. Apr 2015 A1
20150112641 Faraj Apr 2015 A1
20150120176 Curtis et al. Apr 2015 A1
20150134512 Mueller May 2015 A1
20150134666 Gattiker et al. May 2015 A1
20150135256 Hoy et al. May 2015 A1
20150161611 Duke et al. Jun 2015 A1
20150169709 Kara et al. Jun 2015 A1
20150169726 Kara et al. Jun 2015 A1
20150170077 Kara et al. Jun 2015 A1
20150178743 Aymeloglu et al. Jun 2015 A1
20150178825 Huerta Jun 2015 A1
20150178877 Bogomolov et al. Jun 2015 A1
20150186821 Wang et al. Jul 2015 A1
20150187036 Wang et al. Jul 2015 A1
20150188872 White Jul 2015 A1
20150205848 Kumar et al. Jul 2015 A1
20150227295 Meiklejohn et al. Aug 2015 A1
20150254220 Burr et al. Sep 2015 A1
20150261817 Harris et al. Sep 2015 A1
20150269030 Fisher et al. Sep 2015 A1
20150309719 Ma et al. Oct 2015 A1
20150310005 Ryger et al. Oct 2015 A1
20150317342 Grossman et al. Nov 2015 A1
20150324868 Kaftan et al. Nov 2015 A1
20150338233 Cervelli et al. Nov 2015 A1
20150379413 Robertson et al. Dec 2015 A1
20160004764 Chakerian et al. Jan 2016 A1
20160026923 Erenrich et al. Jan 2016 A1
20160299652 Aymeloglu et al. Oct 2016 A1
20180075007 Burr et al. Mar 2018 A1
20180075126 Tamayo Mar 2018 A1
20180113740 Marinelli et al. Apr 2018 A1
Foreign Referenced Citations (96)
Number Date Country
2014201558 Jun 2018 AU
2828264 Apr 2014 CA
2829266 Jun 2017 CA
102546446 Jul 2012 CN
103167093 Jun 2013 CN
102054015 May 2014 CN
102014103482 Sep 2014 DE
102014204827 Sep 2014 DE
102014204830 Sep 2014 DE
102014204834 Sep 2014 DE
102014213036 Jan 2015 DE
0652513 May 1995 EP
1 109 116 Jun 2001 EP
1 146 649 Oct 2001 EP
1647908 Apr 2006 EP
1672527 Jun 2006 EP
1926074 May 2008 EP
2350817 Aug 2011 EP
2487610 Aug 2012 EP
2551799 Jan 2013 EP
2555126 Feb 2013 EP
2560134 Feb 2013 EP
2562709 Feb 2013 EP
2634745 Sep 2013 EP
2743839 Jun 2014 EP
2 778 974 Sep 2014 EP
2778913 Sep 2014 EP
2778914 Sep 2014 EP
2778977 Sep 2014 EP
2778986 Sep 2014 EP
2779082 Sep 2014 EP
2835745 Feb 2015 EP
2835770 Feb 2015 EP
2838039 Feb 2015 EP
2846241 Mar 2015 EP
2851852 Mar 2015 EP
2858014 Apr 2015 EP
2858018 Apr 2015 EP
2863326 Apr 2015 EP
2863346 Apr 2015 EP
2869211 May 2015 EP
2876587 May 2015 EP
2884439 Jun 2015 EP
2884440 Jun 2015 EP
2889814 Jul 2015 EP
2891992 Jul 2015 EP
2892197 Jul 2015 EP
2911078 Aug 2015 EP
2911100 Aug 2015 EP
2921975 Sep 2015 EP
2940603 Nov 2015 EP
2940609 Nov 2015 EP
2963595 Jan 2016 EP
2366498 Mar 2002 GB
2513472 Oct 2014 GB
2513721 Nov 2014 GB
2508503 Jan 2015 GB
2516155 Jan 2015 GB
2517582 Feb 2015 GB
2508293 Apr 2015 GB
2518745 Apr 2015 GB
1194178 Sep 2015 HK
102014215621 Feb 2015 ID
2012778 Nov 2014 NL
2013134 Jan 2015 NL
2013306 Feb 2015 NL
2011613 Jun 2016 NL
624557 Dec 2014 NZ
622485 Mar 2015 NZ
616212 May 2015 NZ
616299 Jul 2015 NZ
WO 00009529 Feb 2000 WO
WO 00034895 Jun 2000 WO
WO 01025906 Apr 2001 WO
WO 2001088750 Nov 2001 WO
WO 02065353 Aug 2002 WO
WO 2005104736 Nov 2005 WO
WO 2005116851 Dec 2005 WO
WO 2008064207 May 2008 WO
WO 2008121499 Oct 2008 WO
WO 2009042548 Apr 2009 WO
WO 2009051987 Apr 2009 WO
WO 2009061501 May 2009 WO
WO 2010000014 Jan 2010 WO
WO 2010030913 Mar 2010 WO
WO 2010030914 Mar 2010 WO
WO 2010030915 Mar 2010 WO
WO 2010030917 Mar 2010 WO
WO 2010030919 Mar 2010 WO
WO 2010030946 Mar 2010 WO
WO 2010030949 Mar 2010 WO
WO 2013030595 Mar 2010 WO
WO 2012025915 Mar 2012 WO
WO 2012119008 Sep 2012 WO
WO 2013010157 Jan 2013 WO
WO 2013102892 Jul 2013 WO
Non-Patent Literature Citations (537)
Entry
CMSC 341, “Introduction to Trees,” Power Point Presentation, http://www.csee.umbc.edu/courses/undergraduate/341/fall07/Lectures/Tres/TreeIntro.pdf, Baltimore, Maryland, Aug. 3, 2007, pp. 29.
“A First Look: Predicting Market Demand for Food Retail using a Huff Analysis,” TRF Policy Solutions, Jul. 2012, pp. 30.
Azad, Khalid, “A Visual Guide to Version Control,” http://betterexplained.com/articles/a-visual-guide-to-version-control/, Sep. 27, 2007 in 11 pages.
Beverley, Bill, “Windows Tips & Tricks,” http://alamopc.org/pcalamode/columns/beverley/bb0301.shtml, Mar. 2001 in 5 pages.
Bradbard, Matthew, “Technical Analysis Applied,” http://partners.futuresource.com/fastbreak/2007/0905.htm, Sep. 5, 2007, pp. 6.
Breierova et al., “An Introduction to Sensitivity Analysis,” Published by Massachusetts Institute of Technology, Cambridge, MA, Oct. 2001, pp. 67.
Devanbu et al., “Authentic Third-party Data Publication,” 2000, pp. 19, http://www.cs.ucdavis.edu/˜devanbu/authdbpub.pdf.
Dramowicz, Ela, “Retail Trade Area Analysis Using the Huff Model,” Directions Magazine http://www.directionsmag.com/articles/retail-trade-area-analysis-using-the-huff-mode1/123411, Jul. 2, 2005 in 10 pages.
Dreyer et al., “An Object-Oriented Data Model for a Time Series Management System,” Proceedings of the 7th International Working Conference on Scientific and Statistical Database Management, Charlottesville, Virginia USA, Sep. 28-30, 1994, pp. 12.
Griffith, Daniel A., “A Generalized Huff Model,” Geographical Analysis, Apr. 1982, vol. 14, No. 2, pp. 135-144.
Hibbert et al., “Prediction of Shopping Behavior Using a Huff Model Within a GIS Framework,” Healthy Eating in Context, Mar. 18, 2011, pp. 16.
Huff et al., “Calibrating the Huff Model Using ArcGIS Business Analyst,” ESRI, Sep. 2008, pp. 33.
Huff, David L., “Parameter Estimation in the Huff Model,” ESRI, ArcUser, Oct.-Dec. 2003, pp. 34-36.
“Introduction to Trees”, UMBC, CMSC 341 , Aug. 3, 2007, pp. 29, as printed from http://www.csee.umbc.edu/courses/undergraduate/CMSC341/Lectures/Trees/TreeIntro.ppt.
Liu, Tianshun, “Combining GIS and the Huff Model to Analyze Suitable Locations for a New Asian Supermarket in the Minneapolis and St. Paul, Minnesota USA,” Papers in Resource Analysis, 2012, vol. 14, pp. 8.
Mentzas et al. “An Architecture for Intelligent Assistance in the Forecasting Process,” Proceedings of the Twenty-Eighth Hawaii International Conference on System Sciences, Jan. 3-6, 1995, vol. 3, pp. 167-176.
Microsoft, “How Word Creates and Recovers the AutoRecover files,” http://support.microsoft.com/kb/107686, Article ID: 107686, printed Feb. 11, 2010 in 3 pages.
Microsoft, “Introduction to Versioning,” http://office.microsoft.com/en-us/sharepointtechnoldy/HA010021576.aspx?nnode=print, 2007 in 3 pages.
Microsoft, “Managing Versions and Checking Documents In and Out (Windows SharePoint Services 2.0),” http://technet.microsoft.com/en-us/library/cc287876.aspx, Aug. 22, 2005 in 2 pages.
Traichal et al., “Forecastable Default Risk Premia and Innovations,” Journal of Economics and Finance, Fall 1999, vol. 23, No. 3, pp. 214-225.
Schwieger, V., “Sensitivity Analysis as a General Tool for Model Optimisation-Examples for Trajectory Estimation,” 3rd IAG/12th FIG Symposium, Baden, Germany, May 22-24, 2006, Published by IAG, 2006, pp. 10.
Schwieger, V., “Variance-Based Sensitivity Analysis for Model Evaluation in Engineering Surveys,” INGEO 2004 and FIG Regional Central and Eastern European Conference on Engineering Surveying, Nov. 11-13, 2004, Published by INGEO, Bratislava, Slovakia, 2004, pp. 10.
Yahoo, http://web.archive.org/web/20020124161606/http://finance.yahoo.com/q?s=%5eIXIC&d=c . . . printed Mar. 6, 2012 in 2 pages.
International Search Report and Written Opinion in Application No. PCT/US2008/056439, dated Jun. 8, 2009.
International Search Report and Written Opinion in Application No. PCT/US2008/077244, dated Nov. 28, 2008.
International Search Report and Written Opinion in Application No. PCT/US2009/056705, dated Mar. 26, 2010.
International Search Report and Written Opinion in Application No. PCT/US2009/056738, dated Mar. 29, 2010.
International Search Report and Written Opinion in Application No. PCT/US2009/056707, dated Mar. 2, 2010.
Official Communication in European Application No. 14159418.4 dated Oct. 8, 2014.
Official Communication in New Zealand Application No. 622513 dated Apr. 3, 2014.
Official Communication in New Zealand Application No. 628840 dated Aug. 28, 2014.
“A Quick Guide to UniProtKB Swiss-Prot & TrEMBL,” Sep. 2011, pp. 2.
“A Tour of Pinboard,” http://pinboard.in/tour as printed May 15, 2014 in 6 pages.
“A Word About Banks and the Laundering of Drug Money,” Aug. 18, 2012, http://www.golemxiv.co.uk/2012/08/a-wo rd-about-banks-and-the-laundering-of-drug-money/.
“E-MailRelay,” http://web.archive.org/web/20080821175021/http://emailrelay.sourceforge.net/ Aug. 21, 2008, pp. 2.
“GrabUp—What a Timesaver!” http://atlchris.com/191/grabup/, Aug. 11, 2008, pp. 3.
“How to Create a small Multiple Masterpiece in Tableau,” Nov. 10, 2014.
“HunchLab: Heat Map and Kernel Density Calculation for Crime Analysis,” Azavea Journal, printed from www.azavea.com/blogs/newsletter/v4i4/kernel-density-capabilities-added-to-hunchlab/ on Sep. 9, 2014, 2 pages.
“Money Laundering Risks and E-Gaming: A European Overview and Assessment,” 2009, http://www.cf.ac.uk/socsi/resources/Levi_Final_Money_Laundering_Risks_egaming.pdf.
“Potential Money Laundering Warning Signs,” snapshot taken 2003, https://web.archive.org/web/20030816090055/http:/finsolin.com/ANTI-MONEY%20LAUNDERING%20TRAINING%20GUIDES.pdf.
“Refresh CSS Ellipsis When Resizing Container—Stack Overflow,” Jul. 31, 2013, retrieved from internet http://stackoverflow.com/questions/17964681/refresh-css-ellipsis-when-resizing-container, retrieved on May 18, 2015.
“The FASTA Program Package,” fasta-36.3.4, Mar. 25, 2011, pp. 29.
“Using Whois Based Geolocation and Google Maps API for Support Cybercrime Investigations,” http://wseas.us/e-library/conferences/2013/Dubrovnik/TELECIRC/TELECIRC-32.pdf.
“Java Remote Method Invocation: 7—Remote Object Activation,” Dec. 31, 2010, retrieved from the internet Mar. 15, 2016 https://docs.oracle.com/javase/7/docs/platform/rmi/spec/rmi-activation2.html.
Abbey, Kristen, “Review of Google Docs,” May 1, 2007, pp. 2.
About 80 Minutes, “Palantir in a Number of Parts—Part 6—Graph,” Mar. 21, 2013, pp. 1-6, retrieved from the internet http://about80minutes.blogspot.nl/2013/03/palantir-in-number-of-parts-part-6-graph.html retrieved on Aug. 18, 2015.
Acklen, Laura, “Absolute Beginner's Guide to Microsoft Word 2003,” Dec. 24, 2003, pp. 15-18, 34-41, 308-316.
Adams et al., “Worklets: A Service-Oriented Implementation of Dynamic Flexibility in Workflows,” R. Meersman, Z. Tari et al. (Eds.): OTM 2006, LNCS, 4275, pp. 291-308, 2006.
Alur et al., “Chapter 2: IBM InfoSphere DataStage Stages,” IBM InfoSphere DataStage Data Flow and Job Design, Jul. 1, 2008, pp. 35-137.
AMNET, “5 Great Tools for Visualizing Your Twitter Followers,” posted Aug. 4, 2010, http://www.amnetblog.com/component/content/article/115-5-grate-tools-for-visualizing-your-twitter-followers.html.
Ananiev et al., “The New Modality API,” http://web.archive.org/web/20061211011958/http://java.sun.com/developer/technicalArticles/J2SE/Desktop/javase6/modality/ Jan. 21, 2006, pp. 8.
Anonymous, “A Real-World Problem of Matching Records,” Nov. 2006, http://grupoweb.upf.es/bd-web/slides/ullman.pdf pp. 1-16.
Anonymous, “Frequently Asked Questions about Office Binder 97,” http://web.archive.org/web/20100210112922/http://support.microsoft.com/kb/843147 printed Dec. 18, 2006 in 5 pages.
Appacts, “Smart Thinking for Super Apps,” http://www.appacts.com Printed Jul. 18, 2013 in 4 pages.
Apsalar, “Data Powered Mobile Advertising,” “Free Mobile App Analytics” and various analytics related screen shots http://apsalar.com Printed Jul. 18, 2013 in 8 pages.
Ashraf, “Protect your Google Account (Gmail) by enabling SMS (text message) notifications for Suspicious Activity,” online article from dotTech, Jan. 24, 2013, https://dottech.org/94405/how-to-setup-text-message-sms-google-notifications-for-suspicious-activity/.
Bae et al., “Partitioning Algorithms for the Computation of Average Iceberg Queries,” DaWaK 2000, LNCS 1874, pp. 276_286.
Ballesteros et al., “Batching: A Design Pattern for Efficient and Flexible Client/Server Interaction,” Transactions on Pattern Languages of Programming, Springer Berlin Heildeberg, 2009, pp. 48-66.
Bluttman et al., “Excel Formulas and Functions for Dummies,” 2005, Wiley Publishing, Inc., pp. 280, 284-286.
Bogle et al., “Reducing Cross-Domain Call Overhead Using Batched Futures,” SIGPLAN No. 29, (Oct. 10, 1994) pp. 341-354.
Bogle, Phillip Lee, “Reducing Cross-Domain Call Overhead Using Batched Futures,” May 1994, Massachusetts Institute of Technology, pp. 96.
Bouajjani et al., “Analysis of Recursively Parallel Programs,” PLDI09: Proceedings of the 2009 ACM Sigplan Conference on Programming Language Design and Implementation, Jun. 15-20, 2009, Dublin, Ireland, pp. 203-214.
Boyce, Jim, “Microsoft Outlook 2010 Inside Out,” Aug. 1, 2010, retrieved from the Internet https://capdtron.files.wordpress.com/2013/01/outlook-2010-inside_out.pdf.
Brandel, Mary, “Data Loss Prevention Dos and Don'ts,” http://web.archive.org/web/20080724024847/http://www.csoonline.com/article/221272/Dos_and_Don_ts_for_Data_Loss_Prevention, Oct. 10, 2007, pp. 5.
Bugzilla@Mozilla, “Bug 18726—[feature] Long-click means of invoking contextual menus not supported,” http://bugzilla.mozilla.org/show_bug.cgi?id=18726 printed Jun. 13, 2013 in 11 pages.
Canese et al., “Chapter 2: PubMed: The Bibliographic Database,” The NCBI Handbook, Oct. 2002, pp. 1-10.
Capptain—Pilot Your Apps, http://www.capptain.com Printed Jul. 18, 2013 in 6 pages.
Celik, Tantek, “CSS Basic User Interface Module Level 3 (CSS3 UI),” Section 8 Resizing and Overflow, Jan. 17, 2012, retrieved from internet http://www.w3.org/TR/2012/WD-css3-ui-20120117/#resizing-amp-overflow retrieved on May 18, 2015.
Chaudhuri et al., “An Overview of Business Intelligence Technology,” Communications of the ACM, Aug. 2011, vol. 54, No. 8.
Chazelle et al., “The Bloomier Filter: An Efficient Data Structure for Static Support Lookup Tables,” SODA '04 Proceedings of the Fifteenth Annual ACM-SIAM Symposium on Discrete Algorithms, 2004, pp. 30-39.
Chen et al., “A Novel Emergency Vehicle Dispatching System,” 2013 IEEE 77th Vehicular Technology Conference, IEEE, Jun. 2, 2013, 5 pages.
Chen et al., “Bringing Order to the Web: Automatically Categorizing Search Results,” CHI 2000, Proceedings of the SIGCHI conference on Human Factors in Computing Systems, Apr. 1-6, 2000, The Hague, The Netherlands, pp. 145-152.
Chung, Chin-Wan, “Dataplex: An Access to Heterogeneous Distributed Databases,” Communications of the ACM, Association for Computing Machinery, Inc., vol. 33, No. 1, Jan. 1, 1990, pp. 70-80.
Cohn, et al., “Semi-supervised clustering with user feedback,” Constrained Clustering: Advances in Algorithms, Theory, and Applications 4.1 (2003): 17-32.
Conner, Nancy, “Google Apps: The Missing Manual,” May 1, 2008, pp. 15.
Countly Mobile Analytics, http://count.ly/ Printed Jul. 18, 2013 in 9 pages.
Definition “Identify”, downloaded Jan. 22, 2015, 1 page.
Definition “Overlay”, downloaded Jan. 22, 2015, 1 page.
Delcher et al., “Identifying Bacterial Genes and Endosymbiont DNA with Glimmer,” BioInformatics, vol. 23, No. 6, 2007, pp. 673-679.
Delicious, http://delicious.com/ as printed May 15, 2014 in 1 page.
DISTIMO—App Analytics, http://www.distimo.com/app-analytics Printed Jul. 18, 2013 in 5 pages.
Donjerkovic et al., “Probabilistic Optimization of Top N Queries,” Proceedings of the 25th VLDB Conference, Edinburgh, Scotland, 1999, pp. 411-422.
Eklund et al., “A Dynamic Multi-source Dijkstra's Algorithm for Vehicle Routing,” Intelligent Information Systems, 1996, pp. 329-333.
Fang et al., “Computing Iceberg Queries Efficiently,” Proceedings of the 24th VLDB Conference New York, 1998, pp. 299-310.
Fischer et al., “Populating a Release History Database From Version Control and Bug Tracking Systems,” Software Maintenance, 2003, ICSM 2003, Proceedings International Conference, pp. 1-10.
Flurry Analytics, http://www.flurry.com/ Printed Jul. 18, 2013 in 14 pages.
Frantisek et al., “An Architectural View of Distributed Objects and Components in CORBA, Java RMI and COM/DCOM,” Software—Concepts & Tools, vol. 19, No. 1, Jun. 1, 1998, pp. 14-28.
Galliford, Miles, “Snaglt Versus Free Screen Capture Software: Critical Tools for Website Owners,” http://www.subhub.com/articles/free-screen-capture-software, Mar. 27, 2008, pp. 11.
Gesher, Ari, “Palantir Screenshots in the Wild: Swing Sightings,” The Palantir Blog, Sep. 11, 2007, pp. 1-12.
GIS-NET 3 Public_Department of Regional Planning. Planning & Zoning Information for Unincorporated LA County. Retrieved Oct. 2, 2013 from http://gis.planning.lacounty.gov/GIS-NET3_Public/Viewer.html.
Goldstein et al., “Stacks Lazy Threads: Implementing a Fast Parallel Call,” Journal of Parallel and Distributed Computing, Jan. 1, 1996, pp. 5-20.
Google Analytics Official Website—Web Analytics & Reporting, http://www.google.com/analytics.index.html Printed Jul. 18, 2013 in 22 pages.
Gorr et al., “Crime Hot Spot Forecasting: Modeling and Comparative Evaluation”, Grant 98-IJ-CX-K005, May 6, 2002, 37 pages.
Goswami, Gautam, “Quite Writly Saidl,” One Brick at a Time, Aug. 21, 2005, pp. 7.
Gu et al., “Record Linkage: Current Practice and Future Directions,” Jan. 15, 2004, pp. 32.
Han et al., “Efficient Computation of Iceberg Cubes with Complex Measures,” ACM Sigmod, May 21-24, 2001, pp. 1-12.
Hansen et al., “Analyzing Social Media Networks with NodeXL: Insights from a Connected World”, Chapter 4, pp. 53-67 and Chapter 10, pp. 143-164, published Sep. 2010.
Hardesty, “Privacy Challenges: Analysis: It's Surprisingly Easy to Identify Individuals from Credit-Card Metadata,” MIT News On Campus and Around the World, MIT News Office, Jan. 29, 2015, 3 pages.
Hart et al., “A Formal Basis for the Heuristic Determination of Minimum Cost Paths,” IEEE Transactions on Systems Science and Cybernetics, IEEE, vol. 1, No. 2, Jul. 1, 1968, pp. 100-107.
Hogue et al., “Thresher: Automating the Unwrapping of Semantic Content from the World Wide Web,” 14th International Conference on World Wide Web, WWW 2005: Chiba, Japan, May 10-14, 2005, pp. 86-95.
Hua et al., “A Multi-attribute Data Structure with Parallel Bloom Filters for Network Services”, HiPC 2006, LNCS 4297, pp. 277-288, 2006.
Huang et al., “Systematic and Integrative Analysis of Large Gene Lists Using DAVID Bioinformatics Resources,” Nature Protocols, 4.1, 2008, 44-57.
Ivanova et al., “An Architecture for Recycling Intermediates in a Column-Store,” Proceedings of the 35th Sigmod International Conference on Management of Data, Sigmod '09, Jun. 29, 2009, p. 309.
Jacques, M., “An extensible math expression parser with plug-ins,” Code Project, Mar. 13, 2008. Retrieved on Jan. 30, 2015 from the internet: http://www.codeproject.com/Articles/7335/An-extensible-math-expression-parser-with-plug-ins.
Jenks et al., “Nomadic Threads: A Migrating Multithreaded Approach to Remote Memory Accesses in Multiprocessors,” Parallel Architectures and Compilation Techniques, 1996, Oct. 20, 1996, pp. 2-11.
JetScreenshot.com, “Share Screenshots via Internet in Seconds,” http://web.archive.org/web/20130807164204/http://www.jetscreenshot.com/, Aug. 7, 2013, pp. 1.
Johnson, Maggie, “Introduction to YACC and Bison”, Handout 13, Jul. 8, 2005, in 11 pages.
Johnson, Steve, “Access 2013 on demand,” Access 2013 on Demand, May 9, 2013, Que Publishing.
Jotshi et al., “Dispatching and Routing of Emergency Vehicles in Disaster Mitigation Using Data Fusion.” Socio-Economic Planning Sciences, Pergamon, Amsterdam, Netherlands, vol. 43, No. 1, Mar. 1, 2009, 24 pages.
Kahan et al., “Annotea: an Open RDF Infrastructure for Shared Web Annotations”, Computer Networks, Elsevier Science Publishers B.V., vol. 39, No. 5, dated Aug. 5, 2002, pp. 589-608.
Karp et al., “A Simple Algorithm for Finding Frequent Elements in Streams and Bags,” ACM Transactions on Database Systems, vol. 28, No. 1, Mar. 2003, pp. 51-55.
Keylines.com, “An Introduction to KeyLines and Network Visualization,” Mar. 2014, http://keylines.com/wp-content/uploads/2014/03/KeyLines-White-Paper.pdf downloaded May 12, 2014 in 8 pages.
Keylines.com, “KeyLines Datasheet,” Mar. 2014, http://keylines.com/wp-content/uploads/2014/03/KeyLines-datasheet.pdf downloaded May 12, 2014 in 2 pages.
Keylines.com, “Visualizing Threats: Improved Cyber Security Through Network Visualization,” Apr. 2014, http://keylines.com/wp-content/uploads/2014/04/Visualizing-Threats1.pdf downloaded May 12, 2014 in 10 pages.
Kitts, Paul, “Chapter 14: Genome Assembly and Annotation Process,” The NCBI Handbook, Oct. 2002, pp. 1-21.
Kontagent Mobile Analytics, http://www.kontagent.com/ Printed Jul. 18, 2013 in 9 pages.
Kwout, http://web.archive.org/web/20080905132448/http://www.kwout.com/ Sep. 5, 2008, pp. 2.
Leela et al., “On Incorporating Iceberg Queries in Query Processors,” Technical Report, TR-2002-01, Database Systems for Advanced Applications Lecture Notes in Computer Science, 2004, vol. 2973.
Li et al., “Interactive Multimodal Visual Search on Mobile Device,” IEEE Transactions on Multimedia, vol. 15, No. 3, Apr. 1, 2013, pp. 594-607.
Lim et al., “Resolving Attribute Incompatibility in Database Integration: An Evidential Reasoning Approach,” Department of Computer Science, University of Minnesota, 1994, http://reference.kfupm.edu.sa/content/r/e/resolving_attribute_incompatibility_in_d 531691.pdf pp. 1-10.
Litwin et al., “Multidatabase Interoperability,” IEEE Computer, Dec. 1986, vol. 19, No. 12, http://www.lamsade.dauphine.fr/˜litwin/mdb-interoperability.pdf, pp. 10-18.
Liu et al., “Methods for Mining Frequent Items in Data Streams: An Overview,” Knowledge and Information Systems, vol. 26, No. 1, Jan. 2011, pp. 1-30.
Localytics—Mobile App Marketing & Analytics, http://www.localytics.com/ Printed Jul. 18, 2013 in 12 pages.
Madden, Tom, “Chapter 16: The BLAST Sequence Analysis Tool,” The NCBI Handbook, Oct. 2002, pp. 1-15.
Manno et al., “Introducing Collaboration in Single-user Applications through the Centralized Control Architecture,” 2010, pp. 10.
Manske, “File Saving Dialogs,” http://www.mozilla.org/editor/ul_specs/FileSaveDialogs.html, Jan. 20, 1999, pp. 7.
Map Builder, “Rapid Mashup Development Tool for Google and Yahoo Maps!” http://web.archive.org/web/20090626224734/http://www.mapbuilder.net/ printed Jul. 20, 2012 in 2 pages.
Map of San Jose, CA. Retrieved Oct. 2, 2013 from http://maps.yahoo.com.
Map of San Jose, CA. Retrieved Oct. 2, 2013 from http://maps.bing.com.
Map of San Jose, CA. Retrieved Oct. 2, 2013 from http://maps.google.com.
Mendes et al., “TcruziKB: Enabling Complex Queries for Genomic Data Exploration,” IEEE International Conference on Semantic Computing, Aug. 2008, pp. 432-439.
Microsoft—Developer Network, “Getting Started with VBA in Word 2010,” Apr. 2010, http://msdn.microsoft.com/en-us/library/ff604039%28v=office.14%29.aspx as printed Apr. 4, 2014 in 17 pages.
Microsoft Office—Visio, “About connecting shapes,” http://office.microsoft.com/en-us/visio-help/about-connecting-shapes-HP085050369.aspx printed Aug. 4, 2011 in 6 pages.
Microsoft Office—Visio, “Add and glue connectors with the Connector tool,” http://office.microsoft.com/en-us/visio-help/add-and-glue-connectors-with-the-connector-tool-HA010048532.aspx?CTT=1 printed Aug. 4, 2011 in 1 page.
Microsoft Windows, “Microsoft Windows Version 2002 Print Out 2,” 2002, pp. 1-6.
Microsoft, “Registering an Application to a URI Scheme,” http://msdn.microsoft.com/en-us/library/aa767914.aspx, printed Apr. 4, 2009 in 4 pages.
Microsoft, “Using the Clipboard,” http://msdn.microsoft.com/en-us/library/ms649016.aspx, printed Jun. 8, 2009 in 20 pages.
Mitzenmacher, Michael, “Compressed Bloom Filters,” IEEE/ACM Tranactions on Networking, vol. 10, No. 5, Oct. 2002, pp. 604-612.
Mixpanel—Mobile Analytics, https://mixpanel.com/ Printed Jul. 18, 2013 in 13 pages.
Mizrachi, Ilene, “Chapter 1: GenBank: The Nuckeotide Sequence Database,” The NCBI Handbook, Oct. 2002, pp. 1-14.
Mohring et al., “Partitioning Graphs to Speedup Dijkstra's Algorithm,” ACM Journal of Experimental Algorithmics, Association of Computing Machinery, New York, New York, vol. 11, Jan. 1, 2006, 29 pages.
Nadeau et al., “A Survey of Named Entity Recognition and Classification,” Jan. 15, 2004, pp. 20.
Nierman, “Evaluating Structural Similarity in XML Documents”, 6 pages, 2002.
Nin et al., “On the Use of Semantic Blocking Techniques for Data Cleansing and Integration,” 11th International Database Engineering and Applications Symposium, 2007, pp. 9.
Nitro, “Trick: How to Capture a Screenshot as PDF, Annotate, Then Share It,” http://blog.nitropdf.com/2008/03/04/trick-how-to-capture-a-screenshot-as-pdf-annotate-it-then-share/, Mar. 4, 2008, pp. 2.
Nolan et al., “MCARTA: A Malicious Code Automated Run-Time Analysis Framework,” Homeland Security (HST) 2012 IEEE Conference on Technologies for, Nov. 13, 2012, pp. 13-17.
Olanoff, Drew, “Deep Dive with the New Google Maps for Desktop with Google Earth Integration, It's More than Just a Utility,” May 15, 2013, pp. 1-6, retrieved from the internet: http://web.archive.org/web/20130515230641/http://techcrunch.com/2013/05/15/deep-dive-with-the-new-google-maps-for-desktop-with-google-earth-integration-its-more-than-just-a-utility/.
Online Tech Tips, “Clip2Net—Share files, folders and screenshots easily,” http://www.online-tech-tips.com/free-software-downloads/share-files-folders-screenshots/, Apr. 2, 2008, pp. 5.
Open Web Analytics (OWA), http://www.openwebanalytics.com/ Printed Jul. 19, 2013 in 5 pages.
O'Reilly.com, http://oreilly.com/digitalmedia/2006/01/01/mac-os-x-screenshot-secrets.html published Jan. 1, 2006 in 10 pages.
Palantir Technolgies, “Palantir Labs—Timeline,” Oct. 1, 2010, retrieved from the internet https://www.youtube.com/watch?v=JCgDW5bru9M retrieved on Aug. 19, 2015.
Palmas et al., “An Edge-Bunding Layout for Interactive Parallel Coordinates” 2014 IEEE Pacific Visualization Symposium, pp. 57-64.
Perdisci et al., “Behavioral Clustering of HTTP-Based Malware and Signature Generation Using Malicious Network Traces,” USENIX, Mar. 18, 2010, pp. 1-14.
Piwik—Free Web Analytics Software. http://piwik.org/ Printed Jul. 19, 2013 in18 pages.
Pythagoras Communications Ltd., “Microsoft CRM Duplicate Detection,” Sep. 13, 2011, https://www.youtube.com/watch?v=j-7Qis0D0Kc.
Qiang et al., “A Mutual-Information-Based Approach to Entity Reconciliation in Heterogeneous Databases,” Proceedings of 2008 International Conference on Computer Science & Software Engineering, IEEE Computer Society, New York, NY, Dec. 12-14, 2008, pp. 666-669.
Quest, “Toad for ORACLE 11.6—Guide to Using Toad,” Sep. 24, 2012, pp. 1-162.
Reedy, Sarah, “Policy and Charging Rules Function (PCRF),” Sep. 13, 2010, http://www.lightreading.com/document.asp?doc_id=680015 printed Dec. 10, 2013 in 4 pages.
Rouse, Margaret, “OLAP Cube,” http://searchdatamanagement.techtarget.com/definition/OLAP-cube, Apr. 28, 2012, pp. 16.
Russell et al., “NITELIGHT: A Graphical Tool for Semantic Query Construction,” 2008, pp. 10.
Schroder, Stan, “15 Ways to Create Website Screenshots,” http://mashable.com/2007/08/24/web-screenshots/, Aug. 24, 2007, pp. 2.
Sekine et al., “Definition, Dictionaries and Tagger for Extended Named Entity Hierarchy,” May 2004, pp. 1977-1980.
Shi et al., “A Scalable Implementation of Malware Detection Based on Network Connection Behaviors,” 2013 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery, IEEE, Oct. 10, 2013, pp. 59-66.
Sigrist, et al., “PROSITE, a Protein Domain Database for Functional Characterization and Annotation,” Nucleic Acids Research, 2010, vol. 38, pp. D161-D166.
Sirotkin et al., “Chapter 13: The Processing of Biological Sequence Data at NCBI,” The NCBI Handbook, Oct. 2002, pp. 1-11.
Smart et al., “A Visual Approach to Semantic Query Design Using a Web-Based Graphical Query Designer,” 16th International Conference on Knowledge Engineering and Knowledge Management (EKAW 2008),ÊAcitrezza, Catania, Italy, Sep. Ê29-Oct. 3, 2008, pp. 16.
SnagIt, “SnagIt 8.1.0 Print Out 2,” Software release date Jun. 15, 2006, pp. 1-3.
SnagIt, “SnagIt 8.1.0 Print Out,” Software release date Jun. 15, 2006, pp. 6.
SnagIt, “SnagIt Online Help Guide,” http://download.techsmith.com/snagit/docs/onlinehelp/enu/snagit_help.pdf, TechSmith Corp., Version 8.1, printed Feb. 7, 2007, pp. 284.
Stamos et al., “Remote Evaluation,” Journal ACM Transactions on Programming Languages and Systems (TOPLAS), vol. 12, Issue 4, Oct. 1990, pp. 537-564.
StatCounter—Free Invisible Web Tracker, Hit Counter and Web Stats, http://statcounter.com/ Printed Jul. 19, 2013 in 17 pages.
Symantec Corporation, “E-Security Begins with Sound Security Policies,” Announcement Symantec, Jun. 14, 2001.
TestFlight—Beta Testing on the Fly, http://testflightapp.com/ Printed Jul. 18, 2013 in 3 pages.
Thompson, Mick, “Getting Started with GEO,” Getting Started with GEO, Jul. 26, 2011.
trak.io, http://trak.io/ printed Jul. 18, 2013 in 3 pages.
Umagandhi et al., “Search Query Recommendations Using Hybrid User Profile with Query Logs,” International Journal of Computer Applications, vol. 80, No. 10, Oct. 1, 2013, pp. 7-18.
UserMetrix, http://usermetrix.com/android-analytics printed Jul. 18, 2013 in 3 pages.
Valentini et al., “Ensembles of Learning Machines”, M. Marinaro and R. Tagliaferri (Eds.): WIRN VIETRI 2002, LNCS 2486, pp. 3-20.
Vose et al., “Help File for ModelRisk Version 5,” 2007, Vose Software, pp. 349-353. [Uploaded in 2 Parts].
Wagner et al., “Dynamic Shortest Paths Containers,” Electronic Notes in Theoretical Computer Science, vol. 92, No. 1, 2003, pp. 1-19.
Wang et al., “Research on a Clustering Data De-Duplication Mechanism Based on Bloom Filter,” IEEE 2010, 5 pages.
Warren, Christina, “TUAW Faceoff: Screenshot apps on the firing line,” http://www.tuaw.com/2008/05/05/tuaw-faceoff-screenshot-apps-on-the-firing-line/, May 5, 2008, pp. 11.
Wikipedia, “Federated Database System,” Sep. 7, 2013, retrieved from the Internet on Jan. 27, 2015 http://en.wikipedia.org/w/index.php?title-Federated_database_system&oldid=571954221.
Wikipedia, “Machine Code”, p. 1-5, printed Aug. 11, 2014.
Wikipedia, “Multimap,” Jan. 1, 2013, https://en.wikipedia.org/w/index.php?title=Multimap&oldid=530800748.
Wollrath et al., “A Distributed Object Model for the Java System,” Proceedings of the 2nd Conference on USENEX, Conference on Object-Oriented Technologies (COOTS), Jun. 17, 1996, pp. 219-231.
Wright et al., “Palantir Technologies VAST 2010 Challenge Text Records_Investigations into Arms Dealing,” Oct. 29, 2010, pp. 1-10.
Xobni, “About Page,” http://www.xobni.com/about/ printed Jun. 26, 2014 in 2 pages.
Xobni, “Blog,” http://blog.xobni.com/ printed Jun. 26, 2014 in 11 pages.
Xobni, http://www.xobni.com/ printed Jun. 26, 2014 in 5 pages.
Yang et al., “An Enhanced Routing Method with Dijkstra Algorithm and AHP Analysis in GIS-based Emergency Plan,” Geoinformatics, 2010 18th International Conference on, IEEE, Piscataway, New Jersey, Jun. 18, 2010, 6 pages.
Yang et al., “HTML Page Analysis Based on Visual Cues”, A129, pp. 859-864, 2001.
Zhao et al., “Entity Matching Across Heterogeneous Data Sources: An Approach Based on Constrained Cascade Generalization,” Data & Knowledge Engineering, vol. 66, No. 3, Sep. 2008, pp. 368-381.
International Search Report and Written Opinion for Patent Application No. PCT/US2009/056700 dated Apr. 15, 2010.
International Search Report and Written Opinion for Patent Application No. PCT/US2009/056703 dated Mar. 15, 2010.
International Search Report and Written Opinion for Patent Application No. PCT/US2009/056742 dated Apr. 19, 2010.
Notice of Acceptance for Australian Patent Application No. 2014250678 dated Oct. 7, 2015.
Notice of Acceptance for New Zealand Patent Application No. 616212 dated Jan. 23, 2015.
Notice of Acceptance for New Zealand Patent Application No. 616299 dated Apr. 7, 2015.
Notice of Acceptance for New Zealand Patent Application No. 622485 dated Nov. 24, 2014.
Notice of Allowance for U.S. Appl. No. 12/556,318 dated Nov. 2, 2015.
Notice of Allowance for U.S. Appl. No. 13/196,788 dated Dec. 18, 2015.
Notice of Allowance for U.S. Appl. No. 13/411,291 dated Apr. 22, 2016.
Notice of Allowance for U.S. Appl. No. 13/657,635 dated Jan. 29, 2016.
Notice of Allowance for U.S. Appl. No. 13/657,656 dated May 10, 2016.
Notice of Allowance for U.S. Appl. No. 13/767,779 dated Mar. 17, 2015.
Notice of Allowance for U.S. Appl. No. 13/826,228 dated Mar. 27, 2015.
Notice of Allowance for U.S. Appl. No. 13/827,627 dated Apr. 11, 2016.
Notice of Allowance for U.S. Appl. No. 13/922,212 dated Mar. 9, 2016.
Notice of Allowance for U.S. Appl. No. 14/019,534 dated Feb. 4, 2016.
Notice of Allowance for U.S. Appl. No. 14/102,394 dated Aug. 25, 2014.
Notice of Allowance for U.S. Appl. No. 14/108,187 dated Aug. 29, 2014.
Notice of Allowance for U.S. Appl. No. 14/135,289 dated Oct. 14, 2014.
Notice of Allowance for U.S. Appl. No. 14/148,568 dated Aug. 26, 2015.
Notice of Allowance for U.S. Appl. No. 14/149,608 dated Aug. 5, 2014.
Notice of Allowance for U.S. Appl. No. 14/192,767 dated Dec. 16, 2014.
Notice of Allowance for U.S. Appl. No. 14/225,084 dated May 4, 2015.
Notice of Allowance for U.S. Appl. No. 14/254,757 dated Sep. 10, 2014.
Notice of Allowance for U.S. Appl. No. 14/254,773 dated Aug. 20, 2014.
Notice of Allowance for U.S. Appl. No. 14/265,637 dated Feb. 13, 2015.
Notice of Allowance for U.S. Appl. No. 14/268,964 dated Dec. 3, 2014.
Notice of Allowance for U.S. Appl. No. 14/294,098 dated Dec. 29, 2014.
Notice of Allowance for U.S. Appl. No. 14/302,279 dated Apr. 5, 2016.
Notice of Allowance for U.S. Appl. No. 14/304,741 dated Apr. 7, 2015.
Notice of Allowance for U.S. Appl. No. 14/319,161 dated May 4, 2015.
Notice of Allowance for U.S. Appl. No. 14/323,935 dated Oct. 1, 2015.
Notice of Allowance for U.S. Appl. No. 14/326,738 dated Nov. 18, 2015.
Notice of Allowance for U.S. Appl. No. 14/473,552 dated Jul. 24, 2015.
Notice of Allowance for U.S. Appl. No. 14/473,860 dated Jan. 5, 2015.
Notice of Allowance for U.S. Appl. No. 14/479,863 dated Mar. 31, 2015.
Notice of Allowance for U.S. Appl. No. 14/486,991 dated May 1, 2015.
Notice of Allowance for U.S. Appl. No. 14/504,103 dated May 18, 2015.
Notice of Allowance for U.S. Appl. No. 14/552,336 dated Nov. 3, 2015.
Notice of Allowance for U.S. Appl. No. 14/581,902 dated Nov. 13, 2015.
Notice of Allowance for U.S. Appl. No. 14/616,080 dated Apr. 2, 2015.
Notice of Allowance for U.S. Appl. No. 14/746,671 dated Jan. 21, 2016.
Notice of Allowance for U.S. Appl. No. 14/923,364 dated May 6, 2016.
Notice of Allowance for U.S. Appl. No. 15/066,970 dated Jun. 29, 2016.
Official Communication for Australian Patent Application No. 2013237658 dated Feb. 2, 2015.
Official Communication for Australian Patent Application No. 2013237710 dated Jan. 16, 2015.
Official Communication for Australian Patent Application No. 2014201506 dated Feb. 27, 2015.
Official Communication for Australian Patent Application No. 2014201507 dated Feb. 27, 2015.
Official Communication for Australian Patent Application No. 2014201511 dated Feb. 27, 2015.
Official Communication for Australian Patent Application No. 2014201580 dated Feb. 27, 2015.
Official Communication for Australian Patent Application No. 2014202442 dated Mar. 19, 2015.
Official Communication for Australian Patent Application No. 2014203669 dated May 29, 2015.
Official Communication for Australian Patent Application No. 2014210604 dated Jun. 5, 2015.
Official Communication for Australian Patent Application No. 2014210614 dated Jun. 5, 2015.
Official Communication for Australian Patent Application No. 2014213553 dated May 7, 2015.
Official Communication for Australian Patent Application No. 2014250678 dated Jun. 17, 2015.
Official Communication for Canadian Patent Application No. 2807899 dated Jul. 20, 2015.
Official Communication for Canadian Patent Application No. 2807899 dated Oct. 24, 2014.
Official Communication for Canadian Patent Application No. 2828264 dated Apr. 11, 2016.
Official Communication for Canadian Patent Application No. 2828264 dated Apr. 28, 2015.
Official Communication for Canadian Patent Application No. 2829266 dated Apr. 1, 2016.
Official Communication for Canadian Patent Application No. 2829266 dated Apr. 28, 2015.
Official Communication for Canadian Patent Application No. 2846414 dated Apr. 13, 2016.
Official Communication for European Patent Application No. 08730336.8 dated Jun. 6, 2012.
Official Communication for European Patent Application No. 08839003.4 dated Aug. 14, 2012.
Official Communication for European Patent Application No. 09813700.3 dated Apr. 3, 2014.
Official Communication for European Patent Application No. 09813693.0 dated Apr. 8, 2014.
Official Communication for European Patent Application No. 13157474.1 dated May 28, 2013.
Official Communication for European Patent Application No. 13157474.1 dated Apr. 29, 2016.
Official Communication for European Patent Application No. 13157474.1 dated Oct. 30, 2015.
Official Communication for European Patent Application No. 14158861.6 dated Jun. 16, 2014.
Official Communication for European Patent Application No. 14158958.0 dated Apr. 16, 2015.
Official Communication for European Patent Application No. 14158958.0 dated Jun. 3, 2014.
Official Communication for European Patent Application No. 14158977.0 dated Jun. 10, 2014.
Official Communication for European Patent Application No. 14158977.0 dated Apr. 16, 2015.
Official Communication for European Patent Application No. 14159175.0 dated Jul. 17, 2014.
Official Communication for European Patent Application No. 14159175.0 dated Feb. 4, 2016.
Official Communication for European Patent Application No. 14159464.8 dated Feb. 18, 2016.
Official Communication for European Patent Application No. 14159464.8 dated Jul. 31, 2014.
Official Communication for European Patent Application No. 14159629.6 dated Sep. 22, 2014.
Official Communication for European Patent Application No. 14159629.6 dated Jul. 31, 2014.
Official Communication for European Patent Application No. 14162372.8 dated Apr. 30, 2015.
Official Communication for European Patent Application No. 14180142.3 dated Feb. 6, 2015.
Official Communication for European Patent Application No. 14180281.9 dated Jan. 26, 2015.
Official Communication for European Patent Application No. 14180321.3 dated Apr. 17, 2015.
Official Communication for European Patent Application No. 14180432.8 dated Jun. 23, 2015.
Official Communication for European Patent Application No. 14186225.0 dated Feb. 13, 2015.
Official Communication for European Patent Application No. 14187739.9 dated Jul. 6, 2015.
Official Communication for European Patent Application No. 14187996.5 dated Feb. 12, 2015.
Official Communication for European Patent Application No. 14189344.6 dated Feb. 20, 2015.
Official Communication for European Patent Application No. 14189347.9 dated Mar. 4, 2015.
Official Communication for European Patent Application No. 14189802.3 dated May 11, 2015.
Official Communication for European Patent Application No. 14191540.5 dated May 27, 2015.
Official Communication for European Patent Application No. 14197879.1 dated Apr. 28, 2015.
Official Communication for European Patent Application No. 14197895.7 dated Apr. 28, 2015.
Official Communication for European Patent Application No. 14197938.5 dated Apr. 28, 2015.
Official Communication for European Patent Application No. 14199182.8 dated Mar. 13, 2015.
Official Communication for European Patent Application No. 14200246.8 dated May 29, 2015.
Official Communication for European Patent Application No. 14200298.9 dated May 13, 2015.
Official Communication for European Patent Application No. 15155845.9 dated Oct. 6, 2015.
Official Communication for European Patent Application No. 15155846.7 dated Jul. 8, 2015.
Official Communication for European Patent Application No. 15159520.4 dated Jul. 15, 2015.
Official Communication for European Patent Application No. 15165244.3 dated Aug. 27, 2015.
Official Communication for European Patent Application No. 15175106.2 dated Nov. 5, 2015.
Official Communication for European Patent Application No. 15175151.8 dated Nov. 25, 2015.
Official Communication for European Patent Application No. 15181419.1 dated Sep. 29, 2015.
Official Communication for European Patent Application No. 15183721.8 dated Nov. 23, 2015.
Official Communication for European Patent Application No. 15184764.7 dated Dec. 14, 2015.
Official Communication for German Patent Application No. 10 2013 221 052.3 dated Mar. 24, 2015.
Official Communication for German Patent Application No. 10 2013 221 057.4 dated Mar. 23, 2015.
Official Communication for Great Britain Patent Application No. 1318666.3 dated Mar. 25, 2014.
Official Communication for Great Britain Patent Application No. 1318667.1 dated Mar. 28, 2014.
Official Communication for Great Britain Patent Application No. 1404457.2 dated Aug. 14, 2014.
Official Communication for Great Britain Patent Application No. 1404486.1 dated May 21, 2015.
Official Communication for Great Britain Patent Application No. 1404486.1 dated Aug. 27, 2014.
Official Communication for Great Britain Patent Application No. 1404489.5 dated May 21, 2015.
Official Communication for Great Britain Patent Application No. 1404489.5 dated Aug. 27, 2014.
Official Communication for Great Britain Patent Application No. 1404499.4 dated Jun. 11, 2015.
Official Communication for Great Britain Patent Application No. 1404499.4 dated Aug. 20, 2014.
Official Communication for Great Britain Patent Application No. 1404574.4 dated Dec. 18, 2014.
Official Communication for Great Britain Patent Application No. 1408025.3 dated Nov. 6, 2014.
Official Communication for Great Britain Patent Application No. 1411984.6 dated Dec. 22, 2014.
Official Communication for Great Britain Patent Application No. 1413935.6 dated Jan. 27, 2015.
Official Communication for Netherlands Patent Application No. 2011613 dated Aug. 13, 2015.
Official Communication for Netherlands Patent Application No. 2011627 dated Aug. 14, 2015.
Official Communication for Netherlands Patent Application No. 2012417 dated Sep. 18, 2015.
Official Communication for Netherlands Patent Application No. 2012421 dated Sep. 18, 2015.
Official Communication for Netherlands Patent Application No. 2012436 dated Nov. 6, 2015.
Official Communication for Netherlands Patent Application No. 2012437 dated Sep. 18, 2015.
Official Communication for Netherlands Patent Application No. 2012438 dated Sep. 21, 2015.
Official Communication for Netherlands Patent Application No. 2013134 dated Apr. 20, 2015.
Official Communication for Netherlands Patent Application No. 2013306 dated Apr. 24, 2015.
Official Communication for New Zealand Patent Application No. 627962 dated Aug. 5, 2014.
Official Communication for New Zealand Patent Application No. 616212 dated May 7, 2014.
Official Communication for New Zealand Patent Application No. 616212 dated Oct. 9, 2013.
Official Communication for New Zealand Patent Application No. 616299 dated Jan. 26, 2015.
Official Communication for New Zealand Patent Application No. 622389 dated Mar. 20, 2014.
Official Communication for New Zealand Patent Application No. 622404 dated Mar. 20, 2014.
Official Communication for New Zealand Patent Application No. 622414 dated Mar. 24, 2014.
Official Communication for New Zealand Patent Application No. 622439 dated Mar. 24, 2014.
Official Communication for New Zealand Patent Application No. 622439 dated Jun. 6, 2014.
Official Communication for New Zealand Patent Application No. 622473 dated Jun. 19, 2014.
Official Communication for New Zealand Patent Application No. 622473 dated Mar. 27, 2014.
Official Communication for New Zealand Patent Application No. 622484 dated Apr. 2, 2014.
Official Communication for New Zealand Patent Application No. 622485 dated Nov. 21, 2014.
Official Communication for New Zealand Patent Application No. 622513 dated Apr. 3, 2014.
Official Communication for New Zealand Patent Application No. 622517 dated Apr. 3, 2014.
Official Communication for New Zealand Patent Application No. 623323 dated Apr. 17, 2014.
Official Communication for New Zealand Patent Application No. 623323 dated Jun. 6, 2014.
Official Communication for New Zealand Patent Application No. 624557 dated May 14, 2014.
Official Communication for New Zealand Patent Application No. 628161 dated Aug. 25, 2014.
Official Communication for New Zealand Patent Application No. 628263 dated Aug. 12, 2014.
Official Communication for New Zealand Patent Application No. 628495 dated Aug. 19, 2014.
Official Communication for New Zealand Patent Application No. 628585 dated Aug. 26, 2014.
Official Communication for U.S. Appl. No. 12/210,947 dated Jul. 1, 2013.
Official Communication for U.S. Appl. No. 12/210,947 dated Aug. 19, 2014.
Official Communication for U.S. Appl. No. 12/210,947 dated Nov. 28, 2014.
Official Communication for U.S. Appl. No. 12/210,947 dated Apr. 8, 2011.
Official Communication for U.S. Appl. No. 12/210,980 dated Mar. 10, 2015.
Official Communication for U.S. Appl. No. 12/556,318 dated Jul. 2, 2015.
Official Communication for U.S. Appl. No. 12/556,321 dated Feb. 25, 2016.
Official Communication for U.S. Appl. No. 12/556,321 dated Oct. 6, 2016.
Official Communication for U.S. Appl. No. 12/556,321 dated Jul. 7, 2015.
Official Communication for U.S. Appl. No. 13/079,690 dated Sep. 11, 2013.
Official Communication for U.S. Appl. No. 13/079,690 dated Jan. 29, 2014.
Official Communication for U.S. Appl. No. 13/079,690 dated Mar. 5, 2015.
Official Communication for U.S. Appl. No. 13/196,788 dated Oct. 23, 2015.
Official Communication for U.S. Appl. No. 13/196,788 dated Nov. 25, 2015.
Official Communication for U.S. Appl. No. 13/218,238 dated Nov. 21, 2013.
Official Communication for U.S. Appl. No. 13/218,238 dated Oct. 25, 2013.
Official Communication for U.S. Appl. No. 13/218,238 dated Jul. 29, 2013.
Official Communication for U.S. Appl. No. 13/218,238 dated Jan. 6, 2014.
Official Communication for U.S. Appl. No. 13/247,987 dated Apr. 2, 2015.
Official Communication for U.S. Appl. No. 13/247,987 dated Sep. 22, 2015.
Official Communication for U.S. Appl. No. 13/411,291 dated Oct. 1, 2015.
Official Communication for U.S. Appl. No. 13/411,291 dated Jul. 15, 2015.
Official Communication for U.S. Appl. No. 13/608,864 dated Mar. 17, 2015.
Official Communication for U.S. Appl. No. 13/608,864 dated Jun. 8, 2015.
Official Communication for U.S. Appl. No. 13/657,635 dated Jul. 10, 2014.
Official Communication for U.S. Appl. No. 13/657,635 dated Mar. 30, 2015.
Official Communication for U.S. Appl. No. 13/657,635 dated Oct. 7, 2015.
Official Communication for U.S. Appl. No. 13/657,656 dated May 6, 2015.
Official Communication for U.S. Appl. No. 13/657,656 dated Oct. 7, 2014.
Official Communication for U.S. Appl. No. 13/669,274 dated May 6, 2015.
Official Communication for U.S. Appl. No. 13/728,879 dated Mar. 17, 2015.
Official Communication for U.S. Appl. No. 13/799,535 dated Jul. 29, 2014.
Official Communication for U.S. Appl. No. 13/799,535 dated Feb. 3, 2014.
Official Communication for U.S. Appl. No. 13/827,491 dated Dec. 1, 2014.
Official Communication for U.S. Appl. No. 13/827,491 dated Jun. 22, 2015.
Official Communication for U.S. Appl. No. 13/827,491 dated Mar. 30, 2016.
Official Communication for U.S. Appl. No. 13/827,491 dated Oct. 9, 2015.
Official Communication for U.S. Appl. No. 13/827,627 dated Mar. 2, 2015.
Official Communication for U.S. Appl. No. 13/827,627 dated Oct. 20, 2015.
Official Communication for U.S. Appl. No. 13/827,627 dated Dec. 22, 2015.
Official Communication for U.S. Appl. No. 13/827,627 dated Aug. 26, 2015.
Official Communication for U.S. Appl. No. 13/831,791 dated Mar. 4, 2015.
Official Communication for U.S. Appl. No. 13/831,791 dated Aug. 6, 2015.
Official Communication for U.S. Appl. No. 13/835,688 dated Jun. 17, 2015.
Official Communication for U.S. Appl. No. 13/839,026 dated Aug. 4, 2015.
Official Communication for U.S. Appl. No. 13/922,212 dated Jan. 5, 2015.
Official Communication for U.S. Appl. No. 13/937,063 dated Apr. 22, 2016.
Official Communication for U.S. Appl. No. 14/134,558 dated May 16, 2016.
Official Communication for U.S. Appl. No. 14/019,534 dated Jul. 20, 2015.
Official Communication for U.S. Appl. No. 14/019,534 dated Sep. 4, 2015.
Official Communication for U.S. Appl. No. 14/025,653 dated Mar. 3, 2016.
Official Communication for U.S. Appl. No. 14/025,653 dated Oct. 6, 2015.
Official Communication for U.S. Appl. No. 14/134,558 dated Oct. 7, 2015.
Official Communication for U.S. Appl. No. 14/141,252 dated Oct. 8, 2015.
Official Communication for U.S. Appl. No. 14/148,568 dated Oct. 22, 2014.
Official Communication for U.S. Appl. No. 14/148,568 dated Mar. 26, 2015.
Official Communication for U.S. Appl. No. 14/196,814 dated May 5, 2015.
Official Communication for U.S. Appl. No. 14/225,006 dated Sep. 10, 2014.
Official Communication for U.S. Appl. No. 14/225,006 dated Sep. 2, 2015.
Official Communication for U.S. Appl. No. 14/225,006 dated Dec. 21, 2015.
Official Communication for U.S. Appl. No. 14/225,006 dated Feb. 27, 2015.
Official Communication for U.S. Appl. No. 14/225,084 dated Sep. 11, 2015.
Official Communication for U.S. Appl. No. 14/225,084 dated Sep. 2, 2014.
Official Communication for U.S. Appl. No. 14/225,084 dated Feb. 20, 2015.
Official Communication for U.S. Appl. No. 14/225,084 dated Jan. 4, 2016.
Official Communication for U.S. Appl. No. 14/225,160 dated Feb. 11, 2015.
Official Communication for U.S. Appl. No. 14/225,160 dated Aug. 12, 2015.
Official Communication for U.S. Appl. No. 14/225,160 dated May 20, 2015.
Official Communication for U.S. Appl. No. 14/225,160 dated Oct. 22, 2014.
Official Communication for U.S. Appl. No. 14/225,160 dated Jul. 29, 2014.
Official Communication for U.S. Appl. No. 14/265,637 dated Nov. 18, 2014.
Official Communication for U.S. Appl. No. 14/265,637 dated Sep. 26, 2014.
Official Communication for U.S. Appl. No. 14/268,964 dated Sep. 3, 2014.
Official Communication for U.S. Appl. No. 14/289,596 dated Jul. 18, 2014.
Official Communication for U.S. Appl. No. 14/289,596 dated Jan. 26, 2015.
Official Communication for U.S. Appl. No. 14/289,596 dated Apr. 30, 2015.
Official Communication for U.S. Appl. No. 14/289,599 dated Jul. 22, 2014.
Official Communication for U.S. Appl. No. 14/289,599 dated May 29, 2015.
Official Communication for U.S. Appl. No. 14/289,599 dated Sep. 4, 2015.
Official Communication for U.S. Appl. No. 14/294,098 dated Aug. 15, 2014.
Official Communication for U.S. Appl. No. 14/294,098 dated Nov. 6, 2014.
Official Communication for U.S. Appl. No. 14/302,279 dated Sep. 24, 2015.
Official Communication for U.S. Appl. No. 14/304,741 dated Mar. 3, 2015.
Official Communication for U.S. Appl. No. 14/304,741 dated Aug. 6, 2014.
Official Communication for U.S. Appl. No. 14/306,138 dated Sep. 14, 2015.
Official Communication for U.S. Appl. No. 14/306,138 dated Feb. 18, 2015.
Official Communication for U.S. Appl. No. 14/306,138 dated Sep. 23, 2014.
Official Communication for U.S. Appl. No. 14/306,138 dated Dec. 24, 2015.
Official Communication for U.S. Appl. No. 14/306,138 dated May 26, 2015.
Official Communication for U.S. Appl. No. 14/306,138 dated Dec. 3, 2015.
Official Communication for U.S. Appl. No. 14/306,147 dated Feb. 19, 2015.
Official Communication for U.S. Appl. No. 14/306,147 dated Dec. 24, 2015.
Official Communication for U.S. Appl. No. 14/306,147 dated Aug. 7, 2015.
Official Communication for U.S. Appl. No. 14/306,147 dated Sep. 9, 2014.
Official Communication for U.S. Appl. No. 14/306,154 dated Mar. 11, 2015.
Official Communication for U.S. Appl. No. 14/306,154 dated May 15, 2015.
Official Communication for U.S. Appl. No. 14/306,154 dated Nov. 16, 2015.
Official Communication for U.S. Appl. No. 14/306,154 dated Jul. 6, 2015.
Official Communication for U.S. Appl. No. 14/306,154 dated Sep. 9, 2014.
Official Communication for U.S. Appl. No. 14/319,161 dated Jan. 23, 2015.
Official Communication for U.S. Appl. No. 14/319,765 dated Sep. 10, 2015.
Official Communication for U.S. Appl. No. 14/319,765 dated Jun. 16, 2015.
Official Communication for U.S. Appl. No. 14/319,765 dated Nov. 25, 2014.
Official Communication for U.S. Appl. No. 14/319,765 dated Feb. 4, 2015.
Official Communication for U.S. Appl. No. 14/323,935 dated Jun. 22, 2015.
Official Communication for U.S. Appl. No. 14/323,935 dated Nov. 28, 2014.
Official Communication for U.S. Appl. No. 14/323,935 dated Mar. 31, 2015.
Official Communication for U.S. Appl. No. 14/326,738 dated Dec. 2, 2014.
Official Communication for U.S. Appl. No. 14/326,738 dated Jul. 31, 2015.
Official Communication for U.S. Appl. No. 14/326,738 dated Mar. 31, 2015.
Official Communication for U.S. Appl. No. 14/451,221 dated Oct. 31, 2014.
Official Communication for U.S. Appl. No. 14/463,615 dated Sep. 10, 2015.
Official Communication for U.S. Appl. No. 14/463,615 dated Nov. 13, 2014.
Official Communication for U.S. Appl. No. 14/463,615 dated May 21, 2015.
Official Communication for U.S. Appl. No. 14/463,615 dated Jan. 28, 2015.
Official Communication for U.S. Appl. No. 14/463,615 dated Dec. 9, 2015.
Official Communication for U.S. Appl. No. 14/473,552 dated Feb. 24, 2015.
Official Communication for U.S. Appl. No. 14/479,863 dated Dec. 26, 2014.
Official Communication for U.S. Appl. No. 14/483,527 dated Jun. 22, 2015.
Official Communication for U.S. Appl. No. 14/483,527 dated Jan. 28, 2015.
Official Communication for U.S. Appl. No. 14/483,527 dated Oct. 28, 2015.
Official Communication for U.S. Appl. No. 14/486,991 dated Mar. 10, 2015.
Official Communication for U.S. Appl. No. 14/490,612 dated Aug. 18, 2015.
Official Communication for U.S. Appl. No. 14/504,103 dated Mar. 31, 2015.
Official Communication for U.S. Appl. No. 14/504,103 dated Feb. 5, 2015.
Official Communication for U.S. Appl. No. 14/516,386 dated Feb. 24, 2016.
Official Communication for U.S. Appl. No. 14/516,386 dated Apr. 27, 2017.
Official Communication for U.S. Appl. No. 14/516,386 dated Jun. 30, 2016.
Official Communication for U.S. Appl. No. 14/516,386 dated Nov. 4, 2016.
Official Communication for U.S. Appl. No. 14/552,336 dated Jul. 20, 2015.
Official Communication for U.S. Appl. No. 14/562,524 dated Nov. 10, 2015.
Official Communication for U.S. Appl. No. 14/562,524 dated Sep. 14, 2015.
Official Communication for U.S. Appl. No. 14/562,524 dated Feb. 18, 2016.
Official Communication for U.S. Appl. No. 14/571,098 dated Nov. 10, 2015.
Official Communication for U.S. Appl. No. 14/571,098 dated Mar. 11, 2015.
Official Communication for U.S. Appl. No. 14/571,098 dated Aug. 24, 2015.
Official Communication for U.S. Appl. No. 14/571,098 dated Aug. 5, 2015.
Official Communication for U.S. Appl. No. 14/579,752 dated Aug. 19, 2015.
Official Communication for U.S. Appl. No. 14/579,752 dated May 26, 2015.
Official Communication for U.S. Appl. No. 14/618,213 dated May 16, 2017.
Official Communication for U.S. Appl. No. 14/631,633 dated Sep. 10, 2015.
Official Communication for U.S. Appl. No. 14/639,606 dated Oct. 16, 2015.
Official Communication for U.S. Appl. No. 14/639,606 dated May 18, 2015.
Official Communication for U.S. Appl. No. 14/639,606 dated Jul. 24, 2015.
Official Communication for U.S. Appl. No. 14/676,621 dated Oct. 29, 2015.
Official Communication for U.S. Appl. No. 14/676,621 dated Jul. 30, 2015.
Official Communication for U.S. Appl. No. 14/715,834 dated Apr. 13, 2016.
Official Communication for U.S. Appl. No. 14/715,834 dated Jun. 28, 2016.
Official Communication for U.S. Appl. No. 14/715,834 dated Feb. 29, 2016.
Official Communication for U.S. Appl. No. 14/726,211 dated Apr. 5, 2016.
Official Communication for U.S. Appl. No. 14/726,353 dated Sep. 10, 2015.
Official Communication for U.S. Appl. No. 14/746,671 dated Nov. 12, 2015.
Official Communication for U.S. Appl. No. 14/800,447 dated Dec. 10, 2015.
Official Communication for U.S. Appl. No. 14/813,749 dated Sep. 28, 2015.
Official Communication for U.S. Appl. No. 14/816,599 dated Dec. 22, 2016.
Official Communication for U.S. Appl. No. 14/816,599 dated May 31, 2017.
Official Communication for U.S. Appl. No. 14/842,734 dated Nov. 19, 2015.
Official Communication for U.S. Appl. No. 14/877,229 dated Mar. 22, 2016.
Official Communication for U.S. Appl. No. 14/923,374 dated May 23, 2016.
Official Communication for U.S. Appl. No. 14/923,374 dated Feb. 9, 2016.
Official Communication for U.S. Appl. No. 15/017,324 dated Apr. 22, 2016.
Restriction Requirement for U.S. Appl. No. 13/839,026 dated Apr. 2, 2015.
Notice of Allowance for U.S. Appl. No. 14/516,386 dated Sep. 1, 2017.
Notice of Allowance for U.S. Appl. No. 14/715,834 dated Sep. 27, 2017.
Notice of Allowance for U.S. Appl. No. 15/144,602 dated Sep. 7, 2017.
Official Communication for European Patent Application No. 12181585.6 dated Sep. 4, 2015.
Official Communication for European Patent Application No. 12181585.6 dated Jan. 7, 2013.
Official Communication for European Patent Application No. 14158861.6 dated Nov. 2, 2016.
Official Communication for European Patent Application No. 15159520.4 dated Jul. 20, 2016.
Official Communication for New Zealand Patent Application No. 616299 dated Oct. 9, 2013.
Official Communication for U.S. Appl. No. 12/556,321 dated Jun. 30, 2017.
Official Communication for U.S. Appl. No. 14/134,558 dated Aug. 26, 2016.
Official Communication for U.S. Appl. No. 14/618,213 dated Oct. 24, 2017.
Official Communication for U.S. Appl. No. 14/715,834 dated Feb. 19, 2016.
Official Communication for U.S. Appl. No. 14/715,834 dated Aug. 28, 2017.
Official Communication for U.S. Appl. No. 15/220,021 dated Jul. 12, 2017.
International Search Report and Written Opinion for Patent Application No. PCT/US2008/077528 dated Dec. 4, 2008.
Notice of Acceptance for Australian Patent Application No. 2014201553 dated Feb. 19, 2018.
Notice of Acceptance for Australian Patent Application No. 2014201558 dated Mar. 1, 2018.
Official Communication for U.S. Appl. No. 15/220,021 dated Dec. 14, 2017.
Official Communication for U.S. Appl. No. 12/556,321 dated Mar. 26, 2018.
Official Communication for U.S. Appl. No. 14/618,213 dated Mar. 29, 2018.
Official Communication for U.S. Appl. No. 14/816,599 dated Feb. 6, 2018.
Official Communication for U.S. Appl. No. 15/847,720 dated Mar. 8, 2018.
Bruce Eckel, Thinking in Java, EckelObjects, 1997 (Year: 1997).
Pedicini J et al: “Step by Step. Microsoft Word Version 2002, Chapter 8 Collaborating with Others”, Microsoft Word Version 2002 Step by Step, Microsoft, Redmond, WA, US, Jan. 1, 2001, pp. 129-149, 208.
Official Communication for European Patent Application No. 9813693.0 dated Jan. 8, 2019.
Official Communication for U.S. Appl. No. 14/618,213 dated Sep. 7, 2018.
Official Communication for U.S. Appl. No. 15/847,720 dated Jun. 12, 2018.
Related Publications (1)
Number Date Country
20150205848 A1 Jul 2015 US
Provisional Applications (1)
Number Date Country
61794653 Mar 2013 US
Continuations (1)
Number Date Country
Parent 14149608 Jan 2014 US
Child 14562420 US