US20090177962A1 - Intelligently representing files in a view - Google Patents
Intelligently representing files in a view Download PDFInfo
- Publication number
- US20090177962A1 US20090177962A1 US11/969,654 US96965408A US2009177962A1 US 20090177962 A1 US20090177962 A1 US 20090177962A1 US 96965408 A US96965408 A US 96965408A US 2009177962 A1 US2009177962 A1 US 2009177962A1
- Authority
- US
- United States
- Prior art keywords
- file
- representations
- files
- properties
- presenting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/168—Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/156—Query results presentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/26—Visual data mining; Browsing structured data
Definitions
- FIG. 1A Historically, information about files has been presented in a way consistent with what is shown in FIG. 1A , wherein each file is presented subject to a common set of attributes.
- the common set of attributes in FIG. 1A consists of a name, date modified, type, size, and tags. Irrespective of the type of file that the different files are, the same aspects of those files are presented across the board. As will be made clear by the instant disclosure, this historical way of presenting data suffers from a variety of shortfalls.
- embodiments of the invention include systems and methods for intelligently presenting a view of a set of file representations (e.g., file representations, or even representations of devices such as a printer, mobile phone, network status, etc). that corresponds to a set of files, in which the set of files includes different file types.
- file representations e.g., file representations, or even representations of devices such as a printer, mobile phone, network status, etc.
- Each file representation can be tailored to a type of file that it corresponds to such that some file representations include a first arrangement of a first set of properties, but other file types arrange a different set of properties differently.
- Data can be presented in rows, but not bound to a columnar format.
- FIG. 1A depicts an illustrative example of presenting information about files in a constrained way
- FIG. 2 depicts an illustrative operating environment suitable for practicing an embodiment of the invention
- FIG. 3 depicts an illustrative schematic diagram of a computing device according to an embodiment of the invention
- FIGS. 4A-4C depict representations of layouts that are available according to embodiments of the invention.
- FIG. 5 depicts an illustrative file representation skeleton according to an embodiment of the invention
- FIGS. 6A-6C depict illustrative methods for intelligently presenting representations of files according to various embodiments of the invention.
- FIGS. 7A-10A depict illustrative examples of layout patterns according to various embodiments of the invention.
- FIG. 11A depicts another illustrative example of a view according to an embodiment of the invention.
- FIG. 12A depicts an illustrative example of the fruits of a search query according to an embodiment of the invention.
- one of the novel aspects of an embodiment of the instant invention includes the ability to present representations of heterogeneous files in a manner that is based on the types of those files.
- file we will describe a variety of other novel aspects of different embodiments of the invention throughout this disclosure.
- items are as applicable as files. That is, a view may contain representations of various types of items, some of which include what have been traditionally thought of as files, and others that include things such as peripheral devices, handheld devices, or other items that can be communicatively coupled to a computing system, and that possess properties that are to be displayed.
- Operating environment 210 includes a computing device 212 (which will variously be referred to as a computer), which is schematically described in greater detail in FIG. 3 .
- Computer 212 may take on a variety of forms, including, for example, a computing device such as a client computer, a server computer, the variations thereof such as laptop computers and palm-top computers, and in some embodiments devices such as PDAs and smart phones.
- a bus 310 couples one or more memory components 312 to one or more processors 314 , various presentation components 316 , input/output ports 318 , input/output components 320 , and at least one power supply 322 .
- Other devices including lower level aspects of the shown devices are not shown so as to not obscure the invention.
- Memory components 312 include things such as a hard drive, volatile memory (such as RAM), buffers, and the like.
- the one or more processors 314 control overall data communications throughout computer 212 .
- Illustrative presentation components 316 include a video card as well as a monitor or other presentation device.
- Input/output ports 318 provide connectivity to peripheral components such as printers, digital cameras and the like. Actual input/output components may be things like printers and the like.
- a power supply 322 provides power to run computing device 212 . Not all of the components shown in FIG. 3 need to be present in order to make up a computing device, but are shown for illustrative purposes in connection with describing an embodiment of the invention.
- FIG. 3 is merely illustrative of an exemplary computing device that can be used in connection with one or more embodiments of the present invention.
- Computing device 212 typically includes a variety of computer-readable media.
- computer-readable media may comprise Random Access Memory (RAM); Read Only Memory (ROM); Electronically Erasable Programmable Read Only Memory (EEPROM); flash memory or other memory technologies; CDROM, digital versatile disks (DVD) or other optical or holographic media; magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, carrier wave or any other medium that can be used to encode desired information and be accessed by computing device 300 .
- operating environment 210 indicates that computer 212 may be coupled to a remote storage device 214 by way of a network 216 , which may actually be one or more networks including a network of networks.
- Remote storage device 214 may take the form of a network addressed storage device (NAS) or any other form of storage device that is communicatively coupled to computer 212 .
- NAS network addressed storage device
- An application 218 results in computer 212 being programmed to perform various aspects of various embodiments of the invention.
- Application 218 may actually be composed of a variety of constituent modules or other programmatic code portions, but is referenced generally herein by the numeral 218 for ease of reference.
- an embodiment of the invention may take the form of embodied programmatic code that is run in what is known as layers. Four illustrative layers are shown.
- a storage layer 220 is a layer in which storage type operations can be provided to effect different aspects of the invention.
- storage components reside in storage layer 220 .
- a set of data files 222 may reside in storage layer 220 .
- Files 222 may also reside in remote storage component 214 , which may also be considered to be a part of storage layer 220 .
- Programmatic code that may help facilitate interaction between storage layer 220 and a data layer 224 is referenced by numeral 226 .
- code 226 interacts with another portion of code 228 , which resides in data layer 224 .
- a view is a presentation of representations of data files in a computing environment. We will explain this in greater detail below, but briefly mention this first illustrative definition to help provide some context for the instant discussion of layers. Views layer 232 will work to present a view or a presentation of a set of file representations, and in this embodiment, the file representations are associated with disparate file types. That is, the files represented in a view are not all the same. We will describe this in much greater detail below.
- code 230 and views layer 232 interacts with other portions of code 234 in items-presentation layer 236 .
- This code is responsible for at least in part presenting the different items in a view.
- an illustrative view 239 A is shown by way of example of being displayed on computer 212 . Blown up for clarity, a depiction of view 239 A is referenced by numeral 239 B. Seventeen illustrative items are shown in view 239 B.
- items-presentation layer 236 presents the illustrative items shown in view 239 B.
- programmatic code portions 226 , 228 , 230 , and 234 for referential purposes. These may be roses, and by way of analogy, known by other names to ordinary skilled artisans. We mean to refer to them by way of the functionality offered irrespective of where physically or even abstractly the code portions may reside.
- programmatic code 234 may well reside in views layer 232 in some embodiments of the invention, which may even be substantially subsumed in data layer 224 in some embodiments.
- bracketed arrow 238 any code that is used in connection with carrying out the various functional aspects of the invention are subsumed and will be referred to herein by application 218 .
- a set of files 222 that are to be the object of a view are embodied on one or more memory components 312 .
- Each of these files is associated with a variety of properties.
- a set of properties is generally referenced by numeral 240 .
- properties 240 refer to properties of a file.
- Illustrative properties include things such as a date associated with a file, an image such as a thumbnail presentation of a file or an aspect of the file, a size of a file, an icon indicating a file type, one or more tags associated with a file (wherein the tags may include audio-tagging information or picture-tagging information), a file preview that indicates a visual representation of content of a file, a name of a file, a type of a file, a custom label associated with a file, rating information that indicates a user rating associated with a file, and/or email information including things such as an indication of a sender, a subject, a date, a priority indication and/or a status indication.
- the types of things that can be considered a property are legion. The aforementioned list that we provided is not exhaustive by any means, but is provided to convey what we mean by the term.
- FIG. 239 B an illustrative view such as view 239 B that is capable of being provided by an embodiment of the invention but will also provide additional details in connection with FIG. 5 and various other figures such as from 7 A through the end.
- four illustrative groups of file types 242 , 244 , 246 , and 248 ) are shown as well as an additional catch-all grouping that is referenced by numeral 250 .
- Embodiments of the invention employ grouping while others do not.
- at least five different file types are represented by representations in view 239 B: documents, pictures, music files, emails, and other types of files such as text files.
- different properties are displayed for different file types.
- view 239 B is not columnar.
- FIG. 1A depicts files that are of a different type, all of the properties are the same. That is, each file is represented by a depiction that includes a name, the date modified, a type, a size, and possibly a set of tags. But presenting data in this manner makes for inefficient reading by users. Moreover, it deprives developers of an opportunity to present properties that are more relevant to certain file types, but not present those same properties in connection with other file types. Further, there is no grouping as well as no headings that are provided in connection with the views that have been traditionally provided.
- email files 248 include a set of properties that are not even found in connection with the other representations of files.
- a sender 254 is shown as well as a subject 256 .
- senders and subjects do not make any sense when representing certain files of other types. That is, they are contextually either irrelevant or undesirable.
- An embodiment of the invention enables contextually relevant properties to be shown in connection with a single view that contains representations of files of disparate or different file types.
- FIG. 4A a block diagram of a simplified representation of a view is provided and referenced generally by the numeral 400 .
- Representation 400 is illustrative in nature and not intended to be even a generic representation of a way to present all representations of all file types. For illustrative purposes, we describe elements that may make up a view and will describe progressively more complicated elements in connection with FIGS. 4B and 4C .
- the overall view is referenced by numeral 410 .
- a view header may be used to describe potential properties that might be associated with items in view 410 .
- header 412 may illustratively include things such as a name, a modification date, an indication of a file type, an indication of a file size, as well as an indication of any tags that might be associated with an item.
- the view header takes the form of an area along a side, such as the top, of a window that enables users to sort or group items by properties.
- header 412 provides a way to access contextual filtering. Users can change, resize, and reorder headings that are displayed.
- header 412 may appear to delineate columns of a view, but the items themselves are not presented in a columnar format in some embodiments.
- a view body 414 is the main area of view 410 in some embodiments. This is where users may interact with a collection of items (one of which is shown and referenced by numeral 416 ) as contents of a folder, or of a search query for example.
- item 416 may include an image 418 as well as a set of property labels and/or values 420 .
- a second item 422 can be presented in body 414 as well as a multitude of items, represented by dots 424 , culminating in a last item 426 .
- a view footer 428 can be included to provide options to users to do certain things such as refine a query or present information associated with the different items in view 410 .
- FIG. 4B a more expansive diagram of a view is provided and referenced generally by the numeral 450 .
- This item to view 452 also includes a header 454 as well as a body 456 as previously mentioned in the description of FIG. 4A .
- items can be grouped into groups.
- a first group 458 is shown as having its own header 460 and a corresponding group body 462 , which is composed of a set of items 464 , 466 , through 468 .
- each item 464 includes a variety of properties which may include later data that describes the items such as its name, date modified, etc. Various factors are considered to determine what type of properties will be displayed for a given item.
- a group footer 470 might trail the end of each group. Additional groups are also shown, such as a second group 472 through a last group 474 . As with view 410 , view 452 may end with a footer 476 .
- FIG. 4C a still more descriptive view of an embodiment of the invention is provided and referenced by the numeral 478 .
- FIG. 4C again depicts an items view 480 that shows how a group may have subgroups.
- a first group 482 includes a group body 483 that includes a first subgroup 484 as well as a second subgroup 486 and ultimately a last subgroup 488 .
- View 480 may also include another group 490 , which may have subgroups as previously described.
- FIG. 5 depicts a file representation 510 .
- File representation 510 includes by way of illustration a set of placeholders that are referenced by numeral 512 that can be populated with data 514 , which corresponds to a set of properties 516 of a file 518 , which representation 510 represents.
- the collective arrangement of populated placeholders is referenced by numeral 520 .
- File representation 510 is of a certain dimensional size in some embodiments. That is, it has a certain length 522 and height 524 .
- placeholders 512 When we speak of placeholders, such as placeholders 512 , we do not mean to necessarily imply that there are objects (e.g., data 514 ) present in all file representations that are to be populated. In some embodiments, placeholders may not even be present; but rather serve as an indication of possible properties that can be presented in a view. Not all properties 516 are necessarily used to populate placeholders 512 .
- An illustrative populated placeholder is shown by numeral 546 . Although we make a distinction between placeholders 512 and the data ( 514 , 516 ) that is used to populate those placeholders, we will also refer to a set of populated placeholders as a set of properties because what is ultimately presented in a view is a set of properties. Thus numeral 520 indicates a layout pattern that defines a layout of a set of properties. As will also be described in greater detail below, the size of representation 510 can vary with the size of a window that is presenting the set of representations.
- a layout pattern can define specific aspects about how properties to be filled into those placeholders will appear; including, for example, the text color, alignment (left, center, right), and whether or not labels are to be shown.
- FIG. 5 is a reproduction of view 239 B in FIG. 2 , but is shown here and referenced by numeral 530 for ease of reference.
- An item 532 makes up part of view 530 and is generally shown as having a format that may be a variation of representation 510 .
- the arrangements of placeholders vary with the size of view 530 , but the data that is used to populate even the same placeholders may vary based on one or more of a size of the window in which view 530 is displayed and/or the type of file that file 518 is.
- five illustrative groupings of files are shown in this view, being referenced here as view 530 . Two of those groupings include a documents grouping 537 as well as a pictures grouping 534 .
- groupings not numbered include a grouping of music files as well as email files and other files. Headers are shown that introduce groupings of files in this embodiment. For example, a “documents” heading 536 is shown as well as a “pictures” heading 538 .
- layout pattern 520 is to be used in connection with displaying at least a set of files of a common file type but, as may be the case in some embodiments, files have different file types (which might also have their own layout patterns) for purposes of illustration.
- patterns are selected based on inspecting one or more properties of the items. In other embodiments, patterns are selected based not only on the properties of the items, but also on the context around how the list of items to show was generated.
- music file 542 includes the name of an album 544 in placeholder 546 .
- text document 540 includes an indication of file type 548 in placeholder 566 . This is an example of how different properties can be presented in the same placeholder based on the type of file 518 being represented by representation 510 .
- 17 file representations are shown. In one embodiment, each representation within a group has the same size. Thus in such an embodiment, all representations 537 of documents have the same size. Similarly, all representations 534 of pictures are the same size. In still other embodiments all of the representations in a single view are the same size. Although the size of each representation may vary with the size of the window, in at least one embodiment, the size of all representations in a common view are the same.
- FIG. 6A an illustrative method for practicing an embodiment of the invention is provided and referenced generally by the numeral 600 .
- This illustrative method will be described in connection with FIG. 5 and possibly other figures.
- a step 610 a group of layout patterns are provided that can be used to present a set of file representations in a view.
- FIG. 5 showed a single layout pattern 520 .
- FIGS. 7A-10A We will later describe in connection with FIGS. 7A-10A that a variety of layout patterns may exist.
- a group of layout patterns are provided that can accommodate various representations of files.
- To provide a group of layout patterns does not necessarily imply that the layout patterns need to actually exist. Rather, it is enough if application 218 provides the ability to dynamically create layout patterns based on a set of criteria.
- This method that we are describing is one way of intelligently presenting a view of a set of file representations that corresponds to a set of files in which the set of files include different file types.
- the invention may receive a request to present a representation of a set of files in a folder.
- One method of determining the respective file types of the set of files is to inspect the files themselves.
- Another way of determining the respective file types of the set of files is to examine a data store of data that describes the files.
- a data store 260 which could also reside on remote data store 214 , may be a database of information that describes files 222 .
- data store 260 (which may take the form of a table or a folder, etc.) will be inspected to determine the respective file types of the set of files to be presented in a view.
- An illustrative set of such files could be files 222 as shown in FIG. 2 .
- Another way of determining the respective file types of the set of files is to inspect the files themselves and by identifying the different extensions of each file, learning which types of files are to be presented in the view.
- email received might be considered a different type than a email sent (i.e. received email vs. sent email).
- the sender property could be shown on received email versus the recipient property on sent emails.
- the location of the file can be used to determine the type.
- a file on a network share might show different properties than the same file on the local machine (i.e. “network document” vs. “local document”).
- application 218 determines a layout pattern based on a type of one of the files. If a determination has been made in step 612 as to the different file types, then a layout pattern for each file type can be determined. In an alternative embodiment, the layout pattern can be determined at step 614 based on an inspection of a specific file. Several factors may be taken into consideration in determining a layout pattern. As illustrated in FIG. 6A , the type of file may dictate a pattern selected. The pattern may also be selected by a combination of factors. An illustrative combination of factors includes a file type as well as a size of a window in which to present the set of representations.
- each placeholder in the layout pattern selected in step 614 is populated with properties based on the type of file. This produces a set of populated layout patterns.
- all of the relevant placeholders 512 are populated with the properties 516 that are relevant to the type of respective file. If the file is a music file, then a certain set of placeholders will be populated with a certain set of data. If the file type is a picture, then a different set of placeholders may be populated with a different set of data. If the size of the window is very long, then a certain set of placeholders may be selected for a given file whereas if the size of the window were smaller, then a different set of placeholders would be selected for even the same file.
- the placeholders may not yet exist. That is, in some embodiments the values are picked and placed in real time without reference to explicit placeholders that actually exist.
- placeholders we mean to encompass the concept of potential placement of properties subject to a given layout pattern.
- presenting the set of file representations includes arranging the data in a way that it can be outputted through presentation component 316 .
- presentation component 316 may be a monitor or other display device such that the view is presented on a display device.
- the entire process of 600 can be dynamically instituted incident to a user interacting with the files. For example, a user may resize a window containing the representations. As the window is being resized, the arrangement of the layout patterns as well as the specific layout patterns themselves can be varied as the size of the window is varied.
- presenting the set of file representations includes grouping those representations according to types of files. In this embodiment, like file types are grouped together.
- the file representations are presented in a noncolumnar format. As previously mentioned, the file representations might be the same size when being presented in some embodiments.
- our system allows for various variables to be set that affect how the placeholders are populated with properties, such as the text color to use, the alignment (left, center, right), and whether or not the property label should be shown or not.
- FIG. 6B an illustrative method according to an embodiment of the invention for intelligently presenting a set of representations of files in a bounded screen area is provided wherein some of those files are of different file types than other files.
- a request is received to present a view that includes a set of representations of files that are of disparate file types. For example, a user may desire to inspect the contents of a folder that have been presented in a window.
- application 218 will receive this request to present information about the files at a step 630 .
- a layout pattern 520 will be determined based on a type of file that the file is. This will produce a set of layout patterns.
- the different layout patterns differ with file types.
- the types of file patterns may vary based on the type of action engaged in. For example, a browse request may implicate a different layout pattern than a search request even though the information about the same files will be presented.
- other factors may also be included to determine a layout pattern. Illustrative other factors include a size of a window that will be used to present representations of the files or folders.
- layout patterns can be determined for each file at step 632 .
- a layout pattern for a single file can be determined, with processing advancing to a step 634 , wherein based on the type of file, a set of properties associated with the file (i.e., file 518 ) are retrieved from one or more memory components 312 .
- a set of properties associated with the file i.e., file 518
- certain properties may be retrieved in connection with certain types of files, whereas other properties may be retrieved in the case of other types of files.
- Embodiments of the invention are flexible enough to accommodate selective retrieval of properties of files based on the types of files of which information is being sought. Again, in some embodiments the steps of 632 and 634 are more serial in nature, but in other embodiments a batch or even out-of-order processing scheme is employed.
- each layout pattern respectively includes a presentation of the specific set of properties that are associated with each file representation to be presented.
- step 638 does not begin until step 632 and/or 634 complete. That is, we do not mean to imply that no files are presented until information such as layout patterns or properties are determined for all files.
- embodiments of the invention contemplate scenarios wherein data will begin to be presented asynchronously.
- layout patterns and types of files are chosen, corresponding representations of those files can be presented without waiting for such information to be determined for all files.
- types of layout patterns can be modified on the fly, such as when a user resizes the window. If a user decides to resize a window, then the set of representations will possibly take on alternative layout patterns, which will be described in greater detail in connection with FIGS. 7A-10A .
- FIG. 5 An illustrative example of a result of FIG. 6B is shown in FIG. 5 , in which it can be seen that files of different file types have different layout patterns as well as properties 516 populated in view 530 .
- the size of the file representations e.g., length 522 and height 524
- the file representations may take on different sizes with respect to either file types, or even property values.
- document file representations 537 take on a layout pattern 520 of a first size
- pictures representations 534 take on a layout pattern 520 of a different size.
- FIG. 12A it can be seen that the picture images are represented by thumbnails, namely larger thumbnails than the thumbnail representations of the documents or emails. We will discuss FIG. 12A in greater detail below.
- a set of files is determined for which information about the files is to be rendered in a window of a graphical user interface in which not all of the text files are the same.
- computer 212 possesses the ability to render a graphical user interface, which can include a window to present information about a set of files of interest to a user or other.
- a user may request that the contents of a folder be presented.
- a user may request that a search be performed across the various storage components accessible by computer 212 .
- application 218 in one embodiment conditions a format of each file representation 510 based on the type of the corresponding file 518 , thereby providing a set of representation formats that each define a layout for presenting properties 516 of the file.
- the format may include a first layout pattern 520 .
- the format may include a different layout pattern, such as the multitude of layout patterns that we are about to discuss in connection with FIGS. 7A through 10A .
- a format of representation 510 may include a first set of properties 516 .
- different properties 516 may be included.
- the format of file representation 510 is conditioned based on the type of file that file 518 is. Different file types may lead to different formats of file representation 510 , which is an illustrative generic representation of any of the different file representations shown on FIG. 5 .
- a set of file properties is selected to be presented for each representation based on the type of file that file 518 is. This provides a set of selected file properties for each file. Again, this need not happen in a serial fashion. Different properties can be selected based on file type.
- application 218 can present through video presentation component 316 the set of representations in a noncolumnar format that is consistent with the representation formats and that respectively includes the selected file properties from step 654 .
- an output such as view 239 B from FIG. 2 may be provided by way of step 656 .
- the set of representations ( 242 , 244 , etc.) are presented in a noncolumnar format.
- the representations are consistent with the formats and include various properties based on the types of each file that each representation corresponds to.
- FIG. 7A an illustrative layout pattern, as well as many variations thereof, is provided and referenced generally by the numeral 700 .
- Alpha pattern 700 is shown to illustratively include five layout patterns, which are respectively referred to by numerals 710 , 712 , 714 , 716 , and 718 . Information corresponding to these patterns are provided in respective rows 720 , 722 , 724 , 726 , and 728 . Individual items or properties of each pattern are referenced by a series of letters.
- layout pattern 710 is shown to include two properties: a thumbnail 732 and another property 730 represented by a string of As.
- item layout pattern 710 is a pattern that would be applicable to a window that includes zero to 250 relative pixels (RP) and is an item layout pattern that includes two rows.
- item layout pattern 712 shows three properties 736 as well as a thumbnail 738 . Attributes of each of the properties are referenced by numeral 740 . With reference to attributes 740 , it can be seen that the first property 736 A can have a variable width and left alignment. Further, attributes 740 indicate that a second property 736 B is to consume not more than 50% of the width of layout pattern 712 and be right aligned. The third property 736 C is to be left aligned as further shown by legend 740 . Cell 742 indicates that item layout pattern 712 is applicable to having 250-350 relative pixels available, and when two rows are desired.
- row 724 which is applicable to 351 or more relative pixels and by way of further illustration two rows, is shown to be able to accommodate nine different properties, which are referenced by a set of letters ranging from As to Js.
- the third property 744 is defined by line 746 to be applicable more than 50 relative pixels are available and to be left aligned.
- fourth property 748 is to not consume more than 33% of the width of item layout pattern 714 and is to be right aligned as is shown by row 750 .
- row 726 the developer can provide an item layout pattern as is shown in row 726 , which is applicable to up to 250 relative pixels, but only shows one row of data.
- row 728 A final illustrative example is shown by way of row 728 , which constrains item layout pattern 718 to a single row, that is applicable to situations where more than 251 relative pixels are available.
- alpha pattern 700 represents a single pattern layout that can take on various forms based on the size of a window that is being used to present different file representations. Many hundreds of layout patterns can be defined, and various formats or subpatterns of those patterns can further be defined based on an amount of screened real estate available to present the file representations.
- a developer may elect to apply alpha pattern 700 to music files. In such a situation, all music files will be subject to alpha pattern 700 . That is, based on the screened real estate available, one of the options ( 710 - 718 ) will be selected for all music files.
- a developer may associate only text files or some other files that meet certain criteria and are to be associated with alpha pattern 700 .
- representation FIG. 7B depicts an illustrative representation of files according to alpha pattern 700 . But a developer may wish to utilize some different pattern, which has a different arrangement of placeholders.
- Beta pattern 800 is shown to illustratively include seven item layout patterns which are referenced by numerals 812 , 814 , 816 , 818 , 820 , 822 , and 824 . Reading the table shown in FIG. 8A is similar to that of FIG. 7A ; thus, less detail will be provided so as to not be repetitive. By way of a few illustrations, row 826 shows that item layout pattern 816 can display four properties as well as a thumbnail.
- First property 828 was not to consume more than 33% of item layout pattern 816 and is to be right aligned as indicated by line 830 of legend 832 .
- the other property formats can be gleaned from legend 832 .
- Cell 834 indicates that layout pattern 816 is desirable to be used when 351 to 450 relative pixels are available and two rows of data are desired to be shown.
- beta pattern 800 An understanding of the seven illustrative item layout patterns that make up beta pattern 800 can be understood by referencing FIG. 8A .
- a developer may desire to have certain types of files associated with beta pattern 800 instead of alpha pattern 700 .
- the file representations of a view would be laid out according to beta pattern 800 .
- Illustrative layouts of beta pattern 800 can be seen in FIGS. 8C-8E .
- FIG. 8C depicts a representation of a first variation of beta pattern layout 800 . If the window size of FIG. 8C is narrowed, then a window such as that of FIG. 8E may occur. As can be seen from FIG. 8E , intelligence has been provided according to the item layout patterns of FIG. 8A . That is, more is happening than just reducing the maximum sizes of the property fields that were available in FIG. 8C .
- the sender property 810 which used to appear in the first row, has been moved down to location 812 in the second row (as can be seen by referencing FIG. 8E ).
- Many different types of layouts or populations of placeholders can be used and conditioned upon file type and/or screened real estate.
- FIG. 9A depicts another illustrative layout pattern, which we will refer to as gamma pattern 900 . If we were to continue to use the alphabet to list different illustrative patterns, we would run into the doubles and triples, quadruples, etc. sets of letters. What we show as a final illustration just is to drive home the point that many different layout patterns could be created to potentially be used to display file representations.
- Gamma pattern 900 illustratively shows six different item layout patterns as with the two previous examples of FIGS. 7A and 8A .
- the specific properties are shown to be arranged differently in some instances than those corresponding item layout patterns of alpha or beta pattern.
- row 910 which describes item layout pattern 912 with item layout pattern 816 as described in row 826 of FIG. 8A .
- item layout pattern 816 four properties were shown.
- item layout pattern 912 includes only the first three properties rather than attempting to show the fourth. That is, item layout pattern 912 shows three attributes, whereas item layout pattern 816 shows four even though both are applicable to situations where 351 to 450 relative pixels are available.
- FIG. 9B depicts a representation of a set of file representations according to gamma pattern 900 .
- FIG. 10A was provided to show still more examples of how a content and arrangement of a layout pattern can be varied as the size of the different layout patterns themselves are varied.
- FIG. 11A shows still another illustrative example of a possible view rendered according to an embodiment of the invention. As can be seen, various thumbnail images or icons having various sizes can be shown. Moreover, files of different file types include different information even though, in this embodiment, each of the different file representations are of the same size.
- FIG. 12A it indicates a view that is the fruit of a search request.
- the phrase “lorem ipsum” is the subject of a query, wherein the various file representations shown in FIG. 12A are presented in window 1200 .
- the representations shown in screen 1200 might be of a different arrangement or include different properties than the exact same files that would have been presented in a window had they not been the subject of a search.
- embodiments of the invention are flexible enough to accommodate presenting the exact same data in different ways if so desired.
- marker 1210 indicates the search term.
- marker 1210 takes the form of an outline around search terms, but can also take the form of bolding the search term, highlighting the search term, etc.
- all of the four documents 1212 are grouped separately from the set of emails 1214 , and stay separately from the pictures 1216 .
- the representations of the pictures are of a different size than the representations of the other files, illustrating an aforementioned aspect of an embodiment of the invention.
- a list mode could list a set of file representations in one long list.
- a tiles mode could tile representations in a grid-like fashion.
- Embodiments of the invention are also not limited to a pure two dimensional scheme.
Abstract
Description
- Historically, information about files has been presented in a way consistent with what is shown in
FIG. 1A , wherein each file is presented subject to a common set of attributes. For example, the common set of attributes inFIG. 1A consists of a name, date modified, type, size, and tags. Irrespective of the type of file that the different files are, the same aspects of those files are presented across the board. As will be made clear by the instant disclosure, this historical way of presenting data suffers from a variety of shortfalls. - The invention is defined by the claims below, but summarily, embodiments of the invention include systems and methods for intelligently presenting a view of a set of file representations (e.g., file representations, or even representations of devices such as a printer, mobile phone, network status, etc). that corresponds to a set of files, in which the set of files includes different file types. Each file representation can be tailored to a type of file that it corresponds to such that some file representations include a first arrangement of a first set of properties, but other file types arrange a different set of properties differently. Data can be presented in rows, but not bound to a columnar format.
- Embodiments of the invention are described in detail below with reference to the drawing figures, which form a part of this disclosure, and are incorporated by reference herein, and wherein:
-
FIG. 1A depicts an illustrative example of presenting information about files in a constrained way; -
FIG. 2 depicts an illustrative operating environment suitable for practicing an embodiment of the invention; -
FIG. 3 depicts an illustrative schematic diagram of a computing device according to an embodiment of the invention; -
FIGS. 4A-4C depict representations of layouts that are available according to embodiments of the invention; -
FIG. 5 depicts an illustrative file representation skeleton according to an embodiment of the invention; -
FIGS. 6A-6C depict illustrative methods for intelligently presenting representations of files according to various embodiments of the invention; -
FIGS. 7A-10A depict illustrative examples of layout patterns according to various embodiments of the invention; -
FIG. 11A depicts another illustrative example of a view according to an embodiment of the invention; and -
FIG. 12A depicts an illustrative example of the fruits of a search query according to an embodiment of the invention. - As briefly mentioned, one of the novel aspects of an embodiment of the instant invention includes the ability to present representations of heterogeneous files in a manner that is based on the types of those files. We will describe a variety of other novel aspects of different embodiments of the invention throughout this disclosure. Although we use the term “file” throughout this disclosure, we do not intend for the definition to be so narrow as to only encompass items such as software files. In some embodiments, items are as applicable as files. That is, a view may contain representations of various types of items, some of which include what have been traditionally thought of as files, and others that include things such as peripheral devices, handheld devices, or other items that can be communicatively coupled to a computing system, and that possess properties that are to be displayed.
- Turning now to
FIG. 2 , an illustrative operative environment suitable for practicing an embodiment of the invention is provided and referenced generally by thenumeral 210.Operating environment 210 includes a computing device 212 (which will variously be referred to as a computer), which is schematically described in greater detail inFIG. 3 . - Briefly turning to
FIG. 3 , a diagrammatic block diagram ofcomputer 212 is provided.Computer 212 may take on a variety of forms, including, for example, a computing device such as a client computer, a server computer, the variations thereof such as laptop computers and palm-top computers, and in some embodiments devices such as PDAs and smart phones. As shown inFIG. 3 , abus 310 couples one ormore memory components 312 to one ormore processors 314,various presentation components 316, input/output ports 318, input/output components 320, and at least onepower supply 322. Other devices including lower level aspects of the shown devices are not shown so as to not obscure the invention. -
Memory components 312 include things such as a hard drive, volatile memory (such as RAM), buffers, and the like. The one ormore processors 314 control overall data communications throughoutcomputer 212.Illustrative presentation components 316 include a video card as well as a monitor or other presentation device. Input/output ports 318 provide connectivity to peripheral components such as printers, digital cameras and the like. Actual input/output components may be things like printers and the like. Apower supply 322 provides power to runcomputing device 212. Not all of the components shown inFIG. 3 need to be present in order to make up a computing device, but are shown for illustrative purposes in connection with describing an embodiment of the invention. - Although the various blocks of
FIG. 3 are shown with lines for the sake of clarity, in reality, delineating various components is not so clear, and metaphorically, the lines would more accurately be grey and fuzzy. For example, one may consider a presentation component such as a display device to be an I/O component. Also, processors have memory. We recognize that such is the nature of the art and reiterate that the diagram ofFIG. 3 is merely illustrative of an exemplary computing device that can be used in connection with one or more embodiments of the present invention. -
Computing device 212 typically includes a variety of computer-readable media. By way of example, and not limitation, computer-readable media may comprise Random Access Memory (RAM); Read Only Memory (ROM); Electronically Erasable Programmable Read Only Memory (EEPROM); flash memory or other memory technologies; CDROM, digital versatile disks (DVD) or other optical or holographic media; magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, carrier wave or any other medium that can be used to encode desired information and be accessed by computing device 300. - Returning now to
FIG. 2 ,operating environment 210 indicates thatcomputer 212 may be coupled to aremote storage device 214 by way of anetwork 216, which may actually be one or more networks including a network of networks.Remote storage device 214 may take the form of a network addressed storage device (NAS) or any other form of storage device that is communicatively coupled tocomputer 212. - An
application 218 results incomputer 212 being programmed to perform various aspects of various embodiments of the invention.Application 218 may actually be composed of a variety of constituent modules or other programmatic code portions, but is referenced generally herein by thenumeral 218 for ease of reference. For example, an embodiment of the invention may take the form of embodied programmatic code that is run in what is known as layers. Four illustrative layers are shown. - A
storage layer 220 is a layer in which storage type operations can be provided to effect different aspects of the invention. In some embodiments, storage components reside instorage layer 220. Thus, in one example, a set ofdata files 222 may reside instorage layer 220.Files 222 may also reside inremote storage component 214, which may also be considered to be a part ofstorage layer 220. Programmatic code that may help facilitate interaction betweenstorage layer 220 and adata layer 224 is referenced bynumeral 226. In some embodiments,code 226 interacts with another portion ofcode 228, which resides indata layer 224. Those skilled in the art appreciate that what we show as boundaries between the two layers are really gray, fuzzy, and imprecise. We use terminology such as “layers” to describe aspects of the invention that those of ordinary skill in the art will appreciate, but do not mean to self create a precise demarcation that does not exist. -
Instructions 228 that reside indata layer 224 interact with another set ofinstructions 230 in aviews layer 232 to help gather the information needed to render a view. We will be using the term “view” often throughout this disclosure. An accurate definition of what we mean by the term “view” can only be gleaned by reading the totality of this disclosure. But summarily, a view is a presentation of representations of data files in a computing environment. We will explain this in greater detail below, but briefly mention this first illustrative definition to help provide some context for the instant discussion of layers.Views layer 232 will work to present a view or a presentation of a set of file representations, and in this embodiment, the file representations are associated with disparate file types. That is, the files represented in a view are not all the same. We will describe this in much greater detail below. - By way of a final illustration,
code 230 andviews layer 232 interacts with other portions ofcode 234 in items-presentation layer 236. This code is responsible for at least in part presenting the different items in a view. For example, anillustrative view 239A is shown by way of example of being displayed oncomputer 212. Blown up for clarity, a depiction ofview 239A is referenced by numeral 239B. Seventeen illustrative items are shown in view 239B. Thus, by way of example, items-presentation layer 236 (or thatcode 234 that will be used by an embodiment of the invention) presents the illustrative items shown in view 239B. - We show the level of granularity that we do regarding
programmatic code portions programmatic code 234 may well reside inviews layer 232 in some embodiments of the invention, which may even be substantially subsumed indata layer 224 in some embodiments. For ease of reference in the instant disclosure, we intend to imply by bracketedarrow 238 that any code that is used in connection with carrying out the various functional aspects of the invention are subsumed and will be referred to herein byapplication 218. So even though it may help skilled artisans to understand various aspects of the invention when we speak ofviews layer 232 interacting withdata layer 224 to gather properties offiles 222 that are stored instorage layer 220 to ultimately leverage items-presentation layer 236 to present view 239B, we certainly do not mean to limit nor put beyond the scope of the claims below embodiments of the invention that utilize programmatic code that either resides in different layers or is incapable of even being associated with one of the illustrative layers described. What is comparatively more relevant, is the functionality offered by the embodiedapplication 218 to, among other things, present a view such as view 239B, which allows for the display of representations of files that are of different file types in a common bounded graphical user face element such as a window. - As briefly mentioned above, a set of
files 222 that are to be the object of a view are embodied on one ormore memory components 312. Each of these files is associated with a variety of properties. A set of properties is generally referenced bynumeral 240. We will describe properties in greater detail at least with reference toFIG. 5 but also generally throughout the disclosure that follows. Summarily,properties 240 refer to properties of a file. - Illustrative properties include things such as a date associated with a file, an image such as a thumbnail presentation of a file or an aspect of the file, a size of a file, an icon indicating a file type, one or more tags associated with a file (wherein the tags may include audio-tagging information or picture-tagging information), a file preview that indicates a visual representation of content of a file, a name of a file, a type of a file, a custom label associated with a file, rating information that indicates a user rating associated with a file, and/or email information including things such as an indication of a sender, a subject, a date, a priority indication and/or a status indication. The types of things that can be considered a property are legion. The aforementioned list that we provided is not exhaustive by any means, but is provided to convey what we mean by the term.
- We will briefly introduce some aspects of an illustrative view such as view 239B that is capable of being provided by an embodiment of the invention but will also provide additional details in connection with
FIG. 5 and various other figures such as from 7A through the end. As shown, four illustrative groups of file types (242, 244, 246, and 248) are shown as well as an additional catch-all grouping that is referenced bynumeral 250. Embodiments of the invention employ grouping while others do not. As can be seen at least five different file types are represented by representations in view 239B: documents, pictures, music files, emails, and other types of files such as text files. As can also be seen and as will be described in greater detail below, different properties are displayed for different file types. Moreover, what is displayed is a function of the type of file being represented. For example, some of the pictures includerating information 252.Rating information 252 is not shown in connection with any file in the set of thedocuments 242. It could be, an embodiment of the invention enables the possibility of presenting certain properties in connection with certain file types but different properties associated with different file types all within the same view. In at least one embodiment, view 239B is not columnar. - As briefly mentioned, files have historically had attributes about them presented in a columnar format such as that shown in
FIG. 1A . AlthoughFIG. 1A depicts files that are of a different type, all of the properties are the same. That is, each file is represented by a depiction that includes a name, the date modified, a type, a size, and possibly a set of tags. But presenting data in this manner makes for inefficient reading by users. Moreover, it deprives developers of an opportunity to present properties that are more relevant to certain file types, but not present those same properties in connection with other file types. Further, there is no grouping as well as no headings that are provided in connection with the views that have been traditionally provided. - Returning to
FIG. 2 , and view 239B, email files 248 include a set of properties that are not even found in connection with the other representations of files. For example, asender 254 is shown as well as a subject 256. But senders and subjects do not make any sense when representing certain files of other types. That is, they are contextually either irrelevant or undesirable. An embodiment of the invention enables contextually relevant properties to be shown in connection with a single view that contains representations of files of disparate or different file types. We will now describe other aspects of presenting a view as that illustratively shown inFIG. 2 . - Turning now to
FIG. 4A , a block diagram of a simplified representation of a view is provided and referenced generally by the numeral 400.Representation 400 is illustrative in nature and not intended to be even a generic representation of a way to present all representations of all file types. For illustrative purposes, we describe elements that may make up a view and will describe progressively more complicated elements in connection withFIGS. 4B and 4C . As shown inFIG. 4A the overall view is referenced bynumeral 410. Within the overall view, a view header may be used to describe potential properties that might be associated with items inview 410. For example,header 412 may illustratively include things such as a name, a modification date, an indication of a file type, an indication of a file size, as well as an indication of any tags that might be associated with an item. In some embodiments, the view header takes the form of an area along a side, such as the top, of a window that enables users to sort or group items by properties. In other embodiments,header 412 provides a way to access contextual filtering. Users can change, resize, and reorder headings that are displayed. In some respects,header 412 may appear to delineate columns of a view, but the items themselves are not presented in a columnar format in some embodiments. Aview body 414 is the main area ofview 410 in some embodiments. This is where users may interact with a collection of items (one of which is shown and referenced by numeral 416) as contents of a folder, or of a search query for example. - We will variously refer to items such as
item 416 as a file representation. In some contexts it is easier to speak of items, but in other contexts it helps to clarify an item as a representation of a file; namely, a presentation of various properties associated with a file. In some embodiments,item 416 may include animage 418 as well as a set of property labels and/or values 420. As shown, asecond item 422 can be presented inbody 414 as well as a multitude of items, represented bydots 424, culminating in alast item 426. In some embodiments, aview footer 428 can be included to provide options to users to do certain things such as refine a query or present information associated with the different items inview 410. - Turning now to
FIG. 4B , a more expansive diagram of a view is provided and referenced generally by the numeral 450. This item to view 452 also includes aheader 454 as well as abody 456 as previously mentioned in the description ofFIG. 4A . But in this embodiment, items can be grouped into groups. Thus afirst group 458 is shown as having itsown header 460 and acorresponding group body 462, which is composed of a set ofitems item 464 includes a variety of properties which may include later data that describes the items such as its name, date modified, etc. Various factors are considered to determine what type of properties will be displayed for a given item. This is one of the novel aspects of the invention and will be described in still greater detail below. Certain properties are displayed in connection with certain file types while other properties are not displayed in connection with certain file types. Agroup footer 470 might trail the end of each group. Additional groups are also shown, such as asecond group 472 through alast group 474. As withview 410,view 452 may end with afooter 476. - Turning now to
FIG. 4C , a still more descriptive view of an embodiment of the invention is provided and referenced by the numeral 478.FIG. 4C again depicts an items view 480 that shows how a group may have subgroups. For example, a first group 482 includes agroup body 483 that includes afirst subgroup 484 as well as asecond subgroup 486 and ultimately alast subgroup 488. View 480 may also include anothergroup 490, which may have subgroups as previously described. - Turning now to
FIG. 5 , we will describe properties and layout patterns in greater detail.FIG. 5 depicts afile representation 510.File representation 510 includes by way of illustration a set of placeholders that are referenced by numeral 512 that can be populated withdata 514, which corresponds to a set ofproperties 516 of afile 518, whichrepresentation 510 represents. The collective arrangement of populated placeholders is referenced bynumeral 520.File representation 510 is of a certain dimensional size in some embodiments. That is, it has acertain length 522 andheight 524. - When we speak of placeholders, such as
placeholders 512, we do not mean to necessarily imply that there are objects (e.g., data 514) present in all file representations that are to be populated. In some embodiments, placeholders may not even be present; but rather serve as an indication of possible properties that can be presented in a view. Not allproperties 516 are necessarily used to populateplaceholders 512. An illustrative populated placeholder is shown bynumeral 546. Although we make a distinction betweenplaceholders 512 and the data (514, 516) that is used to populate those placeholders, we will also refer to a set of populated placeholders as a set of properties because what is ultimately presented in a view is a set of properties. Thus numeral 520 indicates a layout pattern that defines a layout of a set of properties. As will also be described in greater detail below, the size ofrepresentation 510 can vary with the size of a window that is presenting the set of representations. - In addition to the actual positioning of different placeholders, a layout pattern can define specific aspects about how properties to be filled into those placeholders will appear; including, for example, the text color, alignment (left, center, right), and whether or not labels are to be shown.
-
FIG. 5 is a reproduction of view 239B inFIG. 2 , but is shown here and referenced bynumeral 530 for ease of reference. An item 532 makes up part ofview 530 and is generally shown as having a format that may be a variation ofrepresentation 510. Not only may the arrangements of placeholders vary with the size ofview 530, but the data that is used to populate even the same placeholders may vary based on one or more of a size of the window in which view 530 is displayed and/or the type of file that file 518 is. As previously mentioned five illustrative groupings of files are shown in this view, being referenced here asview 530. Two of those groupings include a documents grouping 537 as well as a pictures grouping 534. Other groupings not numbered include a grouping of music files as well as email files and other files. Headers are shown that introduce groupings of files in this embodiment. For example, a “documents” heading 536 is shown as well as a “pictures” heading 538. - Consider for example that
layout pattern 520 is to be used in connection with displaying at least a set of files of a common file type but, as may be the case in some embodiments, files have different file types (which might also have their own layout patterns) for purposes of illustration. In some embodiments, patterns are selected based on inspecting one or more properties of the items. In other embodiments, patterns are selected based not only on the properties of the items, but also on the context around how the list of items to show was generated. For instance, we will have a different pattern for items resulting from a search (the user typed a search term or invoked a saved search of some sort) than for items received from a browsing type interaction (the user is just exploring the space by navigating from item to item—note that an item can be a container of other items). - Consider two illustrative items for example: a
text document 540 and amusic file 542. As can be seen,music file 542 includes the name of analbum 544 inplaceholder 546. Buttext document 540 includes an indication offile type 548 inplaceholder 566. This is an example of how different properties can be presented in the same placeholder based on the type offile 518 being represented byrepresentation 510. As mentioned, 17 file representations are shown. In one embodiment, each representation within a group has the same size. Thus in such an embodiment, allrepresentations 537 of documents have the same size. Similarly, all representations 534 of pictures are the same size. In still other embodiments all of the representations in a single view are the same size. Although the size of each representation may vary with the size of the window, in at least one embodiment, the size of all representations in a common view are the same. - Turning now to
FIG. 6A , an illustrative method for practicing an embodiment of the invention is provided and referenced generally by the numeral 600. This illustrative method will be described in connection withFIG. 5 and possibly other figures. In astep 610, a group of layout patterns are provided that can be used to present a set of file representations in a view. By way of example,FIG. 5 showed asingle layout pattern 520. We will later describe in connection withFIGS. 7A-10A that a variety of layout patterns may exist. - At a
step 610, which may be a preprocessing step, a group of layout patterns are provided that can accommodate various representations of files. To provide a group of layout patterns does not necessarily imply that the layout patterns need to actually exist. Rather, it is enough ifapplication 218 provides the ability to dynamically create layout patterns based on a set of criteria. This method that we are describing is one way of intelligently presenting a view of a set of file representations that corresponds to a set of files in which the set of files include different file types. Thus, in one embodiment, the invention may receive a request to present a representation of a set of files in a folder. - At a
step 612, a determination is made as to the respective file types of the set of files in, for example, the folder. Although we say this happens at astep 612, we do not mean to imply a necessary order of the steps of this method. Rather, we are illustrating what will ultimately be accomplished by, for example,application 218. One method of determining the respective file types of the set of files is to inspect the files themselves. Another way of determining the respective file types of the set of files is to examine a data store of data that describes the files. For example, and with reference toFIG. 2 , adata store 260, which could also reside onremote data store 214, may be a database of information that describes files 222. In this embodiment, data store 260 (which may take the form of a table or a folder, etc.) will be inspected to determine the respective file types of the set of files to be presented in a view. An illustrative set of such files could befiles 222 as shown inFIG. 2 . Another way of determining the respective file types of the set of files is to inspect the files themselves and by identifying the different extensions of each file, learning which types of files are to be presented in the view. - We contemplate distinguishing file types beyond extensions. For example, according to an embodiment of the invention, email received might be considered a different type than a email sent (i.e. received email vs. sent email). In this example, the sender property could be shown on received email versus the recipient property on sent emails. This example makes clear that we are able to determine the “type” using any properties of the files. By way of another illustrative example, the location of the file can be used to determine the type. A file on a network share might show different properties than the same file on the local machine (i.e. “network document” vs. “local document”).
- At a step or set of
recursive steps 614,application 218 determines a layout pattern based on a type of one of the files. If a determination has been made instep 612 as to the different file types, then a layout pattern for each file type can be determined. In an alternative embodiment, the layout pattern can be determined atstep 614 based on an inspection of a specific file. Several factors may be taken into consideration in determining a layout pattern. As illustrated inFIG. 6A , the type of file may dictate a pattern selected. The pattern may also be selected by a combination of factors. An illustrative combination of factors includes a file type as well as a size of a window in which to present the set of representations. - At a
step 616, each placeholder in the layout pattern selected instep 614 is populated with properties based on the type of file. This produces a set of populated layout patterns. Thus, instep 616, all of therelevant placeholders 512 are populated with theproperties 516 that are relevant to the type of respective file. If the file is a music file, then a certain set of placeholders will be populated with a certain set of data. If the file type is a picture, then a different set of placeholders may be populated with a different set of data. If the size of the window is very long, then a certain set of placeholders may be selected for a given file whereas if the size of the window were smaller, then a different set of placeholders would be selected for even the same file. And as previously mentioned, the placeholders may not yet exist. That is, in some embodiments the values are picked and placed in real time without reference to explicit placeholders that actually exist. By “placeholders” we mean to encompass the concept of potential placement of properties subject to a given layout pattern. - If there are more files for which layout patterns are to be selected, then that determination is made at a
step 618, and processing reverts to step 614 for that determination to be made if it is being made in real time, or referenced if it had been made in batch. Specific placeholders based at least on the type of file are then populated at astep 616 until there are no more files to have representations presented in the view requested. Without necessarily waiting for all of the above steps to be completed, at a step 620, the set of file representations are presented consistent with the populated layout patterns. In one embodiment, presenting the set of file representations includes arranging the data in a way that it can be outputted throughpresentation component 316. - In some
embodiments presentation component 316 may be a monitor or other display device such that the view is presented on a display device. In an embodiment of the invention the entire process of 600 can be dynamically instituted incident to a user interacting with the files. For example, a user may resize a window containing the representations. As the window is being resized, the arrangement of the layout patterns as well as the specific layout patterns themselves can be varied as the size of the window is varied. In some embodiments, presenting the set of file representations includes grouping those representations according to types of files. In this embodiment, like file types are grouped together. In some embodiments, the file representations are presented in a noncolumnar format. As previously mentioned, the file representations might be the same size when being presented in some embodiments. - As mentioned, our system allows for various variables to be set that affect how the placeholders are populated with properties, such as the text color to use, the alignment (left, center, right), and whether or not the property label should be shown or not.
- Turning now to
FIG. 6B , an illustrative method according to an embodiment of the invention for intelligently presenting a set of representations of files in a bounded screen area is provided wherein some of those files are of different file types than other files. At astep 630, a request is received to present a view that includes a set of representations of files that are of disparate file types. For example, a user may desire to inspect the contents of a folder that have been presented in a window. In one embodiment,application 218 will receive this request to present information about the files at astep 630. At astep 632, and for a given file, alayout pattern 520 will be determined based on a type of file that the file is. This will produce a set of layout patterns. - As previously mentioned, the different layout patterns differ with file types. In other embodiments, the types of file patterns may vary based on the type of action engaged in. For example, a browse request may implicate a different layout pattern than a search request even though the information about the same files will be presented. As we have also previously mentioned, other factors may also be included to determine a layout pattern. Illustrative other factors include a size of a window that will be used to present representations of the files or folders.
- Although we illustratively show a loop sort of processing, various steps of
FIG. 6B , as well as the other figures, may be performed in different orders, in tandem, or in batch. Thus, in one embodiment, layout patterns can be determined for each file atstep 632. In other embodiments, a layout pattern for a single file can be determined, with processing advancing to astep 634, wherein based on the type of file, a set of properties associated with the file (i.e., file 518) are retrieved from one ormore memory components 312. Thus, certain properties may be retrieved in connection with certain types of files, whereas other properties may be retrieved in the case of other types of files. Embodiments of the invention are flexible enough to accommodate selective retrieval of properties of files based on the types of files of which information is being sought. Again, in some embodiments the steps of 632 and 634 are more serial in nature, but in other embodiments a batch or even out-of-order processing scheme is employed. - At a
step 636, a determination is made as to whether there are additional files about which information is desired. If so, then processing reverts to step 632, but if not then processing advances to astep 638 where the set of representations is presented in a manner that is consistent with the layout patterns that were determined at astep 632. In this embodiment, each layout pattern respectively includes a presentation of the specific set of properties that are associated with each file representation to be presented. As previously mentioned, we do not mean to imply inFIG. 6B that step 638 does not begin untilstep 632 and/or 634 complete. That is, we do not mean to imply that no files are presented until information such as layout patterns or properties are determined for all files. To the contrary, embodiments of the invention contemplate scenarios wherein data will begin to be presented asynchronously. - That is, as layout patterns and types of files are chosen, corresponding representations of those files can be presented without waiting for such information to be determined for all files. Also as previously mentioned, the types of layout patterns can be modified on the fly, such as when a user resizes the window. If a user decides to resize a window, then the set of representations will possibly take on alternative layout patterns, which will be described in greater detail in connection with
FIGS. 7A-10A . - An illustrative example of a result of
FIG. 6B is shown inFIG. 5 , in which it can be seen that files of different file types have different layout patterns as well asproperties 516 populated inview 530. Whereas it may be the case that the size of the file representations (e.g.,length 522 and height 524) are common across all file representations inview 530, in other embodiments the file representations may take on different sizes with respect to either file types, or even property values. Thus, it may be the case that documentfile representations 537 take on alayout pattern 520 of a first size, whereas pictures representations 534 take on alayout pattern 520 of a different size. It may also be the case, that different properties or placeholders take on different sizes either with respect to each other or with respect to representations of different file types. Briefly referring toFIG. 12A by way of example, it can be seen that the picture images are represented by thumbnails, namely larger thumbnails than the thumbnail representations of the documents or emails. We will discussFIG. 12A in greater detail below. - Turning now to
FIG. 6C , another method for more intelligently presenting representations of files is provided. At astep 650, a set of files is determined for which information about the files is to be rendered in a window of a graphical user interface in which not all of the text files are the same. With reference toFIG. 2 ,computer 212 possesses the ability to render a graphical user interface, which can include a window to present information about a set of files of interest to a user or other. In some embodiments, a user may request that the contents of a folder be presented. In other embodiments, a user may request that a search be performed across the various storage components accessible bycomputer 212. - At a
step 652,application 218 in one embodiment conditions a format of eachfile representation 510 based on the type of thecorresponding file 518, thereby providing a set of representation formats that each define a layout for presentingproperties 516 of the file. We have previously described various ways of conditioning a format offile representation 510. In one way, the format may include afirst layout pattern 520. Alternatively, the format may include a different layout pattern, such as the multitude of layout patterns that we are about to discuss in connection withFIGS. 7A through 10A . In other embodiments, instead of or in addition to changing a layout pattern, a format ofrepresentation 510 may include a first set ofproperties 516. In another format,different properties 516 may be included. In this embodiment, the format offile representation 510 is conditioned based on the type of file that file 518 is. Different file types may lead to different formats offile representation 510, which is an illustrative generic representation of any of the different file representations shown onFIG. 5 . - At a
step 654, a set of file properties is selected to be presented for each representation based on the type of file that file 518 is. This provides a set of selected file properties for each file. Again, this need not happen in a serial fashion. Different properties can be selected based on file type. With knowledge of a format and a set of properties,application 218 can present throughvideo presentation component 316 the set of representations in a noncolumnar format that is consistent with the representation formats and that respectively includes the selected file properties fromstep 654. Thus, an output such as view 239B fromFIG. 2 may be provided by way ofstep 656. The set of representations (242, 244, etc.) are presented in a noncolumnar format. Moreover, the representations are consistent with the formats and include various properties based on the types of each file that each representation corresponds to. - Turning now to
FIG. 7A , an illustrative layout pattern, as well as many variations thereof, is provided and referenced generally by the numeral 700. To make reference easier, we will refer to this layout pattern asalpha pattern 700.Alpha pattern 700 is shown to illustratively include five layout patterns, which are respectively referred to bynumerals respective rows row 720,layout pattern 710 is shown to include two properties: athumbnail 732 and anotherproperty 730 represented by a string of As. As indicated in 734,item layout pattern 710 is a pattern that would be applicable to a window that includes zero to 250 relative pixels (RP) and is an item layout pattern that includes two rows. - With reference to
column 722, it can be seen thatitem layout pattern 712 shows threeproperties 736 as well as athumbnail 738. Attributes of each of the properties are referenced bynumeral 740. With reference toattributes 740, it can be seen that thefirst property 736A can have a variable width and left alignment. Further, attributes 740 indicate that asecond property 736B is to consume not more than 50% of the width oflayout pattern 712 and be right aligned. Thethird property 736C is to be left aligned as further shown bylegend 740.Cell 742 indicates thatitem layout pattern 712 is applicable to having 250-350 relative pixels available, and when two rows are desired. - Turning to row 724, which is applicable to 351 or more relative pixels and by way of further illustration two rows, is shown to be able to accommodate nine different properties, which are referenced by a set of letters ranging from As to Js. Selectively choosing some of the properties for illustrative purposes, the
third property 744 is defined byline 746 to be applicable more than 50 relative pixels are available and to be left aligned. By way of further illustration,fourth property 748 is to not consume more than 33% of the width ofitem layout pattern 714 and is to be right aligned as is shown byrow 750. These illustrations help to explain the vast ranges of options, which are almost infinite, that can be employed to present data in a way not allowed by the prior art. If a developer determines that only a single row is to be used, then the developer can provide an item layout pattern as is shown inrow 726, which is applicable to up to 250 relative pixels, but only shows one row of data. A final illustrative example is shown by way ofrow 728, which constrainsitem layout pattern 718 to a single row, that is applicable to situations where more than 251 relative pixels are available. - In some embodiments, this pattern,
alpha pattern 700 represents a single pattern layout that can take on various forms based on the size of a window that is being used to present different file representations. Many hundreds of layout patterns can be defined, and various formats or subpatterns of those patterns can further be defined based on an amount of screened real estate available to present the file representations. By way of example, a developer may elect to applyalpha pattern 700 to music files. In such a situation, all music files will be subject toalpha pattern 700. That is, based on the screened real estate available, one of the options (710-718) will be selected for all music files. Similarly, a developer may associate only text files or some other files that meet certain criteria and are to be associated withalpha pattern 700. By way of example, representationFIG. 7B depicts an illustrative representation of files according toalpha pattern 700. But a developer may wish to utilize some different pattern, which has a different arrangement of placeholders. - Another illustrative layout pattern is shown in
FIG. 8A and is referenced bynumeral 800. For ease of reference, we will refer to this asbeta pattern 800.Beta pattern 800 is shown to illustratively include seven item layout patterns which are referenced bynumerals FIG. 8A is similar to that ofFIG. 7A ; thus, less detail will be provided so as to not be repetitive. By way of a few illustrations,row 826 shows thatitem layout pattern 816 can display four properties as well as a thumbnail.First property 828 was not to consume more than 33% ofitem layout pattern 816 and is to be right aligned as indicated byline 830 oflegend 832. The other property formats can be gleaned fromlegend 832.Cell 834 indicates thatlayout pattern 816 is desirable to be used when 351 to 450 relative pixels are available and two rows of data are desired to be shown. - An understanding of the seven illustrative item layout patterns that make up
beta pattern 800 can be understood by referencingFIG. 8A . As previously mentioned, a developer may desire to have certain types of files associated withbeta pattern 800 instead ofalpha pattern 700. In such a case, instead of items being laid out according toalpha pattern 700, the file representations of a view would be laid out according tobeta pattern 800. Illustrative layouts ofbeta pattern 800 can be seen inFIGS. 8C-8E . - For example,
FIG. 8C depicts a representation of a first variation ofbeta pattern layout 800. If the window size ofFIG. 8C is narrowed, then a window such as that ofFIG. 8E may occur. As can be seen fromFIG. 8E , intelligence has been provided according to the item layout patterns ofFIG. 8A . That is, more is happening than just reducing the maximum sizes of the property fields that were available inFIG. 8C . By way of illustration, the sender property 810, which used to appear in the first row, has been moved down tolocation 812 in the second row (as can be seen by referencingFIG. 8E ). Many different types of layouts or populations of placeholders can be used and conditioned upon file type and/or screened real estate. -
FIG. 9A depicts another illustrative layout pattern, which we will refer to asgamma pattern 900. If we were to continue to use the alphabet to list different illustrative patterns, we would run into the doubles and triples, quadruples, etc. sets of letters. What we show as a final illustration just is to drive home the point that many different layout patterns could be created to potentially be used to display file representations. -
Gamma pattern 900 illustratively shows six different item layout patterns as with the two previous examples ofFIGS. 7A and 8A . In the example ofgamma pattern 900, the specific properties are shown to be arranged differently in some instances than those corresponding item layout patterns of alpha or beta pattern. For example, considerrow 910, which describesitem layout pattern 912 withitem layout pattern 816 as described inrow 826 ofFIG. 8A . Initem layout pattern 816, four properties were shown. But ingamma pattern 900,item layout pattern 912 includes only the first three properties rather than attempting to show the fourth. That is,item layout pattern 912 shows three attributes, whereasitem layout pattern 816 shows four even though both are applicable to situations where 351 to 450 relative pixels are available.FIG. 9B depicts a representation of a set of file representations according togamma pattern 900. -
FIG. 10A was provided to show still more examples of how a content and arrangement of a layout pattern can be varied as the size of the different layout patterns themselves are varied.FIG. 11A shows still another illustrative example of a possible view rendered according to an embodiment of the invention. As can be seen, various thumbnail images or icons having various sizes can be shown. Moreover, files of different file types include different information even though, in this embodiment, each of the different file representations are of the same size. - Turning now to
FIG. 12A , it indicates a view that is the fruit of a search request. In this example, the phrase “lorem ipsum” is the subject of a query, wherein the various file representations shown inFIG. 12A are presented inwindow 1200. As was previously mentioned, it may be the case that the representations shown inscreen 1200 might be of a different arrangement or include different properties than the exact same files that would have been presented in a window had they not been the subject of a search. Thus, embodiments of the invention are flexible enough to accommodate presenting the exact same data in different ways if so desired. - In the example shown, some sort of
marker 1210 is provided that indicates the search term. In the illustrative example,marker 1210 takes the form of an outline around search terms, but can also take the form of bolding the search term, highlighting the search term, etc. As shown in this illustrative example, all of the fourdocuments 1212 are grouped separately from the set ofemails 1214, and stay separately from thepictures 1216. As can also be seen, the representations of the pictures are of a different size than the representations of the other files, illustrating an aforementioned aspect of an embodiment of the invention. - Different modes of displaying file representations can be presented according to embodiments of the invention. For example, a list mode could list a set of file representations in one long list. In another embodiment, a tiles mode could tile representations in a grid-like fashion. Embodiments of the invention are also not limited to a pure two dimensional scheme.
- Many different arrangements of the various components depicted, as well as components not shown, are possible without departing from the spirit and scope of the invention. Embodiments of the invention have been described with the intent to be illustrative rather than restrictive. Alternative embodiments will become apparent to those skilled in the art that do not depart from its scope. A skilled artisan may develop alternative means of implementing the aforementioned improvements without departing from the scope of the invention.
- It will be understood that certain features and subcombinations are of utility and may be employed without reference to other features and subcombinations and are contemplated within the scope of the claims. Not all steps listed in the various figures need be carried out in the specific order described.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/969,654 US8010886B2 (en) | 2008-01-04 | 2008-01-04 | Intelligently representing files in a view |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/969,654 US8010886B2 (en) | 2008-01-04 | 2008-01-04 | Intelligently representing files in a view |
Publications (2)
Publication Number | Publication Date |
---|---|
US20090177962A1 true US20090177962A1 (en) | 2009-07-09 |
US8010886B2 US8010886B2 (en) | 2011-08-30 |
Family
ID=40845563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/969,654 Active 2030-04-11 US8010886B2 (en) | 2008-01-04 | 2008-01-04 | Intelligently representing files in a view |
Country Status (1)
Country | Link |
---|---|
US (1) | US8010886B2 (en) |
Cited By (155)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090217204A1 (en) * | 2008-02-27 | 2009-08-27 | Canon Kabushiki Kaisha | Display control apparatus, display control method and program |
US20100257446A1 (en) * | 2009-04-06 | 2010-10-07 | Xerox Corporation | Variable imaging asset upload and verification |
US20110264685A1 (en) * | 2010-04-23 | 2011-10-27 | Microsoft Corporation | Email views |
US20120060155A1 (en) * | 2010-09-02 | 2012-03-08 | Keys Gregory C | Method, system, and computer readable medium for workflow communication wherein instructions to a workflow application are written by the workflow application |
US20130166538A1 (en) * | 2011-12-21 | 2013-06-27 | The Boeing Company | Panoptic Visualization Document Database Management |
US20150046791A1 (en) * | 2013-08-08 | 2015-02-12 | Palantir Technologies, Inc. | Template system for custom document generation |
US9009171B1 (en) | 2014-05-02 | 2015-04-14 | Palantir Technologies Inc. | Systems and methods for active column filtering |
US9021260B1 (en) | 2014-07-03 | 2015-04-28 | Palantir Technologies Inc. | Malware data item analysis |
US9043696B1 (en) | 2014-01-03 | 2015-05-26 | Palantir Technologies Inc. | Systems and methods for visual definition of data associations |
US9081975B2 (en) | 2012-10-22 | 2015-07-14 | Palantir Technologies, Inc. | Sharing information between nexuses that use different classification schemes for information access control |
US9116975B2 (en) | 2013-10-18 | 2015-08-25 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores |
US9123086B1 (en) | 2013-01-31 | 2015-09-01 | Palantir Technologies, Inc. | Automatically generating event objects from images |
US9201920B2 (en) | 2006-11-20 | 2015-12-01 | Palantir Technologies, Inc. | Creating data in a data store using a dynamic ontology |
US9229952B1 (en) | 2014-11-05 | 2016-01-05 | Palantir Technologies, Inc. | History preserving data pipeline system and method |
US9256664B2 (en) | 2014-07-03 | 2016-02-09 | Palantir Technologies Inc. | System and method for news events detection and visualization |
US9335911B1 (en) | 2014-12-29 | 2016-05-10 | Palantir Technologies Inc. | Interactive user interface for dynamic data analysis exploration and query processing |
US9367872B1 (en) | 2014-12-22 | 2016-06-14 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures |
US9383911B2 (en) | 2008-09-15 | 2016-07-05 | Palantir Technologies, Inc. | Modal-less interface enhancements |
US9454564B1 (en) | 2015-09-09 | 2016-09-27 | Palantir Technologies Inc. | Data integrity checks |
US9454785B1 (en) | 2015-07-30 | 2016-09-27 | Palantir Technologies Inc. | Systems and user interfaces for holistic, data-driven investigation of bad actor behavior based on clustering and scoring of related data |
US9454281B2 (en) * | 2014-09-03 | 2016-09-27 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US9483162B2 (en) | 2014-02-20 | 2016-11-01 | Palantir Technologies Inc. | Relationship visualizations |
US9495353B2 (en) | 2013-03-15 | 2016-11-15 | Palantir Technologies Inc. | Method and system for generating a parser and parsing complex data |
US9501851B2 (en) | 2014-10-03 | 2016-11-22 | Palantir Technologies Inc. | Time-series analysis system |
US9514414B1 (en) | 2015-12-11 | 2016-12-06 | Palantir Technologies Inc. | Systems and methods for identifying and categorizing electronic documents through machine learning |
US9542446B1 (en) | 2015-12-17 | 2017-01-10 | Palantir Technologies, Inc. | Automatic generation of composite datasets based on hierarchical fields |
US9552615B2 (en) | 2013-12-20 | 2017-01-24 | Palantir Technologies Inc. | Automated database analysis to detect malfeasance |
US9557882B2 (en) | 2013-08-09 | 2017-01-31 | Palantir Technologies Inc. | Context-sensitive views |
US9558352B1 (en) | 2014-11-06 | 2017-01-31 | Palantir Technologies Inc. | Malicious software detection in a computing system |
US9576015B1 (en) | 2015-09-09 | 2017-02-21 | Palantir Technologies, Inc. | Domain-specific language for dataset transformations |
US9576003B2 (en) | 2007-02-21 | 2017-02-21 | Palantir Technologies, Inc. | Providing unique views of data based on changes or rules |
US9619557B2 (en) | 2014-06-30 | 2017-04-11 | Palantir Technologies, Inc. | Systems and methods for key phrase characterization of documents |
US9646396B2 (en) | 2013-03-15 | 2017-05-09 | Palantir Technologies Inc. | Generating object time series and data objects |
US9672257B2 (en) | 2015-06-05 | 2017-06-06 | Palantir Technologies Inc. | Time-series data storage and processing database system |
US9715526B2 (en) | 2013-03-14 | 2017-07-25 | Palantir Technologies, Inc. | Fair scheduling for mixed-query loads |
US9727560B2 (en) | 2015-02-25 | 2017-08-08 | Palantir Technologies Inc. | Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags |
US9727622B2 (en) | 2013-12-16 | 2017-08-08 | Palantir Technologies, Inc. | Methods and systems for analyzing entity performance |
US9740369B2 (en) | 2013-03-15 | 2017-08-22 | Palantir Technologies Inc. | Systems and methods for providing a tagging interface for external content |
US9753935B1 (en) | 2016-08-02 | 2017-09-05 | Palantir Technologies Inc. | Time-series data storage and processing database system |
US9760556B1 (en) | 2015-12-11 | 2017-09-12 | Palantir Technologies Inc. | Systems and methods for annotating and linking electronic documents |
US9767172B2 (en) | 2014-10-03 | 2017-09-19 | Palantir Technologies Inc. | Data aggregation and analysis system |
US9785773B2 (en) | 2014-07-03 | 2017-10-10 | Palantir Technologies Inc. | Malware data item analysis |
US9785317B2 (en) | 2013-09-24 | 2017-10-10 | Palantir Technologies Inc. | Presentation and analysis of user interaction data |
US9785328B2 (en) | 2014-10-06 | 2017-10-10 | Palantir Technologies Inc. | Presentation of multivariate data on a graphical user interface of a computing system |
US9817563B1 (en) | 2014-12-29 | 2017-11-14 | Palantir Technologies Inc. | System and method of generating data points from one or more data stores of data items for chart creation and manipulation |
US9823818B1 (en) | 2015-12-29 | 2017-11-21 | Palantir Technologies Inc. | Systems and interactive user interfaces for automatic generation of temporal representation of data objects |
US9852205B2 (en) | 2013-03-15 | 2017-12-26 | Palantir Technologies Inc. | Time-sensitive cube |
US9852195B2 (en) | 2013-03-15 | 2017-12-26 | Palantir Technologies Inc. | System and method for generating event visualizations |
US9857958B2 (en) | 2014-04-28 | 2018-01-02 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive access of, investigation of, and analysis of data objects stored in one or more databases |
US9864493B2 (en) | 2013-10-07 | 2018-01-09 | Palantir Technologies Inc. | Cohort-based presentation of user interaction data |
US9870205B1 (en) | 2014-12-29 | 2018-01-16 | Palantir Technologies Inc. | Storing logical units of program code generated using a dynamic programming notebook user interface |
US9880993B2 (en) | 2011-08-02 | 2018-01-30 | Palantir Technologies, Inc. | System and method for accessing rich objects via spreadsheets |
US9880987B2 (en) | 2011-08-25 | 2018-01-30 | Palantir Technologies, Inc. | System and method for parameterizing documents for automatic workflow generation |
US9886467B2 (en) | 2015-03-19 | 2018-02-06 | Plantir Technologies Inc. | System and method for comparing and visualizing data entities and data entity series |
US9891808B2 (en) | 2015-03-16 | 2018-02-13 | Palantir Technologies Inc. | Interactive user interfaces for location-based data analysis |
US9898509B2 (en) | 2015-08-28 | 2018-02-20 | Palantir Technologies Inc. | Malicious activity detection system capable of efficiently processing data accessed from databases and generating alerts for display in interactive user interfaces |
US9898335B1 (en) | 2012-10-22 | 2018-02-20 | Palantir Technologies Inc. | System and method for batch evaluation programs |
US9898528B2 (en) | 2014-12-22 | 2018-02-20 | Palantir Technologies Inc. | Concept indexing among database of documents using machine learning techniques |
US9898167B2 (en) | 2013-03-15 | 2018-02-20 | Palantir Technologies Inc. | Systems and methods for providing a tagging interface for external content |
US9922108B1 (en) | 2017-01-05 | 2018-03-20 | Palantir Technologies Inc. | Systems and methods for facilitating data transformation |
US9946777B1 (en) | 2016-12-19 | 2018-04-17 | Palantir Technologies Inc. | Systems and methods for facilitating data transformation |
US9953445B2 (en) | 2013-05-07 | 2018-04-24 | Palantir Technologies Inc. | Interactive data object map |
US9965937B2 (en) | 2013-03-15 | 2018-05-08 | Palantir Technologies Inc. | External malware data item clustering and analysis |
US9984133B2 (en) | 2014-10-16 | 2018-05-29 | Palantir Technologies Inc. | Schematic and database linking system |
US9984428B2 (en) | 2015-09-04 | 2018-05-29 | Palantir Technologies Inc. | Systems and methods for structuring data from unstructured electronic data files |
US9984152B2 (en) | 2013-03-15 | 2018-05-29 | Palantir Technologies Inc. | Data integration tool |
US9996595B2 (en) | 2015-08-03 | 2018-06-12 | Palantir Technologies, Inc. | Providing full data provenance visualization for versioned datasets |
US9996236B1 (en) | 2015-12-29 | 2018-06-12 | Palantir Technologies Inc. | Simplified frontend processing and visualization of large datasets |
US9996229B2 (en) | 2013-10-03 | 2018-06-12 | Palantir Technologies Inc. | Systems and methods for analyzing performance of an entity |
US9998485B2 (en) | 2014-07-03 | 2018-06-12 | Palantir Technologies, Inc. | Network intrusion data item clustering and analysis |
US10007674B2 (en) | 2016-06-13 | 2018-06-26 | Palantir Technologies Inc. | Data revision control in large-scale data analytic systems |
US10037314B2 (en) | 2013-03-14 | 2018-07-31 | Palantir Technologies, Inc. | Mobile reports |
US10037383B2 (en) | 2013-11-11 | 2018-07-31 | Palantir Technologies, Inc. | Simple web search |
US10042524B2 (en) | 2013-10-18 | 2018-08-07 | Palantir Technologies Inc. | Overview user interface of emergency call data of a law enforcement agency |
US10044836B2 (en) | 2016-12-19 | 2018-08-07 | Palantir Technologies Inc. | Conducting investigations under limited connectivity |
US10103953B1 (en) | 2015-05-12 | 2018-10-16 | Palantir Technologies Inc. | Methods and systems for analyzing entity performance |
US10102369B2 (en) | 2015-08-19 | 2018-10-16 | Palantir Technologies Inc. | Checkout system executable code monitoring, and user account compromise determination system |
US10102229B2 (en) | 2016-11-09 | 2018-10-16 | Palantir Technologies Inc. | Validating data integrations using a secondary data store |
US10133588B1 (en) | 2016-10-20 | 2018-11-20 | Palantir Technologies Inc. | Transforming instructions for collaborative updates |
US10152531B2 (en) | 2013-03-15 | 2018-12-11 | Palantir Technologies Inc. | Computer-implemented systems and methods for comparing and associating objects |
US10180977B2 (en) | 2014-03-18 | 2019-01-15 | Palantir Technologies Inc. | Determining and extracting changed data from a data source |
US10180929B1 (en) | 2014-06-30 | 2019-01-15 | Palantir Technologies, Inc. | Systems and methods for identifying key phrase clusters within documents |
US10198515B1 (en) | 2013-12-10 | 2019-02-05 | Palantir Technologies Inc. | System and method for aggregating data from a plurality of data sources |
US10216811B1 (en) | 2017-01-05 | 2019-02-26 | Palantir Technologies Inc. | Collaborating using different object models |
US10216695B1 (en) | 2017-09-21 | 2019-02-26 | Palantir Technologies Inc. | Database system for time series data storage, processing, and analysis |
US10216801B2 (en) | 2013-03-15 | 2019-02-26 | Palantir Technologies Inc. | Generating data clusters |
US10223099B2 (en) | 2016-12-21 | 2019-03-05 | Palantir Technologies Inc. | Systems and methods for peer-to-peer build sharing |
US10230746B2 (en) | 2014-01-03 | 2019-03-12 | Palantir Technologies Inc. | System and method for evaluating network threats and usage |
US10248722B2 (en) | 2016-02-22 | 2019-04-02 | Palantir Technologies Inc. | Multi-language support for dynamic ontology |
US10262047B1 (en) | 2013-11-04 | 2019-04-16 | Palantir Technologies Inc. | Interactive vehicle information map |
US10275778B1 (en) | 2013-03-15 | 2019-04-30 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation based on automatic malfeasance clustering of related data in various data structures |
US10296617B1 (en) | 2015-10-05 | 2019-05-21 | Palantir Technologies Inc. | Searches of highly structured data |
US10311081B2 (en) | 2012-11-05 | 2019-06-04 | Palantir Technologies Inc. | System and method for sharing investigation results |
US10318630B1 (en) | 2016-11-21 | 2019-06-11 | Palantir Technologies Inc. | Analysis of large bodies of textual data |
US10324609B2 (en) | 2016-07-21 | 2019-06-18 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US10331797B2 (en) | 2011-09-02 | 2019-06-25 | Palantir Technologies Inc. | Transaction protocol for reading database values |
US10356032B2 (en) | 2013-12-26 | 2019-07-16 | Palantir Technologies Inc. | System and method for detecting confidential information emails |
US10362133B1 (en) | 2014-12-22 | 2019-07-23 | Palantir Technologies Inc. | Communication data processing architecture |
US10372879B2 (en) | 2014-12-31 | 2019-08-06 | Palantir Technologies Inc. | Medical claims lead summary report generation |
US10387834B2 (en) | 2015-01-21 | 2019-08-20 | Palantir Technologies Inc. | Systems and methods for accessing and storing snapshots of a remote application in a document |
US10403011B1 (en) | 2017-07-18 | 2019-09-03 | Palantir Technologies Inc. | Passing system with an interactive user interface |
US10417224B2 (en) | 2017-08-14 | 2019-09-17 | Palantir Technologies Inc. | Time series database processing system |
US10423582B2 (en) | 2011-06-23 | 2019-09-24 | Palantir Technologies, Inc. | System and method for investigating large amounts of data |
US10437612B1 (en) * | 2015-12-30 | 2019-10-08 | Palantir Technologies Inc. | Composite graphical interface with shareable data-objects |
US10437840B1 (en) | 2016-08-19 | 2019-10-08 | Palantir Technologies Inc. | Focused probabilistic entity resolution from multiple data sources |
US10437568B1 (en) | 2017-05-18 | 2019-10-08 | Palantir Technologies Inc. | Real-time rendering based on efficient device and server processing of content updates |
US10444940B2 (en) | 2015-08-17 | 2019-10-15 | Palantir Technologies Inc. | Interactive geospatial map |
US10452678B2 (en) | 2013-03-15 | 2019-10-22 | Palantir Technologies Inc. | Filter chains for exploring large data sets |
US10460602B1 (en) | 2016-12-28 | 2019-10-29 | Palantir Technologies Inc. | Interactive vehicle information mapping system |
US10484407B2 (en) | 2015-08-06 | 2019-11-19 | Palantir Technologies Inc. | Systems, methods, user interfaces, and computer-readable media for investigating potential malicious communications |
US10489391B1 (en) | 2015-08-17 | 2019-11-26 | Palantir Technologies Inc. | Systems and methods for grouping and enriching data items accessed from one or more databases for presentation in a user interface |
US10504067B2 (en) | 2013-08-08 | 2019-12-10 | Palantir Technologies Inc. | Cable reader labeling |
US10552994B2 (en) | 2014-12-22 | 2020-02-04 | Palantir Technologies Inc. | Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items |
US10572487B1 (en) | 2015-10-30 | 2020-02-25 | Palantir Technologies Inc. | Periodic database search manager for multiple data sources |
US10579647B1 (en) | 2013-12-16 | 2020-03-03 | Palantir Technologies Inc. | Methods and systems for analyzing entity performance |
US10609046B2 (en) | 2014-08-13 | 2020-03-31 | Palantir Technologies Inc. | Unwanted tunneling alert system |
US10614069B2 (en) | 2017-12-01 | 2020-04-07 | Palantir Technologies Inc. | Workflow driven database partitioning |
US10691729B2 (en) | 2017-07-07 | 2020-06-23 | Palantir Technologies Inc. | Systems and methods for providing an object platform for a relational database |
US10698938B2 (en) | 2016-03-18 | 2020-06-30 | Palantir Technologies Inc. | Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags |
US10706434B1 (en) | 2015-09-01 | 2020-07-07 | Palantir Technologies Inc. | Methods and systems for determining location information |
US10706068B2 (en) | 2017-07-10 | 2020-07-07 | Palantir Technologies Inc. | Systems and methods for data analysis and visualization and managing data conflicts |
US10719188B2 (en) | 2016-07-21 | 2020-07-21 | Palantir Technologies Inc. | Cached database and synchronization system for providing dynamic linked panels in user interface |
US10735448B2 (en) | 2015-06-26 | 2020-08-04 | Palantir Technologies Inc. | Network anomaly detection |
US10754822B1 (en) | 2018-04-18 | 2020-08-25 | Palantir Technologies Inc. | Systems and methods for ontology migration |
US10795723B2 (en) | 2014-03-04 | 2020-10-06 | Palantir Technologies Inc. | Mobile tasks |
US10803106B1 (en) | 2015-02-24 | 2020-10-13 | Palantir Technologies Inc. | System with methodology for dynamic modular ontology |
US10839144B2 (en) | 2015-12-29 | 2020-11-17 | Palantir Technologies Inc. | Real-time document annotation |
US10853378B1 (en) | 2015-08-25 | 2020-12-01 | Palantir Technologies Inc. | Electronic note management via a connected entity graph |
US10853352B1 (en) | 2017-12-21 | 2020-12-01 | Palantir Technologies Inc. | Structured data collection, presentation, validation and workflow management |
US10885021B1 (en) | 2018-05-02 | 2021-01-05 | Palantir Technologies Inc. | Interactive interpreter and graphical user interface |
US10884875B2 (en) | 2016-12-15 | 2021-01-05 | Palantir Technologies Inc. | Incremental backup of computer data files |
US10896097B1 (en) | 2017-05-25 | 2021-01-19 | Palantir Technologies Inc. | Approaches for backup and restoration of integrated databases |
US10922336B2 (en) | 2015-06-09 | 2021-02-16 | Palantir Technologies Inc. | Systems and methods for indexing and aggregating data records |
US10924362B2 (en) | 2018-01-15 | 2021-02-16 | Palantir Technologies Inc. | Management of software bugs in a data processing system |
US10942947B2 (en) | 2017-07-17 | 2021-03-09 | Palantir Technologies Inc. | Systems and methods for determining relationships between datasets |
US10956508B2 (en) | 2017-11-10 | 2021-03-23 | Palantir Technologies Inc. | Systems and methods for creating and managing a data integration workspace containing automatically updated data models |
US10956406B2 (en) | 2017-06-12 | 2021-03-23 | Palantir Technologies Inc. | Propagated deletion of database records and derived data |
US11016986B2 (en) | 2017-12-04 | 2021-05-25 | Palantir Technologies Inc. | Query-based time-series data display and processing system |
USRE48589E1 (en) | 2010-07-15 | 2021-06-08 | Palantir Technologies Inc. | Sharing and deconflicting data changes in a multimaster database system |
US11061874B1 (en) | 2017-12-14 | 2021-07-13 | Palantir Technologies Inc. | Systems and methods for resolving entity data across various data structures |
US11061542B1 (en) | 2018-06-01 | 2021-07-13 | Palantir Technologies Inc. | Systems and methods for determining and displaying optimal associations of data items |
US11074277B1 (en) | 2017-05-01 | 2021-07-27 | Palantir Technologies Inc. | Secure resolution of canonical entities |
US11086640B2 (en) * | 2015-12-30 | 2021-08-10 | Palantir Technologies Inc. | Composite graphical interface with shareable data-objects |
US11089043B2 (en) | 2015-10-12 | 2021-08-10 | Palantir Technologies Inc. | Systems for computer network security risk assessment including user compromise analysis associated with a network of devices |
US11119630B1 (en) | 2018-06-19 | 2021-09-14 | Palantir Technologies Inc. | Artificial intelligence assisted evaluations and user interface for same |
US11150917B2 (en) | 2015-08-26 | 2021-10-19 | Palantir Technologies Inc. | System for data aggregation and analysis of data from a plurality of data sources |
US11176113B2 (en) | 2018-05-09 | 2021-11-16 | Palantir Technologies Inc. | Indexing and relaying data to hot storage |
US11281726B2 (en) | 2017-12-01 | 2022-03-22 | Palantir Technologies Inc. | System and methods for faster processor comparisons of visual graph features |
US11314738B2 (en) | 2014-12-23 | 2022-04-26 | Palantir Technologies Inc. | Searching charts |
US11334552B2 (en) | 2017-07-31 | 2022-05-17 | Palantir Technologies Inc. | Lightweight redundancy tool for performing transactions |
US11379453B2 (en) | 2017-06-02 | 2022-07-05 | Palantir Technologies Inc. | Systems and methods for retrieving and processing data |
US11461355B1 (en) | 2018-05-15 | 2022-10-04 | Palantir Technologies Inc. | Ontological mapping of data |
US11470102B2 (en) | 2015-08-19 | 2022-10-11 | Palantir Technologies Inc. | Anomalous network monitoring, user behavior detection and database system |
US11599369B1 (en) | 2018-03-08 | 2023-03-07 | Palantir Technologies Inc. | Graphical user interface configuration system |
US11956267B2 (en) | 2021-07-23 | 2024-04-09 | Palantir Technologies Inc. | Systems for computer network security risk assessment including user compromise analysis associated with a network of devices |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5419486B2 (en) * | 2009-02-10 | 2014-02-19 | キヤノン株式会社 | Data processing apparatus, data processing method, and program |
US20110131536A1 (en) * | 2009-12-02 | 2011-06-02 | Xerox Corporation | Generating and ranking information units including documents associated with document environments |
US20110138339A1 (en) * | 2009-12-09 | 2011-06-09 | Richard Webster | Smart tree navigation |
US9335897B2 (en) | 2013-08-08 | 2016-05-10 | Palantir Technologies Inc. | Long click display of a context menu |
US9009827B1 (en) | 2014-02-20 | 2015-04-14 | Palantir Technologies Inc. | Security sharing system |
US10572496B1 (en) | 2014-07-03 | 2020-02-25 | Palantir Technologies Inc. | Distributed workflow system and database with access controls for city resiliency |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5760770A (en) * | 1996-05-15 | 1998-06-02 | Microsoft Corporation | System and method for defining a view to display data |
US6043817A (en) * | 1995-06-30 | 2000-03-28 | Microsoft Corporation | Method and apparatus for arranging displayed graphical representations on a computer interface |
US20040133588A1 (en) * | 2002-12-19 | 2004-07-08 | Rick Kiessig | Graphical user interface for system and method for managing content |
US20040225960A1 (en) * | 2003-05-09 | 2004-11-11 | Microsoft Corporation | System for hosting graphical layout/presentation objects |
US6925598B2 (en) * | 2001-09-28 | 2005-08-02 | International Business Machines Corporation | Customization of object property layout for a user interface |
US20050246647A1 (en) * | 2004-04-30 | 2005-11-03 | Microsoft Corporation | System and method for selecting a view mode using a control including a graphical depiction of the view mode |
US20050251758A1 (en) * | 2004-04-26 | 2005-11-10 | Microsoft Corporation | Indicating file type on thumbnail preview icon |
US20060080269A1 (en) * | 2004-10-07 | 2006-04-13 | Microsoft Corporation | Automatic view selection |
US7075550B2 (en) * | 2001-11-27 | 2006-07-11 | Bonadio Allan R | Method and system for graphical file management |
US20060242585A1 (en) * | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Scenario specialization of file browser |
US7188319B2 (en) * | 2000-04-21 | 2007-03-06 | Microsoft Corporation | Displaying graphical information and user selected properties on a computer interface |
US7234114B2 (en) * | 2003-03-24 | 2007-06-19 | Microsoft Corporation | Extensible object previewer in a shell browser |
-
2008
- 2008-01-04 US US11/969,654 patent/US8010886B2/en active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6043817A (en) * | 1995-06-30 | 2000-03-28 | Microsoft Corporation | Method and apparatus for arranging displayed graphical representations on a computer interface |
US5760770A (en) * | 1996-05-15 | 1998-06-02 | Microsoft Corporation | System and method for defining a view to display data |
US7188319B2 (en) * | 2000-04-21 | 2007-03-06 | Microsoft Corporation | Displaying graphical information and user selected properties on a computer interface |
US6925598B2 (en) * | 2001-09-28 | 2005-08-02 | International Business Machines Corporation | Customization of object property layout for a user interface |
US7075550B2 (en) * | 2001-11-27 | 2006-07-11 | Bonadio Allan R | Method and system for graphical file management |
US20040133588A1 (en) * | 2002-12-19 | 2004-07-08 | Rick Kiessig | Graphical user interface for system and method for managing content |
US7234114B2 (en) * | 2003-03-24 | 2007-06-19 | Microsoft Corporation | Extensible object previewer in a shell browser |
US20040225960A1 (en) * | 2003-05-09 | 2004-11-11 | Microsoft Corporation | System for hosting graphical layout/presentation objects |
US20050251758A1 (en) * | 2004-04-26 | 2005-11-10 | Microsoft Corporation | Indicating file type on thumbnail preview icon |
US20050246647A1 (en) * | 2004-04-30 | 2005-11-03 | Microsoft Corporation | System and method for selecting a view mode using a control including a graphical depiction of the view mode |
US20060080269A1 (en) * | 2004-10-07 | 2006-04-13 | Microsoft Corporation | Automatic view selection |
US20060242585A1 (en) * | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Scenario specialization of file browser |
Cited By (272)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9589014B2 (en) | 2006-11-20 | 2017-03-07 | Palantir Technologies, Inc. | Creating data in a data store using a dynamic ontology |
US10872067B2 (en) | 2006-11-20 | 2020-12-22 | Palantir Technologies, Inc. | Creating data in a data store using a dynamic ontology |
US9201920B2 (en) | 2006-11-20 | 2015-12-01 | Palantir Technologies, Inc. | Creating data in a data store using a dynamic ontology |
US9576003B2 (en) | 2007-02-21 | 2017-02-21 | Palantir Technologies, Inc. | Providing unique views of data based on changes or rules |
US10719621B2 (en) | 2007-02-21 | 2020-07-21 | Palantir Technologies Inc. | Providing unique views of data based on changes or rules |
US10229284B2 (en) | 2007-02-21 | 2019-03-12 | Palantir Technologies Inc. | Providing unique views of data based on changes or rules |
US8468467B2 (en) * | 2008-02-27 | 2013-06-18 | Canon Kabushiki Kaisha | Display control apparatus, display control method and program for displaying images of a plurality of files |
US20090217204A1 (en) * | 2008-02-27 | 2009-08-27 | Canon Kabushiki Kaisha | Display control apparatus, display control method and program |
US10747952B2 (en) | 2008-09-15 | 2020-08-18 | Palantir Technologies, Inc. | Automatic creation and server push of multiple distinct drafts |
US9383911B2 (en) | 2008-09-15 | 2016-07-05 | Palantir Technologies, Inc. | Modal-less interface enhancements |
US10248294B2 (en) | 2008-09-15 | 2019-04-02 | Palantir Technologies, Inc. | Modal-less interface enhancements |
US20100257446A1 (en) * | 2009-04-06 | 2010-10-07 | Xerox Corporation | Variable imaging asset upload and verification |
US8296653B2 (en) * | 2009-04-06 | 2012-10-23 | Xerox Corporation | Variable imaging asset upload and verification |
US9836724B2 (en) * | 2010-04-23 | 2017-12-05 | Microsoft Technology Licensing, Llc | Email views |
US20110264685A1 (en) * | 2010-04-23 | 2011-10-27 | Microsoft Corporation | Email views |
USRE48589E1 (en) | 2010-07-15 | 2021-06-08 | Palantir Technologies Inc. | Sharing and deconflicting data changes in a multimaster database system |
US20120060155A1 (en) * | 2010-09-02 | 2012-03-08 | Keys Gregory C | Method, system, and computer readable medium for workflow communication wherein instructions to a workflow application are written by the workflow application |
US11392550B2 (en) | 2011-06-23 | 2022-07-19 | Palantir Technologies Inc. | System and method for investigating large amounts of data |
US10423582B2 (en) | 2011-06-23 | 2019-09-24 | Palantir Technologies, Inc. | System and method for investigating large amounts of data |
US9880993B2 (en) | 2011-08-02 | 2018-01-30 | Palantir Technologies, Inc. | System and method for accessing rich objects via spreadsheets |
US10706220B2 (en) | 2011-08-25 | 2020-07-07 | Palantir Technologies, Inc. | System and method for parameterizing documents for automatic workflow generation |
US9880987B2 (en) | 2011-08-25 | 2018-01-30 | Palantir Technologies, Inc. | System and method for parameterizing documents for automatic workflow generation |
US10331797B2 (en) | 2011-09-02 | 2019-06-25 | Palantir Technologies Inc. | Transaction protocol for reading database values |
US11138180B2 (en) | 2011-09-02 | 2021-10-05 | Palantir Technologies Inc. | Transaction protocol for reading database values |
US9104760B2 (en) * | 2011-12-21 | 2015-08-11 | The Boeing Company | Panoptic visualization document database management |
US20130166538A1 (en) * | 2011-12-21 | 2013-06-27 | The Boeing Company | Panoptic Visualization Document Database Management |
US11182204B2 (en) | 2012-10-22 | 2021-11-23 | Palantir Technologies Inc. | System and method for batch evaluation programs |
US9898335B1 (en) | 2012-10-22 | 2018-02-20 | Palantir Technologies Inc. | System and method for batch evaluation programs |
US9081975B2 (en) | 2012-10-22 | 2015-07-14 | Palantir Technologies, Inc. | Sharing information between nexuses that use different classification schemes for information access control |
US9836523B2 (en) | 2012-10-22 | 2017-12-05 | Palantir Technologies Inc. | Sharing information between nexuses that use different classification schemes for information access control |
US10891312B2 (en) | 2012-10-22 | 2021-01-12 | Palantir Technologies Inc. | Sharing information between nexuses that use different classification schemes for information access control |
US10311081B2 (en) | 2012-11-05 | 2019-06-04 | Palantir Technologies Inc. | System and method for sharing investigation results |
US10846300B2 (en) | 2012-11-05 | 2020-11-24 | Palantir Technologies Inc. | System and method for sharing investigation results |
US9123086B1 (en) | 2013-01-31 | 2015-09-01 | Palantir Technologies, Inc. | Automatically generating event objects from images |
US10743133B2 (en) | 2013-01-31 | 2020-08-11 | Palantir Technologies Inc. | Populating property values of event objects of an object-centric data model using image metadata |
US10313833B2 (en) | 2013-01-31 | 2019-06-04 | Palantir Technologies Inc. | Populating property values of event objects of an object-centric data model using image metadata |
US9380431B1 (en) | 2013-01-31 | 2016-06-28 | Palantir Technologies, Inc. | Use of teams in a mobile application |
US9715526B2 (en) | 2013-03-14 | 2017-07-25 | Palantir Technologies, Inc. | Fair scheduling for mixed-query loads |
US10817513B2 (en) | 2013-03-14 | 2020-10-27 | Palantir Technologies Inc. | Fair scheduling for mixed-query loads |
US10037314B2 (en) | 2013-03-14 | 2018-07-31 | Palantir Technologies, Inc. | Mobile reports |
US10997363B2 (en) | 2013-03-14 | 2021-05-04 | Palantir Technologies Inc. | Method of generating objects and links from mobile reports |
US10453229B2 (en) | 2013-03-15 | 2019-10-22 | Palantir Technologies Inc. | Generating object time series from data objects |
US10809888B2 (en) | 2013-03-15 | 2020-10-20 | Palantir Technologies, Inc. | Systems and methods for providing a tagging interface for external content |
US9646396B2 (en) | 2013-03-15 | 2017-05-09 | Palantir Technologies Inc. | Generating object time series and data objects |
US9495353B2 (en) | 2013-03-15 | 2016-11-15 | Palantir Technologies Inc. | Method and system for generating a parser and parsing complex data |
US10977279B2 (en) | 2013-03-15 | 2021-04-13 | Palantir Technologies Inc. | Time-sensitive cube |
US10452678B2 (en) | 2013-03-15 | 2019-10-22 | Palantir Technologies Inc. | Filter chains for exploring large data sets |
US10216801B2 (en) | 2013-03-15 | 2019-02-26 | Palantir Technologies Inc. | Generating data clusters |
US10264014B2 (en) | 2013-03-15 | 2019-04-16 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation based on automatic clustering of related data in various data structures |
US9740369B2 (en) | 2013-03-15 | 2017-08-22 | Palantir Technologies Inc. | Systems and methods for providing a tagging interface for external content |
US10120857B2 (en) | 2013-03-15 | 2018-11-06 | Palantir Technologies Inc. | Method and system for generating a parser and parsing complex data |
US9965937B2 (en) | 2013-03-15 | 2018-05-08 | Palantir Technologies Inc. | External malware data item clustering and analysis |
US10275778B1 (en) | 2013-03-15 | 2019-04-30 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation based on automatic malfeasance clustering of related data in various data structures |
US9779525B2 (en) | 2013-03-15 | 2017-10-03 | Palantir Technologies Inc. | Generating object time series from data objects |
US10482097B2 (en) | 2013-03-15 | 2019-11-19 | Palantir Technologies Inc. | System and method for generating event visualizations |
US9852205B2 (en) | 2013-03-15 | 2017-12-26 | Palantir Technologies Inc. | Time-sensitive cube |
US9984152B2 (en) | 2013-03-15 | 2018-05-29 | Palantir Technologies Inc. | Data integration tool |
US9898167B2 (en) | 2013-03-15 | 2018-02-20 | Palantir Technologies Inc. | Systems and methods for providing a tagging interface for external content |
US10152531B2 (en) | 2013-03-15 | 2018-12-11 | Palantir Technologies Inc. | Computer-implemented systems and methods for comparing and associating objects |
US9852195B2 (en) | 2013-03-15 | 2017-12-26 | Palantir Technologies Inc. | System and method for generating event visualizations |
US9953445B2 (en) | 2013-05-07 | 2018-04-24 | Palantir Technologies Inc. | Interactive data object map |
US10360705B2 (en) | 2013-05-07 | 2019-07-23 | Palantir Technologies Inc. | Interactive data object map |
US10504067B2 (en) | 2013-08-08 | 2019-12-10 | Palantir Technologies Inc. | Cable reader labeling |
US20150046791A1 (en) * | 2013-08-08 | 2015-02-12 | Palantir Technologies, Inc. | Template system for custom document generation |
US9223773B2 (en) * | 2013-08-08 | 2015-12-29 | Palatir Technologies Inc. | Template system for custom document generation |
US11004039B2 (en) | 2013-08-08 | 2021-05-11 | Palantir Technologies Inc. | Cable reader labeling |
US9557882B2 (en) | 2013-08-09 | 2017-01-31 | Palantir Technologies Inc. | Context-sensitive views |
US10545655B2 (en) | 2013-08-09 | 2020-01-28 | Palantir Technologies Inc. | Context-sensitive views |
US9921734B2 (en) | 2013-08-09 | 2018-03-20 | Palantir Technologies Inc. | Context-sensitive views |
US9785317B2 (en) | 2013-09-24 | 2017-10-10 | Palantir Technologies Inc. | Presentation and analysis of user interaction data |
US10732803B2 (en) | 2013-09-24 | 2020-08-04 | Palantir Technologies Inc. | Presentation and analysis of user interaction data |
US9996229B2 (en) | 2013-10-03 | 2018-06-12 | Palantir Technologies Inc. | Systems and methods for analyzing performance of an entity |
US10635276B2 (en) | 2013-10-07 | 2020-04-28 | Palantir Technologies Inc. | Cohort-based presentation of user interaction data |
US9864493B2 (en) | 2013-10-07 | 2018-01-09 | Palantir Technologies Inc. | Cohort-based presentation of user interaction data |
US10877638B2 (en) | 2013-10-18 | 2020-12-29 | Palantir Technologies Inc. | Overview user interface of emergency call data of a law enforcement agency |
US9116975B2 (en) | 2013-10-18 | 2015-08-25 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores |
US10042524B2 (en) | 2013-10-18 | 2018-08-07 | Palantir Technologies Inc. | Overview user interface of emergency call data of a law enforcement agency |
US9514200B2 (en) | 2013-10-18 | 2016-12-06 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores |
US10719527B2 (en) | 2013-10-18 | 2020-07-21 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive simultaneous querying of multiple data stores |
US10262047B1 (en) | 2013-11-04 | 2019-04-16 | Palantir Technologies Inc. | Interactive vehicle information map |
US10037383B2 (en) | 2013-11-11 | 2018-07-31 | Palantir Technologies, Inc. | Simple web search |
US11100174B2 (en) | 2013-11-11 | 2021-08-24 | Palantir Technologies Inc. | Simple web search |
US10198515B1 (en) | 2013-12-10 | 2019-02-05 | Palantir Technologies Inc. | System and method for aggregating data from a plurality of data sources |
US11138279B1 (en) | 2013-12-10 | 2021-10-05 | Palantir Technologies Inc. | System and method for aggregating data from a plurality of data sources |
US10025834B2 (en) | 2013-12-16 | 2018-07-17 | Palantir Technologies Inc. | Methods and systems for analyzing entity performance |
US10579647B1 (en) | 2013-12-16 | 2020-03-03 | Palantir Technologies Inc. | Methods and systems for analyzing entity performance |
US9727622B2 (en) | 2013-12-16 | 2017-08-08 | Palantir Technologies, Inc. | Methods and systems for analyzing entity performance |
US9734217B2 (en) | 2013-12-16 | 2017-08-15 | Palantir Technologies Inc. | Methods and systems for analyzing entity performance |
US9552615B2 (en) | 2013-12-20 | 2017-01-24 | Palantir Technologies Inc. | Automated database analysis to detect malfeasance |
US10356032B2 (en) | 2013-12-26 | 2019-07-16 | Palantir Technologies Inc. | System and method for detecting confidential information emails |
US9043696B1 (en) | 2014-01-03 | 2015-05-26 | Palantir Technologies Inc. | Systems and methods for visual definition of data associations |
US10805321B2 (en) | 2014-01-03 | 2020-10-13 | Palantir Technologies Inc. | System and method for evaluating network threats and usage |
US10901583B2 (en) | 2014-01-03 | 2021-01-26 | Palantir Technologies Inc. | Systems and methods for visual definition of data associations |
US10230746B2 (en) | 2014-01-03 | 2019-03-12 | Palantir Technologies Inc. | System and method for evaluating network threats and usage |
US10120545B2 (en) | 2014-01-03 | 2018-11-06 | Palantir Technologies Inc. | Systems and methods for visual definition of data associations |
US10402054B2 (en) | 2014-02-20 | 2019-09-03 | Palantir Technologies Inc. | Relationship visualizations |
US9483162B2 (en) | 2014-02-20 | 2016-11-01 | Palantir Technologies Inc. | Relationship visualizations |
US10795723B2 (en) | 2014-03-04 | 2020-10-06 | Palantir Technologies Inc. | Mobile tasks |
US10180977B2 (en) | 2014-03-18 | 2019-01-15 | Palantir Technologies Inc. | Determining and extracting changed data from a data source |
US9857958B2 (en) | 2014-04-28 | 2018-01-02 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive access of, investigation of, and analysis of data objects stored in one or more databases |
US10871887B2 (en) | 2014-04-28 | 2020-12-22 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive access of, investigation of, and analysis of data objects stored in one or more databases |
US9009171B1 (en) | 2014-05-02 | 2015-04-14 | Palantir Technologies Inc. | Systems and methods for active column filtering |
US9449035B2 (en) | 2014-05-02 | 2016-09-20 | Palantir Technologies Inc. | Systems and methods for active column filtering |
US10180929B1 (en) | 2014-06-30 | 2019-01-15 | Palantir Technologies, Inc. | Systems and methods for identifying key phrase clusters within documents |
US10162887B2 (en) | 2014-06-30 | 2018-12-25 | Palantir Technologies Inc. | Systems and methods for key phrase characterization of documents |
US11341178B2 (en) | 2014-06-30 | 2022-05-24 | Palantir Technologies Inc. | Systems and methods for key phrase characterization of documents |
US9619557B2 (en) | 2014-06-30 | 2017-04-11 | Palantir Technologies, Inc. | Systems and methods for key phrase characterization of documents |
US9256664B2 (en) | 2014-07-03 | 2016-02-09 | Palantir Technologies Inc. | System and method for news events detection and visualization |
US10798116B2 (en) | 2014-07-03 | 2020-10-06 | Palantir Technologies Inc. | External malware data item clustering and analysis |
US9298678B2 (en) | 2014-07-03 | 2016-03-29 | Palantir Technologies Inc. | System and method for news events detection and visualization |
US10929436B2 (en) | 2014-07-03 | 2021-02-23 | Palantir Technologies Inc. | System and method for news events detection and visualization |
US9021260B1 (en) | 2014-07-03 | 2015-04-28 | Palantir Technologies Inc. | Malware data item analysis |
US9785773B2 (en) | 2014-07-03 | 2017-10-10 | Palantir Technologies Inc. | Malware data item analysis |
US9998485B2 (en) | 2014-07-03 | 2018-06-12 | Palantir Technologies, Inc. | Network intrusion data item clustering and analysis |
US10609046B2 (en) | 2014-08-13 | 2020-03-31 | Palantir Technologies Inc. | Unwanted tunneling alert system |
US10866685B2 (en) | 2014-09-03 | 2020-12-15 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US9880696B2 (en) | 2014-09-03 | 2018-01-30 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US9454281B2 (en) * | 2014-09-03 | 2016-09-27 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US10360702B2 (en) | 2014-10-03 | 2019-07-23 | Palantir Technologies Inc. | Time-series analysis system |
US10664490B2 (en) | 2014-10-03 | 2020-05-26 | Palantir Technologies Inc. | Data aggregation and analysis system |
US9767172B2 (en) | 2014-10-03 | 2017-09-19 | Palantir Technologies Inc. | Data aggregation and analysis system |
US9501851B2 (en) | 2014-10-03 | 2016-11-22 | Palantir Technologies Inc. | Time-series analysis system |
US11004244B2 (en) | 2014-10-03 | 2021-05-11 | Palantir Technologies Inc. | Time-series analysis system |
US9785328B2 (en) | 2014-10-06 | 2017-10-10 | Palantir Technologies Inc. | Presentation of multivariate data on a graphical user interface of a computing system |
US10437450B2 (en) | 2014-10-06 | 2019-10-08 | Palantir Technologies Inc. | Presentation of multivariate data on a graphical user interface of a computing system |
US11275753B2 (en) | 2014-10-16 | 2022-03-15 | Palantir Technologies Inc. | Schematic and database linking system |
US9984133B2 (en) | 2014-10-16 | 2018-05-29 | Palantir Technologies Inc. | Schematic and database linking system |
US10853338B2 (en) | 2014-11-05 | 2020-12-01 | Palantir Technologies Inc. | Universal data pipeline |
US9946738B2 (en) | 2014-11-05 | 2018-04-17 | Palantir Technologies, Inc. | Universal data pipeline |
US10191926B2 (en) | 2014-11-05 | 2019-01-29 | Palantir Technologies, Inc. | Universal data pipeline |
US9483506B2 (en) | 2014-11-05 | 2016-11-01 | Palantir Technologies, Inc. | History preserving data pipeline |
US9229952B1 (en) | 2014-11-05 | 2016-01-05 | Palantir Technologies, Inc. | History preserving data pipeline system and method |
US10135863B2 (en) | 2014-11-06 | 2018-11-20 | Palantir Technologies Inc. | Malicious software detection in a computing system |
US10728277B2 (en) | 2014-11-06 | 2020-07-28 | Palantir Technologies Inc. | Malicious software detection in a computing system |
US9558352B1 (en) | 2014-11-06 | 2017-01-31 | Palantir Technologies Inc. | Malicious software detection in a computing system |
US10552994B2 (en) | 2014-12-22 | 2020-02-04 | Palantir Technologies Inc. | Systems and interactive user interfaces for dynamic retrieval, analysis, and triage of data items |
US10447712B2 (en) | 2014-12-22 | 2019-10-15 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures |
US9898528B2 (en) | 2014-12-22 | 2018-02-20 | Palantir Technologies Inc. | Concept indexing among database of documents using machine learning techniques |
US9589299B2 (en) | 2014-12-22 | 2017-03-07 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures |
US10362133B1 (en) | 2014-12-22 | 2019-07-23 | Palantir Technologies Inc. | Communication data processing architecture |
US11252248B2 (en) | 2014-12-22 | 2022-02-15 | Palantir Technologies Inc. | Communication data processing architecture |
US9367872B1 (en) | 2014-12-22 | 2016-06-14 | Palantir Technologies Inc. | Systems and user interfaces for dynamic and interactive investigation of bad actor behavior based on automatic clustering of related data in various data structures |
US11314738B2 (en) | 2014-12-23 | 2022-04-26 | Palantir Technologies Inc. | Searching charts |
US10127021B1 (en) | 2014-12-29 | 2018-11-13 | Palantir Technologies Inc. | Storing logical units of program code generated using a dynamic programming notebook user interface |
US9870205B1 (en) | 2014-12-29 | 2018-01-16 | Palantir Technologies Inc. | Storing logical units of program code generated using a dynamic programming notebook user interface |
US9870389B2 (en) | 2014-12-29 | 2018-01-16 | Palantir Technologies Inc. | Interactive user interface for dynamic data analysis exploration and query processing |
US9817563B1 (en) | 2014-12-29 | 2017-11-14 | Palantir Technologies Inc. | System and method of generating data points from one or more data stores of data items for chart creation and manipulation |
US10838697B2 (en) | 2014-12-29 | 2020-11-17 | Palantir Technologies Inc. | Storing logical units of program code generated using a dynamic programming notebook user interface |
US10157200B2 (en) | 2014-12-29 | 2018-12-18 | Palantir Technologies Inc. | Interactive user interface for dynamic data analysis exploration and query processing |
US9335911B1 (en) | 2014-12-29 | 2016-05-10 | Palantir Technologies Inc. | Interactive user interface for dynamic data analysis exploration and query processing |
US10552998B2 (en) | 2014-12-29 | 2020-02-04 | Palantir Technologies Inc. | System and method of generating data points from one or more data stores of data items for chart creation and manipulation |
US10372879B2 (en) | 2014-12-31 | 2019-08-06 | Palantir Technologies Inc. | Medical claims lead summary report generation |
US11030581B2 (en) | 2014-12-31 | 2021-06-08 | Palantir Technologies Inc. | Medical claims lead summary report generation |
US10387834B2 (en) | 2015-01-21 | 2019-08-20 | Palantir Technologies Inc. | Systems and methods for accessing and storing snapshots of a remote application in a document |
US10803106B1 (en) | 2015-02-24 | 2020-10-13 | Palantir Technologies Inc. | System with methodology for dynamic modular ontology |
US10474326B2 (en) | 2015-02-25 | 2019-11-12 | Palantir Technologies Inc. | Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags |
US9727560B2 (en) | 2015-02-25 | 2017-08-08 | Palantir Technologies Inc. | Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags |
US10459619B2 (en) | 2015-03-16 | 2019-10-29 | Palantir Technologies Inc. | Interactive user interfaces for location-based data analysis |
US9891808B2 (en) | 2015-03-16 | 2018-02-13 | Palantir Technologies Inc. | Interactive user interfaces for location-based data analysis |
US9886467B2 (en) | 2015-03-19 | 2018-02-06 | Plantir Technologies Inc. | System and method for comparing and visualizing data entities and data entity series |
US10103953B1 (en) | 2015-05-12 | 2018-10-16 | Palantir Technologies Inc. | Methods and systems for analyzing entity performance |
US10585907B2 (en) | 2015-06-05 | 2020-03-10 | Palantir Technologies Inc. | Time-series data storage and processing database system |
US9672257B2 (en) | 2015-06-05 | 2017-06-06 | Palantir Technologies Inc. | Time-series data storage and processing database system |
US10922336B2 (en) | 2015-06-09 | 2021-02-16 | Palantir Technologies Inc. | Systems and methods for indexing and aggregating data records |
US10735448B2 (en) | 2015-06-26 | 2020-08-04 | Palantir Technologies Inc. | Network anomaly detection |
US9454785B1 (en) | 2015-07-30 | 2016-09-27 | Palantir Technologies Inc. | Systems and user interfaces for holistic, data-driven investigation of bad actor behavior based on clustering and scoring of related data |
US10223748B2 (en) | 2015-07-30 | 2019-03-05 | Palantir Technologies Inc. | Systems and user interfaces for holistic, data-driven investigation of bad actor behavior based on clustering and scoring of related data |
US11501369B2 (en) | 2015-07-30 | 2022-11-15 | Palantir Technologies Inc. | Systems and user interfaces for holistic, data-driven investigation of bad actor behavior based on clustering and scoring of related data |
US9996595B2 (en) | 2015-08-03 | 2018-06-12 | Palantir Technologies, Inc. | Providing full data provenance visualization for versioned datasets |
US10484407B2 (en) | 2015-08-06 | 2019-11-19 | Palantir Technologies Inc. | Systems, methods, user interfaces, and computer-readable media for investigating potential malicious communications |
US10444941B2 (en) | 2015-08-17 | 2019-10-15 | Palantir Technologies Inc. | Interactive geospatial map |
US10444940B2 (en) | 2015-08-17 | 2019-10-15 | Palantir Technologies Inc. | Interactive geospatial map |
US10489391B1 (en) | 2015-08-17 | 2019-11-26 | Palantir Technologies Inc. | Systems and methods for grouping and enriching data items accessed from one or more databases for presentation in a user interface |
US10922404B2 (en) | 2015-08-19 | 2021-02-16 | Palantir Technologies Inc. | Checkout system executable code monitoring, and user account compromise determination system |
US11470102B2 (en) | 2015-08-19 | 2022-10-11 | Palantir Technologies Inc. | Anomalous network monitoring, user behavior detection and database system |
US10102369B2 (en) | 2015-08-19 | 2018-10-16 | Palantir Technologies Inc. | Checkout system executable code monitoring, and user account compromise determination system |
US10853378B1 (en) | 2015-08-25 | 2020-12-01 | Palantir Technologies Inc. | Electronic note management via a connected entity graph |
US11934847B2 (en) | 2015-08-26 | 2024-03-19 | Palantir Technologies Inc. | System for data aggregation and analysis of data from a plurality of data sources |
US11150917B2 (en) | 2015-08-26 | 2021-10-19 | Palantir Technologies Inc. | System for data aggregation and analysis of data from a plurality of data sources |
US10346410B2 (en) | 2015-08-28 | 2019-07-09 | Palantir Technologies Inc. | Malicious activity detection system capable of efficiently processing data accessed from databases and generating alerts for display in interactive user interfaces |
US11048706B2 (en) | 2015-08-28 | 2021-06-29 | Palantir Technologies Inc. | Malicious activity detection system capable of efficiently processing data accessed from databases and generating alerts for display in interactive user interfaces |
US9898509B2 (en) | 2015-08-28 | 2018-02-20 | Palantir Technologies Inc. | Malicious activity detection system capable of efficiently processing data accessed from databases and generating alerts for display in interactive user interfaces |
US10706434B1 (en) | 2015-09-01 | 2020-07-07 | Palantir Technologies Inc. | Methods and systems for determining location information |
US9984428B2 (en) | 2015-09-04 | 2018-05-29 | Palantir Technologies Inc. | Systems and methods for structuring data from unstructured electronic data files |
US9576015B1 (en) | 2015-09-09 | 2017-02-21 | Palantir Technologies, Inc. | Domain-specific language for dataset transformations |
US11940985B2 (en) | 2015-09-09 | 2024-03-26 | Palantir Technologies Inc. | Data integrity checks |
US9965534B2 (en) | 2015-09-09 | 2018-05-08 | Palantir Technologies, Inc. | Domain-specific language for dataset transformations |
US10229153B1 (en) | 2015-09-09 | 2019-03-12 | Palantir Technologies Inc. | Data integrity checks |
US11080296B2 (en) | 2015-09-09 | 2021-08-03 | Palantir Technologies Inc. | Domain-specific language for dataset transformations |
US9836499B1 (en) | 2015-09-09 | 2017-12-05 | Palantir Technologies Inc. | Data integrity checks |
US9454564B1 (en) | 2015-09-09 | 2016-09-27 | Palantir Technologies Inc. | Data integrity checks |
US10296617B1 (en) | 2015-10-05 | 2019-05-21 | Palantir Technologies Inc. | Searches of highly structured data |
US11089043B2 (en) | 2015-10-12 | 2021-08-10 | Palantir Technologies Inc. | Systems for computer network security risk assessment including user compromise analysis associated with a network of devices |
US10572487B1 (en) | 2015-10-30 | 2020-02-25 | Palantir Technologies Inc. | Periodic database search manager for multiple data sources |
US10817655B2 (en) | 2015-12-11 | 2020-10-27 | Palantir Technologies Inc. | Systems and methods for annotating and linking electronic documents |
US9760556B1 (en) | 2015-12-11 | 2017-09-12 | Palantir Technologies Inc. | Systems and methods for annotating and linking electronic documents |
US9514414B1 (en) | 2015-12-11 | 2016-12-06 | Palantir Technologies Inc. | Systems and methods for identifying and categorizing electronic documents through machine learning |
US9542446B1 (en) | 2015-12-17 | 2017-01-10 | Palantir Technologies, Inc. | Automatic generation of composite datasets based on hierarchical fields |
US10678860B1 (en) | 2015-12-17 | 2020-06-09 | Palantir Technologies, Inc. | Automatic generation of composite datasets based on hierarchical fields |
US10839144B2 (en) | 2015-12-29 | 2020-11-17 | Palantir Technologies Inc. | Real-time document annotation |
US10795918B2 (en) | 2015-12-29 | 2020-10-06 | Palantir Technologies Inc. | Simplified frontend processing and visualization of large datasets |
US9996236B1 (en) | 2015-12-29 | 2018-06-12 | Palantir Technologies Inc. | Simplified frontend processing and visualization of large datasets |
US11625529B2 (en) | 2015-12-29 | 2023-04-11 | Palantir Technologies Inc. | Real-time document annotation |
US10540061B2 (en) | 2015-12-29 | 2020-01-21 | Palantir Technologies Inc. | Systems and interactive user interfaces for automatic generation of temporal representation of data objects |
US9823818B1 (en) | 2015-12-29 | 2017-11-21 | Palantir Technologies Inc. | Systems and interactive user interfaces for automatic generation of temporal representation of data objects |
US10437612B1 (en) * | 2015-12-30 | 2019-10-08 | Palantir Technologies Inc. | Composite graphical interface with shareable data-objects |
US11086640B2 (en) * | 2015-12-30 | 2021-08-10 | Palantir Technologies Inc. | Composite graphical interface with shareable data-objects |
US10248722B2 (en) | 2016-02-22 | 2019-04-02 | Palantir Technologies Inc. | Multi-language support for dynamic ontology |
US10909159B2 (en) | 2016-02-22 | 2021-02-02 | Palantir Technologies Inc. | Multi-language support for dynamic ontology |
US10698938B2 (en) | 2016-03-18 | 2020-06-30 | Palantir Technologies Inc. | Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags |
US10007674B2 (en) | 2016-06-13 | 2018-06-26 | Palantir Technologies Inc. | Data revision control in large-scale data analytic systems |
US11106638B2 (en) | 2016-06-13 | 2021-08-31 | Palantir Technologies Inc. | Data revision control in large-scale data analytic systems |
US10324609B2 (en) | 2016-07-21 | 2019-06-18 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US10719188B2 (en) | 2016-07-21 | 2020-07-21 | Palantir Technologies Inc. | Cached database and synchronization system for providing dynamic linked panels in user interface |
US10698594B2 (en) | 2016-07-21 | 2020-06-30 | Palantir Technologies Inc. | System for providing dynamic linked panels in user interface |
US10664444B2 (en) | 2016-08-02 | 2020-05-26 | Palantir Technologies Inc. | Time-series data storage and processing database system |
US9753935B1 (en) | 2016-08-02 | 2017-09-05 | Palantir Technologies Inc. | Time-series data storage and processing database system |
US10437840B1 (en) | 2016-08-19 | 2019-10-08 | Palantir Technologies Inc. | Focused probabilistic entity resolution from multiple data sources |
US10133588B1 (en) | 2016-10-20 | 2018-11-20 | Palantir Technologies Inc. | Transforming instructions for collaborative updates |
US10102229B2 (en) | 2016-11-09 | 2018-10-16 | Palantir Technologies Inc. | Validating data integrations using a secondary data store |
US10318630B1 (en) | 2016-11-21 | 2019-06-11 | Palantir Technologies Inc. | Analysis of large bodies of textual data |
US10884875B2 (en) | 2016-12-15 | 2021-01-05 | Palantir Technologies Inc. | Incremental backup of computer data files |
US11620193B2 (en) | 2016-12-15 | 2023-04-04 | Palantir Technologies Inc. | Incremental backup of computer data files |
US11316956B2 (en) | 2016-12-19 | 2022-04-26 | Palantir Technologies Inc. | Conducting investigations under limited connectivity |
US10044836B2 (en) | 2016-12-19 | 2018-08-07 | Palantir Technologies Inc. | Conducting investigations under limited connectivity |
US11416512B2 (en) | 2016-12-19 | 2022-08-16 | Palantir Technologies Inc. | Systems and methods for facilitating data transformation |
US9946777B1 (en) | 2016-12-19 | 2018-04-17 | Palantir Technologies Inc. | Systems and methods for facilitating data transformation |
US10523787B2 (en) | 2016-12-19 | 2019-12-31 | Palantir Technologies Inc. | Conducting investigations under limited connectivity |
US11768851B2 (en) | 2016-12-19 | 2023-09-26 | Palantir Technologies Inc. | Systems and methods for facilitating data transformation |
US10482099B2 (en) | 2016-12-19 | 2019-11-19 | Palantir Technologies Inc. | Systems and methods for facilitating data transformation |
US10713035B2 (en) | 2016-12-21 | 2020-07-14 | Palantir Technologies Inc. | Systems and methods for peer-to-peer build sharing |
US10223099B2 (en) | 2016-12-21 | 2019-03-05 | Palantir Technologies Inc. | Systems and methods for peer-to-peer build sharing |
US10460602B1 (en) | 2016-12-28 | 2019-10-29 | Palantir Technologies Inc. | Interactive vehicle information mapping system |
US9922108B1 (en) | 2017-01-05 | 2018-03-20 | Palantir Technologies Inc. | Systems and methods for facilitating data transformation |
US10776382B2 (en) | 2017-01-05 | 2020-09-15 | Palantir Technologies Inc. | Systems and methods for facilitating data transformation |
US11113298B2 (en) | 2017-01-05 | 2021-09-07 | Palantir Technologies Inc. | Collaborating using different object models |
US10216811B1 (en) | 2017-01-05 | 2019-02-26 | Palantir Technologies Inc. | Collaborating using different object models |
US11074277B1 (en) | 2017-05-01 | 2021-07-27 | Palantir Technologies Inc. | Secure resolution of canonical entities |
US10437568B1 (en) | 2017-05-18 | 2019-10-08 | Palantir Technologies Inc. | Real-time rendering based on efficient device and server processing of content updates |
US10896097B1 (en) | 2017-05-25 | 2021-01-19 | Palantir Technologies Inc. | Approaches for backup and restoration of integrated databases |
US11379453B2 (en) | 2017-06-02 | 2022-07-05 | Palantir Technologies Inc. | Systems and methods for retrieving and processing data |
US10956406B2 (en) | 2017-06-12 | 2021-03-23 | Palantir Technologies Inc. | Propagated deletion of database records and derived data |
US10691729B2 (en) | 2017-07-07 | 2020-06-23 | Palantir Technologies Inc. | Systems and methods for providing an object platform for a relational database |
US11301499B2 (en) | 2017-07-07 | 2022-04-12 | Palantir Technologies Inc. | Systems and methods for providing an object platform for datasets |
US11269914B2 (en) | 2017-07-10 | 2022-03-08 | Palantir Technologies Inc. | Systems and methods for data analysis and visualization and managing data conflicts |
US10706068B2 (en) | 2017-07-10 | 2020-07-07 | Palantir Technologies Inc. | Systems and methods for data analysis and visualization and managing data conflicts |
US10942947B2 (en) | 2017-07-17 | 2021-03-09 | Palantir Technologies Inc. | Systems and methods for determining relationships between datasets |
US10403011B1 (en) | 2017-07-18 | 2019-09-03 | Palantir Technologies Inc. | Passing system with an interactive user interface |
US11914569B2 (en) | 2017-07-31 | 2024-02-27 | Palantir Technologies Inc. | Light weight redundancy tool for performing transactions |
US11334552B2 (en) | 2017-07-31 | 2022-05-17 | Palantir Technologies Inc. | Lightweight redundancy tool for performing transactions |
US10417224B2 (en) | 2017-08-14 | 2019-09-17 | Palantir Technologies Inc. | Time series database processing system |
US11397730B2 (en) | 2017-08-14 | 2022-07-26 | Palantir Technologies Inc. | Time series database processing system |
US11573970B2 (en) | 2017-09-21 | 2023-02-07 | Palantir Technologies Inc. | Database system for time series data storage, processing, and analysis |
US11914605B2 (en) | 2017-09-21 | 2024-02-27 | Palantir Technologies Inc. | Database system for time series data storage, processing, and analysis |
US10216695B1 (en) | 2017-09-21 | 2019-02-26 | Palantir Technologies Inc. | Database system for time series data storage, processing, and analysis |
US11741166B2 (en) | 2017-11-10 | 2023-08-29 | Palantir Technologies Inc. | Systems and methods for creating and managing a data integration workspace |
US10956508B2 (en) | 2017-11-10 | 2021-03-23 | Palantir Technologies Inc. | Systems and methods for creating and managing a data integration workspace containing automatically updated data models |
US10614069B2 (en) | 2017-12-01 | 2020-04-07 | Palantir Technologies Inc. | Workflow driven database partitioning |
US11281726B2 (en) | 2017-12-01 | 2022-03-22 | Palantir Technologies Inc. | System and methods for faster processor comparisons of visual graph features |
US11016986B2 (en) | 2017-12-04 | 2021-05-25 | Palantir Technologies Inc. | Query-based time-series data display and processing system |
US11061874B1 (en) | 2017-12-14 | 2021-07-13 | Palantir Technologies Inc. | Systems and methods for resolving entity data across various data structures |
US10853352B1 (en) | 2017-12-21 | 2020-12-01 | Palantir Technologies Inc. | Structured data collection, presentation, validation and workflow management |
US10924362B2 (en) | 2018-01-15 | 2021-02-16 | Palantir Technologies Inc. | Management of software bugs in a data processing system |
US11599369B1 (en) | 2018-03-08 | 2023-03-07 | Palantir Technologies Inc. | Graphical user interface configuration system |
US10754822B1 (en) | 2018-04-18 | 2020-08-25 | Palantir Technologies Inc. | Systems and methods for ontology migration |
US10885021B1 (en) | 2018-05-02 | 2021-01-05 | Palantir Technologies Inc. | Interactive interpreter and graphical user interface |
US11176113B2 (en) | 2018-05-09 | 2021-11-16 | Palantir Technologies Inc. | Indexing and relaying data to hot storage |
US11829380B2 (en) | 2018-05-15 | 2023-11-28 | Palantir Technologies Inc. | Ontological mapping of data |
US11461355B1 (en) | 2018-05-15 | 2022-10-04 | Palantir Technologies Inc. | Ontological mapping of data |
US11061542B1 (en) | 2018-06-01 | 2021-07-13 | Palantir Technologies Inc. | Systems and methods for determining and displaying optimal associations of data items |
US11119630B1 (en) | 2018-06-19 | 2021-09-14 | Palantir Technologies Inc. | Artificial intelligence assisted evaluations and user interface for same |
US11956267B2 (en) | 2021-07-23 | 2024-04-09 | Palantir Technologies Inc. | Systems for computer network security risk assessment including user compromise analysis associated with a network of devices |
Also Published As
Publication number | Publication date |
---|---|
US8010886B2 (en) | 2011-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8010886B2 (en) | Intelligently representing files in a view | |
US11023666B2 (en) | Narrative-based media organizing system for transforming and merging graphical representations of digital media within a work area | |
US9250767B2 (en) | Providing theme variations in a user interface | |
US7620633B1 (en) | Methods and apparatus for prioritizing and sorting metadata to be displayed | |
US7992103B2 (en) | Scaling icons for representing files | |
US7657846B2 (en) | System and method for displaying stack icons | |
US7694236B2 (en) | Stack icons representing multiple objects | |
US7213035B2 (en) | System and method for providing multiple renditions of document content | |
US7350142B2 (en) | Method and system for creating a table version of a document | |
US7853877B2 (en) | Gallery user interface controls | |
KR101122960B1 (en) | Rapid visual sorting of digital files and data | |
US9032327B2 (en) | Information-enhanced user interface presentation | |
US8966361B2 (en) | Providing summary view of documents | |
US20050251758A1 (en) | Indicating file type on thumbnail preview icon | |
RU2322687C2 (en) | System and method for providing multiple reproductions of content of documents | |
US20210304379A1 (en) | System and Methods for an Image Mosaic Representing a Group of Links | |
CN114341863A (en) | User-customized document automatic creation method, apparatus for the same, and server | |
US20090228826A1 (en) | Group filtering of items in a view | |
US7325197B1 (en) | Method and system for providing page control content | |
CA2472552C (en) | System and method for providing multiple renditions of document content | |
US10338780B2 (en) | System and method for graphical resources management and computer program product with application for graphical resources management | |
US20070055928A1 (en) | User workflow lists to organize multimedia files | |
CN103902178A (en) | Multi-media file processing method and device based on Android system | |
AU2016247171B2 (en) | System for and method of collaborative annotation of digital content | |
CN114254145A (en) | Method and apparatus for album management for external storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICROSOFT CORPORATION, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GUSMORINO, PAUL A.;DAWSON, DAVID;GILMORE, MICHAEL J.;AND OTHERS;REEL/FRAME:020320/0644;SIGNING DATES FROM 20071228 TO 20080104 Owner name: MICROSOFT CORPORATION, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GUSMORINO, PAUL A.;DAWSON, DAVID;GILMORE, MICHAEL J.;AND OTHERS;SIGNING DATES FROM 20071228 TO 20080104;REEL/FRAME:020320/0644 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: MICROSOFT TECHNOLOGY LICENSING, LLC, WASHINGTON Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROSOFT CORPORATION;REEL/FRAME:034542/0001 Effective date: 20141014 |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |