The present disclosure is generally related to systems and methods for organizing and inter-relating data of domain objects defined within microservices.
Many enterprise software applications, services, and/or the like are provided in a software as a service (SaaS) framework. SaaS has become a common delivery model for such applications and services in which SaaS is typically supported by a cloud-based environment and accessed by users using a thin client such as a Web browser. Accordingly, microservice-based architectures are often preferable in cloud-based environments involving large, complex applications, services, and/or the like that require flexible development, deployment, and scaling.
A microservice-based architecture is implemented using multiple separate and self-contained applications, or microservices, that each provide a particular service and collectively form one or more fully functional applications within a SaaS framework, with the goal being the services can be brought to life independent of others. However, for an enterprise software application, service, and/or the like that is being utilized by a considerable number of clients (e.g., organizations), it is often the case that one or more of the microservices may need to be customized for use by various clients. For example, various domain objects defined within a microservice may need to be customized for a particular client who is making use of the microservice. Therefore, a need exists in the art for implementing and managing such customizations made to various domain objects of microservices used in various enterprise software applications, services, and/or the like.
In general, various aspects of the present invention provide methods, apparatuses, systems, computing devices, computing entities, and/or the like for generating and managing custom attributes and corresponding values for domain objects defined within microservices. In accordance with various aspects, a method is provided. According, the method comprises: receiving a custom attribute request for a domain object defined in a microservice, wherein the custom attribute request comprises a domain object identifier for the domain object, a custom attribute to add to the domain object, and a value type for the custom attribute; identifying, by computing hardware based on the domain object identifier and the value type, a custom value table for the domain object, wherein the custom value table: (1) is defined in a repository for the microservice, (2) comprises a plurality of placeholder fields, and (3) is configured to store values for custom attributes having the value type in the plurality of placeholder fields for instances of the domain object; identifying, by the computing hardware, a placeholder field of the plurality of placeholder fields that is available based on the placeholder field not being mapped in a plurality of records found in an attribute schema table; and storing, by the computing hardware, a record in the attribute schema table for the domain object and the custom attribute comprising mapping data, wherein the mapping data maps the custom attribute to the placeholder field of the plurality of placeholder fields for the custom value table.
According to some aspects, the plurality of records comprises records stored in the attribute schema table for the domain object and the method further comprises identifying, by the computing hardware and based on the domain object identifier, the plurality of records found in the attribute schema table for the domain object. In addition, according to some aspects, the method further comprises: receiving a second custom attribute request for the domain object, wherein the second custom attribute request comprises the domain object identifier for the domain object, a second custom attribute to add to the domain object, and the value type for the second custom attribute; identifying, by the computing hardware based on the domain object identifier and the value type, the custom value table for the domain object; identifying, by the computing hardware, a second placeholder field of the plurality of placeholder fields that is available based on the second placeholder field not being mapped in the plurality of records found in the attribute schema table; and storing, by the computing hardware, a second record in the attribute schema table for the domain object and the second custom attribute comprising second mapping data, wherein the second mapping data maps the second custom attribute to the second placeholder field of the plurality of placeholder fields for the custom value table.
According to some aspects, the method further comprises: receiving a second custom attribute request for the domain object, wherein the second custom attribute request comprises the domain object identifier for the domain object, a second custom attribute to add to the domain object, and a second value type for the second custom attribute; identifying, by the computing hardware based on the domain object identifier and the second value type, a second custom value table for the domain object, wherein the second custom value table: (1) is defined in the repository for the microservice, (2) comprises a second plurality of placeholder fields, and (3) is configured to store values for custom attributes having the second value type in the second plurality of placeholder fields for the instances of the domain object; identifying, by the computing hardware, a placeholder field of the second plurality of placeholder fields that is available based on the placeholder field of the second plurality of placeholder fields is not mapped in the plurality of records found in the attribute schema table; and storing, by the computing hardware, a second record in the attribute schema table for the domain object and the second custom attribute comprising second mapping data, wherein the second mapping data maps the second custom attribute to the placeholder field of the second plurality of placeholder fields for the second custom value table.
According to some aspects, the method further comprises: receiving an insert request, wherein the insert request comprises an instance identifier for an instance of the domain object and a value for the custom attribute; identifying, by the computing hardware and based on the instance identifier for the instance, the domain object identifier for the domain object; identifying, by the computing hardware and based on the domain object identifier and the custom attribute, the record stored in the attribute schema table for the domain object and the custom attribute; identifying, by the computing hardware based on the mapping data stored in the record, the placeholder field of the custom value table; and storing, by the computing hardware based on the instance identifier, the value for the custom attribute in the placeholder field of an instance record found in the custom value table for the instance of the domain object.
According to some aspects, the method further comprises: receiving a fetch request, wherein the fetch request comprises an instance identifier for an instance of the domain object; identifying, by the computing hardware and based on the instance identifier for the instance, the domain object identifier for the domain object; identifying, by the computing hardware and based on the domain object identifier, the record stored in the attribute schema table for the domain object and the custom attribute; identifying, by the computing hardware based on the mapping data stored in the record, the placeholder field of the custom value table; retrieving, by the computing hardware, a value for the custom attribute stored in the placeholder field of an instance record found in the custom value table for the instance of the domain object; and returning, by the computing hardware, the value for the custom attribute to the microservice.
According to some aspects, the method further comprises: receiving a delete request, wherein the delete request comprises an instance identifier for an instance of the domain object and the custom attribute; identifying, by the computing hardware and based on the instance identifier for the instance, the domain object identifier for the domain object; identifying, by the computing hardware and based on the domain object identifier and the custom attribute, the record stored in the attribute schema table for the domain object and the custom attribute; identifying, by the computing hardware based on the mapping data stored in the record, the placeholder field of the custom value table; and deleting, by the computing hardware, a value for the custom attribute stored in the placeholder field of an instance record found in the custom value table for the instance of the domain object.
According to some aspects, the method further comprises: receiving a remove request, wherein the remove request comprises the domain object identifier for the domain object and the custom attribute; identifying, by the computing hardware and based on the domain object identifier and the custom attribute, the record stored in the attribute schema table for the domain object and the custom attribute; identifying, by the computing hardware based on the mapping data stored in the record, the placeholder field of the custom value table; deleting, by the computing hardware, a value for the custom attribute stored in the placeholder field of an instance record found in the custom value table for each instance of the domain object; and deleting, by the computing hardware, the record in the attribute schema table to unassign the placeholder field.
In accordance with various aspects, a system is provided comprising a non-transitory computer-readable medium storing instructions and a processing device communicatively coupled to the non-transitory computer-readable medium. In particular aspects, the processing device is configured to execute the instructions and thereby perform operations that comprise: receiving a custom attribute request for a domain object defined in a microservice, wherein the custom attribute request comprises a domain object identifier for the domain object and a custom attribute to add to the domain object; identifying, based on the domain object identifier, a custom value table for the domain object, wherein the custom value table: (1) is defined in a repository for the microservice, (2) comprises a plurality of placeholder fields, and (3) is configured to store values for custom attributes in the plurality of placeholder fields for instances of the domain object; identifying a placeholder field of the plurality of placeholder fields that is available based on the placeholder field not being mapped in a plurality of records found in an attribute schema table; and storing a record in the attribute schema table for the domain object and the custom attribute comprising mapping data, wherein the mapping data maps the custom attribute to the placeholder field of the plurality of placeholder fields for the custom value table.
According to some aspects, the operations further comprise: receiving a second custom attribute request for the domain object, wherein the second custom attribute request comprises the domain object identifier for the domain object and a second custom attribute to add to the domain object; identifying, based on the domain object identifier, the custom value table for the domain object; identifying a second placeholder field of the plurality of placeholder fields that is available based on the second placeholder field not being mapped in the plurality of records found in the attribute schema table; and storing a second record in the attribute schema table for the domain object and the second custom attribute comprising second mapping data, wherein the second mapping data maps the second custom attribute to the second placeholder field of the plurality of placeholder fields for the custom value table.
According to some aspects, the operations further comprise: receiving an insert request, wherein the insert request comprises an instance identifier for an instance of the domain object and a value for the custom attribute; identifying, based on the instance identifier for the instance, the domain object identifier for the domain object; identifying, based on the domain object identifier and the custom attribute, the record stored in the attribute schema table for the domain object and the custom attribute; identifying, based on the mapping data stored in the record, the placeholder field of the custom value table; and storing, based on the instance identifier, the value for the custom attribute in the placeholder field of an instance record found in the custom value table for the instance of the domain object. In some instances, identifying, based on the instance identifier for the instance, the domain object identifier for the domain object comprises referencing an instance table mapping the instance identifier to the domain object identifier.
According to some aspects, the operations further comprise: receiving a fetch request, wherein the fetch request comprises an instance identifier for an instance of the domain object; identifying, based on the instance identifier for the instance, the domain object identifier for the domain object; identifying, based on the domain object identifier, the record stored in the attribute schema table for the domain object and the custom attribute; identifying, based on the mapping data stored in the record, the placeholder field of the custom value table; retrieving a value for the custom attribute stored in the placeholder field of an instance record found in the custom value table for the instance of the domain object; and returning the value for the custom attribute to the microservice.
According to some aspects, the operations further comprise: receiving a delete request, wherein the delete request comprises an instance identifier for an instance of the domain object and the custom attribute; identifying, based on the instance identifier for the instance, the domain object identifier for the domain object; identifying, based on the domain object identifier and the custom attribute, the record stored in the attribute schema table for the domain object and the custom attribute; identifying, based on the mapping data stored in the record, the placeholder field of the custom value table; and deleting a value for the custom attribute stored in the placeholder field of an instance record found in the custom value table for the instance of the domain object.
According to some aspects, the operations further comprise: receiving a remove request, wherein the remove request comprises the domain object identifier for the domain object and the custom attribute; identifying, based on the domain object identifier and the custom attribute, the record stored in the attribute schema table for the domain object and the custom attribute; identifying, based on the mapping data stored in the record, the placeholder field of the custom value table; deleting a value for the custom attribute stored in the placeholder field of an instance record found in the custom value table for each instance of the domain object; and deleting the record in the attribute schema table to unassign the placeholder field.
In addition in accordance with various aspects, a non-transitory computer-readable medium having program code that is stored thereon. In particular aspects, the program code executable by one or more processing devices performs operations that include: receiving an insert request, wherein the insert request comprises an instance identifier for an instance of a domain object, a first value for a first custom attribute, and a second value for a second custom attribute; identifying, based on the instance identifier for the instance, a domain object identifier for the domain object; identifying, based on the domain object identifier and the first custom attribute, a first record stored in an attribute schema table, wherein the attribute schema table is defined in a repository for a microservice; identifying, based on the domain object identifier and the second custom attribute, a second record in the attribute schema table; identifying, based on first mapping data stored in the first record, a first placeholder field of a plurality of placeholder fields found in a custom value table, wherein the first placeholder field is assigned to the first custom attribute and the custom value table is defined for the domain object in the repository; identifying, based on second mapping data stored in the second record, a second placeholder field of the plurality of placeholder fields, wherein the second placeholder field is assigned to the second custom attribute; and storing, based on the instance identifier, the first value for the first custom attribute in the first placeholder field and the second value for the second custom attribute in the second placeholder field of an instance record found in the custom value table for the instance of the domain object.
According to some aspects, identifying, based on the instance identifier for the instance, the domain object identifier for the domain object comprises referencing an instance table mapping the instance identifier to the domain object identifier. According to some aspects, the operations further comprise: receiving a fetch request, wherein the fetch request comprises the instance identifier for the instance of the domain object; identifying, based on the instance identifier for the instance, the domain object identifier for the domain object; identifying, based on the domain object identifier, the first record stored in the attribute schema table for the domain object and the first custom attribute; identifying, based on the domain object identifier, the second record stored in the attribute schema table for the domain object and the second custom attribute; identifying, based on the first mapping data stored in the first record, the first placeholder field of the custom value table; identifying, based on the second mapping data stored in the second record, the second placeholder field of the custom value table; retrieving, based on the instance identifier, the first value for the first custom attribute stored in the first placeholder field and the second value for the second custom attribute stored in the second placeholder field from the instance record found in the custom value table for the instance of the domain object; and returning the first value and the second value to the microservice.
According to some aspects, the operations further comprise: receiving a delete request, wherein the delete request comprises the instance identifier for the instance of the domain object and the first custom attribute; identifying, based on the instance identifier for the instance, the domain object identifier for the domain object; identifying, based on the domain object identifier and the first custom attribute, the first record stored in the attribute schema table for the domain object and the first custom attribute; identifying, based on the first mapping data stored in the first record, the first placeholder field of the custom value table; and deleting, based on the instance identifier, the first value for the first custom attribute stored in the first placeholder field of the instance record found in the custom value table for the instance of the domain object.
According to some aspects, the operations further comprise: receiving a remove request, wherein the remove request comprises the domain object identifier for the domain object and the first custom attribute; identifying, based on the domain object identifier and the first custom attribute, the first record stored in the attribute schema table for the domain object and the first custom attribute; identifying, based on the first mapping data stored in the first record, the first placeholder field of the custom value table; deleting the first value for the first custom attribute stored in the first placeholder field of the instance record found in the custom value table for the instance of the domain object; and deleting the first record in the attribute schema table to unassign the first placeholder field.
In the course of this description, reference will be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
Overview and Technical Contributions of Various Aspects
As noted, many enterprise software applications, services, and/or the like are provided in a software as a service (SaaS) framework supported by a cloud-based environment. Accordingly, microservice-based architectures are often preferable in cloud-based environments involving large, complex applications, services, and/or the like that require flexible development, deployment, and scaling. A microservices application, for example, may be implemented using multiple separate and self-contained applications, or microservices, that each provide a particular service and collectively form one or more fully functional applications within a SaaS framework.
A microservice is often viewed as focused on producing a particular task. For example, an enterprise software application may be offered that provides a platform for various organizations to operationalize privacy, security, and data governance. The enterprise software application may provide tools within the enterprise software application that can be used by organizations (personnel thereof) in automating workflows for processing data subject access requests received from individuals (data subjects) with respect to personal data collected by these organizations. Here, for example, the enterprise software application may include a microservice for performing the intake of such data subject access requests in conjunction with these tools.
Domain driven design has become a popular approach for building a data architecture for a microservice implementation. Domain driven design involves defining a bounded context within a business domain. For example, a domain model may define a bounded context within the privacy, security, and data governance domain that involves the intake of data subject access requests. The bounded context can be viewed as a conceptual boundary where a domain model is applicable. Accordingly, the domain model can include a conceptual model that defines both behavior and data for the bounded context. For instance, the domain model describes the various entities involved in a particular task. For example, for performing the intake of data subject access requests (DSARs), entities may include data subject (e.g., representing an individual who is associated with a DSAR), and access point (e.g., representing a mechanism that can be used in submitting a DSAR).
An object model can be defined for the domain model that is then turned into actual code for implementing the microservice. Here, the object model defines domain objects that represent the various entities. A domain object is generally understood as an object that represents something meaningful within the business domain. For example, a domain object defined within the object model for the intake of DSARs may be a DSAR, itself. In another example, a domain object defined within the object model for the intake of DSARs may be an intake mechanism (e.g., such as a website) that is used for receiving DSARs. Such domain objects commonly include entity objects and value objects.
An entity object is used in describing a domain aspect that is primarily defined by its identity, continuity, and persistence over time. These objects are typically instantiated to represent individuality in that they represent design elements that are of concern for who or which they are. As a simple example, an entity object could include a data subject (e.g., individual) who is associated with a DSAR. Within the microservice, it typically matters who the specific individual is that is associated with a particular DSAR, although any number of other individuals may be associated with a DSAR.
A value object is a domain object that represents a descriptive aspect of the domain with no conceptual identity. These objects are typically instantiated to represent elements of the design in that it only matters for what they are, not who or which they are. As a simple example, a value object could include an algorithm used in generating an estimated time for processing a DSAR. Within the microservice, it typically does not matter the specific instance of use (which use) of the algorithm for calculating an estimated time for a DSAR, it only matters that the algorithm can be used in calculating the estimated time for the DSAR. This is because the algorithm is the same, regardless of when it is used. As another simple example, a value object can be viewed as a quarter. It typically does not matter the specific quarter in the possession of an individual, to the individual the quarter represents twenty-five cents.
As for entity objects, the microservice may define each of these objects within the microservice through classes. For example, an entity object can be implemented as a Plain Old Java Object (POCO). Accordingly, a class defined for a particular entity object can be used in implementing both behavior and data attributes for the entity object. When a class for an entity object is instantiated to generate a specific instance of the entity object, certain data (e.g., values) can be defined for various behavior and/or data attributes to implement such behavior and/or data attributes for the instance.
As noted, an entity object is primarily defined by its persistence over time. For example, an instance of a data subject entity object (class thereof) representing a particular individual associated with a DSAR may need to persist for use within the microservice. This is generally accomplished through a repository defined for the microservice. For example, the repository may be a relational database in which specific data (e.g., values) defined for various data attributes in generating the instance of the data subject entity object (class thereof) can persist (through storage of the instance) within one or more tables of the relational database.
Accordingly, an entity object (class thereof) can be mapped to one or more tables defined in the database. For example, each data attribute defined for the entity object can be mapped to a field (column) of a table. The mapping can be accomplished through metadata (schemas) defined for the entity object and represented in one or more tables. For example, an attribute defined for the data subject entity object may be “data_subject.person_id.” A mapping defined for the data subject entity object through one or more tables found in the database may map this attribute to a “data_subject.person_id” field (column) defined for a data subject table storing values for various attributes of instances of the data subject entity object. Accordingly, each record (row) stored in the data subject table can represent an instance of the data subject entity object with the values for the different data attributes stored in the corresponding fields of the data subject table. In other words, each record (row) stored in the data subject table can represent a specific data subject (individual) who is associated with a DSAR.
However, a technical challenge that is often encountered in using a microservice-based architecture for an enterprise software application is that clients (e.g., organizations) who are using the application may regularly need custom attributes and corresponding values for instances generated of various domain objects used within a particular microservice. For example, a client may be using the tools provided within the privacy, security, and data governance enterprise software application for automating workflows for processing DSARs. Here, the client may be a healthcare provider and the DSARs the client receives may be the result of the client collecting personal data of data subjects that is used in submitting insurance claims for various diagnoses. Therefore, the client may need to add one or more custom attributes to an instance of the data subject entity object generated for a data subject associated with a particular DSAR to allow the client to define data (e.g., values) for various diagnoses that have been made for the data subject and submitted for insurance claims.
Under a conventional approach, custom attribute management is typically implemented as records (rows) in a table used for defining and managing custom attributes and their corresponding values. For example, if two custom attributes and their corresponding values need to be added to an instance of Entity Object A, represented by a record stored in Table A, a row-based implementation would look like the following:
While this approach may be acceptable under certain circumstances, there are significant problems that can accompany this approach. The custom attributes and corresponding values are represented as rows in a table (Custom Attribute Management Table) different from the table (Table A) used to represent the entity object. Therefore, as the number of instances of Entity Object A (rows) grows in Table A that require custom attributes, the number of rows in the Custom Attribute Management Table can grow exponentially. For example, a single record representing an instance of Entity Object A requiring three custom attributes would require three records in the Custom Attribute Management Table. Multiply that by the number of records (rows) in Table A that require the same custom attributes and do the same for all the tables representing the various entity objects defined for the microservice that have instances requiring custom attributes, and one can see that the corresponding Customer Attribute Management Tables can grow very quickly to an unmanageable size. Searching and sorting records representing instances of various domain objects for the microservice can become non-performant and as a result, the microservice may underperform for its intended task.
Various aspects of the present disclosure overcome many of the technical challenges associated with generating and managing custom attributes and corresponding values for domain objects defined for a microservice, as detailed above. In particular, various aspects of the disclosure involve the use of a novel approach for generating and managing custom attributes and corresponding values for various domain objects of the microservice by making use of a configuration of value tables defined within a repository that are used in storing the corresponding values for the custom attributes. Here, the configuration involves placeholder fields defined within the value tables that can be assigned to the custom attributes and once assigned, can be used in storing values for the custom attributes with respect to instances generated for the various domain objects. According to particular aspects, a custom attribute management engine is provided via the microservice which generates metadata to map custom attributes generated for a particular domain object of the microservice to the placeholder fields defined for a value table for the particular domain object. Once mapped and the microservice generates an instance of the particular domain object, the custom attribute management engine can then use the mapping of the custom attributes to the placeholder fields in storing values for the custom attributes in the value table for the instance of the domain object.
Respectively, the configuration of the value table to include the placeholder fields according to various aspects allows for a single record to be stored in the value table for the instance of the domain object that includes all the values for the custom attributes of the domain object. Such a configuration provides a considerable technical advantage over the conventional approach for custom attribute management that involves using individual records (rows) in a table for storing the value for each custom attribute of an instance generated for a domain object.
That is to say, the effectiveness of various aspects of the disclosure lies in the fact that a single record in a value table for a domain object can be used to store the values of all the custom attributes for the domain object. This can result in an improvement to computer functionality through significant storage space savings, as well as highly performant searching and sorting functionality of attributes of various domain objects used within a microservice.
The disclosure is provided herein in the context of using a microservice-based architecture for an enterprise software application. However, various aspects described in this disclosure can be used for a microservice-based architecture that involves a variety of other applications besides an enterprise software application. For example, various aspects of the disclosure are applicable to a microservice-based architecture used for mobile applications such as a mobile banking application, a media content application, an Internet of things (IoT) application, and/or the like. In another example, various aspects of the disclosure are applicable to a microservice-based architecture used for web applications such as an e-commerce website, corporate website, media website, and/or the like. Therefore, the disclosure provided herein involving the use of a microservice-based architecture for an enterprise software application should not be viewed as limiting the scope of various aspects of the disclosure.
Here, the computing environment 100 can include one or more client computing systems 104 associated with clients of the enterprise software application that are in communication over one or more networks 105 with a user interface 120 (e.g., website) used by personnel 103 of the clients in generating and managing custom attributes for the domain objects utilized for the various services provided through the enterprise software application. According to various aspects, personnel 103 for a particular client (e.g., an organization using the enterprise software application), via a client computing system 104, can interact with the master microservice 110 over the one or more networks 105 to allow the personnel 103 to generate and/or manage custom attributes for various domain objects utilized for the various services provided through the enterprise software application. In turn, the master microservice 110 includes a custom attribute management engine 115 that is utilized in generating and managing custom attributes for the various domain objects based on the personnel's 103 interaction with the user interface 120. In addition, as discussed further herein, the master microservice 110 may also utilize the custom attribute management engine 115 without direct involvement of the personnel 103 through the user interface 120 in managing custom attributes for the various domain objects. For example, another microservice may need values stored for custom attributes with respect to an instance generated for a particular domain object. Here, the master microservice 110 may utilize the custom attribute management engine 115 in retrieving the values and providing the values to the other microservice.
According to various aspects, the master microservice 110 includes a data repository 180 used in storing data for the domain objects utilized by the services provided through the enterprise software application. For example, the repository 180 may be a relational database. The data stored in the data repository 180 may include metadata (e.g., schemas) for the various domain objects. As further discussed herein, the metadata provides a mapping of attributes for the various domain objects to data elements of data structures found in the data repository 180 that are used for storing values for the attributes. For example, the data elements may involve data fields defined for tables found in the relational database. In addition, the data stored in the data repository 180 may include values for the attributes, including the custom attributes, for instances generated for the various domain objects.
According to various aspects, the custom attribute management engine 115 includes different modules that can be executed in generating and managing custom attributes for the various domain objects. Here, for example, the master microservice 110 may execute the different modules, at the direction of personnel 103 through the user interface 120 or independently via the custom attribute management engine 115, to generate and/or manage custom attributes for the various domain objects.
Accordingly, the custom attribute management engine 115 may include a create module 130 that can be executed to create a custom attribute for a particular domain object by mapping the custom attribute to an available placeholder field in a value table defined for the domain object. As further detailed herein, the create module 130 according to particular aspects performs the mapping of the custom attribute to the available placeholder field by generating mapping data (e.g., metadata) that is stored within a custom attribute schema table found in the repository 180. Once generated, the custom attribute management engine 115 can use the mapping data in storing values for the custom attribute for various instances generated for the domain object.
In addition, the custom attribute management engine 115 may include a remove module 140 that can be executed to remove a custom attribute for a particular domain object. According to particular aspects, the remove module 140 removes the custom attribute by removing (e.g., deleting) the mapping data stored in the custom attribute schema table that maps the custom attribute to the corresponding placeholder field being used to store values for the custom attribute. In addition, the remove module 140 removes (e.g., deletes) the values stored for the custom attribute from the corresponding value table for the domain object. Once the mapping data has been removed from the custom attribute schema table, the placeholder field can be used (re-used) for (e.g., mapped to) a different custom attribute for the domain object.
In addition, the custom attribute management engine 115 may include an insert module 150 that can be executed to insert a value for a custom attribute defined for a domain object with respect to an instance generated for the domain object. According to particular aspects, the insert module 150 inserts the value by referencing the mapping data found in the custom attribute schema table for the domain object and the custom attribute to identify a placeholder field used for storing the value. The insert module 150 then identifies a record representing the instance of the domain object that is stored in a value table for the domain object that has the placeholder field and stores the value for the custom attribute in the placeholder field of the record. As a result, the value for the custom attribute for the instance of the domain object persists for use within the services provided through the enterprise software application.
Further, the custom attribute management engine 115 may include a delete module 160 that can be executed to delete a value for a custom attribute defined for a domain object with respect to an instance generated for the domain object. According to particular aspects, the delete module 160 deletes the value by referencing the mapping data found in the custom attribute schema table for the domain object and the custom attribute to identify a placeholder field used for storing the value. The delete module 160 then identifies a record representing the instance of the domain object that is stored in a value table for the domain object that has the placeholder field and deletes the value in the corresponding placeholder field for the record.
Finally, the custom attribute management engine 115 may include a fetch module 170 that can be executed to fetch a value for a custom attribute defined for a domain object with respect to an instance generated for the domain object. Similar to the insert module 150 and delete module 160, the fetch module 170 according to particular aspects fetches the value by referencing the mapping data found in the custom attribute schema table for the domain object and the custom attribute to identify a placeholder field used for storing the value. The fetch module 170 then identifies a record representing the instance of the domain object that is stored in a value table for the domain object that has the placeholder field and fetches the value in the corresponding placeholder field for the record. The fetch module 170 can then return the fetched value to the master microservice 110 so that the value may then be available to the services provided through the software enterprise application.
Turning now to
Accordingly, a particular client (e.g., organization) may need to include one or more custom attributes to the data subject domain object. For example, the client may be an e-commerce business and may need to add a custom attribute to the data subject domain object that represents a customer account number assigned to customers of the e-commerce business. Therefore, personnel 103 for the client may interact with the master microservice 110 (e.g., custom attribute management engine 115) through the user interface 120 to generate the custom attribute for the data subject domain object. In addition, the personnel 103 may also manage the custom attribute, and corresponding values for the custom attribute that are stored for various instances of the data subject domain object, through the user interface 120.
The master microservice 110 can also utilize the custom attribute management engine 115 in managing custom attributes and corresponding values for various domain objects without interaction of personnel 103 through the user interface 120. For example, another microservice 220 may need a value stored for the customer account number custom attribute for a particular instance of the data subject domain object. Here, the microservice 220 may send a request to the master microservice 110 for the value. In turn, the master microservice 110 may fetch the value, via the fetch module 170 provided through the custom attribute management engine 115, from the repository 180 of the master microservice 110, and return the value to the microservice 220 that had submitted the request. Accordingly, the master microservice 110 may utilize the custom attribute management engine 115 in performing other operations with respect to custom attributes of domain objects and/or values for custom attributes of domain objects as previously discussed, such as inserting values for custom attributes, deleting values for custom attributes, removing custom attributes, etc.
Repository Architecture
Turning now to
The enterprise software application may provide several different services and these services may utilize several different domain objects for representing various entity and/or value objects used within the services. For example, a particular entity object that may be used within one or more of the services is a data subject. As previously noted, a data subject may represent an individual who has had personal data handled (e.g., collected, processed, transferred, stored, and/or the like) by an organization. As a specific example, a data subject may represent an individual who has had credit card data collected by an e-commerce business during the purchase of a product on the e-commerce business's website to process the purchase of the product.
The data subject may have certain rights with respect to the e-commerce's collection of the data subject's credit card data. For instance, the data subject may have the right to request the e-commerce business to remove (e.g., delete) the data subject's credit data from the e-commerce business's computing systems used in handling the credit card data. Such requests may be referred to as data subject access requests (DSARs). The e-commerce business may utilize a DSAR service provided through the enterprise software application in managing the processing of DSARs. In turn, the DSAR service may utilize a data subject domain object within various microservices to represent data subjects. Accordingly, instances of the data subject domain object generated to represent particular individuals may persist through the repository 180.
Therefore, the repository architecture 300 may include one or more data structures (e.g., tables) that are used in storing metadata representing mapping of attributes of domain objects to data elements (e.g., fields for tables) that are used in storing values for the attributes with respect to instances generated for the domain objects. The remainder of the disclosure refers to tables and fields as the data structures and data elements used within the repository 180 for persisting instances of domain objects. But a data structure and/or data element may encompass data structures and/or data elements, in addition to, or other than tables and fields. For example, other data structures may include files, spreadsheets, matrices, and/or the like. Other fields may include delimited text, cells, and/or the like.
Here, various services provided through the enterprise software application may provide a set of default (“canned”) attributes for one or more of the entity and/or value objects (domain objects thereof) used within the services. For example, the data subject domain object may include the default attributes “first name” and “last name” that are used in representing a particular data subject's first and last names, respectively. Generally, these default attributes are available for use to every client of the service(s) when generating instances of the domain objects. In addition, as previously noted, various aspects of the disclosure allow for a client to define custom attributes for a particular domain object for one or more services. Once defined, these custom attributes can be made available for each instance of the domain object generated by the client in using the corresponding service(s). Therefore, the repository architecture 300 can include one or more schema attribute tables for storing the mapping of these attributes (both default attributes and custom attributes) to various fields of tables found in the repository 180 that can then be used to store values for the attributes to persist instances generated for the domain objects.
For instance, according to particular aspects, the repository architecture 300 can include an Attribute_Schema table 310 for storing metadata representing the mapping of default attributes for various domain objects to fields of tables found in the repository 180 that can be used in storing values for the default attributes. In addition, the repository architecture 300 can include a Custom_Attribute_Schema table 320 for storing metadata representing the mapping of custom attributes for various domain objects to placeholder fields of tables found in the repository 180 that can be used in storing values for the custom attributes.
As further detailed herein, a placeholder field is not initially assigned to any particular custom attribute, but is assigned to a particular custom attribute upon the custom attribute being added to a corresponding domain object. In addition, the placeholder field can be unassigned from a particular custom attribute upon the custom attribute being removed from the corresponding domain object. Therefore, according to various aspects, the placeholder fields serve as “placeholders” in that they can be assigned to custom attributes and then used in storing values for the custom attributes.
Accordingly, the particular repository architecture 300 shown in
In addition to the schema tables 310, 320, the repository architecture 300 includes a plurality of value tables that are used in storing values for the various attributes (both default attributes and custom attributes) of domain objects with respect to instances generated for the domain objects. Accordingly, the configuration of the plurality of value tables can vary. For example, the repository architecture 300 shown in
A set of value tables can be provided for each domain object. The set of value tables can include value tables for each value type. In addition, the set of value tables can include value tables for storing values for default attributes and value tables for storing values for custom attributes. Therefore, a set of value tables provided for a particular domain object can include a subset of value tables for each value type that includes a first value table for default attributes and a second value table for custom attributes.
For example, referring to
The repository architecture 300 can also include a second set of value tables for a second domain object (e.g., “Object_2” 312) that includes a text value table for storing values having a value type of text for default attributes for the second domain object (e.g., Object_2 Text Value table 360) and a text value table for storing values having a value type of text for custom attributes for the second domain object (e.g., Object_2 Custom Text Value table 365). In addition, the second set of value tables for second domain object “Object_2” can include a date value table for storing values having a value type of date for default attributes for the second domain object (e.g., Object_2 Date Value table 370) and a date value table for storing values having a value type of date for custom attributes for the second domain object (e.g., Object_2 Custom Date Value table 375). Similar tables could be added to the first and second data sets for other value types such as numerical, numericaltext, singleselect, etc. In addition, the repository architecture can include similar sets of table for additional domain objects.
As previously noted, the default attributes for a domain object are those attributes that are available for use for an instance of the domain object without having to be added by a client. For example, domain object “Object_1” 311 may have default attributes “Attribute A,” “Attribute B”, and “Attribute C.” Domain object “Object_2” 312 may have default attribute “Attribute D.” These attributes are shown in the column 318 for the “AttributeName” field of the Attribute_Schema table 310. Here, the Attribute_Schema table 310 includes a record for each default attribute that stores mapping data. For example, the mapping data may include the data shown in the column 317 for “Object_ID,” that provides an identifier for the domain object, the data should in the column 318 for the “AttributeName,” that provide an identifier for the default attribute, and data shown in the column 319 for the “Mapping” field, that provides the value table and field found in the repository 180 for storing values for the corresponding default attribute. Therefore, the mapping data may provide a mapping of the corresponding default attribute to a field found in one of the value tables for the domain object.
For example, the Attribute_Schema table 310 includes a first record that provides mapping data for default attribute “Attribute_A” of domain object “Object_1” 311 that indicates attribute “Attribute_A” is mapped to field “Field1” 313 of the Object_1 Text Value table 340. In addition, the Attribute_Schema table 310 includes a second record that provides mapping data for default attribute “Attribute_B” of domain object “Object_1” 311 that indicates attribute “Attribute_B” is mapped to field “Field1” 314 of the Object_1 Date Value table 350. Further, the Attribute_Schema table 310 includes a third record that provides mapping data for default attribute “Attribute_C” of domain object “Object_1” 311 that indicates attribute “Attribute_C” is mapped to field “Field2” 315 of the Object_1 Date Value table 350. Similarly, the Attribute_Schema table 310 includes a fourth record that provides mapping data for default attribute “Attribute_D” of domain object “Object_2” 312 that indicates attribute “Attribute_D” is mapped to field “Field1” 316 of the Object_2 Text Value table 360.
According to particular aspects, the master microservice 110 may map the default attributes of various domain objects found in the Attribute_Schema table 310 at a time when a client is onboarded to begin using the services provided through the enterprise software application. For example, when a new client is onboarded for the enterprise software application (e.g., becomes a new user of the enterprise software application), the master microservice 110 may generate a set of tables (e.g., schema tables and value tables) and add the set of tables to the repository 180 for the client at that time. In addition, the master microservice 110 may automatically populate the Attribute_Schema table 310 with mapping data providing the mappings of the default attributes for the different domain objects.
According to other aspects, the master microservice 110 may populate the Attribute_Schema table 310 after the client has been onboarded. For example, the master microservice 110 may populate the Attribute_Schema table 310 for a particular domain object at a time when the client indicates the use of the particular domain object. According to other aspects, a single master microservice 110 may use the Attribute_Schema table 310 for every client. In these instances, the mappings for the default attributes for the different domain objects is the same for each client and the master microservice 110 provides the client with its own versions of the Custom_Attribute_Schema table 320 and set of value tables 340, 345, 350, 355, 360, 365, 370, 375 in the repository 180.
In addition, as previously noted, the custom attributes for a domain object are those attributes that the master microservice 110 makes available to use for an instance of the domain object by being added to the domain object by a client. For example, domain object “Object_1” 311 may have had custom attributes “Attribute_E,” “Attribute_F”, and “Attribute_G” added. Domain object “Object_2” 312 may have had custom attribute “Attribute_H” added. These attributes are shown in the column 325 for the “AttributeName” field of the Custom_Attribute_Schema table 320. Here, the Custom_Attribute_Schema table 320 includes a record for each custom attribute that stores mapping data. For example, the mapping data may include the data shown in the column 325 for “Object_ID,” that provides an identifier for the domain object, the data should in the column 326 for the “AttributeName,” that provide an identifier for the default attribute, and data shown in the column 327 for the “Mapping” field, that provides the value table and placeholder field found in the repository 180 for storing values for the corresponding custom attribute. Therefore, the mapping data may provide a mapping of the corresponding custom attribute to a placeholder field found in one of the value tables for the domain object.
For example, the Custom_Attribute_Schema table 320 includes a first record that provides mapping data for custom attribute “Attribute_E” of domain object “Object_1” 311 that indicates attribute “Attribute_E” has been added as a custom attribute and is mapped to placeholder field “Placeholder1” 321 of the Object_1 Custom Text Value table 345. In addition, the Custom_Attribute_Schema table 320 includes a second record that provides mapping data for custom attribute “Attribute_F” of domain object “Object_1” 311 that indicates attribute “Attribute_F” has been added as a custom attribute and is mapped to placeholder field “Placeholder1” 322 of the Object_1 Custom Date Value table 355. Further, the Custom_Attribute_Schema table 320 includes a third record that provides mapping data for custom attribute “Attribute_G” of domain object “Object_1” 311 that indicates attribute “Attribute_G” has been added as a custom attribute and is mapped to placeholder field “Placeholder2” 323 of the Object_1 Custom Text Value table 345. Similar, the Custom_Attribute_Schema table 320 includes a fourth record that provides mapping data for custom attribute “Attribute_H” of Object_2 312 that indicates attribute “Attribute_H” has been added as a custom attribute and is mapped to placeholder field “Placeholder1” 324 of the Object_2 Custom Date Value table 375.
Unlike the Attribute_Schema table 310, according to various aspects, the master microservice 110 may not automatically generate mappings for the custom attributes of various domain objects found in the Custom_Attribute_Schema table 320 at a time when a client is onboarded to begin using the services provided through the enterprise software application. Instead, the master microservice 110 can generate the mappings for the custom attributes at a time when the client adds the custom attributes to the corresponding domain objects. In addition, the master microservice 110 does not initially assign (e.g., map) the placeholder fields found in the various value tables for the domain objects that are used for storing values for custom attributes to particular custom attributes, but instead the master microservice 110 assigns the custom attributes as they are added to the corresponding domain objects.
The master microservice 110 uses the mappings provided in the Attribute_Schema table 310 and the Custom_Attribute_Schema table 320 in managing the default attributes for various domain objects, as well as implementing and managing custom attributes for the various domain objects. For example, a service provided through the enterprise software application may generate an instance (e.g., “Instance_A” 331) for domain object “Object_1” 311 that includes values for default attributes “Attribute_A,” “Attribute_B,” and “Attribute_C” and custom attributes “Attribute_E,” “Attribute_F,” and “Attribute_G.” Here, the master microservice 110 may use mappings found in the Attribute_Schema table 310 in storing the values for default attributes “Attribute_A,” “Attribute_B,” and “Attribute_C” in the repository 180. In addition, the master microservice 110 (e.g., via the insert module 150) may use mappings found in the Custom_Attribute_Schema table 320 in storing the values for the custom attributes “Attribute_E,” “Attribute_F,” and “Attribute_G” in the repository 180.
According to some aspects, the repository architecture 300 may include an Instance table 330 that is used to map instances generated for the various domain objects to their corresponding domain objects. Therefore, as a result of the service generating instance “Instance_A” 331 of domain object “Object_1” 311, the master microservice 110 may initially generate a record in the Instance table 330 mapping instance “Instance_A” 331 to domain object “Object_1” 311. The master microservice 110 may then reference (e.g., query) the mappings provided in the Attribute_Schema table 310 in identifying the fields 313, 314, 315 found in value tables for the domain object where to store the values for default attributes “Attribute_A,” “Attribute_B,” and “Attribute_C.” In addition, the master microservice 110 may then reference (e.g., query) the mappings provided in the Custom_Attribute_Schema table 320 in identifying the placeholder fields 321, 322, 323 in value tables for the domain object where to store the values for custom attributes “Attribute_E,” “Attribute_F,” and “Attribute_G.” Once identified, the master microservice 110 may then generate and insert records into the appropriate value tables 340, 345, 350, 355 for instance “Instance_A” 331 and store the values in the appropriate fields 313, 314, 315, 321, 322, 323 of the inserted records.
As a result, the master microservice 110 stores the value 341 for default attribute “Attribute_A” in field “Field1” 313 of the record inserted for instance “Instance_A” 331 in the Object_1 Text Value table 340. Likewise, the master microservice 110 stores the value 351 for default attribute “Attribute_B” and the value 352 for default attribute “Attribute_C” in fields “Field1” 314 and “Field2” 315 of the record inserted for instance “Instance_A” 331 in the Object_1 Date Value table 350.
In a similar fashion, the master microservice 110 stores the value 346 for custom attribute “Attribute_E” and the value 347 for custom attribute “Attribute_G” in placeholder fields “Placeholder1” 321 and “Placeholder2” 323 of the record inserted for instance “Instance_A” 331 in the Object_1 Custom Text Value table 345. Likewise, the master microservice 110 stores the value 356 for custom attribute “Attribute_F” in placeholder field “Placeholer1” 322 of the record inserted for instance “Instance_A” 331 in the Object_1 Custom Date Value table 355.
Since custom attributes “Attribute_E” and “Attribute_G” have been assigned to placeholder fields “Placeholder1” 321 and “Placeholder2” 322 defined for the Object_1 Custom Text Value table 345 in accordance with various aspects of the disclosure, the master microservice 110 may use a single record for instance “Instance_A” 331 to store the corresponding values 346, 347 as opposed to having to use multiple records in the Object_1 Custom Text Value table 345 to store the values 346, 347 for the two custom attributes. Accordingly, additional placeholder fields may be available in the Object_1 Custom Text Value table 345 and/or Object_1 Custom Date Value table 355 to assign to additional custom attributes as they are generated for domain object “Object_1” 311 that have a value type of text or date.
Therefore, the master microservice 110 stores the value 361 for default attribute “Attribute D” in field “Field1” 316 of the record inserted for instance “Instance C” 331 in the Object_2 Text Value table 360. Likewise, the master microservice 110 stores the value 376 for custom attribute “Attribute_H” in placeholder field “Placeholder1” 324 of the record inserted for instance “Instance_C” 332 in the Object_2 Custom Date Value table 375.
Here, again, the master microservice 110 has assigned the custom attribute “Attribute_H” to placeholder field “Placeholder1” 324 defined for Object_2 Custom Date Value table 375. According to various aspects, when another custom attribute is added to domain object “Object_2” 312 having a value type of date, the master microservice 110 (via the custom attribute management engine 115) would assign the new custom attribute to another available placeholder field found in the Object_2 Custom Date Value table 375. As a result, the master microservice 110 can use a single record in storing values for the two custom attributes having a value type of date in the Object_2 Custom Date Value table 375 for each instance generated for domain object “Object_2” 312.
As previously noted, the master microservice 110 may utilize a custom attribute management engine 115 comprising a create module 130, remove module 140, insert module 150, delete module 160, and fetch module 170 in performing different operations with respect to custom attributes of domain objects and/or values for custom attributes of domain objects persisted via (e.g., stored in) the repository 180. Further detail is provided below regarding the configuration and functionality of the create module 130, remove module 140, insert module 150, delete module 160, and fetch module 170 according to various aspects of the disclosure.
Create Module
Turning now to
The process 400 involves the create module 130 receiving a custom attribute request for the domain object in Operation 410. For example, according to particular aspects, the custom attribute request may include a domain object identifier for the domain object. In addition, the custom attribute request may include the custom attribute (e.g., an identifier for the custom attribute) along with a value type for the custom attribute. For example, the value type may indicate that the values stored for the custom attribute are of type text, numerical, date, singleselect, multiselect, etc. According to some aspects, the user interface 120 may provide him or her with the various selections of value type for the custom attribute.
The create module 130 identifies a custom value table for the domain object found in the repository 180 that is to be used to store values for the custom attribute in Operation 415. According to various aspects, the create module 130 may perform this particular operation by referencing metadata provided in the repository 180. For example, the metadata may be in the form of a table provided in the repository 180 that includes records identifying the various tables found in the repository for the client associated with the domain object that is to have the custom attribute added. Therefore, the create module 130 can query the table in identifying the custom value table for the domain object. Accordingly, the custom attribute request may also include a client identifier that can be used in identifying the value table from the metadata. In addition, the value tables identified in the metadata for the client may also indicate what value types they are used for in storing values for custom attributes.
Once the create module 130 has identified a custom value table, in Operation 420, the create module 130 identifies a placeholder field defined for the identified custom value table that is available for use in storing values for the custom attribute. Here, the create module 130 may perform this operation by referencing an attribute schema table (e.g., the Custom_Attribute_Schema table 320 previously discussed) in identifying those placeholder fields defined for the identified custom value table that are currently assigned to custom attributes, and then determining what placeholder fields are still available for the custom value table.
For example, the custom value table may include ten placeholder fields that can be used in storing values for the custom attribute. Seven of the placeholder fields may be currently assigned to other custom attributes for the domain object. As a result, the attribute schema table may include seven records with mapping data providing the mapping of the seven placeholder fields to their corresponding custom attributes. Therefore, the create module 130 may query the attribute schema table, based on the identifier for the domain object, to retrieve the seven records. The create module 130 may then determine from the seven records that seven of the ten placeholder fields are currently assigned to other custom attributes for the domain object. The create module 130 may then identify one of the remaining placeholder fields as available to assign to the new custom attributes. For example, the create module 130 may identify (select) the next sequential placeholder field that is available for the custom value table.
As a specific example, the create module 130 may have currently assigned the first, second, third, fourth, sixth, seventh, and eighth placeholder fields to other custom attributes. The create module 130 may have previously assigned the fifth placeholder field to a custom attribute, but the custom attribute may have been removed for the domain object, freeing up the fifth placeholder field. Therefore, the create module 130 may identify the fifth placeholder field as the available placeholder field to assign to the new custom attribute.
The process 400 continues with the create module 130 storing a record in the attribute schema table (e.g., the Custom_Attribute_Schema table 320) for the domain object and custom attribute that includes mapping data in Operation 425. According to various aspects, the mapping data maps the custom attribute to the identified placeholder field for the custom value table. The mapping data may have various configurations with respect to different aspects of the disclosure.
For example, the attribute schema table may include a domain object identifier field, a custom attribute identifier field, a table field, and a placeholder field that compose the mapping data. Here, the domain object identifier field may store an identifier for the domain object such as a name of the domain object, a unique alphanumeric that represents the domain object, and/or the like. Likewise, the custom attribute identifier field may store an identifier for the custom attribute such as a name of the custom attribute, a unique alphanumeric that represents the custom attribute, and/or the like. The table field and placeholder field may store the name of the custom value table and the name of the placeholder field for the custom value table, respectively. Accordingly, the combination of the domain object identifier field, custom attribute identifier field, table field, and placeholder field provides a mapping of the custom attribute to the placeholder field found in the custom value table. But other configurations of the mapping data can be used to map the custom attribute to the placeholder field in the corresponding value table.
As a result, the custom attribute is now made available for use with respect to instances generated for the domain object. Therefore, when the master microservice 110 (or some other microservice) generates a new instance of the domain object, the new custom attribute is available to have a value defined for the custom attribute. The instance of the domain object may then persist by saving the value for the custom attribute, along with values for other attributes, in the repository 180 according to the mapping stored in the attribute schema table. In addition, as detailed further herein, the master microservice 110 may fetch, update, remove, and/or the like the value for the custom attribute according to the mapping stored in the attribute schema table.
Remove Module
Turning now to
The process 500 involves the remove module 140 receiving a remove request in Operation 510. According to various aspects, the remove request includes a domain object identifier for the domain object and the custom attribute (e.g., an identifier thereof). In addition, the remove request may include an identifier of the client associated with the domain object that is to have the custom attribute removed.
In Operation 515, the remove module 140 identifies a record in an attribute schema table (e.g., the Custom_Attribute_Schema table 320) that maps the custom attribute to be removed from the domain object. According to various aspects, the remove module 140 queries the attribute schema table using the domain object identifier and custom attribute (identifier thereof) in identifying the record in the attribute schema table associated with the domain object identifier and custom attribute. For example, the mapping data stored in the attribute schema table for the domain object and custom attribute may include a domain object identifier field and a custom attribute identifier field that may be queried in identifying the record.
Once the remove module 140 has identified the record, the remove module 140 identifies the placeholder field that has been assigned to the custom attribute in Operation 520. Here, the remove module 140 can reference the mapping data stored in the record in identifying the custom value table and corresponding placeholder field of the table being used to store values for the custom attributes. The remove module 140 then deletes the values that have been stored for the custom attribute for various instances of the domain object in the corresponding custom value table in Operation 525. At Operation 530, the remove module 140 deletes the record for the domain object and custom attribute from the attribute schema table (e.g., the Custom_Attribute_Schema table 320).
As a result, the custom attribute, and corresponding value thereof, is remove from any instance of the domain object that have been generated and persisted in the repository 180. In addition, the placeholder field of the custom value table that was assigned to the custom attribute that has been removed is now available to be assigned to a new, different custom attribute. That is to say, according to various aspects, the master microservice 110 can assign, unassign, and/or reassign the placeholder fields defined for a particular custom value table to different custom attributes for the domain object as needed.
Insert Module
Turning now to
For example, the master microservice 110 may generate an instance of a domain object through a particular microservice in which values for various attributes defined for the domain object, including a custom attribute, are obtained. Therefore, the particular microservice may send a request to the master microservice 110 to have the values stored for the instance in the repository 180 to persist the instance. In turn, the master microservice 110 may utilize the custom attribute management engine 115 and execute the insert module 150 to store a value for a custom attribute. Therefore, the flow diagram shown in
As a specific example, a particular client may be using a privacy risk service provided through the enterprise software application that provides the client with a risk analysis on storing personal data of various data subjects in the client's computing systems. Accordingly, a data subject may be a defined domain object within a microservice that performs a task associated with generating the risk analysis. The client may have implemented a custom attribute for the data subject domain object that represents an aggravating risk factor assigned to a data subject (customer) of the client that is used as a measure for particular circumstances that may increase the risk of storing the data subject's personal data. According, the client may need to store this aggravating risk factor for a particular data subject so that it can be used in the future in generating a risk analysis for the particular data subject. As a result, the microservice may send an insert request to the master microservice 110 to insert (e.g., store) the aggravating risk factor value for the particular data subject in an instance of the data subject domain object generated for the particular data subject. In turn, the master microservice 110 may execute the insert module 150 in inserting the aggravated risk factor value into the instance.
The process 600 involves the insert module 150 receiving the insert request in Operation 610. According to various aspects, the insert request may include an instance identifier for an instance of a domain object and a value for a custom attribute. For example, the insert request may include an instance identifier for the instance of the data subject domain object generated for the particular data subject and the value for the aggravated risk factor for the data subject. In addition, the insert request may include the custom attribute (e.g., an identifier for the aggravated risk factor custom attribute) and/or an identifier for the domain object. If an identifier for the domain object is not provided, then the insert module 150 may reference (query) an instance table (Instance table 330) based on the instance identifier to retrieve the domain object identifier.
At Operation 615, the insert module 150 identifies the placeholder field used for storing values for the custom attribute. According to various aspects, the insert module 150 queries an attribute schema table (e.g., the Custom_Attribute_Schema table 320) using the domain object identifier and custom attribute (identifier thereof) in identifying a record in the attribute schema table associated with the domain object identifier and custom attribute. Once the insert module 150 has identified the record, the insert module 150 identifies the placeholder field that has been assigned to the custom attribute by referencing the mapping data stored in the record to identify the custom value table and placeholder field of the table being used to store values for the custom attribute. Therefore, in the example, the insert module 150 may identify the placeholder field, and corresponding custom value table, used for storing aggravated risk factor values for instances generated of the data subject domain object.
At this point, the insert module 150 determines whether a record already exists in the custom value table for the instance of the domain object in Operation 620. Accordingly, the insert module 150 can use the instance identifier provided in the insert request to query the custom value table to determine whether a record is returned for the query. If not, then the insert module 150 inserts a record in the custom value table for the instance and stores the value for the custom attribute in the placeholder field of the record in Operation 625. If a record is found, then the insert module 150 updates the record by storing the value for the custom attribute in the placeholder field of the record in Operation 630. As a result, the value for the custom attribute is persisted in the repository 180 for the instance of the domain object. Therefore, in the example, the aggravated risk factor value for the particular data subject persists in the repository 180 so that it can be retrieved for future use in generating a risk analysis for the data subject.
Delete Module
Turning now to
As a specific example, a particular client may be collecting credit card data from customers and storing it. Here, the client may be using a DSAR service provided through the enterprise software application that provides the client with a workflow for processing the DSAR through the client's computing systems. In addition, the client may have added a custom attribute to a credit card domain object for storing a value identifying a bank that may be tied to credit card data for data subjects (individuals). The reason for adding this custom attribute may have been because the credit card data can often represent a debit card that has been issued by a bank.
The client may receive a DSAR from a particular data subject (individual) requesting for the client to delete specific credit card data for the data subject. Therefore, the microservice may send a delete request to the master microservice 110 to delete the bank value for the credit card data and the master microservice 110 may execute the delete module 160 in deleting the bank value.
Therefore, the process 700 involves the delete module 160 receiving the delete request in Operation 710. According to various aspects, the delete request may include an instance identifier for an instance of a domain object and a value for a custom attribute. For example, the delete request may include the instance identifier for the instance of the credit card domain object generated for the data subject. In addition, the delete request may include the custom attribute (e.g., identifier for the bank custom attribute) and/or an identifier for the domain object. If an identifier for the domain object is not provided, then the delete module 160 may reference (query) an instance table (Instance table 330) based on the instance identifier to retrieve the domain object identifier.
At Operation 715, the delete module 160 identifies the placeholder field used for storing the value that needs to be deleted for the custom attribute. According to various aspects, the delete module 160 queries an attribute schema table (e.g., the Custom_Attribute_Schema table 320) using the domain object identifier and custom attribute (identifier thereof) in identifying a record in the attribute schema table associated with the domain object identifier and custom attribute. Once the delete module 160 has identified the record, the delete module 160 identifies the placeholder field that has been assigned to the custom attribute by referencing the mapping data stored in the record to identify the custom value table and placeholder field of the table being used to store the value for the custom attribute that needs to be deleted. Therefore, in the example, the delete module 160 identifies the placeholder field, and corresponding custom value table, which is used in storing bank values for instances generated of the credit card domain object.
At this point, the delete module 160 deletes the value for the custom attribute stored in the placeholder field in Operation 720. To perform this operation, the delete module 160 may initially identify the record stored in the custom value table for the instance of the domain object. For example, the delete module 160 may use the instance identifier provided in the delete request to query the custom value table to identify the record stored in the custom value table for the instance of the domain object. Once the delete module 160 has identified the record, the delete module 160 then deletes the value stored in the placeholder field for the record. As a result, the value for the custom attribute is removed for the instance of the domain object. Therefore, in the example, the value stored for the bank custom attribute is removed for the instance of the credit card domain object generated for the particular data subject.
Fetch Module
Turning now to
As a specific example, a particular client may have received a DSAR from a data subject (individual) and is using a DSAR service provided through the enterprise software application that provides the client with a workflow for processing the DSAR through the client's computing systems. Accordingly, a data subject may be a defined domain object within a microservice that performs a task associated with generating the workflow. The client may have implemented a custom attribute for the data subject domain object that represents a customer number assigned to a data subject (customer) of the client. Therefore, the microservice may need the customer number value of the particular data subject associated with the DSAR received by the client in generating the workflow. As a result, the microservice may send a fetch request to the master microservice 110 to fetch the customer number value for the data subject and the master microservice 110 may execute the fetch module 170 in fetching the customer number value and returning it to the requesting microservice.
Therefore, the process 800 involves the fetch module 170 receiving the fetch request in Operation 810. According to various aspects, the fetch request may include an instance identifier for an instance of a domain object (e.g., for the instance of the data subject domain object) and a custom attribute (e.g., identifier for the customer number custom attribute). In addition, the fetch request may include an identifier for the domain object. If an identifier for the domain object is not provided, then the fetch module 170 may reference (query) an instance table (Instance table 330) based on the instance identifier to retrieve the domain object identifier.
At Operation 815, the fetch module 170 identifies the placeholder field used for storing the value that needs to be fetched for the custom attribute. According to various aspects, the fetch module 170 queries an attribute schema table (e.g., the Custom_Attribute_Schema table 320) using the domain object identifier and custom attribute (identifier thereof) in identifying a record in the attribute schema table associated with the domain object identifier and custom attribute. Once the fetch module 170 has identified the record, the fetch module 170 identifies the placeholder field that has been assigned to the custom attribute by referencing the mapping data stored in the record to identify the custom value table and placeholder field of the table being used to store the value for the custom attribute that needs to be fetched. Therefore, looking at the example, the fetch module 170 identifies the placeholder field, and corresponding custom value table, which is used in storing the customer number for a data subject.
At this point, the fetch module 170 fetches the value for the custom attribute stored in the placeholder field in Operation 820. To perform this operation, the fetch module 170 may initially identify the record stored in the custom value table for the instance of the domain object. For example, the fetch module 170 may use the instance identifier provided in the fetch request to query the custom value table to identify the record stored in the custom value table for the instance of the domain object. Once the fetch module 170 has identified the record, the fetch module 170 then fetches the value stored in the placeholder field for the record.
At Operation 825, the fetch module 170 returns the fetched value to the master microservice 110 (or some other microservice). Accordingly, the value can then be used within one or more services for the enterprise software application. For instance, returning to the example, the master microservice 110 may return the customer number value to the microservice that submitted the request so that the microservice can use the customer number in performing the required task to generate the workflow for the DSAR.
Aspects of the present disclosure may be implemented in various ways, including as computer program products that comprise articles of manufacture. Such computer program products may include one or more software components including, for example, software objects, methods, data structures, and/or the like. A software component may be coded in any of a variety of programming languages. An illustrative programming language may be a lower-level programming language such as an assembly language associated with a particular hardware architecture and/or operating system platform. A software component comprising assembly language instructions may require conversion into executable machine code by an assembler prior to execution by the hardware architecture and/or platform. Another example programming language may be a higher-level programming language that may be portable across multiple architectures. A software component comprising higher-level programming language instructions may require conversion to an intermediate representation by an interpreter or a compiler prior to execution.
Other examples of programming languages include, but are not limited to, a macro language, a shell or command language, a job control language, a script language, a database query, or search language, and/or a report writing language. In one or more example aspects, a software component comprising instructions in one of the foregoing examples of programming languages may be executed directly by an operating system or other software component without having to be first transformed into another form. A software component may be stored as a file or other data storage construct. Software components of a similar type or functionally related may be stored together such as, for example, in a particular directory, folder, or library. Software components may be static (e.g., pre-established, or fixed) or dynamic (e.g., created or modified at the time of execution).
A computer program product may include a non-transitory computer-readable storage medium storing applications, programs, program modules, scripts, source code, program code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, and/or the like (also referred to herein as executable instructions, instructions for execution, computer program products, program code, and/or similar terms used herein interchangeably). Such non-transitory computer-readable storage media include all computer-readable media (including volatile and non-volatile media).
According to various aspects, a non-volatile computer-readable storage medium may include a floppy disk, flexible disk, hard disk, solid-state storage (SSS) (e.g., a solid-state drive (SSD), solid state card (SSC), solid state module (SSM)), enterprise flash drive, magnetic tape, or any other non-transitory magnetic medium, and/or the like. A non-volatile computer-readable storage medium may also include a punch card, paper tape, optical mark sheet (or any other physical medium with patterns of holes or other optically recognizable indicia), compact disc read only memory (CD-ROM), compact disc-rewritable (CD-RW), digital versatile disc (DVD), Blu-ray disc (BD), any other non-transitory optical medium, and/or the like. Such a non-volatile computer-readable storage medium may also include read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory (e.g., Serial, NAND, NOR, and/or the like), multimedia memory cards (MMC), secure digital (SD) memory cards, SmartMedia cards, CompactFlash (CF) cards, Memory Sticks, and/or the like. Further, a non-volatile computer-readable storage medium may also include conductive-bridging random access memory (CBRAM), phase-change random access memory (PRAM), ferroelectric random-access memory (FeRAM), non-volatile random-access memory (NVRAM), magnetoresistive random-access memory (MRAM), resistive random-access memory (RRAM), Silicon-Oxide-Nitride-Oxide-Silicon memory (SONOS), floating junction gate random access memory (FJG RAM), Millipede memory, racetrack memory, and/or the like.
According to various aspects, a volatile computer-readable storage medium may include random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), fast page mode dynamic random access memory (FPM DRAM), extended data-out dynamic random access memory (EDO DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), double data rate type two synchronous dynamic random access memory (DDR2 SDRAM), double data rate type three synchronous dynamic random access memory (DDR3 SDRAM), Rambus dynamic random access memory (RDRAM), Twin Transistor RAM (TTRAM), Thyristor RAM (T-RAM), Zero-capacitor (Z-RAM), Rambus in-line memory module (RIMM), dual in-line memory module (DIMM), single in-line memory module (SIMM), video random access memory (VRAM), cache memory (including various levels), flash memory, register memory, and/or the like. It will be appreciated that where various aspects are described to use a computer-readable storage medium, other types of computer-readable storage media may be substituted for or used in addition to the computer-readable storage media described above.
Various aspects of the present disclosure may also be implemented as methods, apparatuses, systems, computing devices, computing entities, and/or the like. As such, various aspects of the present disclosure may take the form of a data structure, apparatus, system, computing device, computing entity, and/or the like executing instructions stored on a computer-readable storage medium to perform certain steps or operations. Thus, various aspects of the present disclosure also may take the form of entirely hardware, entirely computer program product, and/or a combination of computer program product and hardware performing certain steps or operations.
Various aspects of the present disclosure are described below with reference to block diagrams and flowchart illustrations. Thus, each block of the block diagrams and flowchart illustrations may be implemented in the form of a computer program product, an entirely hardware aspect, a combination of hardware and computer program products, and/or apparatuses, systems, computing devices, computing entities, and/or the like carrying out instructions, operations, steps, and similar words used interchangeably (e.g., the executable instructions, instructions for execution, program code, and/or the like) on a computer-readable storage medium for execution. For example, retrieval, loading, and execution of code may be performed sequentially such that one instruction is retrieved, loaded, and executed at a time. In some examples of aspects, retrieval, loading, and/or execution may be performed in parallel such that multiple instructions are retrieved, loaded, and/or executed together. Thus, such aspects can produce specially configured machines performing the steps or operations specified in the block diagrams and flowchart illustrations. Accordingly, the block diagrams and flowchart illustrations support various combinations of aspects for performing the specified instructions, operations, or steps.
Accordingly, in various embodiments, each server device 915 may include at least one server and at least one data store. Here, the server devices 915 may represent various forms of servers including, but not limited to a web server, an application server, a proxy server, a network server, and/or a server pool. In general, the server system 910 accepts requests for application services and provides such services to any number of client devices (e.g., the client computing system 104) over the network(s) 105.
For instance, in accordance with various embodiments of the present disclosure, the server system 910 can provide a cloud infrastructure to host one more microservice-based applications (e.g., microservices provided as one or more computer-executable programs executed by one or more computing devices). In some examples, computing resources of the server system 910 can be provisioned based on modelling of network traffic associated with use of the one or more microservices. Accordingly, the microservices may be designed to communicate using communication methods and protocols, such as lightweight RESTful APIs (i.e., application programming interfaces (API) implemented using representational state transfer (REST) architectures). For example, the API may be implemented as a REST API, which may be accessed using the hypertext transfer protocol (HTTP), in a manner similar to a standard web page. However, depending on the embodiment, any suitable communication protocol may be used.
A hardware device 1000 includes a processor 1002, a main memory 1004 (e.g., read-only memory (ROM), flash memory, dynamic random-access memory (DRAM) such as synchronous DRAM (SDRAM), Rambus DRAM (RDRAM), and/or the like), a static memory 1006 (e.g., flash memory, static random-access memory (SRAM), and/or the like), and a data storage device 1018, that communicate with each other via a bus 1032.
The processor 1002 may represent one or more general-purpose processing devices such as a microprocessor, a central processing unit, and/or the like. According to some aspects, the processor 1002 may be a complex instruction set computing (CISC) microprocessor, reduced instruction set computing (RISC) microprocessor, very long instruction word (VLIW) microprocessor, a processor implementing other instruction sets, processors implementing a combination of instruction sets, and/or the like. According to some aspects, the processor 1002 may be one or more special-purpose processing devices such as an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), network processor, and/or the like. The processor 1002 can execute processing logic 1026 for performing various operations and/or steps described herein.
The hardware device 1000 may further include a network interface device 1008, as well as a video display unit 1010 (e.g., a liquid crystal display (LCD), a cathode ray tube (CRT), and/or the like), an alphanumeric input device 1012 (e.g., a keyboard), a cursor control device 1014 (e.g., a mouse, a trackpad), and/or a signal generation device 1016 (e.g., a speaker). The hardware device 1000 may further include a data storage device 1018. The data storage device 1018 may include a non-transitory computer-readable storage medium 1030 (also known as a non-transitory computer-readable storage medium or a non-transitory computer-readable medium) on which is stored one or more modules 1022 (e.g., sets of software instructions) embodying any one or more of the methodologies or functions described herein. For instance, according to particular aspects, the modules 1022 include a create module 130, remove module 140, insert module 150, delete module 160, and/or fetch module 170 that are part of a custom attribute management engine 115 as described herein. The one or more modules 1022 may also reside, completely or at least partially, within main memory 1004 and/or within the processor 1002 during execution thereof by the hardware device 1000—main memory 1004 and processor 1002 also constituting computer-accessible storage media. The one or more modules 1022 may further be transmitted or received over a network 105 via the network interface device 1008.
While the computer-readable storage medium 1030 is shown to be a single medium, the terms “computer-readable storage medium” and “machine-accessible storage medium” should be understood to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more sets of instructions. The term “computer-readable storage medium” should also be understood to include any medium that is capable of storing, encoding, and/or carrying a set of instructions for execution by the hardware device 1000 and that causes the hardware device 1000 to perform any one or more of the methodologies of the present disclosure. The term “computer-readable storage medium” should accordingly be understood to include, but not be limited to, solid-state memories, optical and magnetic media, and/or the like.
System Operation
The logical operations described herein may be implemented (1) as a sequence of computer implemented acts or one or more program modules running on a computing system and/or (2) as interconnected machine logic circuits or circuit modules within the computing system. The implementation is a matter of choice dependent on the performance and other requirements of the computing system. Accordingly, the logical operations described herein are referred to variously as states, operations, steps, structural devices, acts, or modules. These states, operations, steps, structural devices, acts, and modules may be implemented in software, in firmware, in special purpose digital logic, and any combination thereof. Greater or fewer operations may be performed than shown in the figures and described herein. These operations also may be performed in a different order than those described herein.
While this specification contains many specific aspect details, these should not be construed as limitations on the scope of any invention or of what may be claimed, but rather as descriptions of features that may be specific to particular aspects of particular inventions. Certain features that are described in this specification in the context of separate aspects also may be implemented in combination in a single aspect. Conversely, various features that are described in the context of a single aspect also may be implemented in multiple aspects separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be excised from the combination, and the claimed combination may be a sub-combination or variation of a sub-combination.
Similarly, while operations are described in a particular order, this should not be understood as requiring that such operations be performed in the particular order described or in sequential order, or that all described operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various components in the various aspects described above should not be understood as requiring such separation in all aspects, and the described program components (e.g., modules) and systems may be integrated together in a single software product or packaged into multiple software products.
Many modifications and other aspects of the disclosure will come to mind to one skilled in the art to which this disclosure pertains having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the disclosure is not to be limited to the specific aspects disclosed and that modifications and other aspects are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for the purposes of limitation.
This application claims priority from U.S. Provisional Patent Application Ser. No. 63/145,633, filed Feb. 4, 2021, the entire disclosure of which is hereby incorporated herein by reference in its entirety.
| Number | Name | Date | Kind |
|---|---|---|---|
| 3005891 | Charewicz et al. | Oct 1961 | A |
| 4536866 | Jerome et al. | Aug 1985 | A |
| 4574350 | Starr | Mar 1986 | A |
| 5193162 | Bordsen et al. | Mar 1993 | A |
| 5276735 | Boebert et al. | Jan 1994 | A |
| 5329447 | Leedom, Jr. | Jul 1994 | A |
| 5404299 | Tsurubayashi et al. | Apr 1995 | A |
| 5535393 | Reeve et al. | Jul 1996 | A |
| 5560005 | Hoover et al. | Sep 1996 | A |
| 5668986 | Nilsen et al. | Sep 1997 | A |
| 5710917 | Musa et al. | Jan 1998 | A |
| 5761529 | Raji | Jun 1998 | A |
| 5764906 | Edelstein et al. | Jun 1998 | A |
| 5872973 | Mitchell et al. | Feb 1999 | A |
| 5913041 | Ramanathan et al. | Jun 1999 | A |
| 5913214 | Madnick et al. | Jun 1999 | A |
| 6016394 | Walker | Jan 2000 | A |
| 6122627 | Carey et al. | Sep 2000 | A |
| 6148297 | Swor et al. | Nov 2000 | A |
| 6148342 | Ho | Nov 2000 | A |
| 6240416 | Immon et al. | May 2001 | B1 |
| 6243816 | Fang et al. | Jun 2001 | B1 |
| 6253203 | Oflaherty et al. | Jun 2001 | B1 |
| 6263335 | Paik et al. | Jul 2001 | B1 |
| 6272631 | Thomlinson et al. | Aug 2001 | B1 |
| 6275824 | Oflaherty et al. | Aug 2001 | B1 |
| 6282548 | Burner et al. | Aug 2001 | B1 |
| 6330562 | Boden et al. | Dec 2001 | B1 |
| 6363488 | Ginter et al. | Mar 2002 | B1 |
| 6374237 | Reese | Apr 2002 | B1 |
| 6374252 | Althoff et al. | Apr 2002 | B1 |
| 6408336 | Schneider et al. | Jun 2002 | B1 |
| 6427230 | Goiffon et al. | Jul 2002 | B1 |
| 6442688 | Moses et al. | Aug 2002 | B1 |
| 6446120 | Dantressangle | Sep 2002 | B1 |
| 6463488 | San Juan | Oct 2002 | B1 |
| 6484149 | Jammes et al. | Nov 2002 | B1 |
| 6484180 | Lyons et al. | Nov 2002 | B1 |
| 6516314 | Birkler et al. | Feb 2003 | B1 |
| 6516337 | Tripp et al. | Feb 2003 | B1 |
| 6519571 | Guheen et al. | Feb 2003 | B1 |
| 6574631 | Subramanian et al. | Jun 2003 | B1 |
| 6591272 | Williams | Jul 2003 | B1 |
| 6601233 | Underwood | Jul 2003 | B1 |
| 6606744 | Mikurak | Aug 2003 | B1 |
| 6611812 | Hurtado et al. | Aug 2003 | B2 |
| 6625602 | Meredith et al. | Sep 2003 | B1 |
| 6629081 | Cornelius et al. | Sep 2003 | B1 |
| 6633878 | Underwood | Oct 2003 | B1 |
| 6662192 | Rebane | Dec 2003 | B1 |
| 6662357 | Bowman-Amuah | Dec 2003 | B1 |
| 6697824 | Bowman-Amuah | Feb 2004 | B1 |
| 6699042 | Smith et al. | Mar 2004 | B2 |
| 6701314 | Conover et al. | Mar 2004 | B1 |
| 6721713 | Guheen et al. | Apr 2004 | B1 |
| 6725200 | Rost | Apr 2004 | B1 |
| 6732109 | Lindberg et al. | May 2004 | B2 |
| 6754665 | Futagami et al. | Jun 2004 | B1 |
| 6755344 | Mollett et al. | Jun 2004 | B1 |
| 6757685 | Raffaele et al. | Jun 2004 | B2 |
| 6757888 | Knutson et al. | Jun 2004 | B1 |
| 6816944 | Peng | Nov 2004 | B2 |
| 6826693 | Yoshida et al. | Nov 2004 | B1 |
| 6850252 | Hoffberg | Feb 2005 | B1 |
| 6886101 | Glazer et al. | Apr 2005 | B2 |
| 6901346 | Tracy et al. | May 2005 | B2 |
| 6904417 | Clayton et al. | Jun 2005 | B2 |
| 6909897 | Kikuchi | Jun 2005 | B2 |
| 6925443 | Baggei, Jr. et al. | Aug 2005 | B1 |
| 6938041 | Brandow et al. | Aug 2005 | B1 |
| 6956845 | Baker et al. | Oct 2005 | B2 |
| 6978270 | Carty et al. | Dec 2005 | B1 |
| 6980927 | Tracy et al. | Dec 2005 | B2 |
| 6980987 | Kaminer | Dec 2005 | B2 |
| 6983221 | Tracy et al. | Jan 2006 | B2 |
| 6985887 | Sunstein et al. | Jan 2006 | B1 |
| 6990454 | McIntosh | Jan 2006 | B2 |
| 6993448 | Tracy et al. | Jan 2006 | B2 |
| 6993495 | Smith, Jr. et al. | Jan 2006 | B2 |
| 6996807 | Vardi et al. | Feb 2006 | B1 |
| 7003560 | Mullen et al. | Feb 2006 | B1 |
| 7003662 | Genty et al. | Feb 2006 | B2 |
| 7013290 | Ananian | Mar 2006 | B2 |
| 7017105 | Flanagin et al. | Mar 2006 | B2 |
| 7023979 | Wu et al. | Apr 2006 | B1 |
| 7039594 | Gersting | May 2006 | B1 |
| 7039654 | Eder | May 2006 | B1 |
| 7047517 | Brown et al. | May 2006 | B1 |
| 7051036 | Rosnow et al. | May 2006 | B2 |
| 7051038 | Yeh et al. | May 2006 | B1 |
| 7058970 | Shaw | Jun 2006 | B2 |
| 7069427 | Adler et al. | Jun 2006 | B2 |
| 7076558 | Dunn | Jul 2006 | B1 |
| 7093200 | Schreiber et al. | Aug 2006 | B2 |
| 7095854 | Ginter et al. | Aug 2006 | B1 |
| 7100195 | Underwood | Aug 2006 | B1 |
| 7120800 | Ginter et al. | Oct 2006 | B2 |
| 7124101 | Mikurak | Oct 2006 | B1 |
| 7124107 | Pishevar et al. | Oct 2006 | B1 |
| 7127705 | Christfort et al. | Oct 2006 | B2 |
| 7127741 | Bandini et al. | Oct 2006 | B2 |
| 7133845 | Ginter et al. | Nov 2006 | B1 |
| 7139999 | Bowman-Amuah | Nov 2006 | B2 |
| 7143091 | Charnock et al. | Nov 2006 | B2 |
| 7149698 | Guheen et al. | Dec 2006 | B2 |
| 7165041 | Guheen et al. | Jan 2007 | B1 |
| 7167842 | Josephson, II et al. | Jan 2007 | B1 |
| 7167844 | Leong et al. | Jan 2007 | B1 |
| 7171379 | Menninger et al. | Jan 2007 | B2 |
| 7181438 | Szabo | Feb 2007 | B1 |
| 7203929 | Vinodkrishnan et al. | Apr 2007 | B1 |
| 7213233 | Vinodkrishnan et al. | May 2007 | B1 |
| 7216340 | Vinodkrishnan et al. | May 2007 | B1 |
| 7219066 | Parks et al. | May 2007 | B2 |
| 7223234 | Stupp et al. | May 2007 | B2 |
| 7225460 | Barzilai et al. | May 2007 | B2 |
| 7234065 | Breslin et al. | Jun 2007 | B2 |
| 7247625 | Zhang et al. | Jul 2007 | B2 |
| 7251624 | Lee et al. | Jul 2007 | B1 |
| 7260830 | Sugimoto | Aug 2007 | B2 |
| 7266566 | Kennaley et al. | Sep 2007 | B1 |
| 7272818 | Ishimitsu et al. | Sep 2007 | B2 |
| 7275063 | Horn | Sep 2007 | B2 |
| 7281020 | Fine | Oct 2007 | B2 |
| 7284232 | Bates et al. | Oct 2007 | B1 |
| 7284271 | Lucovsky et al. | Oct 2007 | B2 |
| 7287280 | Young | Oct 2007 | B2 |
| 7290275 | Baudoin et al. | Oct 2007 | B2 |
| 7293119 | Beale | Nov 2007 | B2 |
| 7302569 | Betz et al. | Nov 2007 | B2 |
| 7313575 | Carr et al. | Dec 2007 | B2 |
| 7313699 | Koga | Dec 2007 | B2 |
| 7313825 | Redlich et al. | Dec 2007 | B2 |
| 7315826 | Guheen et al. | Jan 2008 | B1 |
| 7315849 | Bakalash et al. | Jan 2008 | B2 |
| 7322047 | Redlich et al. | Jan 2008 | B2 |
| 7330850 | Seibel et al. | Feb 2008 | B1 |
| 7340447 | Ghatare | Mar 2008 | B2 |
| 7340776 | Zobel et al. | Mar 2008 | B2 |
| 7343434 | Kapoor et al. | Mar 2008 | B2 |
| 7346518 | Frank et al. | Mar 2008 | B1 |
| 7353204 | Liu | Apr 2008 | B2 |
| 7356559 | Jacobs et al. | Apr 2008 | B1 |
| 7367014 | Griffin | Apr 2008 | B2 |
| 7370025 | Pandit | May 2008 | B1 |
| 7376835 | Olkin et al. | May 2008 | B2 |
| 7380120 | Garcia | May 2008 | B1 |
| 7382903 | Ray | Jun 2008 | B2 |
| 7383570 | Pinkas et al. | Jun 2008 | B2 |
| 7391854 | Salonen et al. | Jun 2008 | B2 |
| 7398393 | Mont et al. | Jul 2008 | B2 |
| 7401235 | Mowers et al. | Jul 2008 | B2 |
| 7403942 | Bayliss | Jul 2008 | B1 |
| 7409354 | Putnam et al. | Aug 2008 | B2 |
| 7412402 | Cooper | Aug 2008 | B2 |
| 7424680 | Carpenter | Sep 2008 | B2 |
| 7428546 | Nori et al. | Sep 2008 | B2 |
| 7430585 | Sibert | Sep 2008 | B2 |
| 7454457 | Lowery et al. | Nov 2008 | B1 |
| 7454508 | Mathew et al. | Nov 2008 | B2 |
| 7478157 | Bohrer et al. | Jan 2009 | B2 |
| 7480755 | Herrell et al. | Jan 2009 | B2 |
| 7487170 | Stevens | Feb 2009 | B2 |
| 7493282 | Manly et al. | Feb 2009 | B2 |
| 7512987 | Williams | Mar 2009 | B2 |
| 7516882 | Cucinotta | Apr 2009 | B2 |
| 7523053 | Pudhukottai et al. | Apr 2009 | B2 |
| 7529836 | Bolen | May 2009 | B1 |
| 7548968 | Bura et al. | Jun 2009 | B1 |
| 7552480 | Voss | Jun 2009 | B1 |
| 7562339 | Racca et al. | Jul 2009 | B2 |
| 7565685 | Ross et al. | Jul 2009 | B2 |
| 7567541 | Karimi et al. | Jul 2009 | B2 |
| 7584505 | Mondri et al. | Sep 2009 | B2 |
| 7584508 | Kashchenko et al. | Sep 2009 | B1 |
| 7587749 | Leser et al. | Sep 2009 | B2 |
| 7590705 | Mathew et al. | Sep 2009 | B2 |
| 7590972 | Axelrod et al. | Sep 2009 | B2 |
| 7603356 | Schran et al. | Oct 2009 | B2 |
| 7606783 | Carter | Oct 2009 | B1 |
| 7606790 | Levy | Oct 2009 | B2 |
| 7607120 | Sanyal et al. | Oct 2009 | B2 |
| 7613700 | Lobo et al. | Nov 2009 | B1 |
| 7617136 | Lessing et al. | Nov 2009 | B1 |
| 7617167 | Griffis et al. | Nov 2009 | B2 |
| 7620644 | Cote et al. | Nov 2009 | B2 |
| 7627666 | Degiulio et al. | Dec 2009 | B1 |
| 7630874 | Fables et al. | Dec 2009 | B2 |
| 7630998 | Zhou et al. | Dec 2009 | B2 |
| 7636742 | Olavarrieta et al. | Dec 2009 | B1 |
| 7640322 | Wendkos et al. | Dec 2009 | B2 |
| 7650497 | Thornton et al. | Jan 2010 | B2 |
| 7653592 | Flaxman et al. | Jan 2010 | B1 |
| 7657476 | Barney | Feb 2010 | B2 |
| 7657694 | Mansell et al. | Feb 2010 | B2 |
| 7665073 | Meijer et al. | Feb 2010 | B2 |
| 7665125 | Heard et al. | Feb 2010 | B2 |
| 7668947 | Hutchinson et al. | Feb 2010 | B2 |
| 7673282 | Amaru et al. | Mar 2010 | B2 |
| 7676034 | Wu et al. | Mar 2010 | B1 |
| 7681034 | Lee et al. | Mar 2010 | B1 |
| 7681140 | Ebert | Mar 2010 | B2 |
| 7685561 | Deem et al. | Mar 2010 | B2 |
| 7685577 | Pace et al. | Mar 2010 | B2 |
| 7693593 | Ishibashi et al. | Apr 2010 | B2 |
| 7698398 | Lai | Apr 2010 | B1 |
| 7702639 | Stanley et al. | Apr 2010 | B2 |
| 7707224 | Chastagnol et al. | Apr 2010 | B2 |
| 7712029 | Ferreira et al. | May 2010 | B2 |
| 7716242 | Pae et al. | May 2010 | B2 |
| 7725474 | Tamai et al. | May 2010 | B2 |
| 7725875 | Waldrep | May 2010 | B2 |
| 7729940 | Harvey et al. | Jun 2010 | B2 |
| 7730142 | Levasseur et al. | Jun 2010 | B2 |
| 7752124 | Green et al. | Jul 2010 | B2 |
| 7756826 | Bots et al. | Jul 2010 | B2 |
| 7756987 | Wang et al. | Jul 2010 | B2 |
| 7761586 | Olenick et al. | Jul 2010 | B2 |
| 7774745 | Fildebrandt et al. | Aug 2010 | B2 |
| 7788212 | Beckmann et al. | Aug 2010 | B2 |
| 7788222 | Shah et al. | Aug 2010 | B2 |
| 7788632 | Kuester et al. | Aug 2010 | B2 |
| 7788726 | Teixeira | Aug 2010 | B2 |
| 7801758 | Gracie et al. | Sep 2010 | B2 |
| 7801826 | Labrou et al. | Sep 2010 | B2 |
| 7802305 | Leeds | Sep 2010 | B1 |
| 7805349 | Yu et al. | Sep 2010 | B2 |
| 7805451 | Hosokawa | Sep 2010 | B2 |
| 7813947 | Deangelis et al. | Oct 2010 | B2 |
| 7822620 | Dixon et al. | Oct 2010 | B2 |
| 7827523 | Ahmed et al. | Nov 2010 | B2 |
| 7844640 | Bender et al. | Nov 2010 | B2 |
| 7849143 | Vuong | Dec 2010 | B2 |
| 7853468 | Callahan et al. | Dec 2010 | B2 |
| 7853470 | Sonnleithner et al. | Dec 2010 | B2 |
| 7853925 | Kemmler | Dec 2010 | B2 |
| 7860816 | Fokoue-Nkoutche et al. | Dec 2010 | B2 |
| 7870540 | Zare et al. | Jan 2011 | B2 |
| 7870608 | Shraim et al. | Jan 2011 | B2 |
| 7873541 | Klar et al. | Jan 2011 | B1 |
| 7877327 | Gwiazda et al. | Jan 2011 | B2 |
| 7877812 | Koved et al. | Jan 2011 | B2 |
| 7885841 | King | Feb 2011 | B2 |
| 7890461 | Oeda et al. | Feb 2011 | B2 |
| 7895260 | Archer et al. | Feb 2011 | B2 |
| 7904478 | Yu et al. | Mar 2011 | B2 |
| 7904487 | Ghatare | Mar 2011 | B2 |
| 7917888 | Chong et al. | Mar 2011 | B2 |
| 7917963 | Goyal et al. | Mar 2011 | B2 |
| 7921152 | Ashley et al. | Apr 2011 | B2 |
| 7930197 | Ozzie et al. | Apr 2011 | B2 |
| 7930753 | Mellinger et al. | Apr 2011 | B2 |
| 7953725 | Burris et al. | May 2011 | B2 |
| 7954150 | Croft et al. | May 2011 | B2 |
| 7958087 | Blumenau | Jun 2011 | B2 |
| 7958494 | Chaar et al. | Jun 2011 | B2 |
| 7962900 | Barraclough et al. | Jun 2011 | B2 |
| 7966310 | Sullivan et al. | Jun 2011 | B2 |
| 7966599 | Malasky et al. | Jun 2011 | B1 |
| 7966663 | Strickland et al. | Jun 2011 | B2 |
| 7974992 | Fastabend et al. | Jul 2011 | B2 |
| 7975000 | Dixon et al. | Jul 2011 | B2 |
| 7991559 | Dzekunov et al. | Aug 2011 | B2 |
| 7991747 | Upadhyay et al. | Aug 2011 | B1 |
| 7996372 | Rubel, Jr. | Aug 2011 | B2 |
| 8010612 | Costea et al. | Aug 2011 | B2 |
| 8010720 | Iwaoka et al. | Aug 2011 | B2 |
| 8019881 | Sandhu et al. | Sep 2011 | B2 |
| 8020206 | Hubbard et al. | Sep 2011 | B2 |
| 8024384 | Prabhakar et al. | Sep 2011 | B2 |
| 8032721 | Murai | Oct 2011 | B2 |
| 8036374 | Noble, Jr. | Oct 2011 | B2 |
| 8037409 | Jacob et al. | Oct 2011 | B2 |
| 8041749 | Beck | Oct 2011 | B2 |
| 8041913 | Wang | Oct 2011 | B2 |
| 8069161 | Bugir et al. | Nov 2011 | B2 |
| 8069471 | Boren | Nov 2011 | B2 |
| 8082539 | Schelkogonov | Dec 2011 | B1 |
| 8090754 | Schmidt et al. | Jan 2012 | B2 |
| 8095923 | Harvey et al. | Jan 2012 | B2 |
| 8099709 | Baikov et al. | Jan 2012 | B2 |
| 8103962 | Embley et al. | Jan 2012 | B2 |
| 8117441 | Kurien et al. | Feb 2012 | B2 |
| 8135815 | Mayer | Mar 2012 | B2 |
| 8146054 | Baker et al. | Mar 2012 | B2 |
| 8146074 | Ito et al. | Mar 2012 | B2 |
| 8150717 | Whitmore | Apr 2012 | B2 |
| 8156105 | Altounian et al. | Apr 2012 | B2 |
| 8156158 | Rolls et al. | Apr 2012 | B2 |
| 8156159 | Ebrahimi et al. | Apr 2012 | B2 |
| 8166406 | Goldfeder et al. | Apr 2012 | B1 |
| 8176061 | Swanbeck et al. | May 2012 | B2 |
| 8176177 | Sussman et al. | May 2012 | B2 |
| 8176334 | Vainstein | May 2012 | B2 |
| 8176470 | Klumpp et al. | May 2012 | B2 |
| 8180759 | Hamzy | May 2012 | B2 |
| 8181151 | Sedukhin et al. | May 2012 | B2 |
| 8185409 | Putnam et al. | May 2012 | B2 |
| 8196176 | Berteau et al. | Jun 2012 | B2 |
| 8205093 | Argott | Jun 2012 | B2 |
| 8205140 | Hafeez et al. | Jun 2012 | B2 |
| 8214362 | Djabarov | Jul 2012 | B1 |
| 8214803 | Horii et al. | Jul 2012 | B2 |
| 8234377 | Cohn | Jul 2012 | B2 |
| 8239244 | Ginsberg et al. | Aug 2012 | B2 |
| 8250051 | Bugir et al. | Aug 2012 | B2 |
| 8255468 | Vitaldevara et al. | Aug 2012 | B2 |
| 8260262 | Ben Ayed | Sep 2012 | B2 |
| 8261362 | Goodwin et al. | Sep 2012 | B2 |
| 8266231 | Golovin et al. | Sep 2012 | B1 |
| 8275632 | Awaraji et al. | Sep 2012 | B2 |
| 8275793 | Ahmad et al. | Sep 2012 | B2 |
| 8286239 | Sutton | Oct 2012 | B1 |
| 8312549 | Goldberg et al. | Nov 2012 | B2 |
| 8316237 | Felsher et al. | Nov 2012 | B1 |
| 8332908 | Hatakeyama et al. | Dec 2012 | B2 |
| 8340999 | Kumaran et al. | Dec 2012 | B2 |
| 8341405 | Meijer et al. | Dec 2012 | B2 |
| 8346929 | Lai | Jan 2013 | B1 |
| 8364713 | Pollard | Jan 2013 | B2 |
| 8370224 | Grewal | Feb 2013 | B2 |
| 8370794 | Moosmann et al. | Feb 2013 | B2 |
| 8380630 | Felsher | Feb 2013 | B2 |
| 8380743 | Converting et al. | Feb 2013 | B2 |
| 8381180 | Rostoker | Feb 2013 | B2 |
| 8381297 | Touboul | Feb 2013 | B2 |
| 8386314 | Kirkby et al. | Feb 2013 | B2 |
| 8392982 | Harris et al. | Mar 2013 | B2 |
| 8418226 | Gardner | Apr 2013 | B2 |
| 8423954 | Ronen et al. | Apr 2013 | B2 |
| 8429179 | Mirhaji | Apr 2013 | B1 |
| 8429597 | Prigge | Apr 2013 | B2 |
| 8429630 | Nickolov et al. | Apr 2013 | B2 |
| 8429758 | Chen et al. | Apr 2013 | B2 |
| 8438644 | Watters et al. | May 2013 | B2 |
| 8463247 | Misiag | Jun 2013 | B2 |
| 8464311 | Ashley et al. | Jun 2013 | B2 |
| 8468244 | Redlich et al. | Jun 2013 | B2 |
| 8473324 | Alvarez et al. | Jun 2013 | B2 |
| 8474012 | Ahmed et al. | Jun 2013 | B2 |
| 8494894 | Jaster et al. | Jul 2013 | B2 |
| 8504481 | Motahari et al. | Aug 2013 | B2 |
| 8510199 | Erlanger | Aug 2013 | B1 |
| 8515988 | Jones et al. | Aug 2013 | B2 |
| 8516076 | Thomas | Aug 2013 | B2 |
| 8527337 | Lim et al. | Sep 2013 | B1 |
| 8533746 | Nolan et al. | Sep 2013 | B2 |
| 8533844 | Mahaffey et al. | Sep 2013 | B2 |
| 8538817 | Wilson | Sep 2013 | B2 |
| 8539359 | Rapaport et al. | Sep 2013 | B2 |
| 8539437 | Finlayson et al. | Sep 2013 | B2 |
| 8560645 | Linden et al. | Oct 2013 | B2 |
| 8560841 | Chin et al. | Oct 2013 | B2 |
| 8560956 | Curtis et al. | Oct 2013 | B2 |
| 8561100 | Hu et al. | Oct 2013 | B2 |
| 8561153 | Grason et al. | Oct 2013 | B2 |
| 8565729 | Moseler et al. | Oct 2013 | B2 |
| 8566726 | Dixon et al. | Oct 2013 | B2 |
| 8566938 | Prakash et al. | Oct 2013 | B1 |
| 8571909 | Miller et al. | Oct 2013 | B2 |
| 8572717 | Narayanaswamy | Oct 2013 | B2 |
| 8578036 | Holfelder et al. | Nov 2013 | B1 |
| 8578166 | De Monseignat et al. | Nov 2013 | B2 |
| 8578481 | Rowley | Nov 2013 | B2 |
| 8578501 | Ogilvie | Nov 2013 | B1 |
| 8583694 | Siegel et al. | Nov 2013 | B2 |
| 8583766 | Dixon et al. | Nov 2013 | B2 |
| 8589183 | Awaraji et al. | Nov 2013 | B2 |
| 8601467 | Hofhansl et al. | Dec 2013 | B2 |
| 8601591 | Krishnamurthy et al. | Dec 2013 | B2 |
| 8606746 | Yeap et al. | Dec 2013 | B2 |
| 8612420 | Sun et al. | Dec 2013 | B2 |
| 8612993 | Grant et al. | Dec 2013 | B2 |
| 8615549 | Knowles et al. | Dec 2013 | B2 |
| 8615731 | Doshi | Dec 2013 | B2 |
| 8620952 | Bennett et al. | Dec 2013 | B2 |
| 8621637 | Al-Harbi et al. | Dec 2013 | B2 |
| 8626671 | Federgreen | Jan 2014 | B2 |
| 8627114 | Resch et al. | Jan 2014 | B2 |
| 8630961 | Beilby et al. | Jan 2014 | B2 |
| 8631048 | Davis et al. | Jan 2014 | B1 |
| 8640110 | Kopp et al. | Jan 2014 | B2 |
| 8646072 | Savant | Feb 2014 | B1 |
| 8650399 | Le Bihan et al. | Feb 2014 | B2 |
| 8655939 | Redlich et al. | Feb 2014 | B2 |
| 8656265 | Paulin et al. | Feb 2014 | B1 |
| 8656456 | Maxson et al. | Feb 2014 | B2 |
| 8661036 | Turski et al. | Feb 2014 | B2 |
| 8667074 | Farkas | Mar 2014 | B1 |
| 8667487 | Boodman et al. | Mar 2014 | B1 |
| 8677472 | Dotan et al. | Mar 2014 | B1 |
| 8681984 | Lee et al. | Mar 2014 | B2 |
| 8682698 | Cashman et al. | Mar 2014 | B2 |
| 8683502 | Shkedi et al. | Mar 2014 | B2 |
| 8688601 | Jaiswal | Apr 2014 | B2 |
| 8689292 | Williams et al. | Apr 2014 | B2 |
| 8693689 | Belenkiy et al. | Apr 2014 | B2 |
| 8700524 | Williams et al. | Apr 2014 | B2 |
| 8700699 | Shen et al. | Apr 2014 | B2 |
| 8706742 | Ravid et al. | Apr 2014 | B1 |
| 8707451 | Ture et al. | Apr 2014 | B2 |
| 8712813 | King | Apr 2014 | B2 |
| 8713098 | Adya et al. | Apr 2014 | B1 |
| 8713638 | Hu et al. | Apr 2014 | B2 |
| 8719366 | Mathew et al. | May 2014 | B2 |
| 8732839 | Hohl | May 2014 | B2 |
| 8744894 | Christiansen et al. | Jun 2014 | B2 |
| 8751285 | Deb et al. | Jun 2014 | B2 |
| 8762406 | Ho et al. | Jun 2014 | B2 |
| 8762413 | Graham, Jr. et al. | Jun 2014 | B2 |
| 8763071 | Sinha et al. | Jun 2014 | B2 |
| 8763082 | Huber et al. | Jun 2014 | B2 |
| 8763131 | Archer et al. | Jun 2014 | B2 |
| 8767947 | Ristock et al. | Jul 2014 | B1 |
| 8769242 | Tkac et al. | Jul 2014 | B2 |
| 8769412 | Gill et al. | Jul 2014 | B2 |
| 8769671 | Shraim et al. | Jul 2014 | B2 |
| 8776241 | Zaitsev | Jul 2014 | B2 |
| 8788935 | Hirsch et al. | Jul 2014 | B1 |
| 8793614 | Wilson et al. | Jul 2014 | B2 |
| 8793650 | Hilerio et al. | Jul 2014 | B2 |
| 8793781 | Grossi et al. | Jul 2014 | B2 |
| 8793809 | Falkenburg et al. | Jul 2014 | B2 |
| 8799984 | Ahn | Aug 2014 | B2 |
| 8805707 | Schumann, Jr. et al. | Aug 2014 | B2 |
| 8805806 | Amarendran et al. | Aug 2014 | B2 |
| 8805925 | Price et al. | Aug 2014 | B2 |
| 8812342 | Barcelo et al. | Aug 2014 | B2 |
| 8812752 | Shih et al. | Aug 2014 | B1 |
| 8812766 | Kranendonk et al. | Aug 2014 | B2 |
| 8813028 | Farooqi | Aug 2014 | B2 |
| 8819253 | Simeloff et al. | Aug 2014 | B2 |
| 8819617 | Koenig et al. | Aug 2014 | B1 |
| 8819800 | Gao et al. | Aug 2014 | B2 |
| 8826446 | Liu et al. | Sep 2014 | B1 |
| 8832649 | Bishop et al. | Sep 2014 | B2 |
| 8832854 | Staddon et al. | Sep 2014 | B1 |
| 8839232 | Taylor et al. | Sep 2014 | B2 |
| 8843487 | McGraw et al. | Sep 2014 | B2 |
| 8843745 | Roberts, Jr. | Sep 2014 | B2 |
| 8849757 | Kruglick | Sep 2014 | B2 |
| 8856534 | Khosravi et al. | Oct 2014 | B2 |
| 8856936 | Datta Ray et al. | Oct 2014 | B2 |
| 8862507 | Sandhu et al. | Oct 2014 | B2 |
| 8863261 | Yang | Oct 2014 | B2 |
| 8875232 | Blom et al. | Oct 2014 | B2 |
| 8893078 | Schaude et al. | Nov 2014 | B2 |
| 8893286 | Oliver | Nov 2014 | B1 |
| 8893297 | Eversoll et al. | Nov 2014 | B2 |
| 8904494 | Kindler et al. | Dec 2014 | B2 |
| 8914263 | Shimada et al. | Dec 2014 | B2 |
| 8914299 | Pesci-Anderson et al. | Dec 2014 | B2 |
| 8914342 | Kalaboukis et al. | Dec 2014 | B2 |
| 8914902 | Moritz et al. | Dec 2014 | B2 |
| 8918306 | Cashman et al. | Dec 2014 | B2 |
| 8918392 | Brooker et al. | Dec 2014 | B1 |
| 8918632 | Sartor | Dec 2014 | B1 |
| 8930896 | Wiggins | Jan 2015 | B1 |
| 8930897 | Nassar | Jan 2015 | B2 |
| 8935198 | Phillips et al. | Jan 2015 | B1 |
| 8935266 | Wu | Jan 2015 | B2 |
| 8935342 | Patel | Jan 2015 | B2 |
| 8935804 | Clark et al. | Jan 2015 | B1 |
| 8938221 | Brazier et al. | Jan 2015 | B2 |
| 8943076 | Stewart et al. | Jan 2015 | B2 |
| 8943548 | Drokov et al. | Jan 2015 | B2 |
| 8949137 | Crapo et al. | Feb 2015 | B2 |
| 8955038 | Nicodemus et al. | Feb 2015 | B2 |
| 8959568 | Hudis et al. | Feb 2015 | B2 |
| 8959584 | Piliouras | Feb 2015 | B2 |
| 8966575 | McQuay et al. | Feb 2015 | B2 |
| 8966597 | Saylor et al. | Feb 2015 | B1 |
| 8973108 | Roth et al. | Mar 2015 | B1 |
| 8977234 | Chava | Mar 2015 | B2 |
| 8977643 | Schindlauer et al. | Mar 2015 | B2 |
| 8978158 | Rajkumar et al. | Mar 2015 | B2 |
| 8983972 | Kriebel et al. | Mar 2015 | B2 |
| 8984031 | Todd | Mar 2015 | B1 |
| 8990933 | Magdalin | Mar 2015 | B1 |
| 8996417 | Channakeshava | Mar 2015 | B1 |
| 8996480 | Agarwala et al. | Mar 2015 | B2 |
| 8997213 | Papakipos et al. | Mar 2015 | B2 |
| 9001673 | Birdsall et al. | Apr 2015 | B2 |
| 9003295 | Baschy | Apr 2015 | B2 |
| 9003552 | Goodwin et al. | Apr 2015 | B2 |
| 9009851 | Droste et al. | Apr 2015 | B2 |
| 9014661 | Decharms | Apr 2015 | B2 |
| 9015796 | Fujioka | Apr 2015 | B1 |
| 9021469 | Hilerio et al. | Apr 2015 | B2 |
| 9026526 | Bau et al. | May 2015 | B1 |
| 9030987 | Bianchei et al. | May 2015 | B2 |
| 9032067 | Prasad et al. | May 2015 | B2 |
| 9043217 | Cashman et al. | May 2015 | B2 |
| 9043480 | Barton et al. | May 2015 | B2 |
| 9047463 | Porras | Jun 2015 | B2 |
| 9047582 | Hutchinson et al. | Jun 2015 | B2 |
| 9047583 | Patton et al. | Jun 2015 | B2 |
| 9047639 | Quintiliani et al. | Jun 2015 | B1 |
| 9049244 | Prince et al. | Jun 2015 | B2 |
| 9049314 | Pugh et al. | Jun 2015 | B2 |
| 9055071 | Gates et al. | Jun 2015 | B1 |
| 9058590 | Criddle et al. | Jun 2015 | B2 |
| 9064033 | Jin et al. | Jun 2015 | B2 |
| 9069940 | Hars | Jun 2015 | B2 |
| 9076231 | Hill et al. | Jul 2015 | B1 |
| 9077736 | Werth et al. | Jul 2015 | B2 |
| 9081952 | Sagi et al. | Jul 2015 | B2 |
| 9087090 | Cormier et al. | Jul 2015 | B1 |
| 9092796 | Eversoll et al. | Jul 2015 | B2 |
| 9094434 | Williams et al. | Jul 2015 | B2 |
| 9098515 | Richter et al. | Aug 2015 | B2 |
| 9100778 | Stogaitis et al. | Aug 2015 | B2 |
| 9106691 | Burger et al. | Aug 2015 | B1 |
| 9106710 | Feimster | Aug 2015 | B1 |
| 9110918 | Rajaa et al. | Aug 2015 | B1 |
| 9111105 | Barton et al. | Aug 2015 | B2 |
| 9111295 | Tietzen et al. | Aug 2015 | B2 |
| 9123330 | Sharifi et al. | Sep 2015 | B1 |
| 9123339 | Shaw et al. | Sep 2015 | B1 |
| 9129311 | Schoen et al. | Sep 2015 | B2 |
| 9135261 | Maunder et al. | Sep 2015 | B2 |
| 9135444 | Carter et al. | Sep 2015 | B2 |
| 9141823 | Dawson | Sep 2015 | B2 |
| 9141911 | Zhao et al. | Sep 2015 | B2 |
| 9152818 | Hathaway et al. | Oct 2015 | B1 |
| 9152820 | Pauley, Jr. et al. | Oct 2015 | B1 |
| 9154514 | Prakash | Oct 2015 | B1 |
| 9154556 | Dotan et al. | Oct 2015 | B1 |
| 9158655 | Wadhwani et al. | Oct 2015 | B2 |
| 9165036 | Mehra | Oct 2015 | B2 |
| 9170996 | Lovric et al. | Oct 2015 | B2 |
| 9172706 | Krishnamurthy et al. | Oct 2015 | B2 |
| 9177293 | Gagnon et al. | Nov 2015 | B1 |
| 9178901 | Xue et al. | Nov 2015 | B2 |
| 9183100 | Gventer et al. | Nov 2015 | B2 |
| 9189642 | Perlman | Nov 2015 | B2 |
| 9201572 | Lyon et al. | Dec 2015 | B2 |
| 9201770 | Duerk | Dec 2015 | B1 |
| 9202026 | Reeves | Dec 2015 | B1 |
| 9202085 | Mawdsley et al. | Dec 2015 | B2 |
| 9215076 | Roth et al. | Dec 2015 | B1 |
| 9215252 | Smith et al. | Dec 2015 | B2 |
| 9218596 | Ronca et al. | Dec 2015 | B2 |
| 9224009 | Liu et al. | Dec 2015 | B1 |
| 9230036 | Davis | Jan 2016 | B2 |
| 9231935 | Bridge et al. | Jan 2016 | B1 |
| 9232040 | Barash et al. | Jan 2016 | B2 |
| 9235476 | McHugh et al. | Jan 2016 | B2 |
| 9240987 | Barrett-Bowen et al. | Jan 2016 | B2 |
| 9241259 | Daniela et al. | Jan 2016 | B2 |
| 9245126 | Christodorescu et al. | Jan 2016 | B2 |
| 9245266 | Hardt | Jan 2016 | B2 |
| 9253609 | Hosier, Jr. | Feb 2016 | B2 |
| 9264443 | Weisman | Feb 2016 | B2 |
| 9274858 | Milliron et al. | Mar 2016 | B2 |
| 9280581 | Grimes et al. | Mar 2016 | B1 |
| 9286149 | Sampson et al. | Mar 2016 | B2 |
| 9286282 | Ling, III et al. | Mar 2016 | B2 |
| 9288118 | Pattan | Mar 2016 | B1 |
| 9288556 | Kim et al. | Mar 2016 | B2 |
| 9294498 | Yampolskiy et al. | Mar 2016 | B1 |
| 9299050 | Stiffler et al. | Mar 2016 | B2 |
| 9306939 | Chan et al. | Apr 2016 | B2 |
| 9317697 | Maier et al. | Apr 2016 | B2 |
| 9317715 | Schuette et al. | Apr 2016 | B2 |
| 9325731 | McGeehan | Apr 2016 | B2 |
| 9336184 | Mital et al. | May 2016 | B2 |
| 9336220 | Li et al. | May 2016 | B2 |
| 9336324 | Lomme et al. | May 2016 | B2 |
| 9336332 | Davis et al. | May 2016 | B2 |
| 9336400 | Milman et al. | May 2016 | B2 |
| 9338188 | Ahn | May 2016 | B1 |
| 9342706 | Chawla et al. | May 2016 | B2 |
| 9344297 | Shah et al. | May 2016 | B2 |
| 9344424 | Tenenboym et al. | May 2016 | B2 |
| 9344484 | Ferris | May 2016 | B2 |
| 9348802 | Massand | May 2016 | B2 |
| 9348862 | Kawecki, III | May 2016 | B2 |
| 9348929 | Eberlein | May 2016 | B2 |
| 9349016 | Brisebois et al. | May 2016 | B1 |
| 9350718 | Sondhi et al. | May 2016 | B2 |
| 9355157 | Mohammed et al. | May 2016 | B2 |
| 9356961 | Todd et al. | May 2016 | B1 |
| 9361446 | Demirjian et al. | Jun 2016 | B1 |
| 9369488 | Woods et al. | Jun 2016 | B2 |
| 9374693 | Olincy et al. | Jun 2016 | B1 |
| 9384199 | Thereska et al. | Jul 2016 | B2 |
| 9384357 | Patil et al. | Jul 2016 | B2 |
| 9386104 | Adams et al. | Jul 2016 | B2 |
| 9395959 | Hatfield et al. | Jul 2016 | B2 |
| 9396332 | Abrams et al. | Jul 2016 | B2 |
| 9401900 | Levasseur et al. | Jul 2016 | B2 |
| 9411967 | Parecki et al. | Aug 2016 | B2 |
| 9411982 | Dippenaar et al. | Aug 2016 | B1 |
| 9417859 | Gounares et al. | Aug 2016 | B2 |
| 9424021 | Zamir | Aug 2016 | B2 |
| 9424414 | Demirjian et al. | Aug 2016 | B1 |
| 9426177 | Wang et al. | Aug 2016 | B2 |
| 9450940 | Belov et al. | Sep 2016 | B2 |
| 9460136 | Todd et al. | Oct 2016 | B1 |
| 9460171 | Marrelli et al. | Oct 2016 | B2 |
| 9460307 | Breslau et al. | Oct 2016 | B2 |
| 9461876 | Van Dusen et al. | Oct 2016 | B2 |
| 9462009 | Kolman et al. | Oct 2016 | B1 |
| 9465702 | Gventer et al. | Oct 2016 | B2 |
| 9465800 | Lacey | Oct 2016 | B2 |
| 9473446 | Vijay et al. | Oct 2016 | B2 |
| 9473505 | Asano et al. | Oct 2016 | B1 |
| 9473535 | Sartor | Oct 2016 | B2 |
| 9477523 | Warman et al. | Oct 2016 | B1 |
| 9477660 | Scott et al. | Oct 2016 | B2 |
| 9477685 | Leung et al. | Oct 2016 | B1 |
| 9477942 | Adachi et al. | Oct 2016 | B2 |
| 9483659 | Bao et al. | Nov 2016 | B2 |
| 9489366 | Scott et al. | Nov 2016 | B2 |
| 9495547 | Schepis et al. | Nov 2016 | B1 |
| 9501523 | Hyatt et al. | Nov 2016 | B2 |
| 9507960 | Bell et al. | Nov 2016 | B2 |
| 9509674 | Nasserbakht et al. | Nov 2016 | B1 |
| 9509702 | Grigg et al. | Nov 2016 | B2 |
| 9514231 | Eden | Dec 2016 | B2 |
| 9516012 | Chochois et al. | Dec 2016 | B2 |
| 9521166 | Wilson | Dec 2016 | B2 |
| 9524500 | Dave et al. | Dec 2016 | B2 |
| 9529989 | Kling et al. | Dec 2016 | B2 |
| 9536108 | Powell et al. | Jan 2017 | B2 |
| 9537546 | Cordeiro et al. | Jan 2017 | B2 |
| 9542568 | Francis et al. | Jan 2017 | B2 |
| 9549047 | Fredinburg et al. | Jan 2017 | B1 |
| 9552395 | Bayer et al. | Jan 2017 | B2 |
| 9552470 | Turgeman et al. | Jan 2017 | B2 |
| 9553918 | Manion et al. | Jan 2017 | B1 |
| 9558497 | Carvalho | Jan 2017 | B2 |
| 9569752 | Deering et al. | Feb 2017 | B2 |
| 9571509 | Satish et al. | Feb 2017 | B1 |
| 9571526 | Sartor | Feb 2017 | B2 |
| 9571559 | Raleigh et al. | Feb 2017 | B2 |
| 9571991 | Brizendine et al. | Feb 2017 | B1 |
| 9576289 | Henderson et al. | Feb 2017 | B2 |
| 9578060 | Brisebois et al. | Feb 2017 | B1 |
| 9578173 | Sanghavi et al. | Feb 2017 | B2 |
| 9582681 | Mishra | Feb 2017 | B2 |
| 9584964 | Pelkey | Feb 2017 | B2 |
| 9589110 | Carey et al. | Mar 2017 | B2 |
| 9600181 | Patel et al. | Mar 2017 | B2 |
| 9602529 | Jones et al. | Mar 2017 | B2 |
| 9606971 | Seolas et al. | Mar 2017 | B2 |
| 9607041 | Himmelstein | Mar 2017 | B2 |
| 9619652 | Slater | Apr 2017 | B2 |
| 9619661 | Finkelstein | Apr 2017 | B1 |
| 9621357 | Williams et al. | Apr 2017 | B2 |
| 9621566 | Gupta et al. | Apr 2017 | B2 |
| 9626124 | Lipinski et al. | Apr 2017 | B2 |
| 9626680 | Ryan et al. | Apr 2017 | B1 |
| 9629064 | Graves et al. | Apr 2017 | B2 |
| 9642008 | Wyatt et al. | May 2017 | B2 |
| 9646095 | Gottlieb et al. | May 2017 | B1 |
| 9647949 | Varki et al. | May 2017 | B2 |
| 9648036 | Seiver et al. | May 2017 | B2 |
| 9652314 | Mahiddini | May 2017 | B2 |
| 9654506 | Barrett | May 2017 | B2 |
| 9654541 | Kapczynski et al. | May 2017 | B1 |
| 9665722 | Nagasu et al. | May 2017 | B2 |
| 9665733 | Sills et al. | May 2017 | B1 |
| 9665883 | Roullier et al. | May 2017 | B2 |
| 9672053 | Tang et al. | Jun 2017 | B2 |
| 9672355 | Titonis et al. | Jun 2017 | B2 |
| 9678794 | Barrett et al. | Jun 2017 | B1 |
| 9691090 | Barday | Jun 2017 | B1 |
| 9699209 | Ng et al. | Jul 2017 | B2 |
| 9703549 | Dufresne | Jul 2017 | B2 |
| 9704103 | Suskind et al. | Jul 2017 | B2 |
| 9705840 | Pujare et al. | Jul 2017 | B2 |
| 9705880 | Siris | Jul 2017 | B2 |
| 9721078 | Cornick et al. | Aug 2017 | B2 |
| 9721108 | Krishnamurthy et al. | Aug 2017 | B2 |
| 9727751 | Oliver et al. | Aug 2017 | B2 |
| 9729583 | Barday | Aug 2017 | B1 |
| 9734148 | Bendersky et al. | Aug 2017 | B2 |
| 9734255 | Jiang | Aug 2017 | B2 |
| 9736004 | Jung et al. | Aug 2017 | B2 |
| 9740985 | Byron et al. | Aug 2017 | B2 |
| 9740987 | Dolan | Aug 2017 | B2 |
| 9749408 | Subramani et al. | Aug 2017 | B2 |
| 9754091 | Kode et al. | Sep 2017 | B2 |
| 9756059 | Demirjian et al. | Sep 2017 | B2 |
| 9760620 | Nachnani et al. | Sep 2017 | B2 |
| 9760635 | Bliss et al. | Sep 2017 | B2 |
| 9760697 | Walker | Sep 2017 | B1 |
| 9760849 | Vinnakota et al. | Sep 2017 | B2 |
| 9762553 | Ford et al. | Sep 2017 | B2 |
| 9767202 | Darby et al. | Sep 2017 | B2 |
| 9767309 | Patel et al. | Sep 2017 | B1 |
| 9769124 | Yan | Sep 2017 | B2 |
| 9773269 | Lazarus | Sep 2017 | B1 |
| 9785795 | Grondin et al. | Oct 2017 | B2 |
| 9787671 | Bogrett | Oct 2017 | B1 |
| 9798749 | Saner | Oct 2017 | B2 |
| 9798826 | Wilson et al. | Oct 2017 | B2 |
| 9798896 | Jakobsson | Oct 2017 | B2 |
| 9800605 | Baikalov et al. | Oct 2017 | B2 |
| 9800606 | Yumer | Oct 2017 | B1 |
| 9804649 | Cohen et al. | Oct 2017 | B2 |
| 9804928 | Davis et al. | Oct 2017 | B2 |
| 9805381 | Frank et al. | Oct 2017 | B2 |
| 9811532 | Parkison et al. | Nov 2017 | B2 |
| 9817850 | Dubbels et al. | Nov 2017 | B2 |
| 9817978 | Marsh et al. | Nov 2017 | B2 |
| 9819684 | Cernoch et al. | Nov 2017 | B2 |
| 9825928 | Lelcuk | Nov 2017 | B2 |
| 9830563 | Paknad | Nov 2017 | B2 |
| 9832633 | Gerber, Jr. et al. | Nov 2017 | B2 |
| 9836598 | Iyer et al. | Dec 2017 | B2 |
| 9838407 | Oprea et al. | Dec 2017 | B1 |
| 9838839 | Vudali et al. | Dec 2017 | B2 |
| 9841969 | Seibert, Jr. et al. | Dec 2017 | B2 |
| 9842042 | Chhatwal et al. | Dec 2017 | B2 |
| 9842349 | Sawczuk et al. | Dec 2017 | B2 |
| 9848005 | Ardeli et al. | Dec 2017 | B2 |
| 9848061 | Jain et al. | Dec 2017 | B1 |
| 9852150 | Sharpe et al. | Dec 2017 | B2 |
| 9853959 | Kapczynski et al. | Dec 2017 | B1 |
| 9860226 | Thormaehlen | Jan 2018 | B2 |
| 9864735 | Lamprecht | Jan 2018 | B1 |
| 9876825 | Amar et al. | Jan 2018 | B2 |
| 9877138 | Franklin | Jan 2018 | B1 |
| 9880157 | Levak et al. | Jan 2018 | B2 |
| 9882935 | Barday | Jan 2018 | B2 |
| 9887965 | Kay et al. | Feb 2018 | B2 |
| 9888377 | McCorkendale et al. | Feb 2018 | B1 |
| 9892441 | Barday | Feb 2018 | B2 |
| 9892442 | Barday | Feb 2018 | B2 |
| 9892443 | Barday | Feb 2018 | B2 |
| 9892444 | Barday | Feb 2018 | B2 |
| 9894076 | Li et al. | Feb 2018 | B2 |
| 9898613 | Swerdlow et al. | Feb 2018 | B1 |
| 9898739 | Monastyrsky et al. | Feb 2018 | B2 |
| 9898769 | Barday | Feb 2018 | B2 |
| 9912625 | Mutha et al. | Mar 2018 | B2 |
| 9912677 | Chien | Mar 2018 | B2 |
| 9912810 | Segre et al. | Mar 2018 | B2 |
| 9916703 | Levinson et al. | Mar 2018 | B2 |
| 9922124 | Rathod | Mar 2018 | B2 |
| 9923927 | McClintock et al. | Mar 2018 | B1 |
| 9928379 | Hoffer | Mar 2018 | B1 |
| 9934493 | Castinado et al. | Apr 2018 | B2 |
| 9934544 | Whitfield et al. | Apr 2018 | B1 |
| 9936127 | Todasco | Apr 2018 | B2 |
| 9942214 | Burciu et al. | Apr 2018 | B1 |
| 9942244 | Lahoz et al. | Apr 2018 | B2 |
| 9942276 | Sartor | Apr 2018 | B2 |
| 9946897 | Lovin | Apr 2018 | B2 |
| 9948652 | Yu et al. | Apr 2018 | B2 |
| 9948663 | Wang et al. | Apr 2018 | B1 |
| 9953189 | Cook et al. | Apr 2018 | B2 |
| 9954879 | Sadaghiani et al. | Apr 2018 | B1 |
| 9954883 | Ahuja et al. | Apr 2018 | B2 |
| 9959551 | Schermerhorn et al. | May 2018 | B1 |
| 9959582 | Sukman et al. | May 2018 | B2 |
| 9961070 | Tang | May 2018 | B2 |
| 9973518 | Lee et al. | May 2018 | B2 |
| 9973585 | Ruback et al. | May 2018 | B2 |
| 9977904 | Khan et al. | May 2018 | B2 |
| 9977920 | Danielson et al. | May 2018 | B2 |
| 9983936 | Dornemann et al. | May 2018 | B2 |
| 9984252 | Pollard | May 2018 | B2 |
| 9990499 | Chan et al. | Jun 2018 | B2 |
| 9992213 | Sinnema | Jun 2018 | B2 |
| 10001975 | Bharthulwar | Jun 2018 | B2 |
| 10002064 | Muske | Jun 2018 | B2 |
| 10007895 | Vanasco | Jun 2018 | B2 |
| 10013577 | Beaumont et al. | Jul 2018 | B1 |
| 10015164 | Hamburg et al. | Jul 2018 | B2 |
| 10019339 | Von Hanxleden et al. | Jul 2018 | B2 |
| 10019588 | Garcia et al. | Jul 2018 | B2 |
| 10019591 | Beguin | Jul 2018 | B1 |
| 10019741 | Hesselink | Jul 2018 | B2 |
| 10021143 | Cabrera et al. | Jul 2018 | B2 |
| 10025804 | Vranyes et al. | Jul 2018 | B2 |
| 10028226 | Ayyagari et al. | Jul 2018 | B2 |
| 10032172 | Barday | Jul 2018 | B2 |
| 10044761 | Ducatel et al. | Aug 2018 | B2 |
| 10055426 | Arasan et al. | Aug 2018 | B2 |
| 10055869 | Borrelli et al. | Aug 2018 | B2 |
| 10061847 | Mohammed et al. | Aug 2018 | B2 |
| 10069858 | Robinson et al. | Sep 2018 | B2 |
| 10069914 | Smith | Sep 2018 | B1 |
| 10073924 | Karp et al. | Sep 2018 | B2 |
| 10075437 | Costigan et al. | Sep 2018 | B1 |
| 10075451 | Hall et al. | Sep 2018 | B1 |
| 10084817 | Saher et al. | Sep 2018 | B2 |
| 10091214 | Godlewski et al. | Oct 2018 | B2 |
| 10091312 | Khanwalkar et al. | Oct 2018 | B1 |
| 10102533 | Barday | Oct 2018 | B2 |
| 10108409 | Pirzadeh et al. | Oct 2018 | B2 |
| 10122663 | Hu et al. | Nov 2018 | B2 |
| 10122760 | Terrill et al. | Nov 2018 | B2 |
| 10127403 | Kong et al. | Nov 2018 | B2 |
| 10129211 | Heath | Nov 2018 | B2 |
| 10140666 | Wang et al. | Nov 2018 | B1 |
| 10142113 | Zaidi et al. | Nov 2018 | B2 |
| 10152560 | Potiagalov et al. | Dec 2018 | B2 |
| 10158676 | Barday | Dec 2018 | B2 |
| 10165011 | Barday | Dec 2018 | B2 |
| 10169762 | Ogawa | Jan 2019 | B2 |
| 10176503 | Barday et al. | Jan 2019 | B2 |
| 10181043 | Pauley, Jr. et al. | Jan 2019 | B1 |
| 10181051 | Barday et al. | Jan 2019 | B2 |
| 10187363 | Smirnoff et al. | Jan 2019 | B2 |
| 10187394 | Bar et al. | Jan 2019 | B2 |
| 10204154 | Barday et al. | Feb 2019 | B2 |
| 10205994 | Splaine et al. | Feb 2019 | B2 |
| 10212134 | Rai | Feb 2019 | B2 |
| 10212175 | Seul et al. | Feb 2019 | B2 |
| 10223533 | Dawson | Mar 2019 | B2 |
| 10230571 | Rangasamy et al. | Mar 2019 | B2 |
| 10250594 | Chathoth et al. | Apr 2019 | B2 |
| 10255602 | Wang | Apr 2019 | B2 |
| 10257127 | Dotan-Cohen et al. | Apr 2019 | B2 |
| 10257181 | Sherif et al. | Apr 2019 | B1 |
| 10268838 | Yadgiri et al. | Apr 2019 | B2 |
| 10275221 | Thattai et al. | Apr 2019 | B2 |
| 10275614 | Barday et al. | Apr 2019 | B2 |
| 10282370 | Barday et al. | May 2019 | B1 |
| 10282559 | Barday et al. | May 2019 | B2 |
| 10284604 | Barday et al. | May 2019 | B2 |
| 10289584 | Chiba | May 2019 | B2 |
| 10289857 | Brinskelle | May 2019 | B1 |
| 10289866 | Barday et al. | May 2019 | B2 |
| 10289867 | Barday et al. | May 2019 | B2 |
| 10289870 | Barday et al. | May 2019 | B2 |
| 10296504 | Hock et al. | May 2019 | B2 |
| 10304442 | Rudden et al. | May 2019 | B1 |
| 10310723 | Rathod | Jun 2019 | B2 |
| 10311042 | Kumar | Jun 2019 | B1 |
| 10311475 | Yuasa | Jun 2019 | B2 |
| 10311492 | Gelfenbeyn et al. | Jun 2019 | B2 |
| 10318761 | Barday et al. | Jun 2019 | B2 |
| 10320940 | Brennan et al. | Jun 2019 | B1 |
| 10324960 | Skvortsov et al. | Jun 2019 | B1 |
| 10326768 | Verweyst et al. | Jun 2019 | B2 |
| 10326798 | Lambert | Jun 2019 | B2 |
| 10326841 | Bradley et al. | Jun 2019 | B2 |
| 10331689 | Sorrentino et al. | Jun 2019 | B2 |
| 10331904 | Sher-Jan et al. | Jun 2019 | B2 |
| 10333975 | Soman et al. | Jun 2019 | B2 |
| 10346186 | Kalyanpur | Jul 2019 | B2 |
| 10346635 | Kumar et al. | Jul 2019 | B2 |
| 10346637 | Barday et al. | Jul 2019 | B2 |
| 10346638 | Barday et al. | Jul 2019 | B2 |
| 10346849 | Ionescu et al. | Jul 2019 | B2 |
| 10348726 | Caluwaert | Jul 2019 | B2 |
| 10348775 | Barday | Jul 2019 | B2 |
| 10353673 | Barday et al. | Jul 2019 | B2 |
| 10361857 | Woo | Jul 2019 | B2 |
| 10366241 | Sartor | Jul 2019 | B2 |
| 10373119 | Driscoll et al. | Aug 2019 | B2 |
| 10373409 | White et al. | Aug 2019 | B2 |
| 10375115 | Mallya | Aug 2019 | B2 |
| 10387559 | Wendt et al. | Aug 2019 | B1 |
| 10387657 | Belfiore, Jr. et al. | Aug 2019 | B2 |
| 10387952 | Sandhu et al. | Aug 2019 | B1 |
| 10395201 | Vescio | Aug 2019 | B2 |
| 10402545 | Gorfein et al. | Sep 2019 | B2 |
| 10404729 | Turgeman | Sep 2019 | B2 |
| 10417401 | Votaw et al. | Sep 2019 | B2 |
| 10417621 | Cassel et al. | Sep 2019 | B2 |
| 10419476 | Parekh | Sep 2019 | B2 |
| 10423985 | Dutta et al. | Sep 2019 | B1 |
| 10425492 | Comstock et al. | Sep 2019 | B2 |
| 10430608 | Peri et al. | Oct 2019 | B2 |
| 10435350 | Ito et al. | Oct 2019 | B2 |
| 10437412 | Barday et al. | Oct 2019 | B2 |
| 10437860 | Barday et al. | Oct 2019 | B2 |
| 10438016 | Barday et al. | Oct 2019 | B2 |
| 10438273 | Burns et al. | Oct 2019 | B2 |
| 10440062 | Barday et al. | Oct 2019 | B2 |
| 10445508 | Sher-Jan et al. | Oct 2019 | B2 |
| 10445526 | Barday et al. | Oct 2019 | B2 |
| 10452864 | Barday et al. | Oct 2019 | B2 |
| 10452866 | Barday et al. | Oct 2019 | B2 |
| 10453076 | Parekh et al. | Oct 2019 | B2 |
| 10453092 | Wang et al. | Oct 2019 | B1 |
| 10454934 | Parimi et al. | Oct 2019 | B2 |
| 10481763 | Bartkiewicz et al. | Nov 2019 | B2 |
| 10489454 | Chen | Nov 2019 | B1 |
| 10503926 | Barday et al. | Dec 2019 | B2 |
| 10510031 | Barday et al. | Dec 2019 | B2 |
| 10521623 | Rodriguez et al. | Dec 2019 | B2 |
| 10534851 | Chan et al. | Jan 2020 | B1 |
| 10535081 | Ferreira et al. | Jan 2020 | B2 |
| 10536475 | McCorkle, Jr. et al. | Jan 2020 | B1 |
| 10536478 | Kirti et al. | Jan 2020 | B2 |
| 10541938 | Timmerman et al. | Jan 2020 | B1 |
| 10546135 | Kassoumeh et al. | Jan 2020 | B1 |
| 10552462 | Hart | Feb 2020 | B1 |
| 10558809 | Joyce et al. | Feb 2020 | B1 |
| 10558821 | Barday et al. | Feb 2020 | B2 |
| 10564815 | Soon-Shiong | Feb 2020 | B2 |
| 10564935 | Barday et al. | Feb 2020 | B2 |
| 10564936 | Barday et al. | Feb 2020 | B2 |
| 10565161 | Barday et al. | Feb 2020 | B2 |
| 10565236 | Barday et al. | Feb 2020 | B1 |
| 10567439 | Barday | Feb 2020 | B2 |
| 10567517 | Weinig et al. | Feb 2020 | B2 |
| 10572684 | Lafever et al. | Feb 2020 | B2 |
| 10572686 | Barday et al. | Feb 2020 | B2 |
| 10574705 | Barday et al. | Feb 2020 | B2 |
| 10581825 | Poschel et al. | Mar 2020 | B2 |
| 10592648 | Barday et al. | Mar 2020 | B2 |
| 10592692 | Brannon et al. | Mar 2020 | B2 |
| 10606916 | Brannon et al. | Mar 2020 | B2 |
| 10613971 | Vasikarla | Apr 2020 | B1 |
| 10628553 | Murrish et al. | Apr 2020 | B1 |
| 10645102 | Hamdi | May 2020 | B2 |
| 10645548 | Reynolds et al. | May 2020 | B2 |
| 10649630 | Vora et al. | May 2020 | B1 |
| 10650408 | Andersen et al. | May 2020 | B1 |
| 10657469 | Bade et al. | May 2020 | B2 |
| 10657504 | Zimmerman et al. | May 2020 | B1 |
| 10659566 | Luah et al. | May 2020 | B1 |
| 10671749 | Felice-Steele et al. | Jun 2020 | B2 |
| 10671760 | Esmailzadeh et al. | Jun 2020 | B2 |
| 10678945 | Barday et al. | Jun 2020 | B2 |
| 10685140 | Barday et al. | Jun 2020 | B2 |
| 10706176 | Brannon et al. | Jul 2020 | B2 |
| 10706226 | Byun et al. | Jul 2020 | B2 |
| 10708305 | Barday et al. | Jul 2020 | B2 |
| 10713387 | Brannon et al. | Jul 2020 | B2 |
| 10726145 | Duminy et al. | Jul 2020 | B2 |
| 10726153 | Nerurkar et al. | Jul 2020 | B2 |
| 10726158 | Brannon et al. | Jul 2020 | B2 |
| 10732865 | Jain et al. | Aug 2020 | B2 |
| 10735388 | Rose et al. | Aug 2020 | B2 |
| 10740487 | Barday et al. | Aug 2020 | B2 |
| 10747893 | Kiriyama et al. | Aug 2020 | B2 |
| 10747897 | Cook | Aug 2020 | B2 |
| 10749870 | Brouillette et al. | Aug 2020 | B2 |
| 10762213 | Rudek et al. | Sep 2020 | B2 |
| 10762236 | Brannon et al. | Sep 2020 | B2 |
| 10769302 | Barday et al. | Sep 2020 | B2 |
| 10769303 | Brannon et al. | Sep 2020 | B2 |
| 10776510 | Antonelli et al. | Sep 2020 | B2 |
| 10776518 | Barday et al. | Sep 2020 | B2 |
| 10778792 | Handy Bosma et al. | Sep 2020 | B1 |
| 10785173 | Willett et al. | Sep 2020 | B2 |
| 10785299 | Gupta et al. | Sep 2020 | B2 |
| 10791150 | Barday et al. | Sep 2020 | B2 |
| 10795527 | Legge et al. | Oct 2020 | B1 |
| 10796020 | Barday et al. | Oct 2020 | B2 |
| 10796260 | Brannon et al. | Oct 2020 | B2 |
| 10798133 | Barday et al. | Oct 2020 | B2 |
| 10803196 | Bodegas Martinez et al. | Oct 2020 | B2 |
| 10805331 | Boyer et al. | Oct 2020 | B2 |
| 10831831 | Greene | Nov 2020 | B2 |
| 10834590 | Furgemanavi et al. | Nov 2020 | B2 |
| 10846433 | Brannon et al. | Nov 2020 | B2 |
| 10853501 | Brannon | Dec 2020 | B2 |
| 10860721 | Gentile | Dec 2020 | B1 |
| 10860742 | Joseph et al. | Dec 2020 | B2 |
| 10860979 | Geffen et al. | Dec 2020 | B2 |
| 10878127 | Brannon et al. | Dec 2020 | B2 |
| 10885485 | Brannon et al. | Jan 2021 | B2 |
| 10891393 | Currier et al. | Jan 2021 | B2 |
| 10893074 | Sartor | Jan 2021 | B2 |
| 10896394 | Brannon et al. | Jan 2021 | B2 |
| 10902490 | He et al. | Jan 2021 | B2 |
| 10909488 | Hecht et al. | Feb 2021 | B2 |
| 10924514 | Altman et al. | Feb 2021 | B1 |
| 10949555 | Rattan et al. | Mar 2021 | B2 |
| 10949565 | Barday et al. | Mar 2021 | B2 |
| 10957326 | Bhaya et al. | Mar 2021 | B2 |
| 10963571 | Bar Joseph et al. | Mar 2021 | B2 |
| 10963572 | Belfiore, Jr. et al. | Mar 2021 | B2 |
| 10965547 | Esposito et al. | Mar 2021 | B1 |
| 10970418 | Durvasula et al. | Apr 2021 | B2 |
| 10972509 | Barday et al. | Apr 2021 | B2 |
| 10976950 | Trezzo et al. | Apr 2021 | B1 |
| 10983963 | Venkatasubramanian et al. | Apr 2021 | B1 |
| 10984458 | Gutierrez | Apr 2021 | B1 |
| 10997318 | Barday et al. | May 2021 | B2 |
| 11003748 | Oliker et al. | May 2021 | B2 |
| 11012475 | Patnala et al. | May 2021 | B2 |
| 11023528 | Lee et al. | Jun 2021 | B1 |
| 11037168 | Lee et al. | Jun 2021 | B1 |
| 11057356 | Malhotra et al. | Jul 2021 | B2 |
| 11057427 | Wright et al. | Jul 2021 | B2 |
| 11062051 | Barday et al. | Jul 2021 | B2 |
| 11068318 | Kuesel et al. | Jul 2021 | B2 |
| 11068584 | Burriesci et al. | Jul 2021 | B2 |
| 11068618 | Brannon et al. | Jul 2021 | B2 |
| 11068797 | Bhide et al. | Jul 2021 | B2 |
| 11068847 | Boutros et al. | Jul 2021 | B2 |
| 11093950 | Hersh et al. | Aug 2021 | B2 |
| 11138299 | Brannon et al. | Oct 2021 | B2 |
| 11144622 | Brannon et al. | Oct 2021 | B2 |
| 11144678 | Dondini et al. | Oct 2021 | B2 |
| 11144862 | Jackson et al. | Oct 2021 | B1 |
| 11195134 | Brannon et al. | Dec 2021 | B2 |
| 11201929 | Dudmesh et al. | Dec 2021 | B2 |
| 11238390 | Brannon et al. | Feb 2022 | B2 |
| 11240273 | Barday et al. | Feb 2022 | B2 |
| 11252159 | Kannan et al. | Feb 2022 | B2 |
| 11256777 | Brannon et al. | Feb 2022 | B2 |
| 11263262 | Chen | Mar 2022 | B2 |
| 11327996 | Reynolds et al. | May 2022 | B2 |
| 20020004736 | Roundtree et al. | Jan 2002 | A1 |
| 20020049907 | Woods et al. | Apr 2002 | A1 |
| 20020055932 | Wheeler et al. | May 2002 | A1 |
| 20020077941 | Halligan et al. | Jun 2002 | A1 |
| 20020103854 | Okita | Aug 2002 | A1 |
| 20020129216 | Collins | Sep 2002 | A1 |
| 20020161594 | Bryan et al. | Oct 2002 | A1 |
| 20020161733 | Grainger | Oct 2002 | A1 |
| 20030041250 | Proudler | Feb 2003 | A1 |
| 20030065641 | Chaloux | Apr 2003 | A1 |
| 20030093680 | Astley et al. | May 2003 | A1 |
| 20030097451 | Bjorksten et al. | May 2003 | A1 |
| 20030097661 | Li et al. | May 2003 | A1 |
| 20030115142 | Brickell et al. | Jun 2003 | A1 |
| 20030130893 | Farmer | Jul 2003 | A1 |
| 20030131001 | Matsuo | Jul 2003 | A1 |
| 20030131093 | Aschen et al. | Jul 2003 | A1 |
| 20030140150 | Kemp et al. | Jul 2003 | A1 |
| 20030167216 | Brown et al. | Sep 2003 | A1 |
| 20030212604 | Cullen | Nov 2003 | A1 |
| 20040002818 | Kulp et al. | Jan 2004 | A1 |
| 20040025053 | Hayward | Feb 2004 | A1 |
| 20040088235 | Ziekle et al. | May 2004 | A1 |
| 20040098366 | Sinclair et al. | May 2004 | A1 |
| 20040098493 | Rees | May 2004 | A1 |
| 20040111359 | Hudock | Jun 2004 | A1 |
| 20040186912 | Harlow et al. | Sep 2004 | A1 |
| 20040193907 | Patanella | Sep 2004 | A1 |
| 20050022198 | Olapurath et al. | Jan 2005 | A1 |
| 20050033616 | Vavul et al. | Feb 2005 | A1 |
| 20050076294 | Dehamer et al. | Apr 2005 | A1 |
| 20050102354 | Hollenbeck | May 2005 | A1 |
| 20050114343 | Wesinger et al. | May 2005 | A1 |
| 20050144066 | Cope et al. | Jun 2005 | A1 |
| 20050197884 | Mullen | Sep 2005 | A1 |
| 20050198177 | Black | Sep 2005 | A1 |
| 20050198646 | Kortela | Sep 2005 | A1 |
| 20050246292 | Sarcanin | Nov 2005 | A1 |
| 20050278538 | Fowler | Dec 2005 | A1 |
| 20060031078 | Pizzinger et al. | Feb 2006 | A1 |
| 20060035204 | Lamarche et al. | Feb 2006 | A1 |
| 20060075122 | Lindskog et al. | Apr 2006 | A1 |
| 20060149730 | Curtis | Jul 2006 | A1 |
| 20060156052 | Bodnar et al. | Jul 2006 | A1 |
| 20060190280 | Hoebel et al. | Aug 2006 | A1 |
| 20060206375 | Scott et al. | Sep 2006 | A1 |
| 20060224422 | Cohen | Oct 2006 | A1 |
| 20060253597 | Mujica | Nov 2006 | A1 |
| 20060259416 | Johnson | Nov 2006 | A1 |
| 20070011058 | Dev | Jan 2007 | A1 |
| 20070027715 | Gropper et al. | Feb 2007 | A1 |
| 20070061125 | Bhatt et al. | Mar 2007 | A1 |
| 20070061393 | Moore | Mar 2007 | A1 |
| 20070130101 | Anderson et al. | Jun 2007 | A1 |
| 20070130323 | Landsman et al. | Jun 2007 | A1 |
| 20070157311 | Meier et al. | Jul 2007 | A1 |
| 20070168336 | Ransil | Jul 2007 | A1 |
| 20070173355 | Klein | Jul 2007 | A1 |
| 20070179793 | Bagchi et al. | Aug 2007 | A1 |
| 20070180490 | Renzi et al. | Aug 2007 | A1 |
| 20070192438 | Goei | Aug 2007 | A1 |
| 20070266420 | Hawkins et al. | Nov 2007 | A1 |
| 20070283171 | Breslin et al. | Dec 2007 | A1 |
| 20080015927 | Ramirez | Jan 2008 | A1 |
| 20080028065 | Caso et al. | Jan 2008 | A1 |
| 20080028435 | Strickland et al. | Jan 2008 | A1 |
| 20080047016 | Spoonamore | Feb 2008 | A1 |
| 20080120699 | Spear | May 2008 | A1 |
| 20080140696 | Mathuria | Jun 2008 | A1 |
| 20080189306 | Hewett | Aug 2008 | A1 |
| 20080195436 | Whyte | Aug 2008 | A1 |
| 20080222271 | Spires | Sep 2008 | A1 |
| 20080235177 | Kim et al. | Sep 2008 | A1 |
| 20080270203 | Holmes et al. | Oct 2008 | A1 |
| 20080270351 | Thomsen | Oct 2008 | A1 |
| 20080270381 | Thomsen | Oct 2008 | A1 |
| 20080270382 | Thomsen et al. | Oct 2008 | A1 |
| 20080270451 | Thomsen et al. | Oct 2008 | A1 |
| 20080270462 | Thomsen | Oct 2008 | A1 |
| 20080281649 | Morris | Nov 2008 | A1 |
| 20080282320 | Denovo et al. | Nov 2008 | A1 |
| 20080288271 | Faust | Nov 2008 | A1 |
| 20080288299 | Schultz | Nov 2008 | A1 |
| 20090012896 | Arnold | Jan 2009 | A1 |
| 20090022301 | Mudaliar | Jan 2009 | A1 |
| 20090037975 | Ishikawa et al. | Feb 2009 | A1 |
| 20090119500 | Roth et al. | May 2009 | A1 |
| 20090132419 | Grammer et al. | May 2009 | A1 |
| 20090138276 | Hayashida et al. | May 2009 | A1 |
| 20090140035 | Miller | Jun 2009 | A1 |
| 20090144702 | Atkin et al. | Jun 2009 | A1 |
| 20090158249 | Tomkins et al. | Jun 2009 | A1 |
| 20090172705 | Cheong | Jul 2009 | A1 |
| 20090182818 | Krywaniuk | Jul 2009 | A1 |
| 20090187764 | Astakhov et al. | Jul 2009 | A1 |
| 20090204452 | Iskandar et al. | Aug 2009 | A1 |
| 20090204820 | Brandenburg et al. | Aug 2009 | A1 |
| 20090210347 | Sarcanin | Aug 2009 | A1 |
| 20090216610 | Chorny | Aug 2009 | A1 |
| 20090249076 | Reed et al. | Oct 2009 | A1 |
| 20090303237 | Liu et al. | Dec 2009 | A1 |
| 20100010912 | Jones et al. | Jan 2010 | A1 |
| 20100010968 | Redlich et al. | Jan 2010 | A1 |
| 20100077484 | Paretti et al. | Mar 2010 | A1 |
| 20100082533 | Nakamura et al. | Apr 2010 | A1 |
| 20100094650 | Tran et al. | Apr 2010 | A1 |
| 20100100398 | Auker et al. | Apr 2010 | A1 |
| 20100121773 | Currier et al. | May 2010 | A1 |
| 20100192201 | Shimoni et al. | Jul 2010 | A1 |
| 20100205057 | Hook et al. | Aug 2010 | A1 |
| 20100223349 | Thorson | Sep 2010 | A1 |
| 20100228786 | Tibor | Sep 2010 | A1 |
| 20100234987 | Benschop et al. | Sep 2010 | A1 |
| 20100235297 | Mamorsky | Sep 2010 | A1 |
| 20100235915 | Memon et al. | Sep 2010 | A1 |
| 20100262624 | Pullikottil | Oct 2010 | A1 |
| 20100268628 | Pitkow et al. | Oct 2010 | A1 |
| 20100268932 | Bhattacharjee | Oct 2010 | A1 |
| 20100281313 | White et al. | Nov 2010 | A1 |
| 20100287114 | Bartko et al. | Nov 2010 | A1 |
| 20100333012 | Adachi et al. | Dec 2010 | A1 |
| 20110006996 | Smith et al. | Jan 2011 | A1 |
| 20110010202 | Neale | Jan 2011 | A1 |
| 20110082794 | Blechman | Apr 2011 | A1 |
| 20110137696 | Meyer et al. | Jun 2011 | A1 |
| 20110145154 | Rivers et al. | Jun 2011 | A1 |
| 20110153396 | Marcuvitz et al. | Jun 2011 | A1 |
| 20110191664 | Sheleheda et al. | Aug 2011 | A1 |
| 20110208850 | Sheleheda et al. | Aug 2011 | A1 |
| 20110209067 | Bogess et al. | Aug 2011 | A1 |
| 20110231896 | Tovar | Sep 2011 | A1 |
| 20110238573 | Varadarajan | Sep 2011 | A1 |
| 20110252456 | Hatakeyama | Oct 2011 | A1 |
| 20110302643 | Pichna et al. | Dec 2011 | A1 |
| 20120041939 | Amsterdamski | Feb 2012 | A1 |
| 20120084151 | Kozak et al. | Apr 2012 | A1 |
| 20120084349 | Lee et al. | Apr 2012 | A1 |
| 20120102411 | Sathish | Apr 2012 | A1 |
| 20120102543 | Kohli et al. | Apr 2012 | A1 |
| 20120110674 | Belani et al. | May 2012 | A1 |
| 20120116923 | Irving et al. | May 2012 | A1 |
| 20120131438 | Li et al. | May 2012 | A1 |
| 20120143650 | Crowley et al. | Jun 2012 | A1 |
| 20120144499 | Tan et al. | Jun 2012 | A1 |
| 20120191596 | Kremen et al. | Jul 2012 | A1 |
| 20120226621 | Petran et al. | Sep 2012 | A1 |
| 20120239557 | Weinflash et al. | Sep 2012 | A1 |
| 20120254320 | Dove et al. | Oct 2012 | A1 |
| 20120259752 | Agee | Oct 2012 | A1 |
| 20120323700 | Aleksandrovich et al. | Dec 2012 | A1 |
| 20120330769 | Arceo | Dec 2012 | A1 |
| 20120330869 | Durham | Dec 2012 | A1 |
| 20130004933 | Bhaskaran | Jan 2013 | A1 |
| 20130018954 | Cheng | Jan 2013 | A1 |
| 20130085801 | Sharpe et al. | Apr 2013 | A1 |
| 20130091156 | Raiche et al. | Apr 2013 | A1 |
| 20130103485 | Postrel | Apr 2013 | A1 |
| 20130111323 | Taghaddos et al. | May 2013 | A1 |
| 20130124257 | Schubert | May 2013 | A1 |
| 20130159351 | Hamann et al. | Jun 2013 | A1 |
| 20130171968 | Wang | Jul 2013 | A1 |
| 20130179982 | Bridges et al. | Jul 2013 | A1 |
| 20130179988 | Bekker et al. | Jul 2013 | A1 |
| 20130185806 | Hatakeyama | Jul 2013 | A1 |
| 20130218829 | Martinez | Aug 2013 | A1 |
| 20130219459 | Bradley | Aug 2013 | A1 |
| 20130254649 | O'Neill et al. | Sep 2013 | A1 |
| 20130254699 | Bashir et al. | Sep 2013 | A1 |
| 20130262328 | Federgreen | Oct 2013 | A1 |
| 20130282466 | Hampton | Oct 2013 | A1 |
| 20130290169 | Bathula et al. | Oct 2013 | A1 |
| 20130298071 | Wine | Nov 2013 | A1 |
| 20130311224 | Heroux et al. | Nov 2013 | A1 |
| 20130318207 | Dotter | Nov 2013 | A1 |
| 20130326112 | Park et al. | Dec 2013 | A1 |
| 20130332362 | Ciurea | Dec 2013 | A1 |
| 20130340086 | Blom | Dec 2013 | A1 |
| 20140006355 | Kirihata | Jan 2014 | A1 |
| 20140006616 | Aad et al. | Jan 2014 | A1 |
| 20140012833 | Humprecht | Jan 2014 | A1 |
| 20140019561 | Belity et al. | Jan 2014 | A1 |
| 20140032259 | Lafever et al. | Jan 2014 | A1 |
| 20140032265 | Paprocki | Jan 2014 | A1 |
| 20140040134 | Ciurea | Feb 2014 | A1 |
| 20140040161 | Berlin | Feb 2014 | A1 |
| 20140040979 | Barton et al. | Feb 2014 | A1 |
| 20140041048 | Goodwin et al. | Feb 2014 | A1 |
| 20140047551 | Nagasu et al. | Feb 2014 | A1 |
| 20140052463 | Cashman et al. | Feb 2014 | A1 |
| 20140067973 | Eden | Mar 2014 | A1 |
| 20140074645 | Ingram | Mar 2014 | A1 |
| 20140089027 | Brown | Mar 2014 | A1 |
| 20140089039 | McClellan | Mar 2014 | A1 |
| 20140108173 | Cooper et al. | Apr 2014 | A1 |
| 20140108968 | Vishria | Apr 2014 | A1 |
| 20140137257 | Martinez et al. | May 2014 | A1 |
| 20140142988 | Grosso et al. | May 2014 | A1 |
| 20140143011 | Mudugu et al. | May 2014 | A1 |
| 20140164476 | Thomson | Jun 2014 | A1 |
| 20140188956 | Subba et al. | Jul 2014 | A1 |
| 20140196143 | Fliderman et al. | Jul 2014 | A1 |
| 20140208418 | Libin | Jul 2014 | A1 |
| 20140222468 | Araya et al. | Aug 2014 | A1 |
| 20140244309 | Francois | Aug 2014 | A1 |
| 20140244325 | Cartwright | Aug 2014 | A1 |
| 20140244375 | Kim | Aug 2014 | A1 |
| 20140244399 | Orduna et al. | Aug 2014 | A1 |
| 20140257917 | Spencer et al. | Sep 2014 | A1 |
| 20140258093 | Gardiner et al. | Sep 2014 | A1 |
| 20140278539 | Edwards | Sep 2014 | A1 |
| 20140278663 | Samuel et al. | Sep 2014 | A1 |
| 20140278730 | Muhart et al. | Sep 2014 | A1 |
| 20140283027 | Orona et al. | Sep 2014 | A1 |
| 20140283106 | Stahura et al. | Sep 2014 | A1 |
| 20140288971 | Whibbs, III | Sep 2014 | A1 |
| 20140289681 | Wielgosz | Sep 2014 | A1 |
| 20140289862 | Gorfein et al. | Sep 2014 | A1 |
| 20140317171 | Fox et al. | Oct 2014 | A1 |
| 20140324480 | Dufel et al. | Oct 2014 | A1 |
| 20140337041 | Madden et al. | Nov 2014 | A1 |
| 20140337466 | Li et al. | Nov 2014 | A1 |
| 20140344015 | Puertolas-Montanes et al. | Nov 2014 | A1 |
| 20150006514 | Hung | Jan 2015 | A1 |
| 20150012363 | Grant et al. | Jan 2015 | A1 |
| 20150019530 | Felch | Jan 2015 | A1 |
| 20150026056 | Calman et al. | Jan 2015 | A1 |
| 20150026260 | Worthley | Jan 2015 | A1 |
| 20150033112 | Norwood et al. | Jan 2015 | A1 |
| 20150066577 | Christiansen et al. | Mar 2015 | A1 |
| 20150066865 | Yara et al. | Mar 2015 | A1 |
| 20150088598 | Acharyya et al. | Mar 2015 | A1 |
| 20150106264 | Johnson | Apr 2015 | A1 |
| 20150106867 | Liang | Apr 2015 | A1 |
| 20150106948 | Holman et al. | Apr 2015 | A1 |
| 20150106949 | Holman et al. | Apr 2015 | A1 |
| 20150121462 | Courage et al. | Apr 2015 | A1 |
| 20150143258 | Carolan et al. | May 2015 | A1 |
| 20150149362 | Baum et al. | May 2015 | A1 |
| 20150154520 | Federgreen et al. | Jun 2015 | A1 |
| 20150169318 | Nash | Jun 2015 | A1 |
| 20150172296 | Fujioka | Jun 2015 | A1 |
| 20150178740 | Borawski et al. | Jun 2015 | A1 |
| 20150199534 | Francis et al. | Jul 2015 | A1 |
| 20150199541 | Koch et al. | Jul 2015 | A1 |
| 20150199702 | Singh | Jul 2015 | A1 |
| 20150229664 | Hawthorn et al. | Aug 2015 | A1 |
| 20150235049 | Cohen et al. | Aug 2015 | A1 |
| 20150235050 | Wouhaybi et al. | Aug 2015 | A1 |
| 20150235283 | Nishikawa | Aug 2015 | A1 |
| 20150242778 | Wilcox et al. | Aug 2015 | A1 |
| 20150242858 | Smith et al. | Aug 2015 | A1 |
| 20150248391 | Watanabe | Sep 2015 | A1 |
| 20150254597 | Jahagirdar | Sep 2015 | A1 |
| 20150261887 | Joukov | Sep 2015 | A1 |
| 20150262189 | Vergeer | Sep 2015 | A1 |
| 20150264417 | Spitz et al. | Sep 2015 | A1 |
| 20150269384 | Holman et al. | Sep 2015 | A1 |
| 20150271167 | Kalai | Sep 2015 | A1 |
| 20150309813 | Patel | Oct 2015 | A1 |
| 20150310227 | Ishida et al. | Oct 2015 | A1 |
| 20150310575 | Shelton | Oct 2015 | A1 |
| 20150348200 | Fair et al. | Dec 2015 | A1 |
| 20150356362 | Demos | Dec 2015 | A1 |
| 20150379430 | Dirac et al. | Dec 2015 | A1 |
| 20160006760 | Lala et al. | Jan 2016 | A1 |
| 20160012465 | Sharp | Jan 2016 | A1 |
| 20160026394 | Goto | Jan 2016 | A1 |
| 20160034918 | Bjelajac et al. | Feb 2016 | A1 |
| 20160048700 | Stransky-Heilkron | Feb 2016 | A1 |
| 20160050213 | Storr | Feb 2016 | A1 |
| 20160063523 | Nistor et al. | Mar 2016 | A1 |
| 20160063567 | Srivastava | Mar 2016 | A1 |
| 20160071112 | Unser | Mar 2016 | A1 |
| 20160080405 | Schler et al. | Mar 2016 | A1 |
| 20160099963 | Mahaffey et al. | Apr 2016 | A1 |
| 20160103963 | Mishra | Apr 2016 | A1 |
| 20160125550 | Joao et al. | May 2016 | A1 |
| 20160125749 | Delacroix et al. | May 2016 | A1 |
| 20160125751 | Barker et al. | May 2016 | A1 |
| 20160140466 | Sidebottom et al. | May 2016 | A1 |
| 20160143570 | Valacich et al. | May 2016 | A1 |
| 20160148143 | Anderson et al. | May 2016 | A1 |
| 20160162269 | Pogorelik et al. | Jun 2016 | A1 |
| 20160164915 | Cook | Jun 2016 | A1 |
| 20160180386 | Konig | Jun 2016 | A1 |
| 20160188450 | Appusamy et al. | Jun 2016 | A1 |
| 20160189156 | Kim et al. | Jun 2016 | A1 |
| 20160196189 | Miyagi et al. | Jul 2016 | A1 |
| 20160225000 | Glasgow | Aug 2016 | A1 |
| 20160232465 | Kurtz et al. | Aug 2016 | A1 |
| 20160232534 | Lacey et al. | Aug 2016 | A1 |
| 20160234319 | Griffin | Aug 2016 | A1 |
| 20160253497 | Christodorescu et al. | Sep 2016 | A1 |
| 20160255139 | Rathod | Sep 2016 | A1 |
| 20160261631 | Vissamsetty et al. | Sep 2016 | A1 |
| 20160262163 | Gonzalez Garrido et al. | Sep 2016 | A1 |
| 20160292453 | Patterson et al. | Oct 2016 | A1 |
| 20160292621 | Ciccone et al. | Oct 2016 | A1 |
| 20160321582 | Broudou et al. | Nov 2016 | A1 |
| 20160321748 | Mahatma et al. | Nov 2016 | A1 |
| 20160330237 | Edlabadkar | Nov 2016 | A1 |
| 20160335531 | Mullen et al. | Nov 2016 | A1 |
| 20160342811 | Whitcomb et al. | Nov 2016 | A1 |
| 20160364736 | Maugans, III | Dec 2016 | A1 |
| 20160370954 | Burningham et al. | Dec 2016 | A1 |
| 20160378762 | Rohter | Dec 2016 | A1 |
| 20160381064 | Chan et al. | Dec 2016 | A1 |
| 20160381560 | Margaliot | Dec 2016 | A1 |
| 20170004055 | Horan et al. | Jan 2017 | A1 |
| 20170032395 | Kaufman et al. | Feb 2017 | A1 |
| 20170032408 | Kumar et al. | Feb 2017 | A1 |
| 20170034101 | Kumar et al. | Feb 2017 | A1 |
| 20170041324 | Ionutescu et al. | Feb 2017 | A1 |
| 20170046399 | Sankaranarasimhan et al. | Feb 2017 | A1 |
| 20170046753 | Deupree, IV | Feb 2017 | A1 |
| 20170061501 | Horwich | Mar 2017 | A1 |
| 20170068785 | Experton et al. | Mar 2017 | A1 |
| 20170070495 | Cherry et al. | Mar 2017 | A1 |
| 20170093917 | Chandra et al. | Mar 2017 | A1 |
| 20170115864 | Thomas et al. | Apr 2017 | A1 |
| 20170124570 | Nidamanuri et al. | May 2017 | A1 |
| 20170140174 | Lacey et al. | May 2017 | A1 |
| 20170140467 | Neag et al. | May 2017 | A1 |
| 20170142158 | Laoutaris et al. | May 2017 | A1 |
| 20170142177 | Hu | May 2017 | A1 |
| 20170154188 | Meier et al. | Jun 2017 | A1 |
| 20170161520 | Lockhart, III et al. | Jun 2017 | A1 |
| 20170171235 | Mulchandani et al. | Jun 2017 | A1 |
| 20170171325 | Perez | Jun 2017 | A1 |
| 20170177324 | Frank et al. | Jun 2017 | A1 |
| 20170180378 | Tyler et al. | Jun 2017 | A1 |
| 20170180505 | Shaw et al. | Jun 2017 | A1 |
| 20170193017 | Migliori | Jul 2017 | A1 |
| 20170193624 | Tsai | Jul 2017 | A1 |
| 20170201518 | Holmqvist et al. | Jul 2017 | A1 |
| 20170206707 | Guay et al. | Jul 2017 | A1 |
| 20170208084 | Steelman et al. | Jul 2017 | A1 |
| 20170220685 | Yan et al. | Aug 2017 | A1 |
| 20170220964 | Datta Ray | Aug 2017 | A1 |
| 20170249710 | Guillama et al. | Aug 2017 | A1 |
| 20170269791 | Meyerzon et al. | Sep 2017 | A1 |
| 20170270318 | Ritchie | Sep 2017 | A1 |
| 20170278004 | McElhinney et al. | Sep 2017 | A1 |
| 20170278117 | Wallace et al. | Sep 2017 | A1 |
| 20170286719 | Krishnamurthy et al. | Oct 2017 | A1 |
| 20170287031 | Barday | Oct 2017 | A1 |
| 20170289199 | Barday | Oct 2017 | A1 |
| 20170308875 | O'Regan et al. | Oct 2017 | A1 |
| 20170316400 | Venkatakrishnan et al. | Nov 2017 | A1 |
| 20170330197 | DiMaggio et al. | Nov 2017 | A1 |
| 20170353404 | Hodge | Dec 2017 | A1 |
| 20180032757 | Michael | Feb 2018 | A1 |
| 20180039975 | Hefetz | Feb 2018 | A1 |
| 20180041498 | Kikuchi | Feb 2018 | A1 |
| 20180046753 | Shelton | Feb 2018 | A1 |
| 20180046939 | Meron et al. | Feb 2018 | A1 |
| 20180063174 | Grill et al. | Mar 2018 | A1 |
| 20180063190 | Wright et al. | Mar 2018 | A1 |
| 20180082368 | Weinflash et al. | Mar 2018 | A1 |
| 20180083843 | Sambandam | Mar 2018 | A1 |
| 20180091476 | Jakobsson et al. | Mar 2018 | A1 |
| 20180131574 | Jacobs et al. | May 2018 | A1 |
| 20180131658 | Bhagwan et al. | May 2018 | A1 |
| 20180165637 | Romero et al. | Jun 2018 | A1 |
| 20180198614 | Neumann | Jul 2018 | A1 |
| 20180204281 | Painter et al. | Jul 2018 | A1 |
| 20180219917 | Chiang | Aug 2018 | A1 |
| 20180239500 | Allen et al. | Aug 2018 | A1 |
| 20180248914 | Sartor | Aug 2018 | A1 |
| 20180285887 | Crispen | Oct 2018 | A1 |
| 20180301222 | Dew, Sr. et al. | Oct 2018 | A1 |
| 20180307859 | Lafever et al. | Oct 2018 | A1 |
| 20180336509 | Guttmann | Nov 2018 | A1 |
| 20180349583 | Turgeman et al. | Dec 2018 | A1 |
| 20180351888 | Howard | Dec 2018 | A1 |
| 20180352003 | Winn et al. | Dec 2018 | A1 |
| 20180357243 | Yoon | Dec 2018 | A1 |
| 20180365720 | Goldman et al. | Dec 2018 | A1 |
| 20180374030 | Barday et al. | Dec 2018 | A1 |
| 20180375814 | Hart | Dec 2018 | A1 |
| 20190005210 | Wiederspohn et al. | Jan 2019 | A1 |
| 20190012211 | Selvaraj | Jan 2019 | A1 |
| 20190012672 | Francesco | Jan 2019 | A1 |
| 20190019184 | Lacey et al. | Jan 2019 | A1 |
| 20190050547 | Welsh et al. | Feb 2019 | A1 |
| 20190087570 | Sloane | Mar 2019 | A1 |
| 20190096020 | Barday et al. | Mar 2019 | A1 |
| 20190108353 | Sadeh et al. | Apr 2019 | A1 |
| 20190130132 | Barbas et al. | May 2019 | A1 |
| 20190138496 | Yamaguchi | May 2019 | A1 |
| 20190139087 | Dabbs et al. | May 2019 | A1 |
| 20190148003 | Van Hoe | May 2019 | A1 |
| 20190156053 | Vogel et al. | May 2019 | A1 |
| 20190156058 | Van Dyne et al. | May 2019 | A1 |
| 20190171801 | Barday et al. | Jun 2019 | A1 |
| 20190179652 | Hesener et al. | Jun 2019 | A1 |
| 20190180051 | Barday et al. | Jun 2019 | A1 |
| 20190182294 | Rieke et al. | Jun 2019 | A1 |
| 20190188402 | Wang et al. | Jun 2019 | A1 |
| 20190266200 | Francolla | Aug 2019 | A1 |
| 20190266201 | Barday et al. | Aug 2019 | A1 |
| 20190266350 | Barday et al. | Aug 2019 | A1 |
| 20190268343 | Barday et al. | Aug 2019 | A1 |
| 20190268344 | Barday et al. | Aug 2019 | A1 |
| 20190272492 | Elledge et al. | Sep 2019 | A1 |
| 20190294818 | Barday et al. | Sep 2019 | A1 |
| 20190332802 | Barday et al. | Oct 2019 | A1 |
| 20190332807 | Lafever et al. | Oct 2019 | A1 |
| 20190333118 | Crimmins et al. | Oct 2019 | A1 |
| 20190354709 | Brinskelle | Nov 2019 | A1 |
| 20190356684 | Sinha et al. | Nov 2019 | A1 |
| 20190362169 | Lin et al. | Nov 2019 | A1 |
| 20190362268 | Fogarty et al. | Nov 2019 | A1 |
| 20190377901 | Balzer et al. | Dec 2019 | A1 |
| 20190378073 | Lopez et al. | Dec 2019 | A1 |
| 20190384934 | Kim | Dec 2019 | A1 |
| 20190392162 | Stern et al. | Dec 2019 | A1 |
| 20190392170 | Barday et al. | Dec 2019 | A1 |
| 20190392171 | Barday et al. | Dec 2019 | A1 |
| 20200020454 | McGarvey et al. | Jan 2020 | A1 |
| 20200050966 | Enuka et al. | Feb 2020 | A1 |
| 20200051117 | Mitchell | Feb 2020 | A1 |
| 20200057781 | McCormick | Feb 2020 | A1 |
| 20200074471 | Adjaoute | Mar 2020 | A1 |
| 20200081865 | Farrar et al. | Mar 2020 | A1 |
| 20200082270 | Gu et al. | Mar 2020 | A1 |
| 20200090197 | Rodriguez et al. | Mar 2020 | A1 |
| 20200092179 | Chieu et al. | Mar 2020 | A1 |
| 20200110589 | Bequet et al. | Apr 2020 | A1 |
| 20200110904 | Shinde et al. | Apr 2020 | A1 |
| 20200117737 | Gopalakrishnan et al. | Apr 2020 | A1 |
| 20200137097 | Zimmermann et al. | Apr 2020 | A1 |
| 20200143301 | Bowers | May 2020 | A1 |
| 20200143797 | Manoharan et al. | May 2020 | A1 |
| 20200159952 | Dain et al. | May 2020 | A1 |
| 20200159955 | Barlik et al. | May 2020 | A1 |
| 20200167653 | Manjunath et al. | May 2020 | A1 |
| 20200175424 | Kursun | Jun 2020 | A1 |
| 20200183655 | Barday et al. | Jun 2020 | A1 |
| 20200186355 | Davies | Jun 2020 | A1 |
| 20200193018 | Van Dyke | Jun 2020 | A1 |
| 20200193022 | Lunsford et al. | Jun 2020 | A1 |
| 20200210558 | Barday et al. | Jul 2020 | A1 |
| 20200210620 | Haletky | Jul 2020 | A1 |
| 20200211002 | Steinberg | Jul 2020 | A1 |
| 20200220901 | Barday et al. | Jul 2020 | A1 |
| 20200226156 | Borra et al. | Jul 2020 | A1 |
| 20200226196 | Brannon et al. | Jul 2020 | A1 |
| 20200242259 | Chirravuri et al. | Jul 2020 | A1 |
| 20200242719 | Lee | Jul 2020 | A1 |
| 20200250342 | Miller et al. | Aug 2020 | A1 |
| 20200252413 | Buzbee et al. | Aug 2020 | A1 |
| 20200252817 | Brouillette et al. | Aug 2020 | A1 |
| 20200272764 | Brannon et al. | Aug 2020 | A1 |
| 20200293679 | Handy Bosma et al. | Sep 2020 | A1 |
| 20200296171 | Mocanu et al. | Sep 2020 | A1 |
| 20200302089 | Barday et al. | Sep 2020 | A1 |
| 20200310917 | Tkachev et al. | Oct 2020 | A1 |
| 20200311310 | Barday et al. | Oct 2020 | A1 |
| 20200344243 | Brannon et al. | Oct 2020 | A1 |
| 20200356695 | Brannon et al. | Nov 2020 | A1 |
| 20200364369 | Brannon et al. | Nov 2020 | A1 |
| 20200372178 | Barday et al. | Nov 2020 | A1 |
| 20200394327 | Childress et al. | Dec 2020 | A1 |
| 20200401380 | Jacobs et al. | Dec 2020 | A1 |
| 20200401962 | Gottemukkala et al. | Dec 2020 | A1 |
| 20200410117 | Barday et al. | Dec 2020 | A1 |
| 20200410131 | Barday et al. | Dec 2020 | A1 |
| 20200410132 | Brannon et al. | Dec 2020 | A1 |
| 20210012341 | Garg et al. | Jan 2021 | A1 |
| 20210056569 | Silberman et al. | Feb 2021 | A1 |
| 20210075775 | Cheng et al. | Mar 2021 | A1 |
| 20210081567 | Park et al. | Mar 2021 | A1 |
| 20210099449 | Frederick et al. | Apr 2021 | A1 |
| 20210110047 | Fang | Apr 2021 | A1 |
| 20210125089 | Nickl et al. | Apr 2021 | A1 |
| 20210152496 | Kim et al. | May 2021 | A1 |
| 20210233157 | Crutchfield, Jr. | Jul 2021 | A1 |
| 20210243595 | Buck et al. | Aug 2021 | A1 |
| 20210248247 | Poothokaran et al. | Aug 2021 | A1 |
| 20210256163 | Fleming et al. | Aug 2021 | A1 |
| 20210279360 | Gimenez Palop et al. | Sep 2021 | A1 |
| 20210297441 | Abayomi | Sep 2021 | A1 |
| 20210303828 | Lafreniere et al. | Sep 2021 | A1 |
| 20210312061 | Schroeder et al. | Oct 2021 | A1 |
| 20210326786 | Sun et al. | Oct 2021 | A1 |
| 20210328969 | Gaddam et al. | Oct 2021 | A1 |
| 20210382949 | Yastrebenetsky et al. | Dec 2021 | A1 |
| 20210397735 | Samatov et al. | Dec 2021 | A1 |
| 20210400018 | Vettaikaran | Dec 2021 | A1 |
| 20210406712 | Bhide et al. | Dec 2021 | A1 |
| 20220137850 | Boddu et al. | May 2022 | A1 |
| Number | Date | Country |
|---|---|---|
| 111496802 | Aug 2020 | CN |
| 112115859 | Dec 2020 | CN |
| 1394698 | Mar 2004 | EP |
| 2031540 | Mar 2009 | EP |
| 20130062500 | Jun 2013 | KR |
| 2001033430 | May 2001 | WO |
| 20020067158 | Aug 2002 | WO |
| 20030050773 | Jun 2003 | WO |
| 2005008411 | Jan 2005 | WO |
| 2007002412 | Jan 2007 | WO |
| 2008134203 | Nov 2008 | WO |
| 2012174659 | Dec 2012 | WO |
| 2015116905 | Aug 2015 | WO |
| 2020146028 | Jul 2020 | WO |
| 2022006421 | Jan 2022 | WO |
| Entry |
|---|
| Czeskis et al, “Lightweight Server Support for Browser-based CSRF Protection,” Proceedings of the 22nd International Conference on World Wide Web, 2013, pp. 273-284 (Year: 2013). |
| Final Office Action, dated Feb. 25, 2022, from corresponding U.S. Appl. No. 17/346,586. |
| Final Office Action, dated Mar. 21, 2022, from corresponding U.S. Appl. No. 17/373,444. |
| Final Office Action, dated Mar. 22, 2022, from corresponding U.S. Appl. No. 17/380,485. |
| Matte et al, “Do Cookie Banners Respect my Choice?: Measuring Legal Compliance of Banners from IAB Europe's Transparency and Consent Framework,” 2020 IEEE Symposium on Security and Privacy (SP), 2020, pp. 791-809 (Year: 2020). |
| Notice of Allowance, dated Feb. 24, 2022, from corresponding U.S. Appl. No. 17/234,205. |
| Notice of Allowance, dated Feb. 24, 2022, from corresponding U.S. Appl. No. 17/549,170. |
| Notice of Allowance, dated Mar. 16, 2022, from corresponding U.S. Appl. No. 17/486,350. |
| Notice of Allowance, dated Mar. 2, 2022, from corresponding U.S. Appl. No. 16/872,130. |
| Notice of Allowance, dated Mar. 2, 2022, from corresponding U.S. Appl. No. 17/535,098. |
| Notice of Allowance, dated Mar. 21, 2022, from corresponding U.S. Appl. No. 17/366,754. |
| Notice of Allowance, dated Mar. 22, 2022, from corresponding U.S. Appl. No. 17/475,244. |
| Notice of Allowance, dated Mar. 22, 2022, from corresponding U.S. Appl. No. 17/504,102. |
| Notice of Allowance, dated Mar. 28, 2022, from corresponding U.S. Appl. No. 17/499,609. |
| Notice of Allowance, dated Mar. 4, 2022, from corresponding U.S. Appl. No. 17/409,999. |
| Office Action, dated Mar. 1, 2022, from corresponding U.S. Appl. No. 17/119,080. |
| Office Action, dated Mar. 2, 2022, from corresponding U.S. Appl. No. 17/020,275. |
| Office Action, dated Mar. 2, 2022, from corresponding U.S. Appl. No. 17/161,159. |
| Office Action, dated Mar. 2, 2022, from corresponding U.S. Appl. No. 17/200,698. |
| Office Action, dated Mar. 21, 2022, from corresponding U.S. Appl. No. 17/571,871. |
| Office Action, dated Mar. 22, 2022, from corresponding U.S. Appl. No. 17/187,329. |
| Sanchez-Rola et al, “Can I Opt Out Yet?: GDPR and the Global Illusion of Cookie Control,” Proceedings of the 2019 ACM Asia Conference on Computer and Communications Security, 2019, pp. 340-351 (Year: 2019). |
| Final Office Action, dated Apr. 23, 2020, from corresponding U.S. Appl. No. 16/572,347. |
| Final Office Action, dated Apr. 27, 2021, from corresponding U.S. Appl. No. 17/068,454. |
| Final Office Action, dated Apr. 7, 2020, from corresponding U.S. Appl. No. 16/595,327. |
| Final Office Action, dated Aug. 10, 2020, from corresponding U.S. Appl. No. 16/791,589. |
| Final Office Action, dated Aug. 27, 2021, from corresponding U.S. Appl. No. 17/161,159. |
| Final Office Action, dated Aug. 28, 2020, from corresponding U.S. Appl. No. 16/410,336. |
| Final Office Action, dated Aug. 5, 2020, from corresponding U.S. Appl. No. 16/719,071. |
| Final Office Action, dated Aug. 9, 2021, from corresponding U.S. Appl. No. 17/119,080. |
| Final Office Action, dated Dec. 10, 2021, from corresponding U.S. Appl. No. 17/187,329. |
| Final Office Action, dated Dec. 7, 2020, from corresponding U.S. Appl. No. 16/862,956. |
| Final Office Action, dated Dec. 9, 2019, from corresponding U.S. Appl. No. 16/410,336. |
| Final Office Action, dated Feb. 19, 2020, from corresponding U.S. Appl. No. 16/404,491. |
| Final Office Action, dated Feb. 3, 2020, from corresponding U.S. Appl. No. 16/557,392. |
| Final Office Action, dated Feb. 8, 2021, from corresponding U.S. Appl. No. 16/927,658. |
| Final Office Action, dated Jan. 17, 2018, from corresponding U.S. Appl. No. 15/619,278. |
| Final Office Action, dated Jan. 21, 2020, from corresponding U.S. Appl. No. 16/410,762. |
| Final Office Action, dated Jan. 23, 2018, from corresponding U.S. Appl. No. 15/619,479. |
| Final Office Action, dated Jan. 23, 2020, from corresponding U.S. Appl. No. 16/505,430. |
| Final Office Action, dated Jul. 21, 2021, from corresponding U.S. Appl. No. 17/151,334. |
| Final Office Action, dated Jul. 7, 2021, from corresponding U.S. Appl. No. 17/149,421. |
| Final Office Action, dated Mar. 26, 2021, from corresponding U.S. Appl. No. 17/020,275. |
| Final Office Action, dated Mar. 5, 2019, from corresponding U.S. Appl. No. 16/055,961. |
| Final Office Action, dated Mar. 6, 2020, from corresponding U.S. Appl. No. 16/595,342. |
| Final Office Action, dated May 14, 2021, from corresponding U.S. Appl. No. 17/013,756. |
| Final Office Action, dated Nov. 29, 2017, from corresponding U.S. Appl. No. 15/619,237. |
| Final Office Action, dated Oct. 26, 2021, from corresponding U.S. Appl. No. 17/306,496. |
| Final Office Action, dated Oct. 28, 2021, from corresponding U.S. Appl. No. 17/234,205. |
| Final Office Action, dated Oct. 29, 2021, from corresponding U.S. Appl. No. 17/020,275. |
| Final Office Action, dated Sep. 17, 2021, from corresponding U.S. Appl. No. 17/200,698. |
| Final Office Action, dated Sep. 21, 2020, from corresponding U.S. Appl. No. 16/808,493. |
| Final Office Action, dated Sep. 21, 2020, from corresponding U.S. Appl. No. 16/862,944. |
| Final Office Action, dated Sep. 22, 2020, from corresponding U.S. Appl. No. 16/808,497. |
| Final Office Action, dated Sep. 23, 2020, from corresponding U.S. Appl. No. 16/862,948. |
| Final Office Action, dated Sep. 24, 2020, from corresponding U.S. Appl. No. 16/862,952. |
| Final Office Action, dated Sep. 25, 2019, from corresponding U.S. Appl. No. 16/278,119. |
| Final Office Action, dated Sep. 28, 2020, from corresponding U.S. Appl. No. 16/565,395. |
| Final Office Action, dated Sep. 8, 2020, from corresponding U.S. Appl. No. 16/410,866. |
| Office Action, dated Apr. 1, 2021, from corresponding U.S. Appl. No. 17/119,080. |
| Office Action, dated Apr. 15, 2021, from corresponding U.S. Appl. No. 17/161,159. |
| Office Action, dated Apr. 18, 2018, from corresponding U.S. Appl. No. 15/894,819. |
| Office Action, dated Apr. 2, 2021, from corresponding U.S. Appl. No. 17/151,334. |
| Office Action, dated Apr. 20, 2020, from corresponding U.S. Appl. No. 16/812,795. |
| Office Action, dated Apr. 22, 2019, from corresponding U.S. Appl. No. 16/241,710. |
| Office Action, dated Apr. 22, 2020, from corresponding U.S. Appl. No. 16/811,793. |
| Office Action, dated Apr. 28, 2020, from corresponding U.S. Appl. No. 16/798,818. |
| Office Action, dated Apr. 28, 2020, from corresponding U.S. Appl. No. 16/808,500. |
| Office Action, dated Apr. 28, 2021, from corresponding U.S. Appl. No. 16/808,497. |
| Office Action, dated Apr. 29, 2020, from corresponding U.S. Appl. No. 16/791,337. |
| Office Action, dated Apr. 5, 2019, from corresponding U.S. Appl. No. 16/278,119. |
| Office Action, dated Apr. 7, 2020, from corresponding U.S. Appl. No. 16/788,633. |
| Office Action, dated Apr. 7, 2020, from corresponding U.S. Appl. No. 16/791,589. |
| Office Action, dated Aug. 13, 2019, from corresponding U.S. Appl. No. 16/505,430. |
| Office Action, dated Aug. 13, 2019, from corresponding U.S. Appl. No. 16/512,033. |
| Office Action, dated Aug. 15, 2019, from corresponding U.S. Appl. No. 16/505,461. |
| Office Action, dated Aug. 18, 2021, from corresponding U.S. Appl. No. 17/222,725. |
| Office Action, dated Aug. 19, 2019, from corresponding U.S. Appl. No. 16/278,122. |
| Office Action, dated Aug. 20, 2020, from corresponding U.S. Appl. No. 16/817,136. |
| Office Action, dated Aug. 23, 2017, from corresponding U.S. Appl. No. 15/626,052. |
| Office Action, dated Aug. 24, 2017, from corresponding U.S. Appl. No. 15/169,643. |
| Office Action, dated Aug. 24, 2017, from corresponding U.S. Appl. No. 15/619,451. |
| Office Action, dated Aug. 24, 2020, from corresponding U.S. Appl. No. 16/595,327. |
| Office Action, dated Aug. 27, 2019, from corresponding U.S. Appl. No. 16/410,296. |
| Office Action, dated Aug. 27, 2021, from corresponding U.S. Appl. No. 17/187,329. |
| Office Action, dated Aug. 27, 2021, from corresponding U.S. Appl. No. 17/334,948. |
| Office Action, dated Aug. 29, 2017, from corresponding U.S. Appl. No. 15/619,237. |
| Office Action, dated Aug. 30, 2017, from corresponding U.S. Appl. No. 15/619,212. |
| Office Action, dated Aug. 30, 2017, from corresponding U.S. Appl. No. 15/619,382. |
| Office Action, dated Aug. 30, 2021, from corresponding U.S. Appl. No. 16/938,520. |
| Office Action, dated Aug. 6, 2019, from corresponding U.S. Appl. No. 16/404,491. |
| Office Action, dated Aug. 6, 2020, from corresponding U.S. Appl. No. 16/862,956. |
| Office Action, dated Dec. 11, 2019, from corresponding U.S. Appl. No. 16/578,712. |
| Office Action, dated Dec. 13, 2021, from corresponding U.S. Appl. No. 17/476,209. |
| Office Action, dated Dec. 14, 2018, from corresponding U.S. Appl. No. 16/104,393. |
| Office Action, dated Dec. 15, 2016, from corresponding U.S. Appl. No. 15/256,419. |
| Office Action, dated Dec. 16, 2019, from corresponding U.S. Appl. No. 16/563,754. |
| Office Action, dated Dec. 16, 2019, from corresponding U.S. Appl. No. 16/565,265. |
| Office Action, dated Dec. 16, 2020, from corresponding U.S. Appl. No. 17/020,275. |
| Office Action, dated Dec. 17, 2021, from corresponding U.S. Appl. No. 17/395,759. |
| Office Action, dated Dec. 17, 2021, from corresponding U.S. Appl. No. 17/499,582. |
| Office Action, dated Dec. 18, 2020, from corresponding U.S. Appl. No. 17/030,714. |
| Office Action, dated Dec. 19, 2019, from corresponding U.S. Appl. No. 16/410,866. |
| Office Action, dated Dec. 2, 2019, from corresponding U.S. Appl. No. 16/560,963. |
| Office Action, dated Dec. 2, 2021, from corresponding U.S. Appl. No. 17/504,102. |
| Office Action, dated Dec. 23, 2019, from corresponding U.S. Appl. No. 16/593,639. |
| Office Action, dated Dec. 24, 2020, from corresponding U.S. Appl. No. 17/068,454. |
| Office Action, dated Dec. 27, 2021, from corresponding U.S. Appl. No. 17/493,332. |
| Office Action, dated Dec. 29, 2021, from corresponding U.S. Appl. No. 17/479,807. |
| Office Action, dated Dec. 3, 2018, from corresponding U.S. Appl. No. 16/055,998. |
| Office Action, dated Dec. 30, 2021, from corresponding U.S. Appl. No. 17/149,421. |
| Office Action, dated Dec. 31, 2018, from corresponding U.S. Appl. No. 16/160,577. |
| Office Action, dated Dec. 7, 2021, from corresponding U.S. Appl. No. 17/499,609. |
| Office Action, dated Dec. 8, 2020, from corresponding U.S. Appl. No. 17/013,758. |
| Office Action, dated Dec. 8, 2020, from corresponding U.S. Appl. No. 17/068,198. |
| Office Action, dated Feb. 10, 2021, from corresponding U.S. Appl. No. 16/862,944. |
| Office Action, dated Feb. 10, 2021, from corresponding U.S. Appl. No. 17/106,469. |
| Office Action, dated Feb. 15, 2019, from corresponding U.S. Appl. No. 16/220,899. |
| Office Action, dated Feb. 16, 2022, from corresponding U.S. Appl. No. 16/872,031. |
| Office Action, dated Feb. 17, 2021, from corresponding U.S. Appl. No. 16/862,948. |
| Office Action, dated Feb. 18, 2021, from corresponding U.S. Appl. No. 16/862,952. |
| Office Action, dated Feb. 2, 2021, from corresponding U.S. Appl. No. 17/101,915. |
| Restriction Requirement, dated Aug. 9, 2019, from corresponding U.S. Appl. No. 16/404,399. |
| Restriction Requirement, dated Dec. 17, 2021, from corresponding U.S. Appl. No. 17/475,244. |
| Restriction Requirement, dated Dec. 31, 2018, from corresponding U.S. Appl. No. 15/169,668. |
| Restriction Requirement, dated Dec. 9, 2019, from corresponding U.S. Appl. No. 16/565,395. |
| Restriction Requirement, dated Jan. 18, 2017, from corresponding U.S. Appl. No. 15/256,430. |
| Restriction Requirement, dated Jul. 28, 2017, from corresponding U.S. Appl. No. 15/169,658. |
| Restriction Requirement, dated Jun. 15, 2021, from corresponding U.S. Appl. No. 17/187,329. |
| Restriction Requirement, dated Jun. 15, 2021, from corresponding U.S. Appl. No. 17/222,556. |
| Restriction Requirement, dated Jun. 9, 2021, from corresponding U.S. Appl. No. 17/222,725. |
| Restriction Requirement, dated May 5, 2020, from corresponding U.S. Appl. No. 16/808,489. |
| Restriction Requirement, dated Nov. 10, 2021, from corresponding U.S. Appl. No. 17/366,754. |
| Restriction Requirement, dated Nov. 15, 2019, from corresponding U.S. Appl. No. 16/586,202. |
| Restriction Requirement, dated Nov. 21, 2016, from corresponding U.S. Appl. No. 15/254,901. |
| Restriction Requirement, dated Nov. 5, 2019, from corresponding U.S. Appl. No. 16/563,744. |
| Restriction Requirement, dated Oct. 17, 2018, from corresponding U.S. Appl. No. 16/055,984. |
| Restriction Requirement, dated Oct. 6, 2021, from corresponding U.S. Appl. No. 17/340,699. |
| Restriction Requirement, dated Sep. 15, 2020, from corresponding U.S. Appl. No. 16/925,628. |
| Restriction Requirement, dated Sep. 9, 2019, from corresponding U.S. Appl. No. 16/505,426. |
| Advisory Action, dated Jan. 13, 2021, from corresponding U.S. Appl. No. 16/808,493. |
| Advisory Action, dated Jan. 13, 2021, from corresponding U.S. Appl. No. 16/862,944. |
| Advisory Action, dated Jan. 13, 2021, from corresponding U.S. Appl. No. 16/862,948. |
| Advisory Action, dated Jan. 13, 2021, from corresponding U.S. Appl. No. 16/862,952. |
| Advisory Action, dated Jan. 6, 2021, from corresponding U.S. Appl. No. 16/808,497. |
| Advisory Action, dated Jun. 19, 2020, from corresponding U.S. Appl. No. 16/595,342. |
| Advisory Action, dated Jun. 2, 2020, from corresponding U.S. Appl. No. 16/404,491. |
| Advisory Action, dated May 21, 2020, from corresponding U.S. Appl. No. 16/557,392. |
| Written Opinion of the International Searching Authority, dated Jun. 6, 2017, from corresponding International Application No. PCT/US2017/025611. |
| Written Opinion of the International Searching Authority, dated Aug. 15, 2017, from corresponding International Application No. PCT/US2017/036919. |
| Written Opinion of the International Searching Authority, dated Aug. 21, 2017, from corresponding International Application No. PCT/US2017/036914. |
| Written Opinion of the International Searching Authority, dated Aug. 29, 2017, from corresponding International Application No. PCT/US2017/036898. |
| Written Opinion of the International Searching Authority, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036889. |
| Written Opinion of the International Searching Authority, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036890. |
| Written Opinion of the International Searching Authority, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036893. |
| Written Opinion of the International Searching Authority, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036901. |
| Written Opinion of the International Searching Authority, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036913. |
| Written Opinion of the International Searching Authority, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036920. |
| Written Opinion of the International Searching Authority, dated Dec. 14, 2018, from corresponding International Application No. PCT/US2018/045296. |
| Written Opinion of the International Searching Authority, dated Dec. 22, 2021, from corresponding International Application No. PCT/US2021/051217. |
| Written Opinion of the International Searching Authority, dated Feb. 11, 2022, from corresponding International Application No. PCT/US2021/053518. |
| Written Opinion of the International Searching Authority, dated Jan. 14, 2019, from corresponding International Application No. PCT/US2018/046949. |
| Written Opinion of the International Searching Authority, dated Jan. 5, 2022, from corresponding International Application No. PCT/US2021/050497. |
| Written Opinion of the International Searching Authority, dated Jan. 7, 2019, from corresponding International Application No. PCT/US2018/055772. |
| Written Opinion of the International Searching Authority, dated Jun. 21, 2017, from corresponding International Application No. PCT/US2017/025600. |
| Written Opinion of the International Searching Authority, dated Jun. 6, 2017, from corresponding International Application No. PCT/US2017/025605. |
| Written Opinion of the International Searching Authority, dated Mar. 14, 2019, from corresponding International Application No. PCT/US2018/055736. |
| Written Opinion of the International Searching Authority, dated Mar. 4, 2019, from corresponding International Application No. PCT/US2018/055773. |
| Written Opinion of the International Searching Authority, dated Mar. 4, 2019, from corresponding International Application No. PCT/US2018/055774. |
| Written Opinion of the International Searching Authority, dated Nov. 12, 2021, from corresponding International Application No. PCT/US2021/043481. |
| Written Opinion of the International Searching Authority, dated Nov. 19, 2018, from corresponding International Application No. PCT/US2018/046939. |
| Written Opinion of the International Searching Authority, dated Nov. 3, 2021, from corresponding International Application No. PCT/US2021/040893. |
| Office Action, dated Oct. 8, 2019, from corresponding U.S. Appl. No. 16/552,765. |
| Office Action, dated Sep. 1, 2017, from corresponding U.S. Appl. No. 15/619,459. |
| Office Action, dated Sep. 11, 2017, from corresponding U.S. Appl. No. 15/619,375. |
| Office Action, dated Sep. 11, 2017, from corresponding U.S. Appl. No. 15/619,478. |
| Office Action, dated Sep. 15, 2021, from corresponding U.S. Appl. No. 16/623,157. |
| Office Action, dated Sep. 16, 2019, from corresponding U.S. Appl. No. 16/277,715. |
| Office Action, dated Sep. 19, 2017, from corresponding U.S. Appl. No. 15/671,073. |
| Office Action, dated Sep. 22, 2017, from corresponding U.S. Appl. No. 15/619,278. |
| Office Action, dated Sep. 24, 2021, from corresponding U.S. Appl. No. 17/342,153. |
| Office Action, dated Sep. 4, 2020, from corresponding U.S. Appl. No. 16/989,086. |
| Office Action, dated Sep. 5, 2017, from corresponding U.S. Appl. No. 15/619,469. |
| Office Action, dated Sep. 6, 2017, from corresponding U.S. Appl. No. 15/619,479. |
| Office Action, dated Sep. 7, 2017, from corresponding U.S. Appl. No. 15/633,703. |
| Office Action, dated Sep. 8, 2017, from corresponding U.S. Appl. No. 15/619,251. |
| Notice of Allowance, dated Apr. 12, 2017, from corresponding U.S. Appl. No. 15/256,419. |
| Notice of Allowance, dated Apr. 17, 2020, from corresponding U.S. Appl. No. 16/593,639. |
| Notice of Allowance, dated Apr. 19, 2021, from corresponding U.S. Appl. No. 17/164,029. |
| Notice of Allowance, dated Apr. 2, 2019, from corresponding U.S. Appl. No. 16/160,577. |
| Notice of Allowance, dated Apr. 2, 2021, from corresponding U.S. Appl. No. 17/162,006. |
| Notice of Allowance, dated Apr. 22, 2021, from corresponding U.S. Appl. No. 17/163,701. |
| Notice of Allowance, dated Apr. 25, 2018, from corresponding U.S. Appl. No. 15/883,041. |
| Notice of Allowance, dated Apr. 28, 2021, from corresponding U.S. Appl. No. 17/135,445. |
| Notice of Allowance, dated Apr. 28, 2021, from corresponding U.S. Appl. No. 17/181,828. |
| Notice of Allowance, dated Apr. 29, 2020, from corresponding U.S. Appl. No. 16/700,049. |
| Notice of Allowance, dated Apr. 30, 2020, from corresponding U.S. Appl. No. 16/565,265. |
| Notice of Allowance, dated Apr. 30, 2020, from corresponding U.S. Appl. No. 16/820,346. |
| Notice of Allowance, dated Apr. 30, 2021, from corresponding U.S. Appl. No. 16/410,762. |
| Notice of Allowance, dated Apr. 8, 2019, from corresponding U.S. Appl. No. 16/228,250. |
| Notice of Allowance, dated Apr. 8, 2020, from corresponding U.S. Appl. No. 16/791,348. |
| Notice of Allowance, dated Apr. 9, 2020, from corresponding U.S. Appl. No. 16/791,075. |
| Notice of Allowance, dated Aug. 10, 2020, from corresponding U.S. Appl. No. 16/671,444. |
| Notice of Allowance, dated Aug. 10, 2020, from corresponding U.S. Appl. No. 16/788,633. |
| Notice of Allowance, dated Aug. 12, 2020, from corresponding U.S. Appl. No. 16/719,488. |
| Notice of Allowance, dated Aug. 12, 2021, from corresponding U.S. Appl. No. 16/881,832. |
| Notice of Allowance, dated Aug. 14, 2018, from corresponding U.S. Appl. No. 15/989,416. |
| Notice of Allowance, dated Aug. 18, 2017, from corresponding U.S. Appl. No. 15/619,455. |
| Notice of Allowance, dated Aug. 20, 2019, from corresponding U.S. Appl. No. 16/241,710. |
| Notice of Allowance, dated Aug. 24, 2018, from corresponding U.S. Appl. No. 15/619,479. |
| Notice of Allowance, dated Aug. 26, 2019, from corresponding U.S. Appl. No. 16/443,374. |
| Notice of Allowance, dated Aug. 26, 2020, from corresponding U.S. Appl. No. 16/808,503. |
| Notice of Allowance, dated Aug. 28, 2019, from corresponding U.S. Appl. No. 16/278,120. |
| Notice of Allowance, dated Aug. 30, 2018, from corresponding U.S. Appl. No. 15/996,208. |
| Notice of Allowance, dated Aug. 31, 2021, from corresponding U.S. Appl. No. 17/326,901. |
| Notice of Allowance, dated Aug. 4, 2021, from corresponding U.S. Appl. No. 16/895,278. |
| Notice of Allowance, dated Aug. 7, 2020, from corresponding U.S. Appl. No. 16/901,973. |
| Notice of Allowance, dated Aug. 9, 2018, from corresponding U.S. Appl. No. 15/882,989. |
| Notice of Allowance, dated Aug. 9, 2021, from corresponding U.S. Appl. No. 16/881,699. |
| Notice of Allowance, dated Dec. 10, 2018, from corresponding U.S. Appl. No. 16/105,602. |
| Notice of Allowance, dated Dec. 11, 2019, from corresponding U.S. Appl. No. 16/278,122. |
| Notice of Allowance, dated Dec. 11, 2019, from corresponding U.S. Appl. No. 16/593,634. |
| Office Action, dated Feb. 26, 2019, from corresponding U.S. Appl. No. 16/228,250. |
| Office Action, dated Feb. 3, 2021, from corresponding U.S. Appl. No. 17/013,757. |
| Office Action, dated Feb. 5, 2020, from corresponding U.S. Appl. No. 16/586,202. |
| Office Action, dated Feb. 6, 2020, from corresponding U.S. Appl. No. 16/707,762. |
| Office Action, dated Feb. 8, 2021, from corresponding U.S. Appl. No. 17/139,650. |
| Office Action, dated Feb. 9, 2021, from corresponding U.S. Appl. No. 16/808,493. |
| Office Action, dated Feb. 9, 2022, from corresponding U.S. Appl. No. 17/543,546. |
| Office Action, dated Jan. 14, 2022, from corresponding U.S. Appl. No. 17/499,595. |
| Office Action, dated Jan. 18, 2019, from corresponding U.S. Appl. No. 16/055,984. |
| Office Action, dated Jan. 21, 2022, from corresponding U.S. Appl. No. 17/499,624. |
| Office Action, dated Jan. 22, 2021, from corresponding U.S. Appl. No. 17/099,270. |
| Office Action, dated Jan. 24, 2020, from corresponding U.S. Appl. No. 16/505,426. |
| Office Action, dated Jan. 24, 2020, from corresponding U.S. Appl. No. 16/700,049. |
| Office Action, dated Jan. 25, 2022, from corresponding U.S. Appl. No. 17/494,220. |
| Office Action, dated Jan. 27, 2020, from corresponding U.S. Appl. No. 16/656,895. |
| Office Action, dated Jan. 28, 2020, from corresponding U.S. Appl. No. 16/712,104. |
| Office Action, dated Jan. 29, 2021, from corresponding U.S. Appl. No. 17/101,106. |
| Office Action, dated Jan. 31, 2022, from corresponding U.S. Appl. No. 17/493,290. |
| Office Action, dated Jan. 4, 2019, from corresponding U.S. Appl. No. 16/159,566. |
| Office Action, dated Jan. 4, 2019, from corresponding U.S. Appl. No. 16/159,628. |
| Office Action, dated Jan. 4, 2021, from corresponding U.S. Appl. No. 17/013,756. |
| Office Action, dated Jan. 4, 2022, from corresponding U.S. Appl. No. 17/480,377. |
| Office Action, dated Jan. 7, 2020, from corresponding U.S. Appl. No. 16/572,182. |
| Office Action, dated Jan. 7, 2022, from corresponding U.S. Appl. No. 17/387,421. |
| Office Action, dated Jul. 13, 2021, from corresponding U.S. Appl. No. 17/306,496. |
| Office Action, dated Jul. 15, 2021, from corresponding U.S. Appl. No. 17/020,275. |
| Office Action, dated Jul. 18, 2019, from corresponding U.S. Appl. No. 16/410,762. |
| Office Action, dated Jul. 19, 2021, from corresponding U.S. Appl. No. 17/316,179. |
| Office Action, dated Jul. 21, 2017, from corresponding U.S. Appl. No. 15/256,430. |
| Office Action, dated Jul. 21, 2021, from corresponding U.S. Appl. No. 16/901,654. |
| Office Action, dated Jul. 23, 2019, from corresponding U.S. Appl. No. 16/436,616. |
| Office Action, dated Jul. 24, 2020, from corresponding U.S. Appl. No. 16/404,491. |
| Office Action, dated Jul. 27, 2020, from corresponding U.S. Appl. No. 16/595,342. |
| Office Action, dated Jun. 1, 2020, from corresponding U.S. Appl. No. 16/862,952. |
| Office Action, dated Jun. 24, 2019, from corresponding U.S. Appl. No. 16/410,336. |
| Office Action, dated Jun. 24, 2021, from corresponding U.S. Appl. No. 17/234,205. |
| Office Action, dated Jun. 27, 2019, from corresponding U.S. Appl. No. 16/404,405. |
| Office Action, dated Jun. 7, 2021, from corresponding U.S. Appl. No. 17/200,698. |
| Office Action, dated Jun. 9, 2021, from corresponding U.S. Appl. No. 17/222,523. |
| Office Action, dated Mar. 11, 2019, from corresponding U.S. Appl. No. 16/220,978. |
| Office Action, dated Mar. 12, 2019, from corresponding U.S. Appl. No. 16/221,153. |
| Office Action, dated Mar. 15, 2021, from corresponding U.S. Appl. No. 17/149,421. |
| Office Action, dated Mar. 16, 2020, from corresponding U.S. Appl. No. 16/719,488. |
| Office Action, dated Mar. 17, 2020, from corresponding U.S. Appl. No. 16/565,395. |
| Office Action, dated Mar. 17, 2020, from corresponding U.S. Appl. No. 16/719,071. |
| Office Action, dated Mar. 20, 2020, from corresponding U.S. Appl. No. 16/778,709. |
| Office Action, dated Mar. 23, 2020, from corresponding U.S. Appl. No. 16/671,444. |
| Office Action, dated Mar. 25, 2019, from corresponding U.S. Appl. No. 16/278,121. |
| Office Action, dated Mar. 25, 2020, from corresponding U.S. Appl. No. 16/701,043. |
| Office Action, dated Mar. 25, 2020, from corresponding U.S. Appl. No. 16/791,006. |
| Notice of Allowance, dated Jun. 27, 2018, from corresponding U.S. Appl. No. 15/882,989. |
| Notice of Allowance, dated Jun. 4, 2019, from corresponding U.S. Appl. No. 16/159,566. |
| Notice of Allowance, dated Jun. 5, 2019, from corresponding U.S. Appl. No. 16/220,899. |
| Notice of Allowance, dated Jun. 5, 2019, from corresponding U.S. Appl. No. 16/357,260. |
| Notice of Allowance, dated Jun. 6, 2018, from corresponding U.S. Appl. No. 15/875,570. |
| Notice of Allowance, dated Jun. 6, 2019, from corresponding U.S. Appl. No. 16/159,628. |
| Notice of Allowance, dated Jun. 7, 2021, from corresponding U.S. Appl. No. 17/099,270. |
| Notice of Allowance, dated Jun. 8, 2020, from corresponding U.S. Appl. No. 16/712,104. |
| Notice of Allowance, dated Mar. 1, 2018, from corresponding U.S. Appl. No. 15/853,674. |
| Notice of Allowance, dated Mar. 1, 2019, from corresponding U.S. Appl. No. 16/059,911. |
| Notice of Allowance, dated Mar. 10, 2021, from corresponding U.S. Appl. No. 16/925,628. |
| Notice of Allowance, dated Mar. 10, 2021, from corresponding U.S. Appl. No. 17/128,666. |
| Notice of Allowance, dated Mar. 13, 2019, from corresponding U.S. Appl. No. 16/055,083. |
| Notice of Allowance, dated Mar. 14, 2019, from corresponding U.S. Appl. No. 16/055,944. |
| Notice of Allowance, dated Mar. 16, 2020, from corresponding U.S. Appl. No. 16/778,704. |
| Notice of Allowance, dated Mar. 16, 2021, from corresponding U.S. Appl. No. 17/149,380. |
| Notice of Allowance, dated Mar. 17, 2020, from corresponding U.S. Appl. No. 16/560,885. |
| Notice of Allowance, dated Mar. 18, 2020, from corresponding U.S. Appl. No. 16/560,963. |
| Notice of Allowance, dated Mar. 19, 2021, from corresponding U.S. Appl. No. 17/013,757. |
| Notice of Allowance, dated Mar. 2, 2018, from corresponding U.S. Appl. No. 15/858,802. |
| Notice of Allowance, dated Mar. 24, 2020, from corresponding U.S. Appl. No. 16/552,758. |
| Notice of Allowance, dated Mar. 25, 2019, from corresponding U.S. Appl. No. 16/054,780. |
| Notice of Allowance, dated Mar. 26, 2020, from corresponding U.S. Appl. No. 16/560,889. |
| Notice of Allowance, dated Mar. 26, 2020, from corresponding U.S. Appl. No. 16/578,712. |
| Notice of Allowance, dated Mar. 27, 2019, from corresponding U.S. Appl. No. 16/226,280. |
| Notice of Allowance, dated Mar. 29, 2019, from corresponding U.S. Appl. No. 16/055,998. |
| Notice of Allowance, dated Mar. 31, 2020, from corresponding U.S. Appl. No. 16/563,744. |
| Notice of Allowance, dated Mar. 31, 2021, from corresponding U.S. Appl. No. 17/013,758. |
| Notice of Allowance, dated Mar. 31, 2021, from corresponding U.S. Appl. No. 17/162,205. |
| Notice of Allowance, dated May 1, 2020, from corresponding U.S. Appl. No. 16/586,202. |
| Notice of Allowance, dated May 11, 2020, from corresponding U.S. Appl. No. 16/786,196. |
| Notice of Allowance, dated May 13, 2021, from corresponding U.S. Appl. No. 17/101,915. |
| Notice of Allowance, dated May 19, 2020, from corresponding U.S. Appl. No. 16/505,430. |
| Notice of Allowance, dated May 19, 2020, from corresponding U.S. Appl. No. 16/808,496. |
| Notice of Allowance, dated May 20, 2020, from corresponding U.S. Appl. No. 16/707,762. |
| Notice of Allowance, dated May 21, 2018, from corresponding U.S. Appl. No. 15/896,790. |
| Notice of Allowance, dated May 26, 2021, from corresponding U.S. Appl. No. 16/808,493. |
| Notice of Allowance, dated May 26, 2021, from corresponding U.S. Appl. No. 16/865,874. |
| Notice of Allowance, dated May 26, 2021, from corresponding U.S. Appl. No. 17/199,514. |
| Notice of Allowance, dated May 27, 2020, from corresponding U.S. Appl. No. 16/820,208. |
| Notice of Allowance, dated May 27, 2021, from corresponding U.S. Appl. No. 16/927,658. |
| Notice of Allowance, dated May 27, 2021, from corresponding U.S. Appl. No. 17/198,757. |
| Notice of Allowance, dated May 28, 2019, from corresponding U.S. Appl. No. 16/277,568. |
| Notice of Allowance, dated May 28, 2020, from corresponding U.S. Appl. No. 16/799,279. |
| Notice of Allowance, dated May 28, 2021, from corresponding U.S. Appl. No. 16/862,944. |
| Notice of Allowance, dated May 5, 2017, from corresponding U.S. Appl. No. 15/254,901. |
| Notice of Allowance, dated May 5, 2020, from corresponding U.S. Appl. No. 16/563,754. |
| Notice of Allowance, dated May 7, 2020, from corresponding U.S. Appl. No. 16/505,426. |
| Notice of Allowance, dated May 7, 2021, from corresponding U.S. Appl. No. 17/194,662. |
| Notice of Allowance, dated Nov. 14, 2019, from corresponding U.S. Appl. No. 16/436,616. |
| Notice of Allowance, dated Dec. 12, 2017, from corresponding U.S. Appl. No. 15/169,643. |
| Notice of Allowance, dated Dec. 12, 2017, from corresponding U.S. Appl. No. 15/619,212. |
| Notice of Allowance, dated Dec. 12, 2017, from corresponding U.S. Appl. No. 15/619,382. |
| Notice of Allowance, dated Dec. 13, 2019, from corresponding U.S. Appl. No. 16/512,033. |
| Notice of Allowance, dated Dec. 13, 2021, from corresponding U.S. Appl. No. 16/908,081. |
| Notice of Allowance, dated Dec. 13, 2021, from corresponding U.S. Appl. No. 17/347,853. |
| Notice of Allowance, dated Dec. 15, 2020, from corresponding U.S. Appl. No. 16/989,086. |
| Notice of Allowance, dated Dec. 16, 2019, from corresponding U.S. Appl. No. 16/505,461. |
| Notice of Allowance, dated Dec. 17, 2020, from corresponding U.S. Appl. No. 17/034,772. |
| Notice of Allowance, dated Dec. 18, 2019, from corresponding U.S. Appl. No. 16/659,437. |
| Notice of Allowance, dated Dec. 2, 2021, from corresponding U.S. Appl. No. 16/901,654. |
| Notice of Allowance, dated Dec. 23, 2019, from corresponding U.S. Appl. No. 16/656,835. |
| Notice of Allowance, dated Dec. 23, 2020, from corresponding U.S. Appl. No. 17/068,557. |
| Notice of Allowance, dated Dec. 3, 2019, from corresponding U.S. Appl. No. 16/563,749. |
| Notice of Allowance, dated Dec. 30, 2021, from corresponding U.S. Appl. No. 16/938,520. |
| Notice of Allowance, dated Dec. 31, 2018, from corresponding U.S. Appl. No. 16/159,634. |
| Notice of Allowance, dated Dec. 31, 2019, from corresponding U.S. Appl. No. 16/404,399. |
| Notice of Allowance, dated Dec. 4, 2019, from corresponding U.S. Appl. No. 16/594,670. |
| Notice of Allowance, dated Dec. 5, 2017, from corresponding U.S. Appl. No. 15/633,703. |
| Notice of Allowance, dated Dec. 6, 2017, from corresponding U.S. Appl. No. 15/619,451. |
| Notice of Allowance, dated Dec. 6, 2017, from corresponding U.S. Appl. No. 15/619,459. |
| Notice of Allowance, dated Dec. 7, 2020, from corresponding U.S. Appl. No. 16/817,136. |
| Notice of Allowance, dated Dec. 8, 2021, from corresponding U.S. Appl. No. 17/397,472. |
| Notice of Allowance, dated Dec. 9, 2019, from corresponding U.S. Appl. No. 16/565,261. |
| Notice of Allowance, dated Dec. 9, 2020, from corresponding U.S. Appl. No. 16/404,491. |
| Notice of Allowance, dated Feb. 1, 2022, from corresponding U.S. Appl. No. 17/346,509. |
| Notice of Allowance, dated Feb. 10, 2020, from corresponding U.S. Appl. No. 16/552,765. |
| Notice of Allowance, dated Feb. 11, 2021, from corresponding U.S. Appl. No. 17/086,732. |
| Notice of Allowance, dated Feb. 12, 2020, from corresponding U.S. Appl. No. 16/572,182. |
| Notice of Allowance, dated Feb. 13, 2019, from corresponding U.S. Appl. No. 16/041,563. |
| Notice of Allowance, dated Feb. 14, 2019, from corresponding U.S. Appl. No. 16/226,272. |
| Notice of Allowance, dated Feb. 14, 2022, from corresponding U.S. Appl. No. 16/623,157. |
| Notice of Allowance, dated Feb. 19, 2019, from corresponding U.S. Appl. No. 16/159,632. |
| Notice of Allowance, dated Feb. 19, 2021, from corresponding U.S. Appl. No. 16/832,451. |
| Notice of Allowance, dated Feb. 22, 2022, from corresponding U.S. Appl. No. 17/535,065. |
| Notice of Allowance, dated Feb. 24, 2021, from corresponding U.S. Appl. No. 17/034,355. |
| Notice of Allowance, dated Feb. 24, 2021, from corresponding U.S. Appl. No. 17/068,198. |
| Notice of Allowance, dated Feb. 24, 2021, from corresponding U.S. Appl. No. 17/101,106. |
| Notice of Allowance, dated Feb. 24, 2021, from corresponding U.S. Appl. No. 17/101,253. |
| Notice of Allowance, dated Feb. 25, 2020, from corresponding U.S. Appl. No. 16/714,355. |
| Notice of Allowance, dated Feb. 25, 2021, from corresponding U.S. Appl. No. 17/106,469. |
| Notice of Allowance, dated Feb. 26, 2021, from corresponding U.S. Appl. No. 17/139,650. |
| Notice of Allowance, dated Feb. 27, 2019, from corresponding U.S. Appl. No. 16/041,468. |
| Notice of Allowance, dated Feb. 27, 2019, from corresponding U.S. Appl. No. 16/226,290. |
| Notice of Allowance, dated Feb. 3, 2021, from corresponding U.S. Appl. No. 16/827,039. |
| Notice of Allowance, dated Feb. 3, 2021, from corresponding U.S. Appl. No. 17/068,558. |
| Notice of Allowance, dated Feb. 4, 2022, from corresponding U.S. Appl. No. 17/520,272. |
| Notice of Allowance, dated Feb. 8, 2022, from corresponding U.S. Appl. No. 17/342,153. |
| Notice of Allowance, dated Jan. 1, 2021, from corresponding U.S. Appl. No. 17/026,727. |
| Notice of Allowance, dated Jan. 11, 2022, from corresponding U.S. Appl. No. 17/371,350. |
| Chapados et al, “Scoring Models for Insurance Risk Sharing Pool Optimization,” 2008, IEEE, pp. 97-105 (Year: 2008). |
| Cheng, Raymond, et al, “Radiatus: A Shared-Nothing Server-Side Web Architecture,” Proceedings of the Seventh ACM Symposium on Cloud Computing, Oct. 5, 2016, pp. 237-250 (Year: 2016). |
| Choi et al, “Retrieval Effectiveness of Table of Contents and Subject Headings,” ACM, pp. 103-104 (Year: 2007). |
| Chowdhury et al, “A System Architecture for Subject-Centric Data Sharing”, ACM, pp. 1-10 (Year: 2018). |
| Chowdhury et al, “Managing Data Transfers in Computer Clusters with Orchestra,” ACM, pp. 98-109 (Year: 2011). |
| Civili et al, “Mastro Studio: Managing Ontology-Based Data Access Applications,” ACM, pp. 1314-1317, Aug. 26-30, 2013 (Year: 2013). |
| Decision Regarding Institution of Post-Grant Review in Case PGR2018-00056 for U.S. Pat. No. 9,691,090 B1, Oct. 11, 2018. |
| Degeling et al, “We Value Your Privacy . . . Now Take Some Cookies: Measuring the GDPRs Impact on Web Privacy,” arxiv.org, Cornell University Library, 201 Olin Library Cornell University, Ithaca, NY 14853, Aug. 15, 2018, pp. 1-15 (Year: 2019). |
| Dimou et al, “Machine-Interpretable Dataset and Service Descriptions for Heterogeneous Data Access and Retrieval”, ACM, pp. 145-152 (Year: 2015). |
| Dokholyan et al, “Regulatory and Ethical Considerations for Linking Clinical and Administrative Databases,” American Heart Journal 157.6 (2009), pp. 971-982 (Year: 2009). |
| Dunkel et al, “Data Organization and Access for Efficient Data Mining”, IEEE, pp. 522-529 (Year: 1999). |
| Dwork, Cynthia, Differential Privacy, Microsoft Research, p. 1-12. |
| Emerson, et al, “A Data Mining Driven Risk Profiling Method for Road Asset Management,” ACM, pp. 1267-1275 (Year: 2013). |
| Enck, William, et al, TaintDroid: An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones, ACM Transactions on Computer Systems, vol. 32, No. 2, Article 5, Jun. 2014, p. 5:1-5:29. |
| Everypixel Team, “A New Age Recognition API Detects the Age of People on Photos,” May 20, 2019, pp. 1-5 (Year: 2019). |
| Falahrastegar, Marjan, et al, Tracking Personal Identifiers Across the Web, Medical Image Computing and Computer-Assisted Intervention—Miccai 2015, 18th International Conference, Oct. 5, 2015, Munich, Germany. |
| Fan et al, “Intrusion Investigations with Data-hiding for Computer Log-file Forensics,” IEEE, pp. 1-6 (Year: 2010). |
| Final Written Decision Regarding Post-Grant Review in Case PGR2018-00056 for U.S. Pat. No. 9,691,090 B1, Oct. 10, 2019. |
| Francis, Andre, Business Mathematics and Statistics, South-Western Cengage Learning, 2008, Sixth Edition. |
| Friedman et al, “Data Mining with Differential Privacy,” ACM, Jul. 2010, pp. 493-502 (Year: 2010). |
| Friedman et al, “Informed Consent in the Mozilla Browser: Implementing Value-Sensitive Design,” Proceedings of the 35th Annual Hawaii International Conference on System Sciences, 2002, IEEE, pp. 1-10 (Year: 2002). |
| Frikken, Keith B., et al, Yet Another Privacy Metric for Publishing Micro-data, Miami University, Oct. 27, 2008, pp. 117-121. |
| Fung et al, “Discover Information and Knowledge from Websites using an Integrated Summarization and Visualization Framework”, IEEE, pp. 232-235 (Year: 2010). |
| Gajare et al, “Improved Automatic Feature Selection Approach for Health Risk Prediction,” Feb. 16, 2018, IEEE, pp. 816 -819 (Year: 2018). |
| Geko et al, “An Ontology Capturing the Interdependence of the General Data Protection Regulation (GDPR) and Information Security,” ACM, pp. 1-6, Nov. 15-16, 2018 (Year: 2018). |
| Ghiglieri, Marco et al.; Personal DLP for Facebook, 2014 IEEE International Conference on Pervasive Computing and Communication Workshops (Percom Workshops); IEEE; Mar. 24, 2014; pp. 629-634. |
| Gilda, et al, “Blockchain for Student Data Privacy and Consent,” 2018 International Conference on Computer Communication and Informatics, Jan. 4-6, 2018, IEEE, pp. 1-5 (Year: 2018). |
| Golab, et al, “Issues in Data Stream Management,” ACM, SIGMOD Record, vol. 32, No. 2, Jun. 2003, pp. 5-14 (Year: 2003). |
| Golfarelli et al, “Beyond Data Warehousing: What's Next in Business Intelligence?,” ACM, pp. 1-6 (Year: 2004). |
| Gonçalves et al, “The XML Log Standard for Digital Libraries: Analysis, Evolution, and Deployment,” IEEE, pp. 312-314 (Year: 2003). |
| Goni, Kyriaki, “Deletion Process_Only you can see my history: Investigating Digital Privacy, Digital Oblivion, and Control on Personal Data Through an Interactive Art Installation,” ACM, 2016, retrieved online on Oct. 3, 2019, pp. 324-333. Retrieved from the Internet URL: http://delivery.acm.org/10.1145/2920000/291. |
| Gowadia et al, “RDF Metadata for XML Access Control,” ACM, pp. 31-48 (Year: 2003). |
| Grolinger, et al, “Data Management in Cloud Environments: NoSQL and NewSQL Data Stores,” Journal of Cloud Computing: Advances, Systems and Applications, pp. 1-24 (Year: 2013). |
| Guo, et al, “OPAL: A Passe-partout for Web Forms,” ACM, pp. 353-356 (Year: 2012). |
| Gustarini, et al, “Evaluation of Challenges in Human Subject Studies ”In-the-Wild“ Using Subjects' Personal Smartphones,” ACM, pp. 1447-1456 (Year: 2013). |
| Hacigümüs, Hakan, et al, Executing SQL over Encrypted Data in the Database-Service-Provider Model, ACM, Jun. 4, 2002, pp. 216-227. |
| Halevy, et al, “Schema Mediation in Peer Data Management Systems,” IEEE, Proceedings of the 19th International Conference on Data Engineering, 2003, pp. 505-516 (Year: 2003). |
| Hauch, et al, “Information Intelligence: Metadata for Information Discovery, Access, and Integration,” ACM, pp. 793-798 (Year: 2005). |
| He et al, “A Crowdsourcing Framework for Detecting of Cross-Browser Issues in Web Application,” ACM, pp. 1-4, Nov. 6, 2015 (Year: 2015). |
| Hernandez, et al, “Data Exchange with Data-Metadata Translations,” ACM, pp. 260-273 (Year: 2008). |
| Hinde, “A Model to Assess Organisational Information Privacy Maturity Against the Protection of Personal Information Act Dissertation University of Cape Town” 2014, pp. 1-121 (Year: 2014). |
| Hodge, et al, “Managing Virtual Data Marts with Metapointer Tables,” pp. 1-7 (Year: 2002). |
| Horrall et al, “Evaluating Risk: IBM's Country Financial Risk and Treasury Risk Scorecards,” Jul. 21, 2014, IBM, vol. 58, issue 4, pp. 2:1-2:9 (Year: 2014). |
| Hu, et al, “Attribute Considerations for Access Control Systems,” NIST Special Publication 800-205, Jun. 2019, pp. 1-42 (Year: 2019). |
| Hu, et al, “Guide to Attribute Based Access Control (ABAC) Definition and Considerations (Draft),” NIST Special Publication 800-162, pp. 1-54 (Year: 2013). |
| Huang, et al, “A Study on Information Security Management with Personal Data Protection,” IEEE, Dec. 9, 2011, pp. 624-630 (Year: 2011). |
| Huner et al, “Towards a Maturity Model for Corporate Data Quality Management”, ACM, pp. 231-238, 2009 (Year: 2009). |
| Hunton & Williams LLP, The Role of Risk Management in Data Protection, Privacy Risk Framework and the Risk-based Approach to Privacy, Centre for Information Policy Leadership, Workshop II, Nov. 23, 2014. |
| Huo et al, “A Cloud Storage Architecture Model for Data-lntensive Applications,” IEEE, pp. 1-4 (Year: 2011). |
| IAPP, Daily Dashboard, PIA Tool Stocked With New Templates for DPI, Infosec, International Association of Privacy Professionals, Apr. 22, 2014. |
| Notice of Allowance, dated Jan. 12, 2022, from corresponding U.S. Appl. No. 17/334,948. |
| Notice of Allowance, dated Jan. 12, 2022, from corresponding U.S. Appl. No. 17/463,775. |
| Notice of Allowance, dated Jan. 14, 2020, from corresponding U.S. Appl. No. 16/277,715. |
| Notice of Allowance, dated Jan. 15, 2021, from corresponding U.S. Appl. No. 17/030,714. |
| Notice of Allowance, dated Jan. 18, 2018, from corresponding U.S. Appl. No. 15/619,478. |
| Notice of Allowance, dated Jan. 18, 2019 from corresponding U.S. Appl. No. 16/159,635. |
| Notice of Allowance, dated Jan. 2, 2020, from corresponding U.S. Appl. No. 16/410,296. |
| Notice of Allowance, dated Jan. 23, 2018, from corresponding U.S. Appl. No. 15/619,251. |
| Notice of Allowance, dated Jan. 24, 2022, from corresponding U.S. Appl. No. 17/340,699. |
| Notice of Allowance, dated Jan. 25, 2021, from corresponding U.S. Appl. No. 16/410,336. |
| Notice of Allowance, dated Jan. 26, 2018, from corresponding U.S. Appl. No. 15/619,469. |
| Notice of Allowance, dated Jan. 26, 2022, from corresponding U.S. Appl. No. 17/491,906. |
| Notice of Allowance, dated Jan. 29, 2020, from corresponding U.S. Appl. No. 16/278,119. |
| Notice of Allowance, dated Jan. 31, 2022, from corresponding U.S. Appl. No. 17/472,948. |
| Notice of Allowance, dated Jan. 5, 2022, from corresponding U.S. Appl. No. 17/475,241. |
| Notice of Allowance, dated Jan. 6, 2021, from corresponding U.S. Appl. No. 16/595,327. |
| Notice of Allowance, dated Jan. 6, 2022, from corresponding U.S. Appl. No. 17/407,765. |
| Notice of Allowance, dated Jan. 7, 2022, from corresponding U.S. Appl. No. 17/222,725. |
| Notice of Allowance, dated Jan. 8, 2020, from corresponding U.S. Appl. No. 16/600,879. |
| Notice of Allowance, dated Jul. 10, 2019, from corresponding U.S. Appl. No. 16/237,083. |
| Notice of Allowance, dated Jul. 10, 2019, from corresponding U.S. Appl. No. 16/403,358. |
| Notice of Allowance, dated Jul. 12, 2019, from corresponding U.S. Appl. No. 16/278,121. |
| Notice of Allowance, dated Jul. 14, 2020, from corresponding U.S. Appl. No. 16/701,043. |
| Notice of Allowance, dated Jul. 15, 2020, from corresponding U.S. Appl. No. 16/791,006. |
| Notice of Allowance, dated Jul. 16, 2020, from corresponding U.S. Appl. No. 16/901,979. |
| Notice of Allowance, dated Jul. 17, 2019, from corresponding U.S. Appl. No. 16/055,961. |
| Notice of Allowance, dated Jul. 17, 2020, from corresponding U.S. Appl. No. 16/778,709. |
| Notice of Allowance, dated Jul. 19, 2021, from corresponding U.S. Appl. No. 17/306,252. |
| Notice of Allowance, dated Jul. 21, 2020, from corresponding U.S. Appl. No. 16/557,392. |
| Notice of Allowance, dated Jul. 23, 2019, from corresponding U.S. Appl. No. 16/220,978. |
| Notice of Allowance, dated Jul. 26, 2019, from corresponding U.S. Appl. No. 16/409,673. |
| Notice of Allowance, dated Jul. 26, 2021, from corresponding U.S. Appl. No. 17/151,399. |
| Notice of Allowance, dated Jul. 26, 2021, from corresponding U.S. Appl. No. 17/207,316. |
| Notice of Allowance, dated Jul. 31, 2019, from corresponding U.S. Appl. No. 16/221,153. |
| Notice of Allowance, dated Jul. 8, 2021, from corresponding U.S. Appl. No. 17/201,040. |
| Notice of Allowance, dated Jun. 1, 2020, from corresponding U.S. Appl. No. 16/813,321. |
| Notice of Allowance, dated Jun. 11, 2021, from corresponding U.S. Appl. No. 16/862,948. |
| Notice of Allowance, dated Jun. 11, 2021, from corresponding U.S. Appl. No. 16/862,952. |
| Notice of Allowance, dated Jun. 11, 2021, from corresponding U.S. Appl. No. 17/216,436. |
| Notice of Allowance, dated Jun. 12, 2019, from corresponding U.S. Appl. No. 16/278,123. |
| Notice of Allowance, dated Jun. 12, 2019, from corresponding U.S. Appl. No. 16/363,454. |
| Notice of Allowance, dated Jun. 16, 2020, from corresponding U.S. Appl. No. 16/798,818. |
| Notice of Allowance, dated Jun. 17, 2020, from corresponding U.S. Appl. No. 16/656,895. |
| Notice of Allowance, dated Jun. 18, 2019, from corresponding U.S. Appl. No. 16/410,566. |
| Notice of Allowance, dated Jun. 19, 2018, from corresponding U.S. Appl. No. 15/894,890. |
| Notice of Allowance, dated Jun. 19, 2019, from corresponding U.S. Appl. No. 16/042,673. |
| Notice of Allowance, dated Jun. 19, 2019, from corresponding U.S. Appl. No. 16/055,984. |
| Notice of Allowance, dated Jun. 2, 2021, from corresponding U.S. Appl. No. 17/198,581. |
| Notice of Allowance, dated Jun. 21, 2019, from corresponding U.S. Appl. No. 16/404,439. |
| Notice of Allowance, dated Jun. 22, 2020, from corresponding U.S. Appl. No. 16/791,337. |
| Niu, et al, “Achieving Data Truthfulness and Privacy Preservation in Data Markets”, IEEE Transactions On Knowledge and Data Engineering, IEEE Service Centre, Los Alamitos, CA, US, vol. 31, No. 1, Jan. 1, 2019, pp. 105-119 (Year: 2019). |
| Notice of Allowance, dated May 11, 2022, from corresponding U.S. Appl. No. 17/395,759. |
| Notice of Allowance, dated May 18, 2022, from corresponding U.S. Appl. No. 17/670,354. |
| Notice of Allowance, dated May 25, 2022, from corresponding U.S. Appl. No. 16/872,031. |
| Notice of Allowance, dated May 6, 2022, from corresponding U.S. Appl. No. 17/666,886. |
| Office Action, dated May 12, 2022, from corresponding U.S. Appl. No. 17/509,974. |
| Office Action, dated May 16, 2022, from corresponding U.S. Appl. No. 17/679,750. |
| Office Action, dated May 24, 2022, from corresponding U.S. Appl. No. 17/674,187. |
| Office Action, dated May 9, 2022, from corresponding U.S. Appl. No. 16/840,943. |
| Preuveneers et al, “Access Control with Delegated Authorization Policy Evaluation for Data-Driven Microservice Workflows,” Future Internet 2017, MDPI, pp. 1-21 (Year: 2017). |
| Thomas et al, “MooM—A Prototype Framework for Management of Ontology Mappings,” IEEE, pp. 548-555 (Year: 2011). |
| Written Opinion of the International Searching Authority, dated May 12, 2022, from corresponding International Application No. PCT/US2022/015929. |
| Written Opinion of the International Searching Authority, dated May 17, 2022, from corresponding International Application No. PCT/US2022/015241. |
| Written Opinion of the International Searching Authority, dated May 19, 2022, from corresponding International Application No. PCT/US2022/015637. |
| Final Office Action, dated Apr. 1, 2022, from corresponding U.S. Appl. No. 17/370,650. |
| Final Office Action, dated Apr. 5, 2022, from corresponding U.S. Appl. No. 17/013,756. |
| International Search Report, dated Apr. 12, 2022, from corresponding International Application No. PCT/US2022/016735. |
| International Search Report, dated Mar. 18, 2022, from corresponding International Application No. PCT/US2022/013733. |
| Lewis, James et al, “Microservices,” Mar. 25, 2014 (Mar. 25, 2014),XP055907494, Retrieved from the Internet: https://martinfowler.com/articles/microservices.html [retrieved on Mar. 31, 2022]. |
| Notice of Allowance, dated Apr. 4, 2022, from corresponding U.S. Appl. No. 17/493,332. |
| Notice of Allowance, dated Apr. 4, 2022, from corresponding U.S. Appl. No. 17/572,298. |
| Notice of Allowance, dated Mar. 31, 2022, from corresponding U.S. Appl. No. 17/476,209. |
| Office Action, dated Apr. 8, 2022, from corresponding U.S. Appl. No. 16/938,509. |
| Restriction Requirement, dated Apr. 12, 2022, from corresponding U.S. Appl. No. 17/584,187. |
| Written Opinion of the International Searching Authority, dated Apr. 12, 2022, from corresponding International Application No. PCT/US2022/016735. |
| Written Opinion of the International Searching Authority, dated Mar. 18, 2022, from corresponding International Application No. PCT/US2022/013733. |
| Ali et al, “Age Estimation from Facial Images Using Biometric Ratios and Wrinkle Analysis,” IEEE, 2015, pp. 1-5 (Year: 2015). |
| Chang et al, “A Ranking Approach for Human Age Estimation Based on Face Images,” IEEE, 2010, pp. 3396-3399 (Year: 2010). |
| Edinger et al, “Age and Gender Estimation of Unfiltered Faces,” IEEE, 2014, pp. 2170-2179 (Year: 2014). |
| Final Office Action, dated Apr. 25, 2022, from corresponding U.S. Appl. No. 17/149,421. |
| Han et al, “Demographic Estimation from Face Images: Human vs. Machine Performance,” IEEE, 2015, pp. 1148-1161 (Year: 2015). |
| Huettner, “Digital Risk Management: Protecting Your Privacy, Improving Security, and Preparing for Emergencies,” IEEE, pp. 136-138 (Year: 2006). |
| Jayasinghe et al, “Matching Facial Images Using Age Related Morphing Changes,” ISSRI, 2009, pp. 2901-2907 (Year: 2009). |
| Khan et al, “Wrinkles Energy Based Age Estimation Using Discrete Cosine Transform,” IEEE, 2015, pp. 1-4 (Year: 2015). |
| Kristian et al, “Human Facial Age Classification Using Active Shape Module, Geometrical Feature, and Support Vendor Machine on Early Growth Stage,” ISICO, 2015, pp. 1-8 (Year: 2015). |
| Liu et al, “Overview on Ontology Mapping and Approach,” IEEE, pp. 592-595 (Year: 2011). |
| Milic et al, “Comparative Analysis of Metadata Models on e-Government Open Data Platforms,” IEEE, pp. 119-130 (Year: 2021). |
| Notice of Allowance, dated Apr. 12, 2022, from corresponding U.S. Appl. No. 17/479,807. |
| Notice of Allowance, dated Apr. 14, 2022, from corresponding U.S. Appl. No. 17/572,276. |
| Notice of Allowance, dated Apr. 20, 2022, from corresponding U.S. Appl. No. 17/573,808. |
| Notice of Allowance, dated Apr. 27, 2022, from corresponding U.S. Appl. No. 17/573,999. |
| Notice of Allowance, dated Apr. 28, 2022, from corresponding U.S. Appl. No. 17/670,352. |
| Office Action, dated Apr. 12, 2022, from corresponding U.S. Appl. No. 17/670,341. |
| Office Action, dated Apr. 18, 2022, from corresponding U.S. Appl. No. 17/670,349. |
| Office Action, dated Apr. 25, 2022, from corresponding U.S. Appl. No. 17/588,645. |
| Office Action, dated Apr. 26, 2022, from corresponding U.S. Appl. No. 17/151,334. |
| Qu et al, “Metadata Type System: Integrate Presentation, Data Models and Extraction to Enable Exploratory Browsing Interfaces,” ACM, pp. 107-116 (Year: 2014). |
| Shulz et al, “Generative Data Models for Validation and Evaluation of Visualization Techniques,” ACM, pp. 1-13 (Year: 2016). |
| Final Office Action, dated Apr. 28, 2022, from corresponding U.S. Appl. No. 16/925,550. |
| Notice of Allowance, dated Apr. 29, 2022, from corresponding U.S. Appl. No. 17/387,421. |
| Bansal et al, “Integrating Big Data: A Semantic Extract-Transform-Load Framework,” IEEE, pp. 42-50 (Year: 2015). |
| Bao et al, “Performance Modeling and Workflow Scheduling of Microservice-Based Applications in Clouds,” IEEE Transactions on Parallel and Distributed Systems, vol. 30, No. 9, Sep. 2019, pp. 2101-2116 (Year: 2019). |
| Bindschaedler et al, “Privacy Through Fake Yet Semantically Real Traces,” arxiv.org, Cornell University Library, 201 Olin Library Cornell University Ithaca, NY 14853, May 27, 2015 (Year: 2015). |
| Castro et al, “Creating Lightweight Ontologies for Dataset Description,” IEEE, pp. 1-4 (Year: 2014). |
| Ex Parte Quayle Action, dated May 10, 2022, from corresponding U.S. Appl. No. 17/668,714. |
| Final Office Action, dated May 12, 2022, from corresponding U.S. Appl. No. 17/499,624. |
| Final Office Action, dated May 16, 2022, from corresponding U.S. Appl. No. 17/480,377. |
| Final Office Action, dated May 2, 2022, from corresponding U.S. Appl. No. 17/499,595. |
| Final Office Action, dated May 24, 2022, from corresponding U.S. Appl. No. 17/499,582. |
| International Search Report, dated May 12, 2022, from corresponding International Application No. PCT/US2022/015929. |
| International Search Report, dated May 17, 2022, from corresponding International Application No. PCT/US2022/015241. |
| International Search Report, dated May 19, 2022, from corresponding International Application No. PCT/US2022/015637. |
| Lasierra et al, “Data Management in Home Scenarios Using an Autonomic Ontology-Based Approach,” IEEE, pp. 94-99 (Year: 2012). |
| Lenzerini et al, “Ontology-based Data Management,” ACM, pp. 5-6 (Year: 2011). |
| Written Opinion of the International Searching Authority, dated Nov. 3, 2021, from corresponding International Application No. PCT/US2021/044910. |
| Written Opinion of the International Searching Authority, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/043975. |
| Written Opinion of the International Searching Authority, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/043976. |
| Written Opinion of the International Searching Authority, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/043977. |
| Written Opinion of the International Searching Authority, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/044026. |
| Written Opinion of the International Searching Authority, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/045240. |
| Written Opinion of the International Searching Authority, dated Oct. 12, 2017, from corresponding International Application No. PCT/US2017/036888. |
| Written Opinion of the International Searching Authority, dated Oct. 12, 2018, from corresponding International Application No. PCT/US2018/044046. |
| Written Opinion of the International Searching Authority, dated Oct. 16, 2018, from corresponding International Application No. PCT/US2018/045243. |
| Written Opinion of the International Searching Authority, dated Oct. 18, 2018, from corresponding International Application No. PCT/US2018/045249. |
| Written Opinion of the International Searching Authority, dated Oct. 20, 2017, from corresponding International Application No. PCT/US2017/036917. |
| Written Opinion of the International Searching Authority, dated Oct. 3, 2017, from corresponding International Application No. PCT/US2017/036912. |
| Written Opinion of the International Searching Authority, dated Sep. 1, 2017, from corresponding International Application No. PCT/US2017/036896. |
| Written Opinion of the International Searching Authority, dated Sep. 12, 2018, from corresponding International Application No. PCT/US2018/037504. |
| Written Opinion of the International Searching Authority, dated Sep. 15, 2021, from corresponding International Application No. PCT/US2021/033631. |
| International Search Report, dated Aug. 15, 2017, from corresponding International Application No. PCT/US2017/036919. |
| International Search Report, dated Aug. 21, 2017, from corresponding International Application No. PCT/US2017/036914. |
| International Search Report, dated Aug. 29, 2017, from corresponding International Application No. PCT/US2017/036898. |
| International Search Report, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036889. |
| International Search Report, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036890. |
| International Search Report, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036893. |
| International Search Report, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036901. |
| International Search Report, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036913. |
| International Search Report, dated Aug. 8, 2017, from corresponding International Application No. PCT/US2017/036920. |
| International Search Report, dated Dec. 14, 2018, from corresponding International Application No. PCT/US2018/045296. |
| International Search Report, dated Dec. 22, 2021, from corresponding International Application No. PCT/US2021/051217. |
| International Search Report, dated Feb. 11, 2022, from corresponding International Application No. PCT/US2021/053518. |
| International Search Report, dated Jan. 14, 2019, from corresponding International Application No. PCT/US2018/046949. |
| International Search Report, dated Jan. 5, 2022, from corresponding International Application No. PCT/US2021/050497. |
| International Search Report, dated Jan. 7, 2019, from corresponding International Application No. PCT/US2018/055772. |
| International Search Report, dated Jun. 21, 2017, from corresponding International Application No. PCT/US2017/025600. |
| International Search Report, dated Jun. 6, 2017, from corresponding International Application No. PCT/US2017/025605. |
| International Search Report, dated Jun. 6, 2017, from corresponding International Application No. PCT/US2017/025611. |
| International Search Report, dated Mar. 14, 2019, from corresponding International Application No. PCT/US2018/055736. |
| International Search Report, dated Mar. 4, 2019, from corresponding International Application No. PCT/US2018/055773. |
| International Search Report, dated Mar. 4, 2019, from corresponding International Application No. PCT/US2018/055774. |
| International Search Report, dated Nov. 12, 2021, from corresponding International Application No. PCT/US2021/043481. |
| International Search Report, dated Nov. 19, 2018, from corresponding International Application No. PCT/US2018/046939. |
| International Search Report, dated Nov. 3, 2021, from corresponding International Application No. PCT/US2021/040893. |
| International Search Report, dated Nov. 3, 2021, from corresponding International Application No. PCT/US2021/044910. |
| International Search Report, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/043975. |
| International Search Report, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/043976. |
| International Search Report, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/043977. |
| International Search Report, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/044026. |
| International Search Report, dated Oct. 11, 2018, from corresponding International Application No. PCT/US2018/045240. |
| International Search Report, dated Oct. 12, 2017, from corresponding International Application No. PCT/US2017/036888. |
| International Search Report, dated Oct. 12, 2018, from corresponding International Application No. PCT/US2018/044046. |
| International Search Report, dated Oct. 16, 2018, from corresponding International Application No. PCT/US2018/045243. |
| International Search Report, dated Oct. 18, 2018, from corresponding International Application No. PCT/US2018/045249. |
| International Search Report, dated Oct. 20, 2017, from corresponding International Application No. PCT/US2017/036917. |
| Notice of Allowance, dated Nov. 16, 2021, from corresponding U.S. Appl. No. 17/491,871. |
| Notice of Allowance, dated Nov. 2, 2018, from corresponding U.S. Appl. No. 16/054,762. |
| Notice of Allowance, dated Nov. 22, 2021, from corresponding U.S. Appl. No. 17/383,889. |
| Notice of Allowance, dated Nov. 23, 2020, from corresponding U.S. Appl. No. 16/791,589. |
| Notice of Allowance, dated Nov. 24, 2020, from corresponding U.S. Appl. No. 17/027,019. |
| Notice of Allowance, dated Nov. 25, 2020, from corresponding U.S. Appl. No. 17/019,771. |
| Notice of Allowance, dated Nov. 26, 2019, from corresponding U.S. Appl. No. 16/563,735. |
| Notice of Allowance, dated Nov. 27, 2019, from corresponding U.S. Appl. No. 16/570,712. |
| Notice of Allowance, dated Nov. 27, 2019, from corresponding U.S. Appl. No. 16/577,634. |
| Notice of Allowance, dated Nov. 3, 2020, from corresponding U.S. Appl. No. 16/719,071. |
| Notice of Allowance, dated Nov. 5, 2019, from corresponding U.S. Appl. No. 16/560,965. |
| Notice of Allowance, dated Nov. 7, 2017, from corresponding U.S. Appl. No. 15/671,073. |
| Notice of Allowance, dated Nov. 8, 2018, from corresponding U.S. Appl. No. 16/042,642. |
| Notice of Allowance, dated Nov. 9, 2020, from corresponding U.S. Appl. No. 16/595,342. |
| Notice of Allowance, dated Oct. 1, 2021, from corresponding U.S. Appl. No. 17/340,395. |
| Notice of Allowance, dated Oct. 10, 2019, from corresponding U.S. Appl. No. 16/277,539. |
| Notice of Allowance, dated Oct. 17, 2018, from corresponding U.S. Appl. No. 15/896,790. |
| Notice of Allowance, dated Oct. 17, 2018, from corresponding U.S. Appl. No. 16/054,672. |
| Notice of Allowance, dated Oct. 17, 2019, from corresponding U.S. Appl. No. 16/563,741. |
| Notice of Allowance, dated Oct. 21, 2019, from corresponding U.S. Appl. No. 16/404,405. |
| Notice of Allowance, dated Oct. 21, 2020, from corresponding U.S. Appl. No. 16/834,812. |
| Notice of Allowance, dated Oct. 22, 2021, from corresponding U.S. Appl. No. 17/346,847. |
| Notice of Allowance, dated Oct. 3, 2019, from corresponding U.S. Appl. No. 16/511,700. |
| Notice of Allowance, dated Sep. 1, 2021, from corresponding U.S. Appl. No. 17/196,570. |
| Notice of Allowance, dated Sep. 1, 2021, from corresponding U.S. Appl. No. 17/222,556. |
| Notice of Allowance, dated Sep. 12, 2019, from corresponding U.S. Appl. No. 16/512,011. |
| Notice of Allowance, dated Sep. 13, 2018, from corresponding U.S. Appl. No. 15/894,809. |
| Notice of Allowance, dated Sep. 13, 2018, from corresponding U.S. Appl. No. 15/894,890. |
| Notice of Allowance, dated Sep. 14, 2021, from corresponding U.S. Appl. No. 16/808,497. |
| Notice of Allowance, dated Sep. 16, 2020, from corresponding U.S. Appl. No. 16/915,097. |
| Notice of Allowance, dated Sep. 17, 2020, from corresponding U.S. Appl. No. 16/863,226. |
| Notice of Allowance, dated Sep. 18, 2018, from corresponding U.S. Appl. No. 15/894,819. |
| Notice of Allowance, dated Sep. 18, 2018, from corresponding U.S. Appl. No. 16/041,545. |
| Notice of Allowance, dated Sep. 18, 2020, from corresponding U.S. Appl. No. 16/812,795. |
| Notice of Allowance, dated Sep. 23, 2020, from corresponding U.S. Appl. No. 16/811,793. |
| Notice of Allowance, dated Sep. 23, 2021, from corresponding U.S. Appl. No. 17/068,454. |
| Notice of Allowance, dated Sep. 24, 2021, from corresponding U.S. Appl. No. 17/334,939. |
| Notice of Allowance, dated Sep. 25, 2020, from corresponding U.S. Appl. No. 16/983,536. |
| Notice of Allowance, dated Sep. 27, 2017, from corresponding U.S. Appl. No. 15/626,052. |
| Notice of Allowance, dated Sep. 27, 2021, from corresponding U.S. Appl. No. 17/222,523. |
| Notice of Allowance, dated Sep. 28, 2018, from corresponding U.S. Appl. No. 16/041,520. |
| Notice of Allowance, dated Sep. 29, 2021, from corresponding U.S. Appl. No. 17/316,179. |
| Notice of Allowance, dated Sep. 4, 2018, from corresponding U.S. Appl. No. 15/883,041. |
| Notice of Allowance, dated Sep. 4, 2020, from corresponding U.S. Appl. No. 16/808,500. |
| Notice of Allowance, dated Sep. 4, 2020, from corresponding U.S. Appl. No. 16/901,662. |
| Notice of Allowance, dated Sep. 9, 2021, from corresponding U.S. Appl. No. 17/334,909. |
| Restriction Requirement, dated Apr. 10, 2019, from corresponding U.S. Appl. No. 16/277,715. |
| Restriction Requirement, dated Apr. 13, 2020, from corresponding U.S. Appl. No. 16/817,136. |
| Restriction Requirement, dated Apr. 24, 2019, from corresponding U.S. Appl. No. 16/278,122. |
| Restriction Requirement, dated Aug. 7, 2019, from corresponding U.S. Appl. No. 16/410,866. |
| Yu, “Using Data from Social Media Websites to Inspire the Design of Assistive Technology”, ACM, pp. 1-2 (Year: 2016). |
| Yu, et al, “Performance and Fairness Issues in Big Data Transfers,” ACM, pp. 9-11 (Year: 2014). |
| Yue et al, “An Automatic HTTP Cookie Management System,” Computer Networks, Elsevier, Amsterdam, NL, vol. 54, No. 13, Sep. 15, 2010, pp. 2182-2198 (Year: 2010). |
| Zannone, et al, “Maintaining Privacy on Derived Objects,” ACM, pp. 10-19 (Year: 2005). |
| Zeldovich, Nickolai, et al, Making Information Flow Explicit in HiStar, OSDI '06: 7th USENIX Symposium on Dperating Systems Design and Implementation, USENIX Association, p. 263-278. |
| Zhang et al, “Data Transfer Performance Issues for a Web Services Interface to Synchrotron Experiments”, ACM, pp. 59-65 (Year: 2007). |
| Zhang et al, “Dynamic Topic Modeling for Monitoring Market Competition from Online Text and Image Data”, ACM, pp. 1425-1434 (Year: 2015). |
| Zheng, et al, “Methodologies for Cross-Domain Data Fusion: An Overview,” IEEE, pp. 16-34 (Year: 2015). |
| Zheng, et al, “Toward Assured Data Deletion in Cloud Storage,” IEEE, vol. 34, No. 3, pp. 101-107 May/Jun. 2020 (Year: 2020). |
| Zhu, et al, “Dynamic Data Integration Using Web Services,” IEEE, pp. 1-8 (Year: 2004). |
| Office Action, dated Mar. 27, 2019, from corresponding U.S. Appl. No. 16/278,120. |
| Office Action, dated Mar. 30, 2018, from corresponding U.S. Appl. No. 15/894,890. |
| Office Action, dated Mar. 30, 2018, from corresponding U.S. Appl. No. 15/896,790. |
| Office Action, dated Mar. 30, 2021, from corresponding U.S. Appl. No. 17/151,399. |
| Office Action, dated Mar. 4, 2019, from corresponding U.S. Appl. No. 16/237,083. |
| Office Action, dated May 14, 2020, from corresponding U.S. Appl. No. 16/808,497. |
| Office Action, dated May 14, 2020, from corresponding U.S. Appl. No. 16/808,503. |
| Office Action, dated May 15, 2020, from corresponding U.S. Appl. No. 16/808,493. |
| Office Action, dated May 16, 2018, from corresponding U.S. Appl. No. 15/882,989. |
| Office Action, dated May 17, 2019, from corresponding U.S. Appl. No. 16/277,539. |
| Office Action, dated May 18, 2021, from corresponding U.S. Appl. No. 17/196,570. |
| Office Action, dated May 2, 2018, from corresponding U.S. Appl. No. 15/894,809. |
| Office Action, dated May 2, 2019, from corresponding U.S. Appl. No. 16/104,628. |
| Office Action, dated May 29, 2020, from corresponding U.S. Appl. No. 16/862,944. |
| Office Action, dated May 29, 2020, from corresponding U.S. Appl. No. 16/862,948. |
| Office Action, dated May 29, 2020, from corresponding U.S. Appl. No. 16/863,226. |
| Office Action, dated May 5, 2020, from corresponding U.S. Appl. No. 16/410,336. |
| Office Action, dated Nov. 1, 2017, from corresponding U.S. Appl. No. 15/169,658. |
| Office Action, dated Nov. 10, 2021, from corresponding U.S. Appl. No. 17/380,485. |
| Office Action, dated Nov. 10, 2021, from corresponding U.S. Appl. No. 17/409,999. |
| Office Action, dated Nov. 12, 2020, from corresponding U.S. Appl. No. 17/034,355. |
| Office Action, dated Nov. 12, 2020, from corresponding U.S. Appl. No. 17/034,772. |
| Office Action, dated Nov. 12, 2021, from corresponding U.S. Appl. No. 17/346,586. |
| Office Action, dated Nov. 12, 2021, from corresponding U.S. Appl. No. 17/373,444. |
| Office Action, dated Nov. 15, 2018, from corresponding U.S. Appl. No. 16/059,911. |
| Office Action, dated Nov. 15, 2019, from corresponding U.S. Appl. No. 16/552,758. |
| Office Action, dated Nov. 16, 2021, from corresponding U.S. Appl. No. 17/370,650. |
| Office Action, dated Nov. 16, 2021, from corresponding U.S. Appl. No. 17/486,350. |
| Office Action, dated Nov. 18, 2019, from corresponding U.S. Appl. No. 16/560,885. |
| Office Action, dated Nov. 18, 2019, from corresponding U.S. Appl. No. 16/560,889. |
| Office Action, dated Nov. 18, 2019, from corresponding U.S. Appl. No. 16/572,347. |
| Office Action, dated Nov. 19, 2019, from corresponding U.S. Appl. No. 16/595,342. |
| Office Action, dated Nov. 20, 2019, from corresponding U.S. Appl. No. 16/595,327. |
| Office Action, dated Nov. 23, 2018, from corresponding U.S. Appl. No. 16/042,673. |
| Office Action, dated Nov. 23, 2021, from corresponding U.S. Appl. No. 17/013,756. |
| Office Action, dated Nov. 24, 2020, from corresponding U.S. Appl. No. 16/925,628. |
| Office Action, dated Nov. 26, 2021, from corresponding U.S. Appl. No. 16/925,550. |
| Office Action, dated Nov. 4, 2021, from corresponding U.S. Appl. No. 17/491,906. |
| Office Action, dated Nov. 8, 2021, from corresponding U.S. Appl. No. 16/872,130. |
| Office Action, dated Oct. 10, 2018, from corresponding U.S. Appl. No. 16/041,563. |
| Office Action, dated Oct. 10, 2018, from corresponding U.S. Appl. No. 16/055,083. |
| Office Action, dated Oct. 10, 2018, from corresponding U.S. Appl. No. 16/055,944. |
| Office Action, dated Oct. 12, 2021, from corresponding U.S. Appl. No. 17/346,509. |
| Office Action, dated Oct. 14, 2020, from corresponding U.S. Appl. No. 16/927,658. |
| Office Action, dated Oct. 15, 2018, from corresponding U.S. Appl. No. 16/054,780. |
| Office Action, dated Oct. 15, 2021, from corresponding U.S. Appl. No. 16/908,081. |
| Office Action, dated Oct. 16, 2019, from corresponding U.S. Appl. No. 16/557,392. |
| Office Action, dated Oct. 16, 2020, from corresponding U.S. Appl. No. 16/808,489. |
| Office Action, dated Oct. 23, 2018, from corresponding U.S. Appl. No. 16/055,961. |
| Office Action, dated Oct. 26, 2018, from corresponding U.S. Appl. No. 16/041,468. |
| International Search Report, dated Oct. 3, 2017, from corresponding International Application No. PCT/US2017/036912. |
| International Search Report, dated Sep. 1, 2017, from corresponding International Application No. PCT/US2017/036896. |
| International Search Report, dated Sep. 12, 2018, from corresponding International Application No. PCT/US2018/037504. |
| International Search Report, dated Sep. 15, 2021, from corresponding International Application No. PCT/US2021/033631. |
| Invitation to Pay Additional Search Fees, dated Aug. 10, 2017, from corresponding International Application No. PCT/US2017/036912. |
| Invitation to Pay Additional Search Fees, dated Aug. 10, 2017, from corresponding International Application No. PCT/US2017/036917. |
| Invitation to Pay Additional Search Fees, dated Aug. 24, 2017, from corresponding International Application No. PCT/US2017/036888. |
| Invitation to Pay Additional Search Fees, dated Jan. 18, 2019, from corresponding International Application No. PCT/US2018/055736. |
| Invitation to Pay Additional Search Fees, dated Jan. 7, 2019, from corresponding International Application No. PCT/US2018/055773. |
| Invitation to Pay Additional Search Fees, dated Jan. 8, 2019, from corresponding International Application No. PCT/US2018/055774. |
| Invitation to Pay Additional Search Fees, dated Oct. 23, 2018, from corresponding International Application No. PCT/US2018/045296. |
| Abdullah et al, “The Mapping Process of Unstructured Data to the Structured Data”, ACM, pp. 151-155 (Year: 2013). |
| Acar, Gunes, et al, The Web Never Forgets, Computerand Communications Security, ACM, Nov. 3, 2014, pp. 674-689. |
| Aghasian, Erfan, et al, Scoring Users' Privacy Disclosure Across Multiple Online Social Networks,IEEE Access, Multidisciplinary Rapid Review Open Access Journal, Jul. 31, 2017, vol. 5, 2017. |
| Agosti et al, “Access and Exchange of Hierarchically Structured Resources on the Web with the NESTOR Framework”, IEEE, pp. 659-662 (Year: 2009). |
| Agrawal et al, “Securing Electronic Health Records Without Impeding the Flow of Information,” International Journal of Medical Informatics 76, 2007, pp. 471-479 (Year: 2007). |
| Ahmad et al, “Task-Oriented Access Model for Secure Data Sharing Over Cloud,” ACM, pp. 1-7 (Year: 2015). |
| Ahmad, et al, “Performance of Resource Management Algorithms for Processable Bulk Data Transfer Tasks in Grid Environments,” ACM, pp. 177-188 (Year: 2008). |
| Alaa et al, “Personalized Risk Scoring for Critical Care Prognosis Using Mixtures of Gaussian Processes,” Apr. 27, 2017, IEEE, vol. 65, issue 1, pp. 207-217 (Year: 2017). |
| Aman et al, “Detecting Data Tampering Attacks in Synchrophasor Networks using Time Hopping,” IEEE, pp. 1-6 (Year: 2016). |
| Amar et al, “Privacy-Aware Infrastructure for Managing Personal Data,” ACM, pp. 571-572, Aug. 22-26, 2016 (Year: 2016). |
| Antunes et al, “Preserving Digital Data in Heterogeneous Environments”, ACM, pp. 345-348,2009 (Year: 2009). |
| Ardagna, et al, “A Privacy-Aware Access Control System,” Journal of Computer Security, 16:4, pp. 369-397 (Year: 2008). |
| Avepoint, Automating Privacy Impact Assessments, AvePoint, Inc. |
| Avepoint, AvePoint Privacy Impact Assessment 1: User Guide, Cumulative Update 2, Revision E, Feb. 2015, AvePoint, Inc. |
| Avepoint, Installing and Configuring the APIA System, International Association of Privacy Professionals, AvePoint, Inc. |
| Ball, et al, “Aspects of the Computer-Based Patient Record,” Computers in Healthcare, Springer-Verlag New York Inc., pp. 1-23 (Year: 1992). |
| Banerjee et al, “Link Before You Share: Managing Privacy Policies through Blockchain,” IEEE, pp. 4438-4447 (Year: 2017). |
| Bang et al, “Building an Effective and Efficient Continuous Web Application Security Program,” 2016 International Conference on Cyber Security Situational Awareness, Data Analytics and Assessment (CyberSA), London, 2016, pp. 1-4 (Year: 2016). |
| Barker, “Personalizing Access Control by Generalizing Access Control,” ACM, pp. 149-158 (Year: 2010). |
| Barr, “Amazon Rekognition Update—Estimated Age Range for Faces,” AWS News Blog, Feb. 10, 2017, pp. 1-5 (Year: 2017). |
| Bayardo et al, “Technological Solutions for Protecting Privacy,” Computer 36.9 (2003), pp. 115-118, (Year: 2003). |
| Berezovskiy et al, “A framework for dynamic data source identification and orchestration on the Web”, ACM, pp. 1-8 (Year: 2010). |
| Bertino et al, “On Specifying Security Policies for Web Documents with an XML-based Language,” ACM, pp. 57-65 (Year: 2001). |
| Bertino et al, “Towards Mechanisms for Detection and Prevention of Data Exfiltration by Insiders,” Mar. 22, 2011, ACM, pp. 10-19 (Year: 2011). |
| Bhargav-Spantzel et al, Receipt Management- Transaction History based Trust Establishment, 2007, ACM, p. 82-91. |
| Bhuvaneswaran et al, “Redundant Parallel Data Transfer Schemes for the Grid Environment”, ACM, p. 18 (Year: 2006). |
| Bieker, et al, “Privacy-Preserving Authentication Solutions—Best Practices for Implementation and EU Regulatory Perspectives,” Oct. 29, 2014, IEEE, pp. 1-10 (Year: 2014). |
| Bin, et al, “Research on Data Mining Models for the Internet of Things,” IEEE, pp. 1-6 (Year: 2010). |
| Binns, et al, “Data Havens, or Privacy Sans Frontieres? A Study of International Personal Data Transfers,” ACM, pp. 273-274 (Year: 2002). |
| Bjorn Greif, “Cookie Pop-up Blocker: Cliqz Automatically Denies Consent Requests,” Cliqz.com, pp. 1-9, Aug. 11, 2019 (Year: 2019). |
| Borgida, “Description Logics in Data Management,” IEEE Transactions on Knowledge and Data Engineering, vol. 7, No. 5, Oct. 1995, pp. 671-682 (Year: 1995). |
| Brandt et al, “Efficient Metadata Management in Large Distributed Storage Systems,” IEEE, pp. 1-9 (Year: 2003). |
| Bujlow et al, “Web Tracking: Mechanisms, Implications, and Defenses,” Proceedings of the IEEE, Aug. 1, 2017, vol. 5, No. 8, pp. 1476-1510 (Year: 2017). |
| Byun, Ji-Won, Elisa Bertino, and Ninghui Li. “Purpose based access control of complex data for privacy protection.” Proceedings of the tenth ACM symposium on Access control models and technologies. ACM, 2005. (Year: 2005). |
| Carminati et al, “Enforcing Access Control Over Data Streams,” ACM, pp. 21-30 (Year: 2007). |
| Carpineto et al, “Automatic Assessment of Website Compliance to the European Cookie Law with CooLCheck,” Proceedings of the 2016 ACM on Workshop on Privacy in the Electronic Society, 2016, pp. 135-138 (Year: 2016). |
| Cerpzone, “How to Access Data on Data Archival Storage and Recovery System”, https://www.saj.usace.army.mil/Portals/44/docs/Environmental/Lake%200%20Watershed/15February2017/How%20To%20Access%20Model% 20Data%20on%20DASR.pdf?ver=2017-02-16-095535-633, Feb. 16, 2017. |
| Cha et al, “A Data-Driven Security Risk Assessment Scheme for Personal Data Protection,” IEEE, p. 50510-50517 (Year: 2018). |
| Cha, et al, “Process-Oriented Approach for Validating Asset Value for Evaluating Information Security Risk,” IEEE, Aug. 31, 2009, pp. 379-385 (Year: 2009). |
| Popescu-Zeletin, “The Data Access and Transfer Support in a Local Heterogeneous Network (HMINET)”, IEEE, pp. 147-152 (Year: 1979). |
| Porter, “De-Identified Data and Third Party Data Mining: The Risk of Re-Identification of Personal Information,” Shidler JL Com. & Tech. 5, 2008, pp. 1-9 (Year: 2008). |
| Pretorius, et al, “Attributing Users Based on Web Browser History,” 2017 IEEE Conference on Application, Information and Network Security (AINS), 2017, pp. 69-74 (Year: 2017). |
| Qing-Jiang et al, “The (P, a, K) Anonymity Model for Privacy Protection of Personal Information in the Social Networks,” 2011 6th IEEE Joint International Information Technology and Artificial Intelligence Conference, vol. 2 IEEE, 2011, pp. 420-423 (Year: 2011). |
| Qiu, et al, “Design and Application of Data Integration Platform Based on Web Services and XML,” IEEE, pp. 253-256 (Year: 2016). |
| Radu, et al, “Analyzing Risk Evaluation Frameworks and Risk Assessment Methods,” IEEE, Dec. 12, 2020, pp. 1-6 (Year: 2020). |
| Rakers, “Managing Professional and Personal Sensitive Information,” ACM, pp. 9-13, Oct. 24-27, 2010 (Year: 2010). |
| Reardon et al, User-Level Secure Deletion on Log-Structured File Systems, ACM, 2012, retrieved online on Apr. 22, 2021, pp. 1-11. Retrieved from the Internet: URL: http://citeseerx.ist.psu.edu/viewdoc/download; isessionid=450713515DC7F19F8ED09AE961D4B60E. (Year: 2012). |
| Regulation (EU) 2016/679, “On the protection of natural persons with regard to the processing of personal data and on the free movement of such data, and repealing Directive 95/46/EC (General Data Protection Regulation),” Official Journal of the European Union, May 4, 2016, pp. L 119/1-L 119/88 (Year: 2016). |
| Roesner et al, “Detecting and Defending Against Third-Party Tracking on the Web,” 9th USENIX Symposium on Networked Systems Design and Implementation, Apr. 11, 2013, pp. 1-14, ACM (Year: 2013). |
| Rozepz, “What is Google Privacy Checkup? Everything You Need to Know,” Tom's Guide web post, Apr. 26, 2018, pp. 1-11 (Year: 2018). |
| Sachinopoulou et al, “Ontology-Based Approach for Managing Personal Health and Wellness Information,” IEEE, pp. 1802-1805 (Year: 2007). |
| Salim et al, “Data Retrieval and Security using Lightweight Directory Access Protocol”, IEEE, pp. 685-688 (Year: 2009). |
| Santhisree, et al, “Web Usage Data Clustering Using Dbscan Algorithm and Set Similarities,” IEEE, pp. 220-224 (Year: 2010). |
| Sanzo et al, “Analytical Modeling of Lock-Based Concurrency Control with Arbitrary Transaction Data Access Patterns,” ACM, pp. 69-78 (Year: 2010). |
| Sarkar et al, “Towards Enforcement of the EU GDPR: Enabling Data Erasure,” 2018 IEEE Confs on Internet of Things, Green Computing and Communications, Cyber, Physical and Social Computing, Smart Data, Blockchain, Computer and Information Technology, Congress on Cybermatics, 2018, pp. 222-229, IEEE (Year: 2018). |
| Schwartz, Edward J., et al, 2010 IEEE Symposium on Security and Privacy: All You Ever Wanted to Know About Dynamic Analysis and forward Symbolic Execution (but might have been afraid to ask), Carnegie Mellon University, IEEE Computer Society, 2010, p. 317-331. |
| Sedinic et al, “Security Risk Management in Complex Organization,” May 29, 2015, IEEE, pp. 1331-1337 (Year: 2015). |
| Shahriar et al, “A Model-Based Detection of Vulnerable and Malicious Browser Extensions,” IEEE, pp. 198-207 (Year: 2013). |
| Shankar et al, “Doppleganger: Better Browser Privacy Without the Bother,” Proceedings of the 13th ACM Conference on Computer and Communications Security; [ACM Conference on Computer and Communications Security], New York, NY: ACM, US, Oct. 30, 2006, pp. 154-167 (Year: 2006). |
| Singh, et al, “A Metadata Catalog Service for Data Intensive Applications,” ACM, pp. 1-17 (Year: 2003). |
| Sjosten et al, “Discovering Browser Extensions via Web Accessible Resources,” ACM, pp. 329-336, Mar. 22, 2017 (Year: 2017). |
| Slezak, et al, “Brighthouse: An Analytic Data Warehouse for Ad-hoc Queries,” ACM, pp. 1337-1345 (Year: 2008). |
| Soceanu, et al, “Managing the Privacy and Security of eHealth Data,” May 29, 2015, IEEE, pp. 1-8 (Year: 2015). |
| Srinivasan et al, “Descriptive Data Analysis of File Transfer Data,” ACM, pp. 1-8 (Year: 2014). |
| Srivastava, Agrima, et al, Measuring Privacy Leaks in Online Social Networks, International Conference on Advances in Computing, Communications and Informatics (ICACCI), 2013. |
| Stack Overflow, “Is there a way to force a user to scroll to the bottom of a div?,” Stack Overflow, pp. 1-11, Nov. 2013. [Online], Available: https://stackoverflow.com/questions/2745935/is-there-a-way-to-force-a-user-to-scroll-to-the-bottom-of-a-div (Year: 2013). |
| Stern, Joanna, “iPhone Privacy Is Broken . . . and Apps Are to Blame”, The Wall Street Journal, wsj.com, May 31, 2019. |
| Strodl, et al, “Personal & SOHO Archiving,” Vienna University of Technology, Vienna, Austria, JCDL '08, Jun. 16-20, 2008, Pittsburgh, Pennsylvania, USA, pp. 115-123 (Year: 2008). |
| Sukumar et al, “Review on Modern Data Preprocessing Techniques in Web Usage Mining (WUM),” IEEE, 2016, pp. 34-69 (Year: 2016). |
| Symantec, Symantex Data Loss Prevention—Discover, monitor, and protect confidential data; 2008; Symantec Corporation; http://www.mssuk.com/images/Symantec%2014552315_IRC_BR_DLP_03.09_sngl.pdf. |
| Tanasa et al, “Advanced Data Preprocessing for Intersites Web Usage Mining,” IEEE, Mar. 2004, pp. 59-65 (Year: 2004). |
| Tanwar, et al, “Live Forensics Analysis: Violations of Business Security Policy,” 2014 International Conference on Contemporary Computing and Informatics (IC31), 2014, pp. 971-976 (Year: 2014). |
| The Cookie Collective, Optanon Cookie Policy Generator, The Cookie Collective, Year 2016, http://web.archive.org/web/20160324062743/https:/optanon.com/. |
| Thuraisingham, “Security Issues for the Semantic Web,” Proceedings 27th Annual International Computer Software and Applications Conference, COMPSAC 2003, Dallas, TX, USA, 2003, pp. 633-638 (Year: 2003). |
| TRUSTe Announces General Availability of Assessment Manager for Enterprises to Streamline Data Privacy Management with Automation, PRNewswire, Mar. 4, 2015. |
| Tsai et al., “Determinants of Intangible Assets Value: The Data Mining Approach,” Knowledge Based System, pp. 67-77 http://www.elsevier.com/locate/knosys (Year: 2012). |
| Tuomas Aura et al, Scanning Electronic Documents for Personally Identifiable Information, ACM, Oct. 30, 2006, retrieved online on Jun. 13, 2019, pp. 41-49. Retrieved from the Internet: URL: http://delivery.acm.org/10.1145/1180000/1179608/p41-aura.pdf? (Year: 2006). |
| Van Eijk et al, “The Impact of User Location on Cookie Notices (Inside and Outside of the European Union,” IEEE Security & Privacy Workshop on Technology and Consumer Protection (CONPRO '19), Jan. 1, 2019 (Year: 2019). |
| Wang et al, “Revealing Key Non-Financial Factors for Online Credit-Scoring in E-Financing,” 2013, IEEE, pp. 1-6 (Year: 2013). |
| Wang et al, “Secure and Efficient Access to Outsourced Data,” ACM, pp. 55-65 (Year: 2009). |
| Weaver et al, “Understanding Information Preview in Mobile Email Processing”, ACM, pp. 303-312, 2011 (Year: 2011). |
| Wu et al, “Data Mining with Big Data,” IEEE, Jan. 2014, pp. 97-107, vol. 26, No. 1, (Year: 2014). |
| www.truste.com (1), 200150207, Internet Archive Wayback Machine, www.archive.org,2_7_2015. |
| Xu, et al, “GatorShare: A File System Framework for High-Throughput Data Management,” ACM, pp. 776-786 (Year: 2010). |
| Yang et al, “DAC-MACS: Effective Data Access Control for Multiauthority Cloud Storage Systems,” IEEE, pp. 1790-1801 (Year: 2013). |
| Yang et al, “Mining Web Access Sequence with Improved Apriori Algorithm,” IEEE, 2017, pp. 780-784 (Year: 2017). |
| Ye et al, “An Evolution-Based Cache Scheme for Scalable Mobile Data Access,” ACM, pp. 1-7 (Year: 2007). |
| Yin et al, “Multibank Memory Optimization for Parallel Data Access in Multiple Data Arrays”, ACM, pp. 1-8 (Year: 2016). |
| Yiu et al, “Outsourced Similarity Search on Metric Data Assets”, IEEE, pp. 338-352 (Year: 2012). |
| Choi et al, “A Survey on Ontology Mapping,” ACM, pp. 34-41 (Year: 2006). |
| Cui et al, “Domain Ontology Management Environment,” IEEE, pp. 1-9 (Year: 2000). |
| Falbo et al, “An Ontological Approach to Domain Engineering,” ACM, pp. 351-358 (Year: 2002). |
| Nemec et al, “Assessment of Query Execution Performance Using Selected Business Intelligence Tools and Experimental Agile Oriented Data Modeling Approach,” Sep. 16, 2015, IEEE, pp. 1327-1333. (Year: 2015). |
| Ozdikis et al, “Tool Support for Transformation from an OWL Ontology to an HLA Object Model,” ACM, pp. 1-6 (Year: 2010). |
| Vukovic et al, “Managing Enterprise IT Systems Using Online Communities,” Jul. 9, 2011, IEEE, pp. 552-559. (Year: 2011). |
| Wong et al, “Ontology Mapping for the Interoperability Problem in Network Management,” IEEE, pp. 2058-2068 (Year: 2005). |
| Final Office Action, dated Jun. 9, 2022, from corresponding U.S. Appl. No. 17/494,220. |
| Notice of Allowance, dated Jun. 14, 2022, from corresponding U.S. Appl. No. 17/679,734. |
| Notice of Allowance, dated Jun. 2, 2022, from corresponding U.S. Appl. No. 17/493,290. |
| Notice of Allowance, dated Jun. 23, 2022, from corresponding U.S. Appl. No. 17/588,645. |
| Office Action, dated Jun. 14, 2022, from corresponding U.S. Appl. No. 17/346,586. |
| Office Action, dated Jun. 16, 2022, from corresponding U.S. Appl. No. 17/689,683. |
| International Search Report, dated Jun. 1, 2022, from corresponding International Application No. PCT/US2022/016930. |
| International Search Report, dated Jun. 22, 2022, from corresponding International Application No. PCT/US2022/019358. |
| Written Opinion of the International Searching Authority, dated Jun. 1, 2022, from corresponding International Application No. PCT/US2022/016930. |
| Written Opinion of the International Searching Authority, dated Jun. 22, 2022, from corresponding International Application No. PCT/US2022/019358. |
| Notice of Allowance, dated Jul. 20, 2022, from corresponding U.S. Appl. No. 16/938,509. |
| Notice of Allowance, dated Jul. 7, 2022, from corresponding U.S. Appl. No. 17/571,871. |
| Notice of Allowance, dated Jun. 29, 2022, from corresponding U.S. Appl. No. 17/675,118. |
| Number | Date | Country | |
|---|---|---|---|
| 20220245099 A1 | Aug 2022 | US |
| Number | Date | Country | |
|---|---|---|---|
| 63145633 | Feb 2021 | US |