Patents Assigned to Workiva Inc.
  • Patent number: 10255263
    Abstract: In an embodiment, a data storage and retrieval system includes a computing device that configures the computer memory according to an RTree (a type of logic tree) representing a structure of a spreadsheet. The computer memory may be internal to or external to the computing device. In an embodiment, the RTree has a plurality of nodes, at least some of which contain one or more minimum bounding rectangles. Each minimum bounding rectangle (“MBR”) encompasses cells of the spreadsheet from a different one of a plurality of columns of the spreadsheet, but does not encompass cells of any of the other columns of the plurality of columns. A node of the RTree may hold multiple MBRs or a single MBR.
    Type: Grant
    Filed: March 15, 2018
    Date of Patent: April 9, 2019
    Assignee: Workiva Inc.
    Inventors: Dustin Lee Hiatt, Travis Lee Smith, John Pillar, Joshua Allen Beam
  • Patent number: 10216706
    Abstract: A method for facilitating the testing of a data sample involves a computing device carrying out the following actions: displaying a data sample on a user interface; receiving, via the user interface, a selection of a test to be performed on the data sample; receiving, via the user interface, an input of a result of the test; generating, in a graph database, a vertex representing a visual indicator corresponding to the input result; and creating, in the graph database, an association between the vertex representing the visual indicator and a vertex representing a file containing the displayed data sample.
    Type: Grant
    Filed: August 21, 2017
    Date of Patent: February 26, 2019
    Assignee: Workiva Inc.
    Inventors: John Bonk, Ryan Gilsdorf, James Michael Morse, Jason Aguilon, David Andrew Haila, Matthew Sanders, Patrick Corwin Kujawa, Robert Reed Becker, Sean Martin Kelly Burke, Stephen Bush
  • Patent number: 10180975
    Abstract: According to an implementation, a host computing device receives, from a first computing device, a data collection request of a first user. The data collection request indicates a data point (whose characteristics are defined in a mark-up language schema) that is to be the subject of the data collection and identifies a second user as provider of a value for the data point. The host computing device notifies the second user of the data collection request and receives, from a second computing device, a request of the second user for the data point to be assigned a plurality of categories. In response to the request of the second user, the host computing device extends the mark-up language schema to characterize the plurality of categories within the mark-up language schema.
    Type: Grant
    Filed: April 8, 2016
    Date of Patent: January 15, 2019
    Assignee: Workiva Inc.
    Inventors: Matthew James Heying, Matthew Keller, Dean Anthony Ritz, Christian Plazas, Jacob Joshua Caban-Tomski, Matthew Sanders
  • Patent number: 10127205
    Abstract: A computing device parses markup language of an instance document (e.g., an XBRL instance document) that contains a plurality of facts, in which each fact comprises a value that is tagged according to at least one concept of a plurality of concepts. A taxonomy document contains markup language that defines one or more relationships among the plurality of concepts. Based on the parsing of the markup language of the instance document, the computing device determines that at least two of the plurality of facts are in a calculation relationship with one another. The computing device then generates markup language representing the calculation relationships (e.g., XLink) and modifies the taxonomy document (e.g., modifies or extends a linkbase contained in the taxonomy document) with the generated markup language.
    Type: Grant
    Filed: May 24, 2017
    Date of Patent: November 13, 2018
    Assignee: Workiva Inc.
    Inventors: Andrew Perkins, Susan Yount, Herman Fischer, Dean Anthony Ritz
  • Patent number: 10114810
    Abstract: In various implementations, a first computing device (such as a cloud-based server) receives, from a second computing device (e.g., a notebook computer, tablet computer, or smartphone): (a) a graphical annotation for a document displayed on the second computing device, and (b) a comment for the graphical annotation. The first computing device stores the graphical annotation in a database in a graphical annotation data entity, stores the comment in the database in a comment data entity, and associates the graphical annotation data entity with the comment data entity within the database.
    Type: Grant
    Filed: October 5, 2017
    Date of Patent: October 30, 2018
    Assignee: Workiva Inc.
    Inventors: Nathan Raleigh, Todd Kaji, Brandon Carpenter, Shane Sawyer, Jason Moore
  • Patent number: 10095881
    Abstract: A method includes generating a database query in a database; receiving a first request to execute the database query on behalf of a first user; in response to the first request, executing the database query to generate a first set of results such that the first set of results is limited to data with which there is a semantic relationship in the database to a first datum representing the first user; receiving a second request to execute the database query on behalf of a second user; in response to the second request, executing the database query to generate a second set of results such that the second set of results is limited to data with which there is a semantic relationship in the database to a second datum representing the second user, where the first set of results and the second set of results are at least partially non-overlapping.
    Type: Grant
    Filed: June 5, 2017
    Date of Patent: October 9, 2018
    Assignee: Workiva Inc.
    Inventors: David Andrew Haila, Graham Cummins, Robert Ray Lamb, Jeroen Sebastian Cranendonk
  • Patent number: 10019433
    Abstract: The disclosure is generally directed to a method and computing device for maintaining dependencies among multiple reference elements (e.g., formulas of a table or spreadsheet). In various embodiments, prior to a reevaluation operation carried out on the reference elements, a computing device receives an input of a reference element via a user interface (e.g., receives a user's input of a formula), assigns the reference element to a group based on the dependency between the reference element and one or more other reference elements, and assigns the reference element to a location within a dependency graph to which the other reference elements are assigned. In response to an event that requires at least one of the reference elements to be reevaluated, the computing device reevaluates each group of reference elements in sequence a group at a time.
    Type: Grant
    Filed: June 21, 2016
    Date of Patent: July 10, 2018
    Assignee: Workiva Inc.
    Inventors: Dustin Hiatt, Alexander Campbell, Dean Anthony Ritz
  • Patent number: 9940306
    Abstract: Disclosed herein is a system and related method for downloading fonts associated with a document in a client-server architecture. On a client side the client is: receiving some of the document to reproduce; retrieving fonts needed to display a page of the document on the client device by: requesting a font loader to load a requested font; determining if the font is loaded by: determining a valid test character of the font that is a viewable character; attempting to draw the test character in a small portion of a display screen of the client device; recording a width of the drawn character; determining that the test character was written in the requested font if its character width is not equal to zero; and determining that the test character was written in a fallback font if its character width is equal to zero.
    Type: Grant
    Filed: September 28, 2015
    Date of Patent: April 10, 2018
    Assignee: Workiva Inc.
    Inventor: Bovard Tiberi
  • Patent number: 9928266
    Abstract: Methods for modifying a B-tree are disclosed. According to an implementation, a computing device receives requests for updates to a B-tree, groups two or more of the requests into a batch that are destined for a particular node on the B-tree, but refrains from modifying the node until a buffer of a node above it is full (or will be full with this batch of requests). Once the buffer is full, the computing device provides the requests to that particular node. The techniques described herein may result in the computing device carrying out fewer of reads from and writes to storage than existing B-tree maintenance techniques, thereby saving time and bandwidth. Reducing the number of reads and writes also saves money, particularly when the storage is controlled by a third party SaaS provider that charges according to the number of transactions.
    Type: Grant
    Filed: April 24, 2017
    Date of Patent: March 27, 2018
    Assignee: Workiva Inc.
    Inventors: Timothy Dean, Houston King, Ryan Heimbuch
  • Patent number: 9842089
    Abstract: A method for managing display of electronic documents is described. A user interface is generated for a visual style set of visual styles that affect display of electronic document content. A visual style of the visual style set comprises a style element set of style elements. A lock status for a style element of the style element set is received via the user interface. The lock status indicates whether the style element is editable or non-editable by a user of an electronic document associated with the visual style set. The visual style set is stored with the lock status for the style element.
    Type: Grant
    Filed: January 14, 2016
    Date of Patent: December 12, 2017
    Assignee: Workiva Inc.
    Inventors: Joel Alan Marks, Winston Joseph Chappell, Edward Yee Ly, Edward Joseph Cupps, Alan Joseph Streit, John Patrick Ryan
  • Patent number: 9798703
    Abstract: An XBRL document preparation system comprises an XBRL taxonomy module including one or more XBRL taxonomies having one or more XBRL concepts; a business document editor module that facilitates tagging of one or more entries of a business document with one or more XBRL tags based on the XBRL concepts, and generating an XBRL document including XBRL code corresponding to the tagged entries of the business document; an XBRL document validation system that validates the generated XBRL document and generates at least one of validation errors and warnings corresponding to the XBRL code; an XBRL validation report processing module that associates at least one of the generated validation errors and warnings with a specific source among the tagged entries of the business document; and a user interface module that identifies and facilitates editing the specific source among the tagged entries of the business document.
    Type: Grant
    Filed: May 23, 2014
    Date of Patent: October 24, 2017
    Assignee: Workiva Inc.
    Inventors: David Andrew Haila, Jason Carl Jones, Jeffrey William Hilleman
  • Patent number: 9692764
    Abstract: A method includes generating a database query in a database; receiving a first request to execute the database query on behalf of a first user; in response to the first request, executing the database query to generate a first set of results such that the first set of results is limited to data with which there is a semantic relationship in the database to a first datum representing the first user; receiving a second request to execute the database query on behalf of a second user; in response to the second request, executing the database query to generate a second set of results such that the second set of results is limited to data with which there is a semantic relationship in the database to a second datum representing the second user, where the first set of results and the second set of results are at least partially non-overlapping.
    Type: Grant
    Filed: May 19, 2016
    Date of Patent: June 27, 2017
    Assignee: Workiva Inc.
    Inventors: David Andrew Haila, Graham Cummins, Robert Ray Lamb, Jeroen Sebastian Cranendonk
  • Patent number: 9606968
    Abstract: A computer implemented system provides intelligent formatting of footnotes in electronic documents. The system includes a display device that displays an electronic document in a graphical user interface, a user interface, and a processor. The processor controls the display device and the user interface to display, in response to user input, a footnote editing interface that allows a user to create new footnotes and edit existing footnotes. The system provides multi-user access to a single document in which individual sections of the document may be in active, inactive, and/or locked states, where users perform activities as permitted by a combination of user authorization rights and these states. The footnotes may reference multiple sections on one or more pages of a document, are formatted so that each footnote resides on only a single page, and may display an obscured or blank area for footnotes originating in other sections.
    Type: Grant
    Filed: April 28, 2015
    Date of Patent: March 28, 2017
    Assignee: Workiva Inc.
    Inventors: Joel Marks, Edward Cupps, Bretton Finch, Keaton Carter, Winston Chappell
  • Patent number: 9563616
    Abstract: An apparatus and computer-implemented method comprise providing an algorithm to a client device comprising a processor, a memory, and a user interface comprising a display and an input mechanism, displaying on the display a supported document comprising a supported data item data item, receiving an instruction for the supported data item to associate supporting document information to the supported data item, providing a data entry mechanism at which the supporting document information can be specified, receiving the supporting document information; and attaching the supporting document information in a persistent manner to the supporting data item.
    Type: Grant
    Filed: July 9, 2015
    Date of Patent: February 7, 2017
    Assignee: Workiva Inc.
    Inventors: Joseph Howell, Scott Bacon, John Bonk, Brian Claridge, Alexander Iselin
  • Patent number: 9552343
    Abstract: A computing device includes a processor that carries out actions comprising: storing a causal tree structure corresponding to a document, where the causal tree structure includes a sequence of editing instructions and each editing instruction is assigned an identifier unique to such editing instruction. The method further includes receiving a user editing instruction for the document, where the user editing instruction is assigned an identifier unique to the user editing instruction. The method includes storing the user editing instruction and the identifier assigned to the user editing instruction as an additional node to the causal tree structure. The method further includes broadcasting, to a plurality of client devices, the user editing instruction and the identifier assigned to the user editing instruction.
    Type: Grant
    Filed: February 22, 2016
    Date of Patent: January 24, 2017
    Assignee: Workiva Inc.
    Inventors: Michael J. Thiesen, Dominic J. Frost, Stephen Bush, Grant Nelson, Benjamin Echols
  • Patent number: 9531795
    Abstract: A method and associated system are provided for performing calculations in a distributed networked environment, comprising: updating a source element on a first computer; sending a calculate update signal to a target calculated element for updating on a target element computer that may be the first computer or a second computer connected to the first computer that uses the source element in a calculation; obtaining the updated source element by a process on the target element computer associated with the target calculated element in response to the sending; and performing a calculation to update the target calculated element using the obtained updated source element.
    Type: Grant
    Filed: April 23, 2015
    Date of Patent: December 27, 2016
    Assignee: Workiva Inc.
    Inventors: Robert A. Kluin, Beau D. Lyddon
  • Patent number: 9490973
    Abstract: In various implementations, a first device retrieves, from a memory, encrypted data encrypted using a first key. The first device transmits, to a second device, a request for an encrypted first key, where the encrypted first key is generated by encrypting the first key using a second key. The first device receives the encrypted first key. The first device transmits, to an identity and access management device (IAM), a request for an encrypted second key, where the encrypted second key is generated by encrypting the second key using a third key. The first device receives the encrypted second key. The first device decrypts the encrypted second key using the third key, decrypts the encrypted first key using the decrypted second key, and decrypts the encrypted data using the decrypted first key. The first device deletes, from its cache, the decrypted first key after a period of time.
    Type: Grant
    Filed: May 17, 2016
    Date of Patent: November 8, 2016
    Assignee: Workiva Inc.
    Inventors: Benjamin Alan Blakely, Matthew Edward Sullivan, Michael Bryan Wesner
  • Patent number: 9442908
    Abstract: A method, carried out by a computing device, includes displaying a summary of the sections of a document, identifying one or more sections that have been previously reviewed by a particular reviewer, but has changed since the reviewer last reviewed it, indicating the availability of a blacklined version of the section, and identifying the revision against which the blacklined version has been compared. The computing device may also identify sections that have not been reviewed, sections that have been reviewed and approved by the reviewer (including which revision was approved), and sections that have been reviewed but not approved.
    Type: Grant
    Filed: June 16, 2014
    Date of Patent: September 13, 2016
    Assignee: Workiva Inc.
    Inventor: Stephen M. Siegel
  • Patent number: 9392052
    Abstract: A method and associated system are provided for performing calculations in a distributed networked environment, comprising: updating a source element on a first computer; sending a calculate update signal to a target calculated element for updating on a target element computer that may be the first computer or a second computer connected to the first computer that uses the source element in a calculation; obtaining the updated source element by a process on the target element computer associated with the target calculated element in response to the sending; and performing a calculation to update the target calculated element using the obtained updated source element.
    Type: Grant
    Filed: October 2, 2014
    Date of Patent: July 12, 2016
    Assignee: Workiva Inc.
    Inventors: Robert A. Kluin, Beau D. Lyddon
  • Patent number: 9379890
    Abstract: In various implementations, a first device retrieves, from a memory, encrypted data encrypted using a first key. The first device transmits, to a second device, a request for an encrypted first key, where the encrypted first key is generated by encrypting the first key using a second key. The first device receives the encrypted first key. The first device transmits, to an identity and access management device (IAM), a request for an encrypted second key, where the encrypted second key is generated by encrypting the second key using a third key. The first device receives the encrypted second key. The first device decrypts the encrypted second key using the third key, decrypts the encrypted first key using the decrypted second key, and decrypts the encrypted data using the decrypted first key. The first device deletes, from its cache, the decrypted first key after a period of time.
    Type: Grant
    Filed: December 7, 2015
    Date of Patent: June 28, 2016
    Assignee: Workiva Inc.
    Inventors: Benjamin Alan Blakely, Matthew Edward Sullivan, Michael Bryan Wesner