Collection of intranet activity data

Information

  • Patent Grant
  • 9477574
  • Patent Number
    9,477,574
  • Date Filed
    Thursday, May 12, 2011
    13 years ago
  • Date Issued
    Tuesday, October 25, 2016
    7 years ago
Abstract
Systems, methods and computer program products for facilitating the collection of data within a computer network (especially an intranet) while complying with applicable privacy laws and regulations, as well as individual organizations' rules addressing intranet users' privacy are disclosed. Such systems, methods and computer program products allow for the collecting of activity information related to computer-based activities performed by users while logged into an organization's intranet. Such activity includes navigating to URLs, opening and editing documents, writing, opening and reading email and instant messages, and the like. The collecting, consolidating, storing and exposing of such activity information—while ensuring privacy requirements—serves as a basis for high-value services (e.g., augmenting documents with extra information, improving search results, automatic news feeds, social networking announcements, etc.) to be offered and provisioned to such users.
Description
CROSS REFERENCE TO RELATED APPLICATIONS

This application is related to co-pending: U.S. patent application Ser. No. 12/773,319, titled “Presentation of Information Describing User Activities With Regards To Resources,” filed on May 4, 2010; U.S. patent application Ser. No. 12/771,290, titled “Prioritization of Resources Based On User Activities,” filed on Apr. 30, 2010; U.S. patent application Ser. No. 13/106,307, titled “Automatic Social Graph Calculation,” filed concurrently herewith; and U.S. patent application Ser. No. 13/106,149, titled “Personalized News Feed Based on Peer and Personal Activity,” filed concurrently herewith; each of which is hereby incorporated by reference as to its entire contents.


FIELD OF THE INVENTION

The present invention generally relates to computer networks and more particularly to systems, methods and computer program products for facilitating the collection of data within such networks.


BACKGROUND

In today's technological environment, it is common for business enterprises and other organizations to deploy private computer networks—intranets—to securely share such organization's information or network operating systems within that organization. The term “intranet” is used in contrast to “internet”, which is a network between organizations, the most common of which is the global, public Internet. That is, an intranet is a network within an organization which sometimes refers only to the organization's internal (private) website, but may be a more extensive part of the organization's information technology (IT) infrastructure. It may host multiple private websites and constitute an important component and focal point of internal communication with, and collaboration among, individual computer users associated/affiliated with the organization (e.g., students within a university, co-workers within a company or local, state or federal government department or agency, co-workers within a charitable or any other type of organization).


As individual computer users associated/affiliated with the organization perform various computer-based activities while logged into the organization's intranet, there are a constant stream of activities occurring such as navigating to URLs, opening and editing documents, writing, opening and reading email messages, and the like. Information about these activities can be very useful (e.g., augmenting documents with extra information, improving search results, creating automatic news feeds, sending social networking announcements, etc.). Normally, however, such information is not collected within intranets and is lost. Yet, collecting, consolidating, storing and exposing activity information while ensuring privacy requirements allows for a number of high-value services to be built and offered based on such information.


Should such information be collected, there is one concern that must be addressed—privacy. That is, protecting personal privacy is more complex in the information age. As more and more business is transacted “online,” the volume of personal information available on computer networks continues to grow. Thus, individuals using these computer networks are demanding greater control over how their personal information is stored, used and shared. Also, organizations are seeking better ways to manage and safeguard the sensitive personal data in their custody. In response, many governments on the national (e.g., federal), state, and local level, have passed laws dealing with individuals' privacy—especially concerning Personally Identifiable Information (PII) which is any information that identifies or can be used to identify, contact, or locate the person to whom such information pertains, or from which identification or contact information of an individual person can be derived. More specifically, PII includes names, addresses, and phone numbers as the more obvious examples. Email addresses and IP addresses may also be included in this category. An emerging category of such information includes geo-location information that allows the sharing of the physical location of the user, a feature that is becoming popular in location-based services and social networking scenarios.


Sensitive PII includes financial profiles, health profiles, national ID numbers, social security numbers, credit card information, and other information designated as such by legislation (e.g., race, ethnicity, political opinions, religious or philosophical beliefs, trade-union membership, sex life, etc.). Collecting sensitive PII data may bring enhanced exposure to legal, regulatory, and political risks and requires additional safeguards for data security, integrity and notice.


Collective information is a more subtle issue for privacy issue spotting because a single piece of information such as website usage would seem relatively benign and by itself would not be PII. However, data collected over time for online behavior such as search, web surfing, and social networking habits may eventually allow the user's identity to be discovered using data mining and correlation methods.


Privacy concerns are exacerbated in the context of private networks such as intranets. This is because use of these private networks requires users to log in with a “user id” and password assigned by the owner of the network (e.g., the user's employer). This destroys the anonymity provided by other networks such as the Internet.


Given the foregoing, what are needed are systems, methods and computer program products for facilitating the collection of data within a computer network (especially an intranet) to allow for the provisioning of high-value services while complying with applicable privacy laws and regulations, as well as individual organizations' rules and policies addressing intranet users' privacy.


SUMMARY

This summary is provided to introduce a selection of concepts. These concepts are further described below in the Detailed Description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is this summary intended as an aid in determining the scope of the claimed subject matter.


The present invention meets the above-identified needs by providing systems, methods and computer program products for facilitating the collection, consolidating, storing and exposing of data within a computer network (especially an intranet) to allow for the provisioning of high-value services while complying with all applicable privacy laws and regulations (i.e., all national and local privacy laws and regulations that are applicable given the one or more jurisdictions in which the computer network traverses), as well as individual organizations' rules/policies addressing their intranet users' privacy.


In an embodiment, a set of configurable data collectors which are operating on variety of existing data sources within an intranet, such as web content management log files, document management log files, web server log files, proxy server log files, directory service information, email servers, and the like, are combined with a local or cloud based-storage, and configuration, status and retrieval services to transform, aggregate and anonymize collected information as needed for the provisioning of high-value services, and as required by all applicable privacy laws or organizational policies.


Further features and advantages of the present invention, as well as the structure and operation of various embodiments of the present invention, are described in detail below with reference to the accompanying drawings.





BRIEF DESCRIPTION OF THE DRAWINGS

The features and advantages of the present invention will become more apparent from the detailed description set forth below when taken in conjunction with the drawings in which like reference numbers indicate identical or functionally similar elements.



FIG. 1 is a block diagram illustrating an exemplary intranet activity data collection system according to an embodiment of the present invention.



FIG. 2 is a flowchart illustrating an exemplary intranet activity data collection process according to an embodiment of the present invention.



FIG. 3 is a block diagram of an exemplary computer system useful for implementing the present invention.



FIG. 4 is an exemplary activity data collection configuration table according to an embodiment of the present invention.



FIG. 5 is a screenshot illustrating an exemplary graphical user interface window for the management of activity data collection and consumption according to an embodiment of the present invention.





DETAILED DESCRIPTION

The present invention is directed to systems, methods and computer program products for facilitating the collection, consolidating, storing and exposing of data within a computer network (especially an intranet) to allow for the provisioning of high-value services while complying with all applicable privacy laws and regulations, as well as individual organizations' rules/policies addressing their intranet users' privacy. In various embodiments, such high-value services offered to the intranet's users include augmenting documents with extra information, improving search results, creating automatic news feeds, creating social networking announcements, and/or the like.


Referring to FIG. 1, a block diagram illustrating an exemplary intranet activity data collection system 100, according to an embodiment of the present invention, is shown.


Intranet activity data collection system 100 includes a plurality of users 102 (shown as users 102a-d in FIG. 1) accessing, via a computing device 104 (shown as devices 104a-d in FIG. 1), an organization's intranet (i.e., private network) 106. As will be appreciated by those skilled in the relevant art(s) after reading the description herein, intranet 106 may be a private network deployed by an organization such as a business enterprise for use by its employees, deployed by a university for use by its students and faculty, deployed by a government agency for its workers, and the like. As will also be appreciated by those skilled in the relevant art(s) after reading the description herein, system 100 may be deployed across one or more jurisdictions as, for example, a multinational business enterprise makes its intranet 106 available to its employees around the world. This would thus subject system 100 to a plurality of national, state and/or local privacy laws and regulations that are applicable in such one or more jurisdictions in which intranet 106 spans.


In various embodiments, device 104 may be configured as a desktop 104a, a laptop 104b, a PDA 104c, a tablet or mobile computer 104d, an intelligent communications device or the like.


As users 102 log into intranet 106, they perform various computer-based tasks while logged into the organization's intranet. Thus, there are constant streams of activities occurring such as navigating to URLs, opening and editing documents, writing, opening and reading email and/or instant messages, and the like. System 100 thus further includes one or more data collection servers 114 which perform the importing and processing of raw (user 102) activity data from various sources within system 100. In an embodiment, such sources of raw activity data include log files from one or more intranet web servers 108, one or more proxy servers 110, and one or more email servers 112. In alternate embodiments, data collection servers 114 may receive raw activity data directly (via intranet 106) from one or more client-side activity collection applications executing in the background on any of devices 104.


In an alternative embodiment of the present invention, each collection server 114 can host one or more activity data collection rules (or “adapters”) which are designed to retrieve data from a specific data source (e.g., web server 108, proxy server 110, email server 110, a client-side logging application executing on device 104, and/or the like). In such an embodiment, all adapters share a common collector infrastructure which includes one or more of the following:

    • 1. Logging services which allow for monitoring and troubleshooting of a specific adapter.
    • 2. Software watch-dog service which terminates and restarts collection should it stop progressing for whatever reason.
    • 3. State service which allows for terminating and resuming collection at any moment for whatever reason such as maintenance or network failure without need to run complete collection again.
    • 4. Data normalization services which allow for presenting activity subject (e.g., which URL a user 102 clicked on) in non-ambiguous way.
    • 5. Data filtering services which allows only desired information to be stored in data storage 116 in an effort to reduce total required storage space.
    • 6. Policy enforcing services which implements a set of rules in accordance with privacy laws and/or organizational rules at any stage of the process (collection, aggregation, access, etc.).


In alternate embodiments, other sources of activity data within system 100 may include directory service information, web content management log files, document management log files (e.g., high business impact, web server log files, proxy server log files, email distribution lists or news groups, instant messages, text messages, telephone calls, and the like).


System 100 also includes a data storage 116, which can be local (e.g., an on-site database such as one or more SQL servers) or cloud based (e.g., the SQL Azure™ storage platform available from Microsoft Corporation of Redmond, Wash.), which stores the data collected by servers 114 in a unified format. In an alternate embodiment, data stored within database 116 (and the network connections thereto) may be encrypted to ensure compliance with privacy laws and organizational rules.


In an embodiment, system 100 includes one or more control servers 118 that are used for configuration, status and data retrieval control. That is, control servers 118 monitor the collection of activity data as well as allow the data to be consumed for the provisioning of high-value services (not shown in FIG. 1) as permitted by any applicable privacy laws and organizational rules.


In an alternate embodiment, control servers 118 may employ a web interface (e.g., the SharePoint® web platform available from Microsoft Corporation of Redmond, Wash.) to allow intranet administrators to configure and monitor data collection and data consumption. For example, such a web platform can be used as a base and can allow for complete configuration and monitoring of system 100 such as the location of log files, access credentials, privacy and organizational rules, data filtering and the like as shown in screenshot 500 of FIG. 5.


In an alternate embodiment, an intranet administrator would have access to control servers 118 via a web service-based application programming interface (API) (e.g., Simple Object Access Protocol (SOAP) or RESTful). In such an embodiment, the intranet administrator may enforce privacy laws and organizational rules based on access credentials. For example, an unprivileged user might be allowed to retrieve the total number specific documents being accessed within intranet 106, while an authorized user can retrieve more detailed information such as which user 102 accessed certain documents and when. This allows privacy protection while storing complete and detailed information as permitted by applicable privacy laws and organizational rules.


In various embodiments, control servers 118 allow for built-in support for enforcing privacy laws and organizational rules, including facilities for the following:

    • 1. Access rules which define who can access the data and in which way (e.g., detailed versus anonimzed).
    • 2. Exclusion rules which define groups of users 102 or data sources from which collection should not be performed. For example, users 102 from the organization's legal department, C-level executives and the like can be excluded from collection to protect privileged/sensitive information. Or, users from particular geographical location can be excluded if privacy laws at that location prohibit or restrict activity collection. Sites which are considered “high business impact” can be also excluded (e.g., based on data automatically collected from directory service information or web content management application servers).
    • 3. Aggregation and/or transformation rules which may aggregate data from certain sites where privacy laws or organizational policies permit collection of data in anonimized, aggregated form. These rules can apply during both collection of the data, as well as while exposing of the data (e.g., based on access rules).
    • 4. Consent rules which allows users 102 to have notice of the data collection within system 100 and choose whether to participate. Consent may take several forms: Opt-in consent where user 102 has to take an affirmative action before data is collected; or Opt-out consent where user 102 can take an affirmative action to prevent the collection of data before that data is collected.


Referring to FIG. 2, a flowchart illustrating an intranet data collection process 200, according to an embodiment of the present invention, is shown. Process 200, which would execute within system 100, begins at step 202 with control passing immediately to step 204.


In step 204, database 116 is setup and deployed within system 100 (locally or cloud-based) to store all intranet 106 activity data collected by process 200.


In step 206, one or more data collection servers 114 are deployed within system 100 to access and collect activity data from data sources within intranet 106—such as web servers 108, proxy servers 110, email servers 112, and client-side logging applications running on one or more devices 104, and to eventually store the collected activity data into database 116.


In step 208, one or more control servers 118 are deployed within system 100 to control data collection from intranet 106 and expose the collected data to various consumers implementing high-value services.


In step 210, one or more configuration tables are created within control servers 118 to specify the activity data to be collected by collection servers 114. That is, the configuration table, in an embodiment, reflects the access rules, aggregation and/or transformation rules, exclusion rules, and consent rules specified by the administrator of intranet 106 reflecting the one or more applicable jurisdictions' privacy laws or regulations and the one or more of the organization's policies.


In step 212, process 200 begins to collect activity data in accordance with the one or more configuration tables loaded onto control servers 118 by, for example, an intranet administrator.


In step 214, the activity data collected by collection servers 114 are normalized and then stored in database 116. In an embodiment, data normalization 214 occurs in process 200 based on item meaning. For example, if a user 102 opens a spreadsheet document, action is taken on that document no matter how it was opened (e.g., saved to the disk from a website, opened from a spreadsheet application directly or opened from a spreadsheet application web viewer). All these cases might result in different URLs, while they all represent the same document (and thus should all reflect the same activity data). Thus, in such an embodiment, the normalization process 214 may first detect the fact that the document was opened via a web viewer, and then extracts the file location. In such a case, activity data would be recorded by process 200 based on the document location as opposed to being based on the original URL.


In an alternate embodiment, data normalization 214 occurs in process 200 based upon canonical URL representations. In such an embodiment, data normalization resolves textually different URLs that are logically equivalent into one URL for data integrity purposes. This involves disassembling a URL and then reconstructing it such that the resulting URL has a unified format, same escape sequences and/or encoding, same query string parameter order and the like.


In step 216, collected data is exposed to consumers (i.e., applications and/or servers not shown in FIG. 1) providing high-value services as determined by the rules set in step 210.


Process 200 then terminates as indicated by step 218.


As will be appreciated by those skilled in the relevant art(s) after reading the description herein, in various embodiments, steps 212-216 may be repeated according to one or more pre-determined time schedules based upon the requirements of one or more high-value services built and offered to users 102 based on such information (e.g., augmenting documents with extra information, improving search results, automatic news feeds, social networking announcements, etc.).


As will also be appreciated by those skilled in the relevant art(s) after reading the description herein, step 210 may be repeated anytime the intranet administrator needs to update the one or more configuration tables to specify the activity data collected by updating one or more access rules, aggregation and/or transformation rules, exclusion rules, consent rules in response to: a change in one or more applicable jurisdictions' privacy laws or regulations; a change in one or more of the organization's policies; and/or the new or changing data requirements of one or more high-value services being provisioned to users 102 based upon such collected activity data.


Referring to FIG. 4, a sample activity data collection configuration table 400, in one embodiment of the present invention, is shown. In such an embodiment, intranet 106 utilizes the SHAREPOINT® web platform available from Microsoft Corporation of Redmond, Wash. Thus, in such an embodiment, table 400 contains the following fields: “AdapterId”—the primary key in the table and may indicate which of the plurality of collector servers 114 the activity data collection rule (or “adapter”) specified by the table entry is to execute upon; “Description”—a free text description for administrative purposes; “ConfigData”—a configuration string for specific adapter type (e.g., a domain name from which to collect active directory data (ID 1), URL of a SharePoint site from which to collect metadata (ID 2), URL of the site, and location of the IIS log files (ID 3 and ID 5) and other data as applicable (ID 4)); “AsemblyName”—the name of the computer executable code file which contains the actual implementation of the adapter; “IdleTime”—time (in seconds) between collections; “ImpersonateAccount”—alternative credentials to collect data where if it is not set, then the default credentials would be used; “DayOfWeek” and “HourOfDay”—the execution schedule (e.g., execute only during night hours or on weekends), and if it is not set, then collection is run continuously while giving effect to the “IdleTime” filed.


In an alternate embodiment, a configuration table may contain a list of “blacklisted” users and items (e.g., URLs) stored in an XML or other formatted file. In such an embodiment, “users” may include users 102 who opted-out of activity collection or even crawling robots executing within system 100 to make intranet 106 operational and thus such activity data is not useful for the provisioning of high-value services. Items, on the other hand, might be blacklisted for multiple reasons (e.g., privacy or a commonly-used API within intranet 106).


In another embodiment, a configuration table may include rules for extracting specific patterns of usage (e.g., access to a specific productivity application or website). In such an embodiment, these rules may be implemented as series of accept/reject rules which are chained together. Such rules can simply be the (whole or partial) matching of URLs, or more sophisticated such as looking up the URL history of a user 102 so an actual pattern is triggered by more than one record in the web server log file. Further, there can be line of business (LOB)-specific information rules which search for application-specific patterns (e.g., searching for ISBN codes in the URLs of visited sites, thus making it possible to determine book-related activities by users 102).


In yet another embodiment, a configuration table may include rules to exclude items which may present privacy concerns or might have a high business impact. For example, such a configuration table may be formatted as follows:














ItemId
URL
UriCheckSum







6864
http://sharepoint/SensitiveSubSite
−2123596221


6865
http://AnotherSensitiveSite
−1226526623










In such a configuration table, the “ItemId” field is a surrogate primary key, the “URL” field is the item's URL and the “UriCheckSum” filed is a checksum for fast searching. A similar table may be employed for users to be excluded from the activity data collection process (where a UserID would replace the URL field in the configuration table) based on engaging in an opt-out procedure, or checking a jurisdictional domain based on any applicable national and/or local privacy laws and regulations.


In one embodiment, the present invention (i.e., system 100, process 200 or any components thereof) is directed toward one or more computer systems capable of carrying out the functionality described herein. An example of a computer system 300 is shown in FIG. 3.


Computer system 300 includes one or more processors, such as processor 304. The processor 304 is connected to a communication infrastructure 306 (e.g., a communications bus or network). Various software aspects are described in terms of this exemplary computer system. After reading this description, it will become apparent to a person skilled in the relevant art(s) how to implement the invention using other computer systems and/or architectures.


Computer system 300 can include a display interface 302 that forwards graphics, text and other data from the communication infrastructure 306 (or from a frame buffer not shown) for display on the display unit 330.


Computer system 300 also includes a main memory 308, preferably random access memory (RAM) and may also include a secondary memory 310. The secondary memory 310 may include, for example, a hard disk drive 312 and/or a removable storage drive 314, representing a floppy disk drive, a magnetic tape drive, an optical disk drive, etc. The removable storage drive 314 reads from and/or writes to a removable storage unit 318 in a well known manner. Removable storage unit 318 represents a floppy disk, magnetic tape, optical disk, etc. which is read by and written to by removable storage drive 314. As will be appreciated, the removable storage unit 318 includes a computer usable storage medium having stored therein computer software and/or data.


In alternative aspects, secondary memory 310 may include other similar devices for allowing computer programs or other code or instructions to be loaded into computer system 300. Such devices may include, for example, a removable storage unit 322 and an interface 320. Examples of such may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an erasable programmable read only memory (EPROM), or programmable read only memory (PROM)) and associated socket and other removable storage units 322 and interfaces 320, which allow software and data to be transferred from the removable storage unit 322 to computer system 300.


Computer system 300 may also include a communications interface 324. Communications interface 324 allows software and data to be transferred between computer system 300 and external devices. Examples of communications interface 324 may include a modem, a network interface (such as an Ethernet card), a communications port, a Personal Computer Memory Card International Association (PCMCIA) slot and card, etc. Software and data transferred via communications interface 324 are in the form of non-transitory signals 328 which may be electronic, electromagnetic, optical or other signals capable of being received by communications interface 324. These signals 328 are provided to communications interface 324 via a communications path (e.g., channel) 326. This channel 326 carries signals 328 and may be implemented using wire or cable, fiber optics, a telephone line, a cellular link, an radio frequency (RF) link and other communications channels.


In this document, the terms “computer program medium” and “computer usable medium” are used to generally refer to media such as removable storage drive 314, a hard disk installed in hard disk drive 312 and signals 328. These computer program products provide software to computer system 300. The invention is directed to such computer program products.


Computer programs (also referred to as computer control logic) are stored in main memory 308 and/or secondary memory 310. Computer programs may also be received via communications interface 324. Such computer programs, when executed, enable the computer system 300 to perform the features of the present invention, as discussed herein. In particular, the computer programs, when executed, enable the processor 304 to perform the features of the present invention. Accordingly, such computer programs represent controllers of the computer system 300.


In an embodiment where the invention is implemented using software, the software may be stored in a computer program product and loaded into computer system 300 using removable storage drive 314, hard drive 312 or communications interface 324. The control logic (software), when executed by the processor 304, causes the processor 304 to perform the functions of the invention as described herein.


In another embodiment, the invention is implemented primarily in hardware using, for example, hardware components such as application specific integrated circuits (ASICs). Implementation of the hardware state machine so as to perform the functions described herein will be apparent to persons skilled in the relevant art(s).


As will be apparent to one skilled in the relevant art(s) after reading the description herein, the computer architecture shown in FIG. 3 may be configured as a desktop, a laptop, a server, a tablet computer, a PDA, a mobile computer, an intelligent communications device or the like.


In yet another embodiment, the invention is implemented using a combination of both hardware and software.


While various aspects of the present invention have been described above, it should be understood that they have been presented by way of example and not limitation. It will be apparent to persons skilled in the relevant art(s) that various changes in form and detail can be made therein without departing from the spirit and scope of the present invention. Thus, the present invention should not be limited by any of the above described exemplary aspects, but should be defined only in accordance with the following claims and their equivalents.


In addition, it should be understood that the figures in the attachments, which highlight the structure, methodology, functionality and advantages of the present invention, are presented for example purposes only. The present invention is sufficiently flexible and configurable, such that it may be implemented in ways other than that shown in the accompanying figures. For example, the systems, methods and computer program products for facilitating the collection of intranet activity data while complying with applicable privacy laws and regulations and organizational policies disclosed herein are also applicable to other networks such as internets.


Further, the purpose of the foregoing Abstract is to enable the U.S. Patent and Trademark Office and the public generally and especially the scientists, engineers and practitioners in the relevant art(s) who are not familiar with patent or legal terms or phraseology, to determine quickly from a cursory inspection the nature and essence of this technical disclosure. The Abstract is not intended to be limiting as to the scope of the present invention in any way.

Claims
  • 1. A system for collection of activity data related to a plurality of authenticated computer network users, comprising: a data collection server, deployed within said computer network, configured to collect raw activity data related to said plurality of users from sources within said computer network, wherein said sources include at least some of a web content management server, a document management server, a web server, a proxy server, a directory service information server, an email server, or a client-side logging application, the data collection server being configured to normalize the raw activity data to provide normalized activity data associated with the document, wherein normalization of the raw activity data resolves differences of actions on the document by unifying saving the document, directly opening the document, and opening the document via textually different URLs such that the activity data reflects activity data associated with the document, wherein the textually different URLs are resolved to be logically equivalent by disassembling the textually different URLs and reconstructing a URL having a unified format; anda control server coupled to said data collection server, said control server having a processor and a memory storing at least one configuration table containing at least one rule based on which said control server is configured to regulate the collection, transformation, aggregation, and anonymization of said raw activity data related to said plurality of users to generate user activity data on said computer network in compliance with at least one privacy law and/or at least one organizational privacy policy, wherein personally identifiable information is removed from the user activity data, wherein said at least one rule includes a schedule to collect activity data from said sources and an exclusion rule which defines a subset of said plurality of users and/or sources from which collection of activity data is not allowed.
  • 2. The system of claim 1, wherein said at least one rule contained in said at least one configuration table is one of: an access rule; an aggregation rule; a transformation rule; an exclusion rule; and a consent rule.
  • 3. The system of claim 1, further comprising: means for providing a graphical user interface to allow the editing of said at least one configuration table in order to comply with at least one of: a change in the at least one privacy law; and the at least one organizational privacy policy.
  • 4. The system of claim 1, further comprising means for providing at least one of: augmenting documents with extra information; improving search results; automatic news feeds; and social networking announcements to said plurality of users based on said user activity data stored in said database.
  • 5. The system of claim 1, wherein said activity data is data related to one of the plurality of users and results from said one of the plurality of users: navigating to a URL; opening a document; editing a document; writing an email; opening an email; reading an email; sending an instant message; and receiving an instant message.
  • 6. A computer-implemented method for collecting activity data related to a plurality of authenticated computer network users, said method comprising: collecting, by a processor, raw activity data related to said plurality of users from sources within said computer network, wherein said sources include at least some of a web content management server, a document management server, a web server, a proxy server, a directory service information server, an email server, or a client-side logging application;regulating, by a processor, collection, transformation, aggregation, and anonymization of said raw activity data related to said plurality of users from said sources based on at least one rule in a configuration table to generate user activity data on said computer network in compliance with at least one privacy law and/or at least one organizational privacy policy, wherein personally identifiable information is removed from said user activity data, wherein said at least one rule includes an exclusion rule that defines a subset of said plurality of users from whom collection of activity data is not allowed, said subset of said plurality of users being from a particular geographical location or a group within an organization;normalizing, by a processor, the raw activity data to provide normalized activity data associated with the document, wherein normalizing the raw activity data resolves differences of actions on the document by unifying saving the document, directly opening the document, and opening the document via textually different URLs such that the activity data reflects activity data associated with the document, wherein the textually different URLs are resolved to be logically equivalent by disassembling the textually different URLs and reconstructing a URL having a unified format; andstoring, by a processor, said user activity data in a database.
  • 7. The computer-implemented method of claim 6, wherein said at least one rule contained in said at least one configuration table is one of: an access rule; an aggregation rule; a transformation rule; an exclusion rule; and a consent rule.
  • 8. The computer-implemented method of claim 6, wherein said at least one rule includes an exclusion rule which defines a subset of said plurality of users from whom collection of activity data is not allowed, said subset of said plurality of users being from a particular geographical location.
  • 9. The computer-implemented method of claim 6, further comprising receiving an edit, via a graphical user interface, of said at least one configuration table in order to comply with at least one of: a change in the at least one privacy law; and the at least one organizational privacy policy.
  • 10. The computer-implemented method of claim 6, wherein said activity data is data related to one of the plurality of users and results from said one of the plurality of users: navigating to a URL; opening a document; editing a document; writing an email; opening an email; reading an email; sending an instant message; and receiving an instant message.
  • 11. The computer-implemented method of claim 6, wherein said at least one rule specifies a pre-determined schedule to collect activity data from said at least one source.
  • 12. A computer-implemented method for collecting activity data related to a plurality of authenticated computer network users, said method comprising: collecting, by a processor, raw activity data of said plurality of users from sources within said computer network, wherein said sources include at least some of a web content management server, a document management server, a web server, a proxy server, a directory service information server, an email server, or a client-side logging application, and wherein said activity data include data corresponding to at least one of navigating to a URL, opening a document, editing a document, writing an email, opening an email, reading an email, sending an instant message, or receiving an instant message;generating, by a processor, user activity data in compliance with at least one privacy law and/or at least one organizational privacy policy via transformation, aggregation, and anonymization of said raw activity data based on at least one rule in a configuration table such that personally identifiable information is removed from the user activity data, wherein said at least one rule includes an access rule, an aggregation rule, a transformation rule, an exclusion rule, or a consent rule, wherein the exclusion rule definesa subset of said plurality of users from whom collection of activity data is not allowed, said subset of said plurality of users being from a particular geographical location or a group within an organization;normalizing, by a processor, the raw activity data to provide normalized activity data associated with the document, wherein normalizing the raw activity data resolves differences of actions on the document by unifying saving the document, directly opening the document, and opening the document via textually different URLs such that the activity data reflects activity data associated with the document, wherein the textually different URLs are resolved to be logically equivalent by disassembling the textually different URLs and reconstructing a URL having a unified format; andstoring, by a processor, said user activity data in a database.
  • 13. The computer-implemented method of claim 12, wherein said at least one rule includes an exclusion rule which defines that at least one of a web content management server, a document management server, a web server, a proxy server, a directory service information server, an email server, or a client-side logging application from which collection of activity data is not allowed.
  • 14. The computer-implemented method of claim 12, wherein said at least one rule includes a consent rule that provides notice of data collection to said users and allows said users to choose whether to participate.
  • 15. The computer-implemented method of claim 12, wherein collecting raw activity data includes receiving said raw activity data from a client-side logging application executing on a computing device associated with one of said plurality of users.
US Referenced Citations (169)
Number Name Date Kind
6025841 Finkelstein et al. Feb 2000 A
6241524 Aoshima et al. Jun 2001 B1
6282548 Burner et al. Aug 2001 B1
6340977 Lui Jan 2002 B1
6714929 Micaelian et al. Mar 2004 B1
6782414 Xue et al. Aug 2004 B1
7035926 Cohen et al. Apr 2006 B1
7225175 Higgins et al. May 2007 B2
7266376 Nakagawa Sep 2007 B2
7346606 Bharat Mar 2008 B2
7353246 Rosen Apr 2008 B1
7472119 Dai Dec 2008 B2
7493521 Li et al. Feb 2009 B1
7716240 Lim May 2010 B2
7725530 Sah et al. May 2010 B2
7756753 McFarland Jul 2010 B1
7757170 Billsus et al. Jul 2010 B2
7827254 Nevill-Manning et al. Nov 2010 B1
7962466 Jones et al. Jun 2011 B2
8010527 Denoue et al. Aug 2011 B2
8160983 Fitzmaurice et al. Apr 2012 B2
8229873 Dolan et al. Jul 2012 B1
8301482 Reynolds et al. Oct 2012 B2
8468201 Dasilva et al. Jun 2013 B2
8606792 Jackson et al. Dec 2013 B1
8707431 Stephens Apr 2014 B2
8819009 Wana et al. Aug 2014 B2
8832099 Howes Sep 2014 B2
8979538 Michelstein et al. Mar 2015 B2
20010021914 Jacobi et al. Sep 2001 A1
20020007373 Blair et al. Jan 2002 A1
20020015056 Weinlaender Feb 2002 A1
20020099812 Davis et al. Jul 2002 A1
20030014331 Simons Jan 2003 A1
20030014399 Hansen et al. Jan 2003 A1
20030014654 Adler et al. Jan 2003 A1
20030061200 Hubert et al. Mar 2003 A1
20030197738 Beit-Suri Oct 2003 A1
20030229808 Heintz et al. Dec 2003 A1
20040015868 Dutta et al. Jan 2004 A1
20040030741 Wolton et al. Feb 2004 A1
20040034706 Cohen et al. Feb 2004 A1
20040210532 Nagawa et al. Oct 2004 A1
20040230530 Searl et al. Nov 2004 A1
20040267701 Horvitz et al. Dec 2004 A1
20050033657 Herrington et al. Feb 2005 A1
20050097465 Giesen et al. May 2005 A1
20050154764 Riegler et al. Jul 2005 A1
20050165715 Farnham et al. Jul 2005 A1
20050203807 Bezos et al. Sep 2005 A1
20050222987 Vadon Oct 2005 A1
20060004698 Pyhalammi Jan 2006 A1
20060004914 Kelly et al. Jan 2006 A1
20060015821 Jacques Parker et al. Jan 2006 A1
20060036950 Himberger Feb 2006 A1
20060036964 Satterfield Feb 2006 A1
20060036965 Harris Feb 2006 A1
20060041562 Paczkowski et al. Feb 2006 A1
20060064411 Gross et al. Mar 2006 A1
20060069617 Milener Mar 2006 A1
20060105302 Breiburg et al. May 2006 A1
20060127871 Grayson Jun 2006 A1
20060143066 Calabria Jun 2006 A1
20060200432 Flinn et al. Sep 2006 A1
20060247940 Zhu et al. Nov 2006 A1
20060277468 Sapir Dec 2006 A1
20060294086 Rose et al. Dec 2006 A1
20070016553 Dumais et al. Jan 2007 A1
20070112768 Majumder May 2007 A1
20070168909 Vaidyanathan et al. Jul 2007 A1
20070233671 Oztekin et al. Oct 2007 A1
20070239680 Oztekin et al. Oct 2007 A1
20070245020 Ott Oct 2007 A1
20070299631 Macbeth et al. Dec 2007 A1
20080040474 Zuckerberg et al. Feb 2008 A1
20080040673 Zuckerberg et al. Feb 2008 A1
20080059516 Cui Mar 2008 A1
20080109722 Gengler et al. May 2008 A1
20080109723 Burton et al. May 2008 A1
20080140674 Ishikawa Jun 2008 A1
20080141168 Ryan et al. Jun 2008 A1
20080147424 Rowan et al. Jun 2008 A1
20080155471 Lynn et al. Jun 2008 A1
20080177623 Fritsch et al. Jul 2008 A1
20080189122 Coletrane et al. Aug 2008 A1
20080189253 Oliver et al. Aug 2008 A1
20080209320 Mawhinney et al. Aug 2008 A1
20080235594 Bhumkar et al. Sep 2008 A1
20080256050 Zhang Oct 2008 A1
20080261191 Woolf Oct 2008 A1
20080270398 Landau et al. Oct 2008 A1
20080276179 Borenstein et al. Nov 2008 A1
20080280662 Matwin et al. Nov 2008 A1
20080303689 Iverson Dec 2008 A1
20090006371 Denoue et al. Jan 2009 A1
20090019039 Brindley et al. Jan 2009 A1
20090024712 Weiss et al. Jan 2009 A1
20090030927 Cases Jan 2009 A1
20090035733 Meitar et al. Feb 2009 A1
20090049141 Jones et al. Feb 2009 A1
20090055369 Phillips et al. Feb 2009 A1
20090055477 Flesher Feb 2009 A1
20090070412 D'Angelo et al. Mar 2009 A1
20090087820 Chandless Apr 2009 A1
20090089380 Wang et al. Apr 2009 A1
20090125597 Carr et al. May 2009 A1
20090126274 Vogel et al. May 2009 A1
20090150362 Evenhaim Jun 2009 A1
20090150507 Davis Jun 2009 A1
20090177754 Brezina Jul 2009 A1
20090187631 Su et al. Jul 2009 A1
20090198562 Wiesinger et al. Aug 2009 A1
20090216741 Thrall Aug 2009 A1
20090217178 Niyogi et al. Aug 2009 A1
20090221371 Bakshi et al. Sep 2009 A1
20090248661 Bilenko Oct 2009 A1
20090254499 Deyo Oct 2009 A1
20090282000 Bennett Nov 2009 A1
20090299824 Barnes, Jr. Dec 2009 A1
20090299963 Pippuri Dec 2009 A1
20090300716 Ahn Dec 2009 A1
20090312033 Shen et al. Dec 2009 A1
20090319350 Cansler Dec 2009 A1
20100010968 Redlich et al. Jan 2010 A1
20100017870 Kargupta Jan 2010 A1
20100031162 Wiser et al. Feb 2010 A1
20100049852 Whitnah et al. Feb 2010 A1
20100058185 Commarford Mar 2010 A1
20100082357 Follmann et al. Apr 2010 A1
20100095353 Athsani et al. Apr 2010 A1
20100125541 Wendel et al. May 2010 A1
20100125562 Nair et al. May 2010 A1
20100125604 Martinez et al. May 2010 A1
20100131452 Fitzmaurice et al. May 2010 A1
20100137049 Epstein Jun 2010 A1
20100146118 Wie Jun 2010 A1
20100174712 Li et al. Jul 2010 A1
20100177938 Martinez et al. Jul 2010 A1
20100184495 Levy et al. Jul 2010 A1
20100221694 Moshenberg Sep 2010 A1
20100257179 Arrouye et al. Oct 2010 A1
20100257489 Sakanaba Oct 2010 A1
20100263045 Dulitz Oct 2010 A1
20100269158 Ehler et al. Oct 2010 A1
20100274815 Vanasco Oct 2010 A1
20100281035 Carmel et al. Nov 2010 A1
20100287213 Rolls Nov 2010 A1
20100293190 Kaiser et al. Nov 2010 A1
20100331064 Michelstein et al. Dec 2010 A1
20100331075 Michelstein Dec 2010 A1
20110066507 Iyer et al. Mar 2011 A1
20110093460 Lunt et al. Apr 2011 A1
20110131491 Lu et al. Jun 2011 A1
20110173316 Moromisato et al. Jul 2011 A1
20110179025 Chuang Jul 2011 A1
20110270850 Wana et al. Nov 2011 A1
20110271328 Sutton-Shearer Nov 2011 A1
20110276925 Tumanov et al. Nov 2011 A1
20110294564 Michelstein et al. Dec 2011 A1
20110294565 Michelstein et al. Dec 2011 A1
20120041972 Goldberg Feb 2012 A1
20120117470 Michelstein May 2012 A1
20120191715 Ruffner et al. Jul 2012 A1
20120233161 Xu et al. Sep 2012 A1
20120233544 Roy Sep 2012 A1
20120271831 Narayanan et al. Oct 2012 A1
20120290565 Wana et al. Nov 2012 A1
20120290637 Perantatos Nov 2012 A1
20130282706 Yoo Oct 2013 A1
Foreign Referenced Citations (17)
Number Date Country
2011248879 Oct 2014 AU
19141750 Apr 2007 CN
101071493 Nov 2007 CN
101079841 Nov 2007 CN
101095140 Dec 2007 CN
101589360 Nov 2009 CN
101636737 Jan 2010 CN
2006-092023 Apr 2006 JP
2009151373 Jul 2009 JP
2009-199226 Sep 2009 JP
10-2007-0096198 Oct 2007 KR
2007056822 May 2007 WO
WO 2008032950 Mar 2008 WO
WO 2008060032 May 2008 WO
WO 2008133368 Nov 2008 WO
2009063469 Jan 2009 WO
WO 2010048172 Apr 2010 WO
Non-Patent Literature Citations (107)
Entry
Radu Rusu, et al., “Usage Event Logging in Windows SharePoint Services”, Jul. 2004: http://msdn.microsoft.com/en-us/library/dd583134(office.11).aspx.
Nagaraju Pappu, “A Knowledge Framework for Enterprise Application Systems Management”, Nov. 2007: http://msdn.microsoft.com/en-us/library/bb897546.aspx.
“Courion Access Assurance Suite 8.0 Revolutionizes IAM by Integrating Critical Aspects of Compliance and Risk Mitigation”, Feb. 23, 2010: http://www.courion.com/company/press—release.html?id=594.
Michael Paskevicius, “Introduction to learning and knowledge analytics”, Jan. 13, 2011: http://www.bluelightdistrict.org/wp/?p=4534.
Final Office Action mailed Jul. 9, 2013, in co-pending U.S. Appl. No. 13/106,149.
“My6Sense for iPhone Studies Your Reading Habits, Recommends New Articles Based From It,” Jul. 31, 2009: http://www.phoneblog.com/app-reviews/my6sense-for-iphone-studies-your-reading-habits-recommends-new-articles-based-from-it/.
Amazon.com Recommendations: Item-to-item collaborative filtering, Linden, G. Smith, B. And York, J., Jan./Feb. 2003 Internet Computing, IEEE, vol. 7, Issue 1, pp. 76-80, http://ieeexplore.ieee.org/xpls/abs—all.jsp?arnumber=1167344&tag=1.
An Online News Recommender System for Social Networks, Manish Agrawal, Maryam Karimzadehgan, ChengXiang Zhai, 2009, pp. 1-4, http://www.researchgate.net/publication/228576256—An—online—news—recommender—system—for—social—networks.
Bailey et al., Link Augmentation: A Context-Based Approach to Support Adaptive Hypermedia, published 2001, 8 pages.
Bilenko et al.; Mining the Search Trails of Surfmg Crowds: Identifying Relevant Websites from User Activity; Apr. 21-25, 2008; 10 pages.
Courtenage et al.; Automatic Hyperlink Creation Using P2P and Publish/Subscribe, published Apr. 2005, 8 pages.
Goecks et al.; Automatically Labeling Web Pages Based on Normal User Actions, published 1999, 5 pages.
Group-Based Recipe Recommendations: Analysis of Data Aggregation Strategeies, Shlomo Berkovsky and Jill Freyne, Sep. 2010, RecSys2010, pp. 112-118 http://dl.acm.org/citation.cfm?id=1864732.
GroupLens: An Open Architecture for Collaborative Filtering of Netnews, Paul Resnick et al., 2009, pp. 175-186 http://dl.acm.org/citation.cfm?id=192905.
GroupLens: Applying Collaborative Filtering to Usenet News, Joseph A. Konstan et al., Mar. 1997, Communications of the ACM, vol. 40, No. 3, http://dl.acm.orgicitation.cfm?id=245126.
He et al., A Social Network-Based Recommender System (SNRS), Doctoral Dissertation, University of California, 2010, 32 pages.
Huajing Li et al., “Personalized Feed Recommendation Service for Social Networks,” Aug. 20-22, 2010: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=05590802.
International Search Report and Written Opinion cited in International Application No. PCT/US2011/032805 mailed Nov. 28, 2011.
International Search Report and Written Opinion cited in International Application No. PCT/US2011/031999 mailed Dec. 19, 2011.
Li et al.; Combining Usage, Content, and Structure Data to Improve Web Site Recommendation, published 2004, 11 pages.
Louis Gray, “Cascaad Taps Social Graph for Tailored News,” Feb. 7, 2010: http://blog.louisgray.com/2010/02/cascaad-taps-social-graph-for-tailored.html.
Mark Arend, “Colleagues, Social Distance & Relevance in People Search; Social Networking Tools,” May 1, 2008: http://blogs.msdn.com/b/markarend/archive/2008/05/01/colleagues-social-distance-relevance-in-people-search-social-networking-tools.aspx.
Paul Marsden, “f-commerce Unleashed: Microsoft, Pandora & Yelp Show the Open Graph Way,” May 6, 2010: http://socialcommercetoday.com/f-commerce-unleashed-microsoft-pandora-yelp-show-the-open-graph-way/.
Ryan Lawler, “Is the Social Graph Good for Video Recommendations?,” Dec. 15, 2010: http://gigaom.com/video/clicker-facebook/.
Wu Ze-jun et al., “Personalized Recommendation System for E-Commerce Based on Psychological Community,” May 16-17, 2009: http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=5173235.
Yoav Artzi, et al., “Instance Based Social Network Representation,” University of Washington, 2010: http://www.amitlevy.com/papers/community.pdf.
Yoo et al.; Mining Social Networks for Personalized Email Prioritization; Jul. 1, 2009; 9 pages.
Advisory Action mailed Dec. 27, 2012, in co-pending U.S. Appl. No. 12/771,290.
Final Office Action mailed Oct. 12, 2012, in co-pending U.S. Appl. No. 12/771,290.
Office Action mailed May 8, 2012, in co-pending U.S. Appl. No. 12/771,290.
Office Action mailed Jun. 17, 2013, in co-pending U.S. Appl. No. 12/773,319.
Office Action mailed Jan. 30, 2013, in co-pending U.S. Appl. No. 13/106,149.
Anthony Salcito, “Ribbon Hero: Game-Based Learning for Office”, Jan. 22, 2010: http://blogs.msdn.com/b/microsoftuseducation/archive/2010/01/22/ribbon-hero-game-based-learning-for-office.aspx.
Jennifer P. Michelstein, “Play Ribbon Hero and Hone Your Microsoft Office Skills”, Jan. 19, 2010: http://www.officelabs.com/lists/posts/post.aspx?id=88.
“Ribbon Hero-Boost Your Microsoft Office Skills With This Fun Add-On”, Feb. 17, 2010: http://www.makeuseof.com/tag/ribbon-hero-boost-microsoft-office-skills-fun-addon/.
Kevin Abo, “Microsoft Office Labs Ribbon Hero”, Mar. 5, 2010: http://windowslive.com/connect/post/4e7ac6a8-109e-44c3-b969-196c41ff5ec7.
Office Action mailed Dec. 7, 2012, in U.S. Appl. No. 13/111,101, 28 pages.
Office Action mailed Dec. 7, 2012, in U.S. Appl. No. 13/111,192, 18 pages.
Office Action mailed Sep. 26, 2012, in U.S. Appl. No. 13/106,307, 12 pages.
Mark Prensky; “The Motivation of Gameplay or, the REAL 21st century learning revolution”; 2002; 14 pages.
Gil Taran; “Using Games in Software Engineering Education to Teach Risk Management”; 20th Conference on Software Enginnering Education & Training (CSEET '07); 2007; 8 pages.
Basu, Saikat; Ribbon Hero, published Feb. 17, 2010, 11 pages.
Divelements; SandRibbon Version History, published Aug. 5, 2009, 4 pages.
Foss Software; Elegant Ribbon—Summary, Foss Software, © 2010, 3 pages.
IBM; Defining Help Panel Text, IBM © 1990, 2008, 6 pages.
Microsoft Office Labs Ribbon Hero, © 2010, 3 pages.
Pushing Pixels, published Apr. 10, 2010, 5 pages.
WPF Scrolling Content with Flicks and Gestures, accessed at: http://www.threobotgeek.net/articles/WPF—Scrolling—Content.aspx, accessed on Oct. 13, 2010, 5 pages.
Office Action mailed Aug. 1, 2012, in U.S. Appl. No. 12/943,668.
Office Action mailed Oct. 24, 2012, in U.S. Appl. No. 12/943,668.
Office Action mailed Jan. 3, 2013, in U.S. Appl. No. 12/492,588, 24 pages.
WO 2009/063469 A2; May 22, 2009; Israel; Moshenberg, Kalia.
Zheng, “Search Commands . . . ”, Apr. 28, 2008, 10 pages.
Office Action mailed Jan. 28, 2013, in U.S. Appl. No. 12/790,472, 23 pages.
Office Action mailed Feb. 13, 2013, in U.S. Appl. No. 13/106,307, 17 pages.
Office Action mailed Mar. 28, 2013, in U.S. Appl. No. 12/943,668, 31 pgs.
Final Office Action mailed May 22, 2013, in U.S. Appl. No. 12/790,472, 32 pgs.
Final Office Action mailed May 22, 2013, in U.S. Appl. No. 12/492,588, 37 pgs.
Final Office Action mailed Jun. 28, 2013, in U.S. Appl. No. 13/111,101, 39 pgs.
Office Action mailed Jul. 2, 2013, in U.S. Appl. No. 13/111,192, 32 pgs.
Final Office Action mailed Aug. 28, 2013, in U.S. Appl. No. 12/943,668, 32 pgs.
Office Action mailed Nov. 29, 2013, in U.S. Appl. No. 13/106,113, 30 pgs.
Office Action mailed Jan. 3, 2014, in U.S. Appl. No. 12/790,472, 41 pgs.
Office Action mailed Jan. 3, 2014, in U.S. Appl. No. 12/492,588, 48 pgs.
Office Action mailed Oct. 24, 2013, in U.S. Appl. No. 12/773,319, 28 pgs.
Office Action mailed Feb. 26, 2014, in Australian Application No. 2011248879, 3 pgs.
Australian Office Action dated May 1, 2014 in Appln No. 2011248879.
Notice of Acceptance dated Sep. 18, 2014 in Appln No. 2011248879, 2 pgs.
Chinese Office Action dated Nov. 4, 2014 in Appln No. 20118002158.3, 13 pgs.
Office Action mailed Sep. 11, 2014, in U.S. Appl. No. 12/771,290, 39 pgs.
Office Action mailed Sep. 12, 2014, in U.S. Appl. No. 13/111,101, 70 pgs.
Office Action mailed Sep. 18, 2014, in U.S. Appl. No. 13/111,192, 49 pgs.
Office Action mailed Oct. 10, 2014, in U.S. Appl. No. 12/492,588, 44 pgs.
Office Action mailed Oct. 14, 2014, in U.S. Appl. No. 12/773,319, 25 pgs.
Office Action mailed Nov. 19, 2014, in U.S. Appl. No. 12/943,668, 53 pgs.
Office Action mailed Dec. 15, 2014, in U.S. Appl. No. 13/106,149, 52 pgs.
Chinese Office Action dated Oct. 30, 2014 in Appln No. 201180022229.X, 17 pgs.
Notice of Allowance mailed Oct. 24, 2014 in U.S. Appl. No. 12/790,472, 23 pgs.
Corrected Notice of Allowance mailed Dec. 12, 2014 in U.S. Appl. No. 12/790,472, 7 pgs.
Office Action mailed Jul. 17, 2014, in U.S. Appl. No. 12/790,472, 38 pgs.
Office Action mailed Jul. 18, 2014, in U.S. Appl. No. 12/492,588, 42 pgs.
Office Action mailed Aug. 13, 2014, in U.S. Appl. No. 12/773,319, 30 pgs.
Chinese Second Office Action dated Jun. 18, 2015 in Appln No. 201180021588.3, 10 pgs.
Chinese Office Action dated Nov. 4, 2014 in Appln No. 201180021588.3, 13 pgs.
Japanese Office Action dated Mar. 25, 2015 in Appln No. 2013-507984, 6 pgs.
Chinese Office Action dated Apr. 14, 2015 in Appln No. 201180022229.X, 13 pgs.
Office Action mailed Mar. 20, 2015, in U.S. Appl. No. 12/771,290, 31 pgs.
Office Action mailed Apr. 23, 2015, in U.S. Appl. No. 13/111,101, 58 pgs.
Office Action mailed May 11, 2015, in U.S. Appl. No. 12/492,588, 31 pgs.
Office Action mailed May 15, 2015, in U.S. Appl. No. 13/111,192, 25 pgs.
Office Action mailed Jan. 11, 2016, in U.S. Appl. No. 12/773,319 , 51 pgs.
Chinese Third Office Action dated Dec. 16, 2015 in Appln No. 201180021588.3, 10 pgs.
Chinese Notice of Grant dated Feb. 5, 2016 in Appln No. 201180022229.X, 4 pgs.
European Office Action in application 11777815.9 , mailed Mar. 29, 2016, 1 pg.
European Search Report Issued in Patent Application No. 11777815.9, Mailed Date: Mar. 8, 2016, 06 Pages.
Japanese Office Action dated Feb. 3, 2016 in Appln No. 2013-507984, 2 pgs. (No English Translation).
Grech, “Publishing on the WWW . . . ”, Images Paediatr Cardiol. Oct.-Dec. 2001; 3(4): 55-68. (cited in Oct. 19, 2015 OA).
“Plug-in (computing)”, Wikipedia page, retrieved from URL https://web.archive.org/web/20080825210331 /http://en.wikipedia.org/wiki/Plug-in—(computing) on Sep. 14, 2015; Wayback Machine date of Aug. 25, 2008, 1 pg. (cited in Oct. 19, 2015 OA).
Chinese Third Office Action dated Aug. 28, 2015 in Appln No. 201180022229.X, 6 pgs.
Office Action mailed Sep. 24, 2015, in U.S. Appl. No. 12/771,290, 27 pgs.
Office Action mailed Sep. 25, 2014, in U.S. Appl. No. 13/106,149, 41 pgs.
Office Action mailed Oct. 19, 2015, in U.S. Appl. No. 12/492,588, 41 pgs.
Office Action mailed Mar. 12, 2014, in U.S. Appl. No. 13/106,149, 33 pgs.
Office Action mailed Mar. 27, 2014, in U.S. Appl. No. 12/943,668, 41 pgs.
Notice of Allowance mailed Apr. 11, 2014 in U.S. Appl. No. 13/106,307, 26 pgs.
U.S. Appl. No. 13/106,149, Office Action mailed Jul. 18, 2016, 42 pages.
Chinese Fourth Office Action dated Jun. 29, 2016 in Appln No. 201180021588.3, 10 pages.
Related Publications (1)
Number Date Country
20120290545 A1 Nov 2012 US