Facet support, clustering for code query results

US9348894B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9348894-B2
Application numberUS-201113111879-A
CountryUS
Kind codeB2
Filing dateMay 19, 2011
Priority dateMar 31, 2011
Publication dateMay 24, 2016
Grant dateMay 24, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Techniques and tools are described for refining source-code query results. For example, source-code query results for a query can be generated, semantic clusters of the source-code query results can be generated, and based on a selection of a semantic cluster option, refined source-code query results can be sent. Also, for example, source-code query results can be received, selections of facet values associated with groups of the source-code query results can be sent, and based on selected facet values, a subset of the source-code query results can be received.

First claim

Opening claim text (preview).

We claim: 1. A method implemented at least in part by a computer system of refining source-code query results, the method comprising: generating source-code query results for a query, the source-code query results being associated with code elements; by the computer system, associating concepts with the source-code query results, wherein the concepts are connected to semantic properties of the code elements; by the computer system, grouping the source-code query results into one or more semantic clusters based on a similarity of the concepts associated with the source-code query results and connected to the semantic properties of the code elements; sending, to a client device, the source-code query results for the query and at least one semantic cluster option of one or more semantic cluster options, the at least one semantic cluster option corresponding to a semantic cluster of the one or more semantic clusters of the source-code query results, wherein the at least one semantic cluster option of the one or more semantic cluster options comprises a cluster identifier and an indication of a percentage of the source-code query results that are included in the semantic cluster of the one or more semantic clusters of the source-code query results; causing a concept wheel to be displayed in a user interface of the client device, the concept wheel comprising the at least one semantic cluster option of the one or more semantic cluster options as a portion of an area of the concept wheel corresponding to the percentage of the source code query results that are included in the semantic cluster of the one or more semantic clusters of the source-code query results; causing designated cluster option information to be displayed in the user interface of the client device, wherein the designated cluster option information overlays the concept wheel; receiving an indication of a selection of the at least one semantic cluster option out of the one or more semantic cluster options; and based at least on the indication of the selection of the at least one semantic cluster option out of the one or more semantic cluster options, sending refined source-code query results, wherein the refined source-code query results comprise a subset of the source-code query results included in the semantic cluster of the one or more semantic clusters of the source-code query results corresponding to the at least one, selected semantic cluster option of the one or more semantic cluster options, thereby refining the source-code query results. 2. The method of claim 1 , wherein generating the one or more semantic clusters comprises clustering based on words contained in code elements of source code. 3. The method of claim 2 , wherein the query is received from a user searching for source code; wherein the source-code query results are sent to the client device for display in the user interface; and wherein the source-code query results correspond to the code elements of the source code. 4. The method of claim 1 further comprising: indexing source code, the indexing comprising creating index documents for code elements of the source code. 5. The method of claim 4 , wherein creating the index documents comprises inputting values into fields at least by parsing the source code based on a programming language. 6. The method of claim 1 further comprising: ranking the source-code query results; and wherein generating the one or more semantic clusters comprises using one or more of the source-code query results chosen based on the rankings of the source-code query results. 7. The method of claim 1 further comprising: based on the source-code query results, determining one or more facet values; and wherein generating refined source-code query results is further based at least on an indication of a selected at least one of the one of more facet values. 8. A computing system comprising: one or more processors; and memory, the memory storing computer-executable instructions causing the computing system to perform a method, the method comprising: sending a source-code query to a server; receiving a query response at a client comprising source-code query results and at least one semantic cluster option of one or more semantic cluster options, the at least one semantic cluster option corresponding to a semantic cluster of one or more semantic clusters of the source-code query results, wherein the at least one semantic cluster option of the one or more semantic cluster options comprises a cluster identifier and an indication of a percentage of the source-code query results that are included in the semantic cluster of the one or more semantic clusters of the source-code query results, wherein the one or more semantic clusters indicate similar concepts which are connected to semantic properties of the one or more source-code query results, and wherein the cluster identifier is based on words in index documents associated with the semantic cluster of the one or more semantic clusters; displaying, at the client, a concept wheel comprising the at least one semantic cluster option of the one or more semantic cluster options as a portion of an area of the concept wheel corresponding to the percentage of the source-code query results that are included in the semantic cluster of the one or more semantic clusters of the source-code query results; displaying, at the client, designated cluster option information, wherein the designated cluster option information overlays the concept wheel; receiving a selected unwanted semantic cluster option; responsive to receiving the selected unwanted semantic cluster option, removing the selected unwanted semantic cluster option and creating a new concept wheel; selecting the at least one semantic cluster option of the one or more semantic cluster options; sending, to the server, an indication of the selected at least one semantic cluster option of the one or more semantic cluster options; and receiving, at the client, refined source-code query results based at least on the indication of the selected at least one semantic cluster option of the one or more semantic cluster options, the refined source-code query results comprising a subset of the source-code query results included in the semantic cluster of the one or more semantic clusters of the source-code query results corresponding to the at least one semantic cluster option of the one or more semantic cluster options. 9. A computing system comprising: one or more processors; and memory, the memory storing computer-executable instructions causing the computing system to perform a method, the method comprising: receiving one or more source-code query results, one or more facet values that are associated with groups of the one or more source-code query results categorized under one or more facets, and at least one semantic cluster option corresponding to a semantic cluster of the one or more source-code query results, the at least one semantic cluster option comprises a semantic cluster identifier and an indication of a percentage of the one or more source-code query results that are included in the semantic cluster of the one or more source-code query results, wherein the at least one semantic cluster option is depicted in a concept wheel, wherein the semantic cluster is based on similar concepts which are connected to semantic properties of the one or more query results that are included in the semantic cluster, and wherein the semantic cluster identifier indicates a concept based on similar entries in index documents associated with the semantic cluster; displaying designated cluster option information, wherein the designated cluster option information overlays the concept wheel

Assignees

Inventors

Classifications

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9348894B2 cover?
Techniques and tools are described for refining source-code query results. For example, source-code query results for a query can be generated, semantic clusters of the source-code query results can be generated, and based on a selection of a semantic cluster option, refined source-code query results can be sent. Also, for example, source-code query results can be received, selections of facet …
Who is the assignee on this patent?
Asadullah Allahbaksh Mohammedali, George Susan, Muddu Basava Raju, and 1 more
What technology area does this patent fall under?
Primary CPC classification G06F16/3331. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 24 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).