Patents Assigned to Workiva Inc.
  • Patent number: 11087070
    Abstract: Disclosed are systems and methods for XBRL tag suggestion and validation. In some embodiments, the method includes the steps of: receiving an XBRL document associated with one or more assigned XBRL tags; analyzing the XBRL document using a trained machine learning model to generate one or more suggested XBRL tags and determine one or more corresponding confidence values; comparing the one or more assigned XBRL tags with the one or more suggested XBRL tags to generate comparison results; and determining a tag confidence value associated with each assigned XBRL tag of the one or more assigned XBRL tags based on the comparison results.
    Type: Grant
    Filed: November 4, 2020
    Date of Patent: August 10, 2021
    Assignee: WORKIVA INC.
    Inventors: Rollie Diane Goodman, Houston Dean King, Michael Breecher, Edward Joseph Cupps, Alex Kharbush
  • Patent number: 11055485
    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: April 9, 2020
    Date of Patent: July 6, 2021
    Assignee: WORKIVA INC.
    Inventors: Bryon Lee Marks, Robert Matthew Crawford, Levi Nichols, Edward Cupps, Hannah Deering
  • Patent number: 11048861
    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: March 6, 2019
    Date of Patent: June 29, 2021
    Assignee: WORKIVA INC.
    Inventors: Grant Nelson, Michael J. Thiesen, Aaron Hall, Nathan Woods, David Marne
  • Patent number: 11048696
    Abstract: In an embodiment, a method for generating a search query for a graph database includes displaying a list of vertex properties on a user interface; receiving, via the user interface, a selection of one or more of the displayed vertex properties; forming a graph database query based on selection; and displaying a report containing a result of the query.
    Type: Grant
    Filed: June 24, 2019
    Date of Patent: June 29, 2021
    Assignee: WORKIVA INC.
    Inventors: Daniel Louis Church, Nathaniel Tobias Ohler, Ephie Risho, Jade Dean Robbins, Gary Rhoe Ingram, Jason Lee Erickson, John Arthur Bonk, Ryan Michael Gilsdorf, Alexander Jacob Iselin, Lauren Jewel Evans
  • Patent number: 10902146
    Abstract: A method for gating data between workspaces involves a first computing device receiving, from a first user via a second computing device, a request to share a set of data with a second user; copying the set of data from a first data structure to a second data structure; receiving, from the second user via a second computing device, a request to display the set of data; in response to the request from the first user and the request from the second user, displaying the set of data on the third computing device, wherein the displayed set of data includes a value; receiving, from the first user via the second computing device, an update of the value; receiving, from the second user via the third computing device, an acceptance of the update; and displaying the updated value in place of the value on the third computing device.
    Type: Grant
    Filed: March 19, 2019
    Date of Patent: January 26, 2021
    Assignee: WORKIVA INC.
    Inventors: Hannah Deering, Levi Nichols, Roseanne Streit
  • Patent number: 10878182
    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: March 5, 2019
    Date of Patent: December 29, 2020
    Assignee: WORKIVA INC.
    Inventors: Michael J. Thiesen, Dominic J. Frost, Stephen Bush, Grant Nelson, Benjamin Echols
  • Patent number: 10831921
    Abstract: A computing device is configured to carry out actions including: 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: March 19, 2019
    Date of Patent: November 10, 2020
    Assignee: WORKIVA INC.
    Inventors: David Andrew Haila, Graham Cummins, Robert Ray Lamb, Jeroen Sebastian Cranendonk
  • Patent number: 10796078
    Abstract: A method of performing XBRL extension taxonomy concept replacement includes analyzing, by a processor, an XBRL document having XBRL tags to identify an XBRL extension taxonomy concept of an XBRL extension taxonomy that is superfluous in comparison with an XBRL base taxonomy concept for an XBRL base taxonomy upon which the XBRL extension taxonomy is based. The processor is configured to identify an extension extended linkrole in the XBRL extension taxonomy that includes the identified XBRL extension taxonomy concept, determine a base extended linkrole in the XBRL base taxonomy that matches the extension extended linkrole, determine an XBRL base taxonomy concept in the base extended linkrole that matches the identified XBRL extension taxonomy concept, and replace the identified XBRL extension taxonomy concept with the XBRL base taxonomy concept in the base extended linkrole.
    Type: Grant
    Filed: November 4, 2016
    Date of Patent: October 6, 2020
    Assignee: WORKIVA INC.
    Inventors: Susan Yount, Dean Anthony Ritz, Andrew Perkins, Jason Carl Jones, Justin Olson, David Andrew Haila
  • Patent number: 10769361
    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: February 22, 2019
    Date of Patent: September 8, 2020
    Assignee: WORKIVA INC.
    Inventors: Dustin Lee Hiatt, Travis Lee Smith, John Pillar, Joshua Allen Beam
  • Patent number: 10733172
    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: December 7, 2017
    Date of Patent: August 4, 2020
    Assignee: WORKIVA INC.
    Inventors: Timothy Dean, Houston King, Ryan Heimbuch
  • Patent number: 10733369
    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 5, 2019
    Date of Patent: August 4, 2020
    Assignee: WORKIVA INC.
    Inventor: Dustin Lee Hiatt
  • Patent number: 10733165
    Abstract: A method for traversing a node tree, having a root node and a hierarchy of child nodes, to a selected child node is described. A node identifier of the root node is determined by performing a hash function with at least a seed value for the node tree. Each child node of the hierarchy has a respective node identifier determined by performing the hash function with i) the seed value, ii) a node identifier of a parent node of the child node, and iii) a child index of the parent node. The selected child node's node identifier is determined by performing the hash function with i) the seed value, ii) the node identifier of the selected child node's parent node, and iii) the child index of the parent node for the selected child node. A retrieval of data stored at a location indicated by the node identifier of the selected child node is caused.
    Type: Grant
    Filed: July 6, 2015
    Date of Patent: August 4, 2020
    Assignee: WORKIVA INC.
    Inventors: MacLeod Broad, Joseph Strach, Mark Shaule
  • 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