# US 11,443,055 B2 · Information sharing in a collaborative, privacy conscious environment

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,443,055 B2
- Document ID: US11443055B2
- Status: Granted
- Kind: B2
- Application number: 16/415,603
- Filed: 2019-05-17
- Published: 2020-11-19
- Granted: 2022-09-13
- Earliest claimed: 2019-05-17
- Assignees: Microsoft Technology Licensing, LLC
- Applicants: Microsoft Technology Licensing, LLC
- Inventors: Brian Vanover
- Web page: https://patentgrep.com/patent/US11443055B2

## CPC

- G06F 16/93: Document management systems
- G06F 21/6227: {where protection concerns the structure of data, e.g. records, types, queries}
- G06F 16/24556: {Aggregation; Duplicate elimination}
- G06F 16/9035: Filtering based on additional data, e.g. user or group profiles
- G06F 16/9536: Search customisation based on social or collaborative filtering
- G06F 21/00: Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F 21/62: Protecting access to data via a platform, e.g. using keys or access control rules
- H04L 63/104: {Grouping of entities}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method that enables information sharing is described herein. The method includes receiving a query from a first collaborator at a content management system, wherein a relationship between the first collaborator and a second collaborator is maintained by the content management system. The method also includes determining query results in content stored at a second shard belonging to the second collaborator in response to the query, wherein the query results are relevant to a search based on the received query. Additionally, the method includes releasing the query results from the second shard in response to an indication from the second collaborator, and returning the released query results to the first collaborator.

## Claims

### Claim 1

A method, comprising:
receiving a query from a first collaborator at a content management system, wherein a relationship between the first collaborator and a second collaborator is maintained by the content management system;
in response to receiving the query, determining first and second query results in content stored at a first shard corresponding to the first collaborator and at a second shard belonging to the second collaborator in response to the query, respectively, wherein the first and second query results are relevant to a search based on the received query in the content stored at the first and second shards, respectively;
upon receiving an input releasing the second query results from the second shard in response to an indication from the second collaborator, aggregating the determined first and second query results; and
returning the aggregated first and second query results to the first collaborator.

### Claim 2 (depends on 1)

The method of claim 1, wherein the indication from the second collaborator enables the release of the second query results by notifying the second collaborator of the second query results and obtaining approval of the release of the second query results to the first collaborator.

### Claim 3 (depends on 1)

The method of claim 1, wherein the content management system brokers the second query results retrieved from the second shard by de-duplicating the first and second query results.

### Claim 4 (depends on 1)

The method of claim 1, wherein the second query results are determined via a federated search over the content of the second shard.

### Claim 5 (depends on 1)

The method of claim 1, comprising:
de-duplicating the first query result and the second query results from the second shard prior to releasing the aggregated first and second query results from the second shard in response to an indication from the second collaborator.

### Claim 6 (depends on 1)

The method of claim 1, wherein the relationship between the first collaborator and the second collaborator is defined by a set of permissions enunciated by each of the first collaborator and the second collaborator and stored in an access graph.

### Claim 7 (depends on 1)

The method of claim 1, wherein the second query results are unique query results that represent unique content as compared to other search results found at other shards.

### Claim 8 (depends on 1)

The method of claim 1, further comprising validating the relationship between the first collaborator and the second collaborator prior to transmitting the second query results to the content management server.

### Claim 9 (depends on 1)

The method of claim 1, wherein the content stored at the second shard of the second collaborator comprises electronic messaging data, electronic mail data, web-based collaborative platform data, cloud storage data, or any combination thereof.

### Claim 10

A computing system, comprising:
a processor; and
a memory operatively coupled to the processor, the memory including instructions executable by the processor to cause the computing system to:
receive a query from a first collaborator, wherein a relationship between the first collaborator and a second collaborator is maintained by a content management system;
in response to receiving the query, query a first shard corresponding to the first collaborator to generate local query results and federate the query and issue a federated search request to a second shard corresponding to the second collaborator based on the query from the first collaborator to the second collaborator;
determine remote query results at the second shard belonging to the second collaborator in response to the issued federated search request; and
upon receiving an input to release the remote query results from content on the second shard owned by the second collaborator to the first collaborator, aggregate the local and remote search results and return the aggregated first and second query results to the first collaborator.

### Claim 11 (depends on 10)

The computing system of claim 10, wherein the content management service comprises an access graph that stores information to determine the relationship between the first collaborator and a second collaborator.

### Claim 12 (depends on 10)

The computing system of claim 10, wherein the content management system brokers the query results retrieved from the second shard by de-duplicating the query results.

### Claim 13 (depends on 10)

The computing system of claim 10, wherein the content management system comprises a plurality of content management clients and the content management server, wherein each content management client is located on a shard of a collaborator.

### Claim 14 (depends on 10)

The computing system of claim 10, wherein the memory includes additional instructions executable by the processor to cause the computing system to:
de-duplicating the local query results and the remote query results from the second shard prior to releasing the aggregated local and remote query results.

### Claim 15 (depends on 10)

The computing system of claim 10, wherein the content management service releases the second query results from content on the second shard owned by the second collaborator in response to an approval of the release by the second collaborator.

### Claim 16

A computer readable medium bearing computer executable instructions which, when executed on a computing system comprising at least a processor, carry out a method for sharing information in a collaborative, privacy conscious environment, the method comprising:
receiving a query from a first collaborator at a content management system, wherein a relationship between the first collaborator and a second collaborator is maintained by the content management system;
in response to receiving the query, determining first and second query results in content stored at a first shard corresponding to the first collaborator and at a second shard belonging to the second collaborator in response to the query, respectively, wherein the first and second query results are relevant to a search based on the received query in the content stored at the first and second shards, respectively; and
upon receiving an input releasing the second query results from the second shard in response to an indication from the second collaborator, aggregating the determined first and second query results and returning the aggregated first and second query results to the first collaborator.

### Claim 17 (depends on 16)

The computer readable medium of claim 16, wherein the indication from the second collaborator enables the release of the second query results by notifying the second collaborator of the second query results and obtaining approval of the release of the second query results to the first collaborator.

### Claim 18 (depends on 16)

The computer readable medium of claim 16, wherein the content management system brokers the second query results retrieved from the second shard by de-duplicating the first and second query results.

### Claim 19 (depends on 16)

The computer readable medium of claim 16, further comprising validating the relationship between the first collaborator and the second collaborator prior to transmitting the second query results to a content management server.

### Claim 20 (depends on 16)

The computer readable medium of claim 16, comprising:
de-duplicating the first query result and the second query results from the second shard prior to releasing the query results from the second shard in response to an indication from the second collaborator.
