Patents Assigned to Workiva Inc.
  • Patent number: 10664654
    Abstract: A method on a client device is described. First document content information that corresponds to a first plurality of document elements of an electronic document is received from a data server. A graphical user interface that represents the first plurality of document elements is generated based on the first document content information. First author identifiers that indicate most recent authors for the first plurality of document elements are received. The first document content information and the first author identifiers correspond to a first timestamp. Visual identifiers for the first author identifiers are selected based on the graphical user interface. The visual identifiers are generated to indicate which of the first author identifiers correspond to the first plurality of document elements represented by the graphical user interface.
    Type: Grant
    Filed: September 6, 2017
    Date of Patent: May 26, 2020
    Assignee: WORKIVA INC.
    Inventors: Bryon Lee Marks, Robert Matthew Crawford, Levi Nichols, Edward Cupps, Hannah Deering
  • Patent number: 10585980
    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 graphical annotation for a document displayed on the second computing device. The first computing device stores the graphical annotation in a database in a graphical annotation data entity and creates an association between an entity containing the portion of the document to which the graphical annotation is to be anchored and the graphical annotation entity.
    Type: Grant
    Filed: October 1, 2018
    Date of Patent: March 10, 2020
    Assignee: Workiva Inc.
    Inventors: Nathan Raleigh, Todd Kaji, Brandon Carpenter, Shane Sawyer, Jason Moore
  • Patent number: 10528229
    Abstract: A system includes a mandatory comment in a software productivity tool. In various implementations, the system includes a computer that carries out actions including: opening in the software productivity tool a document stored in a non-volatile hardware data storage device; receiving a definition of an actionable data item of the document; receiving a request for an action associated with the item; determining if the action triggers a predefined comment rule; if triggered, then: requiring a mandatory comment; storing the accepted entered comment in the non-volatile hardware data storage device; and performing the requested action.
    Type: Grant
    Filed: December 22, 2017
    Date of Patent: January 7, 2020
    Assignee: Workiva Inc.
    Inventors: Dean Anthony Ritz, Willie Eide, Ephie Risho
  • Patent number: 10339338
    Abstract: A method includes generating, in a graph database, an access role vertex that defines an access role of a user, where the access role vertex is connected to a user vertex representing the user; generating a query vertex including a traversal clause that represents a query of the graph database; generating a permission edge between the access role vertex and the query vertex, where the permission edge defines the access role's permission to access the results of the query; receiving a request to execute the query on behalf of the user; in response to the request, traversing the graph database according to the traversal clause to locate a set of vertices; and generating a set of results based on the set of vertices.
    Type: Grant
    Filed: July 26, 2018
    Date of Patent: July 2, 2019
    Assignee: Workiva Inc.
    Inventors: David Andrew Haila, Graham Cummins, Robert Ray Lamb, Jeroen Sebastian Cranendonk
  • Patent number: 10331776
    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: January 20, 2017
    Date of Patent: June 25, 2019
    Assignee: Workiva Inc.
    Inventors: Michael J. Thiesen, Dominic J. Frost, Stephen Bush, Grant Nelson, Benjamin Echols
  • Patent number: 10325014
    Abstract: In various implementations, a computing device: displays the document outline on the user interface; maintains, in a non-transitory computer-readable medium, a causal graph data structure representing the document outline, wherein the causal graph data structure includes a plurality of structure nodes, each structure node representing a level of the document outline; receives, via the user interface, an insertion of a new level to the document outline; in response to the insertion, defines a structure node that represents the inserted level; inserts a transition node in the causal graph data structure, wherein the transition node represents a relationship between the structure node and at least one other node of the causal graph data structure; inserts the structure node into the causal graph data structure as a child of the transition node; and updating the user interface to display the inserted level.
    Type: Grant
    Filed: November 15, 2018
    Date of Patent: June 18, 2019
    Assignee: Workiva Inc.
    Inventors: Grant Nelson, Michael J. Thiesen, Aaron Hall, Nathan Woods, David Marne
  • Patent number: 10275441
    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: June 14, 2018
    Date of Patent: April 30, 2019
    Assignee: Workiva Inc.
    Inventor: Dustin Lee Hiatt
  • Patent number: 10261663
    Abstract: A method requires a mandatory comment in a software productivity tool, comprising: opening in the software productivity tool a document stored in a non-volatile hardware data storage device; receiving a definition of an actionable data item of the document; receiving a request for an action associated with the item; determining if the action triggers a predefined comment rule; if triggered, then: requiring a mandatory comment; storing the accepted entered comment in the non-volatile hardware data storage device; and performing the requested action. A method specifies a mandatory comment, comprising: receiving a definition of an actionable data item of the document; receiving a definition of a comment rule related to an action on the item; receiving a definition of a comment criteria associated with the comment rule; and storing the actionable data item, the triggering criteria, and the comment criteria in a non-volatile storage device of a hardware device.
    Type: Grant
    Filed: September 29, 2015
    Date of Patent: April 16, 2019
    Assignee: Workiva Inc.
    Inventors: Dean Anthony Ritz, Willie Eide, Ephie Risho
  • 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