Business users are not able to directly access business data using their own business terminology. When business users need data to generate Business Intelligence (BI) reports, they depend on IT. The IT dept will setup a data warehouse to host the different data sources that the business users need. IT will analyze the different databases and generate an enterprise database schema that will be able to store data coming from the different sources. This schema is generated using data modelling tools (Tool 1). Furthermore, the terminology used in the enterprise schema usually comes from IT and does not consider the terminology that business users use. For example table and attribute names are not agreed business terminology. Subsequently, business users use different tools to manage business terminology, taxonomies, etc. (Tool 2). The business user terminology created in Tool 2 is disconnected from the models that are created with Tool 1. Finally, once an enterprise database schema is created, IT uses data integration ETL tools to move data from source databases to the newly created target data warehouse (Tool 3). It is common that business users identify issues with the data and also want to include new data. Therefore the enterprise database schema is changed and disconnected from the model that was created in Tool 2 and does not use the business terminology created in Tool 1.
The invention is a system for business users and IT professionals alike to directly access data using their own terminologies in a collaborative way by:
Enabling business users to model the business knowledge (model);
Enabling both business users and IT professionals to make incremental changes to the model.
Mapping the business model to the physical databases (govern); and
Accessing the data without the need of creating a data warehouse (integrate).
The headings provided herein are for convenience only and do not necessarily affect the scope or meaning of the claimed invention. In the drawings, the same reference numbers and any acronyms identify elements or acts with the same or similar structure or functionality for ease of understanding and convenience. To easily identify the discussion of any particular element or act, the most significant digit or digits in a reference number refer to the Figure number in which that element is first introduced.
Various examples of the invention will now be described. The following description provides specific details for a thorough understanding and enabling description of these examples. One skilled in the relevant art will understand, however, that the invention may be practiced without many of these details. Likewise, one skilled in the relevant art will also understand that the invention can include many other features not described in detail herein. Additionally, some well-known structures or functions may not be shown or described in detail below, so as to avoid unnecessarily obscuring the relevant description. The terminology used below is to be interpreted in its broadest reasonable manner, even though it is being used in conjunction with a detailed description of certain specific examples of the invention. Indeed, certain terms may even be emphasized below; however, any terminology intended to be interpreted in any restricted manner will be overtly and specifically defined as such in this Detailed Description section.
The invention provides a graph schema editor function that is collaborative. This system lets users work with graphic primitives like circles, lines, label them, which may be a knowledge graph, or ontology. As shown in
In some instances, it may be used with a property graph. The server (2304) hosts the instance of the graph schema and lets multiple browsers (2307) access to display and act as a GUI to receive edits from users, (2301) transmit the edits to the server, (2303) where they are incorporated into the graph schema data structure. (2304). For example, a graph schema instance can be initiated and stored as a data structure on the server (101). The schema data structure and its element primitives can be transmitted out (2305) to remote computers that are collaboratively editing the schema. (102). The remote computers then redisplay the graph schema diagram incorporating the new edit. (2306). The server can receive editing commands from the remote computers (103). This cycle continues until the decision is that the editing is completed (103). At that point, a data description file for that graph schema can be generated as output (105). That output file or object can be used by a data querying system to recover data using the graph schema as a location tool. When the server receives an edit, for example, to insert a circle/label/line, (104) it shows up on the screen of each remote computer that is connected to the server (102). This is accomplished by updating the graph schema data structure that is stored on the server and distributing out to the remote computers over a data network the updated graphic information and data structure information that when rendered, displays the revised graph schema. The graphic information may be scripts transmitted to browsers operating on the remote computers. Alternatively, each remote computer may maintain a local copy of the graph schema data structure, and the revisions distributed to the remote computers. In that alternative embodiment, the local data structure is revised and a local module generates the graphic information from the local copy of the graph schema.
In one embodiment, each element of the graph schema that is being edited can be considered a channel where in real time, data that is being input or modified for that element at the server, is transmitted out to the other remote computers in real time in order that the immediate status be displayed. In this manner, multiple users can concurrently edit the same graph schema document at the same time. They can see exactly what other users are doing in real-time (moving elements, creating elements, deleting elements, even multiple elements at a time.). In one embodiment, real time display of the changes is implemented by using an operational transform database to house the graph schema data structure. In another embodiment, real time collaborative editing can be accomplished by diff-match-patch techniques.
Further, it is possible to establish a chat channel that works with the editing, where the chat channel is associated with the element being edited. In one embodiment, each edge and node in the graph schema data structure can have a separate communication thread that corresponds to it. As shown in
A graph schema for purposes of this disclosure is a data structure stored in computer memory or on a mass storage device, that represents a directed-labeled graph that includes any of the following: a description of the contents of a graph database, the structure of the contents of a graph database, or database constraints. A database constraint is a logical definition that may prevent certain data from being stored in a database. See “Survey of graph database models”, Renzo Angles and Claudio Gutierrez. ACM Comput. Surv. 40, 1, Article 1 (February 2008), which is hereby incorporated by reference. In a preferred embodiment, the representation of a graph database's schema is defined in a manner such that the graph schema is sufficiently consistent with the representation of the graph database data. Thus, the graph schema may be stored as data in the graph database and rendered, as either string or in graphical form such that graph schema and graph database data appear very similar to a user.
Graph databases may exist in several forms. They share the characteristic that the stored data comprises a collection of directed labeled graph edges. A collection of such edges forms a graph. The realization of a graph database concerns two primary implementations: the edge-labelled graphs, and property graphs. In edge-labelled graphs the node labels and edge labels comprise a single data value. In property graphs the node labels and edge labels may further comprise a set of key-value pairs. See “Foundations of Modern Query Languages for Graph Databases”, Renzo Angles, Marcelo Arenas, Pablo Barceló, Aidan Hogan, Juan Reutter, and Domagoj Vrgoč. ACM Comput. Surv. 50, 5, Article 68 (September 2017), which is hereby incorporated by reference. Implementations are incorporated by reference in the appendix attached hereto. For example, the W3C Organization published several pages, including those on RDF 1.1 Primer, retrieved from the following URL [https://www.w3.org/TR/rdf11-primer/website] on Jun. 6, 2019 and attached hereto as pages 1 through 9 of Appendix 1, RDF Schema 1.1 retrieved from the following URL [https://www.w3.org/TR/rdf-schema/] on Jun. 6, 2019 and attached hereto as pages 10-25 of Appendix 1, OWL 2 Web Ontology Language Docket Overview (Second Edition), retrieved from the following URL [https://www.w3.org/TR/owl2-overview/] on Jun. 6, 2019 and attached hereto as pages 26-33 of Appendix 1, all of which are hereby incorporated by reference in their entireties for all that they teach. Leading implementations of property graph databases are Neo4j, retrieved from the following URL on Jun. 6, 2019 [https://neo4j.com/developer/kb/viewing-schema-data-with-apoc] and attached as pages 1-2 of Appendix 2, TigerGraph, retrieved from the following URL [https://doc.tigergraph.com/attachments/gsq1_dd1_loading_v2.1.pdf] on Jun. 6, 2019 and attached as pages 3-4 of Appendix 2, Datastax Graph, retrieved from the following URL [https://docs.datastax.com/en/dse/6.7/dsedev/datastax_enterprise/graph/using/examineSchema.ht ml] on Jun. 6, 2019 and attached as pages 5-6 of Appendix 2, JanusGraph, retrieved from the following URL [https://docs.janusgraph.org/latest/schema.html] on Jun. 6, 2019 and attached as pages 7-13 of Appendix 2, and Tinkerpop, retrieved from the following URL, [http://tinkerpop.apache.org/] on Jun. 6, 2019 and attached as pages 14-19 of Appendix 2, all of which are hereby incorporated by reference in their entireties for all that they teach.
In an edge-labeled graph schema or ontology, classes can in some embodiments refer to RDFS or OWL Classes, object properties refer to RDFS property or OWL Object Property and datatype properties refer to RDFS property or OWL Datatype Property. In a property graph schema, in some embodiments, nodes refer to the label of the node, relationships refer to the labels of edges and properties are key-value pairs that are associated to nodes and relationships.
In one embodiment, the data structure representing the graph schema, whether an ontology, knowledge graph, property graph or the like, may, in an exemplary but non limiting case, be a table or a group of related tables. The data structure is stored on the server, and commands in the form of scripts is transmitted from server to the browsers of all participating remote computers, and the browsers transmit commands back to the server. The server converts the graph schema representative table to data representing graphical components for display, which are stored on the server. The browser calls down the graphic component data in order to display the graphic representation of the graph schema. The components may also contain text strings representing labelling or values to be associated with the graphical elements that are displayed. The graph schema may be comprised of data elements and data relationships among the elements. The graph schema data structure may be comprised of data representing concepts, attributes or relationships. In one embodiment, these elements and relationships may be represented by one or more RDF tuples, which can include RDF triples. The invention converts the data representing the elements and relationships, for example, RDF tuples, into a set of corresponding graphical component data, which are specific instances of circles, lines boxes, and labels. The graphical representation may be stored on the server and remote computers as a set of data structures, one for each graphical primitive, which includes its type (circle, line, label), its location (x,y), and for a line, its end point (a,b). For a circle, it can specify its size (a number). The data structure for an instance of a primitive will be comprised of one or more pointers to related instances of primitives. In this way, a circle indicating class, may point to a label instance, whose data structure has a “name”. Or there may be a pointer in the data structure instance to a line data structure instance, which has two endpoints points comprising it and a label “attribute name.” The connections between the components, i.e. the dependency lines between the circles are determined from the dependences present in the graph schema table entries.
The invention is able to produce two kinds of output important to the creation of graph databases and then populating them; Graph schema definition files and mapping files. A graph schema definition file is a text embodiment of a graph schema. This file details the contents and structure of the graph database. This is similar to a file containing SQL data definition language statements (SQL-DDL) such as CREATE TABLE, where in the relational setting a table and its constituent columns named and data types provided. For example, for edge-labeled graphs, files containing text for RDFS or OWL are graph schema definition files. The mapping files detail the contents and structure of an external data connection that is being integrated into the graph schema, as further described herein.
Editing the graph schema is accomplished by the browser receiving the graphical components, in the form of the graphical data structure instances and displaying them on the computer screen. When the user selects an item using the user interface of the computer operating the browser program, the browser can accept a command and transmit a corresponding edit command to the server. The command may be comprised of data representing a location on the browser screen, the identity of the graphic instance, or a selection of a label. These items may be accompanied with data representing move, or text input, or other commands. When the server receives a command to change an instance of what was selected on the browser, the server utilizes the stored graphical component data structures to identify where in the graph schema data structure such an edit should be made. Similarly, the user may select two instances of displayed nodes, and then select a command to establish a relationship between them. Further, the user can select a relationship by selecting the graphic representing the link between the nodes, and then the browser operates a script that permits the user to input a name to label the relationship. The browser then transmits to the server data representing the new instance of a relationship between the two selected nodes and its label.
Further, the graph schema can include as nodes, external sources of data. For example, a graph schema may have a node that delivers data from an external database. The database can be selected with its location specified in a menu.
These mappings between the graph schema components and external database can be represented graphically utilizing the graph schema data structure, and incoming edit commands can modify the data structure representing the mapping. Likewise, the server can convert the data structures representing the mapping into a set of instances of graphical element data structure items. The external database may be characterized by metadata. The metadata represents the elements and relationships of content comprising the database. In one embodiment, the metadata may be a file, for example, a relational descriptor or other data file that defines the characteristics of the database. The metadata can be displayed to the user on the remote computer.
The invention collects data and metadata from a database in order to use it to interface the external database with the graph schema. Further, the invention provides for the specification of mappings of data and metadata from a database to graph data corresponding to the graph schema. For example,
In one embodiment, the system can be used to edit a mapping between a semantic ontology and a relational database. In this instance a data structure representing a graph representation of the mapping is first populated automatically. The relational descriptor file corresponding to the relational database is utilized to create a putative ontology, which can be represented by a data structure, but further, a set of graphical components for a display representation, as further explained in U.S. Pat. No. 8,719,252, incorporated herein by reference. This can then be displayed to the user by transmitting the data out to the remote computers. The system can then accept commands from the user operating the browser as an editing tool, and the user can edit the putative ontology in order that it be customized. The edited putative ontology can then be used to specify the mapping between elements of the graph schema and the contents of the relational database.
In one embodiment of the graph schema, the each Concept, Attribute and Relationship will be associated in the graph schema data structure with data representing the following features
ID: a unique identifier within the schema.
Data Type.
Preferred Label: the label is always used for the element.
Permission Roles: a user of the editor function can be assigned a status by the system which defines permission levels for editing as follows:
In one embodiment the system imports a graph schema in the OWL format as a .cap file. Import may be an additive process, where additional OWL formalisms may be added to a graph schema. In addition, the graph schema may exported into the OWL format. The graph schema can also be exported as an image (png, jpeg) and as a pdf.
An important aspect of collaborative editing of the graph schema is providing permission levels to different users. Consider the permission to edit, that is, a write privilege. For example, users may be authorized by parameters stored in a file or data structure associated with their account to have permission to edit a name or definition but not add a new Property or Class. Alternatively, editing Mappings can be permitted to be enabled/disabled independently of anything regarding the graph schema data structure itself. Examples of permission types include:
After a graph schema has been created, it can then be mapped to databases using the database metadata that describes the database, and even files that define the database schema.
Select Source Database Subset
Create
In addition, the user can specify the PK and FK
What to do with NULL values
Every attribute will specify if the attribute can be NULL or not with an icon. If it can be null, then specify what the value should be.
When a Concept has been created
If a Concept has Attributes already created
If a Concept does not have Attributes
Mappings to Relationships
Alternatively, map a source Data Property to a target Object Property. In this embodiment, the system permits the user to edit the R2RML manually to use the template URI as the object.
View Mappings: The system permits ways to show the graph schema in various ways, including any mappings. Several ways are described below:
Ontology View
Database View
Preview a mapping in graph and tabular form
Download the mapping as spreadsheet or XLS file
Export the mapping as a GOOGLE™ sheet
In addition, colors may be used when displaying the mapping line to indicate the editing status of a mapping element, for example:
The user interacts with the diagram by clicking and dragging a circle. The point at which this event is captured is customizable. The event can be captured several times per second whenever the “drag” event is called (as is currently implemented), or the event can be captured only at the release of the mouse button (which would only update other clients when the circle is dropped in its final position). The JSON data for the circle is specifically what is captured.
2. Operational Transformation Request Formed
The client submits a request to the server to make a change to the diagram using Operational Transformation. The client passes the original JSON object of the circle as well as the updated JSON object to the server. A basic flag is also specified that tells the server what kind of change this is (update, delete, etc.).
3. Server Receives the Event
The server receives the event, parses the information, and updates the diagram document JSON. This is done automatically by ShareDB. This is an ideal way to implement granular permissions, because the event can be “cancelled” based on user permissions.
4. Server Sends Out the Updates
The server sends any updates it has received out to all of the clients.
5. Clients Update the Diagram
The clients receive the updates, parse the data, and refresh the diagram as needed. Clients that initiated specific events (like dragging) should choose to ignore their own updates to avoid strange or choppy behavior. This is because the server will send the updates from a client back to the same client, in addition to the rest of the clients.
The graph schema data structure may be output in several ways. First, the data structure, as a table or series of tables may be stored as a data file on mass storage device. This may be performed periodically, with automatically generated filenames so that the evolution of the schema can be maintained. In addition, the graph schema can be converted to outputs to be used in other contexts, for example, as a file defining a set of RDF tuples. The system can also utilize the schema data structure so that the system interfaces automatically between sources of data, including databases, a graph data structures and queries operating on the graph data structure.
In one example embodiment, the operation of the invention by a user, or collaboratively, a set of users to create and develop a graph schema and optionally mappings to a database, form the following data structures. There are five data structures, all expressed in the preferred embodiment as JSON objects. These data structures are presented as examples of one exemplary embodiment but are not intended to be limiting to the data structures that may be used.
1) User data is stored in a My SQL table.
2) the graph schema, which itself may be the union of one or more identically structured JSON objects stored in MongoDB
3) a complex data structure for storing mappings. The component parts of the representation of mappings are stored in a MySQL tables. By complex data structure, it is meant that it is a data structure that contains a number of sub-data structures.
4) a complex data structure storing meta-data and individual strings in a chat thread.
5) a complex data structure that stores, as a log, for example, a JSON file, CVS file, SVN or GIT file, the individual changes made to the graph schema or the mappings. In aggregate, the record of these changes, known in the art as incremental changes, may be used to reconstruct, or, deconstruct, the creation of the graph schema and the mappings.
Note that graph schema ownership, editing privileges and notification status with respect to chat threads are stored as a JSON object within a row of a MySQL database table. Each document is stored in MySQL table and in a Mongodb collection.
In one embodiment, the each graph schema, its associated user status and accumulated chat history is stored as a complex data structure with sub-data structures stored as tuples in MySQL and documents in MongoDB. The sub-data structures are identified as belonging to the same complex data structure using database key values.
There is a one-to-one relationship between a row in the documents table and a collection of a document in mongoDB.
Document Table in MySQL:
In the preferred embodiment, the graph schema has its own data structure. Each component of the graph schema, node, edge, property (edge-label), and attributes are given unique ids, “id” and “nodeId”. Timestamps and identity of the user who last updated the component is recorded [in the object]. Similarly labels, pointers to labels, or other label proxies are stored in the object. As needed by the visualization system, details of where and how individual components of the graph schema are recorded.
The diagram is stored as a JSON document in Mongodb, where the Mongodb collection name is the document ID.
Graph Schema Data Structure:
A mapping from a data source into the graph schema may be stored as a complex data structure. Each mapping stored in MongoDB comes from a source database (also called customer database). Mapping can include related tables in MySQL. A mapping may associate a component of the graph schema with a particular database. The first sub data structure stores detailed information concerning the identify, network connectivity and authorization for a database. This can include information about the source database of a mapping.
Mappings Structure
In addition, the system may be comprised of an object that stores which individual databases have mappings connecting them to which individual graph schema. The system can store which document a source database belongs to. In one embodiment, there is a many-to-one relationship between source databases and a document.
Mapping Management Structure:
The system supports chat channels that establish a conversation regarding the elements being edited. These conversations, or series of comments are maintained in a data structure that links them to the elements in the graph schema they refer to. A conversation, or chat thread, is a collection of comments, so there is a one-to-many relationship between conversations and comments.
Comment Tables in MySQL
A Comment Associated with a Conversation.
The Actual Content for a Comment.
One-to-one relationship between comments and comment_contents.
In addition, individual comments in a chat thread can be marked as open or resolved issues. This can track if the conversation is resolved or not. One-to-one relationship between conversations and this.
Another object can tracks if a user has seen a comment or not. This is used to display the number of unseen comments.
Complex data structure may be used to store information, for example as CVS. Each revision is stored in a revision table and a mongoDB document. For every 10 revisions, a full snapshot is saved. A full snapshot is always saved for the first revision of the graph schema document. A full snapshot is simply all data that is stored in {document ID} collection in mongoDB. A revision that is not a full snapshot is a diff of the previous revision. This is calculated by GenerateNewRevision lambda. However, dateCreated must be unique for each revision in a document. In the MySQL revision table, each row has one-to-one relationship with a mongoDB document.
Revisions Structure
In the MongoDB revision collection, the Collection name is {document ID}-revisions and each MongoDB document inside the collection is a revision.
Sample Revision Document:
Operating Environment:
The system is typically comprised of a central server that is connected by a data network to a user's computer. The central server may be comprised of one or more computers connected to one or more mass storage devices. The precise architecture of the central server does not limit the claimed invention. Further, the user's computer may be a laptop or desktop type of personal computer. It can also be a cell phone, smart phone or other handheld device, including a tablet. The precise form factor of the user's computer does not limit the claimed invention. Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with the invention include, but are not limited to, personal computers, server computers, hand-held computers, laptop or mobile computer or communications devices such as cell phones, smart phones, and PDA's, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like. Indeed, the terms “computer,” “server,” and the like may be used interchangeably herein, and may refer to any of the above devices and systems.
The user environment may be housed in the central server or operatively connected to it remotely using a network. In one embodiment, the user's computer is omitted, and instead an equivalent computing functionality is provided that works on a server. In this case, a user would log into the server from another computer over a network and access the system through a user environment, and thereby access the functionality that would in other embodiments, operate on the user's computer. Further, the user may receive from and transmit data to the central server by means of the Internet, whereby the user accesses an account using an Internet web-browser and browser displays an interactive web page operatively connected to the central server. The server transmits and receives data in response to data and commands transmitted from the browser in response to the customer's actuation of the browser user interface. Some steps of the invention may be performed on the user's computer and interim results transmitted to a server. These interim results may be processed at the server and final results passed back to the user.
The Internet is a computer network that permits customers operating a personal computer to interact with computer servers located remotely and to view content that is delivered from the servers to the personal computer as data files over the network. In one kind of protocol, the servers present webpages that are rendered on the customer's personal computer using a local program known as a browser. The browser receives one or more data files from the server that are displayed on the customer's personal computer screen. The browser seeks those data files from a specific address, which is represented by an alphanumeric string called a Universal Resource Locator (URL). However, the webpage may contain components that are downloaded from a variety of URL's or IP addresses. A website is a collection of related URL's, typically all sharing the same root address or under the control of some entity. In one embodiment different regions of the simulated space displayed by the browser have different URL's. That is, the webpage encoding the simulated space can be a unitary data structure, but different URL's reference different locations in the data structure. The user computer can operate a program that receives from a remote server a data file that is passed to a program that interprets the data in the data file and commands the display device to present particular text, images, video, audio and other objects. In some embodiments, the remote server delivers a data file that is comprised of computer code that the browser program interprets, for example, scripts. The program can detect the relative location of the cursor when the mouse button is actuated, and interpret a command to be executed based on location on the indicated relative location on the display when the button was pressed. The data file may be an HTML document, the program a web-browser program and the command a hyper-link that causes the browser to request a new HTML document from another remote data network address location. The HTML can also have references that result in other code modules being called up and executed, for example, Flash or other native code.
The invention may also be entirely executed on one or more servers. A server may be a computer comprised of a central processing unit with a mass storage device and a network connection. In addition a server can include multiple of such computers connected together with a data network or other data transfer connection, or, multiple computers on a network with network accessed storage, in a manner that provides such functionality as a group. Practitioners of ordinary skill will recognize that functions that are accomplished on one server may be partitioned and accomplished on multiple servers that are operatively connected by a computer network by means of appropriate inter process communication. In one embodiment, a user's computer can run an application that causes the user's computer to transmit a stream of one or more data packets across a data network to a second computer, referred to here as a server. The server, in turn, may be connected to one or more mass data storage devices where the database is stored. In addition, the access of the website can be by means of an Internet browser accessing a secure or public page or by means of a client program running on a local computer that is connected over a computer network to the server. A data message and data upload or download can be delivered over the Internet using typical protocols, including TCP/IP, HTTP, TCP, UDP, SMTP, RPC, FTP or other kinds of data communication protocols that permit processes running on two respective remote computers to exchange information by means of digital network communication. As a result a data message can be one or more data packets transmitted from or received by a computer containing a destination network address, a destination process or application identifier, and data values that can be parsed at the destination computer located at the destination network address by the destination application in order that the relevant data values are extracted and used by the destination application. The precise architecture of the central server does not limit the claimed invention. In addition, the data network may operate with several levels, such that the user's computer is connected through a fire wall to one server, which routes communications to another server that executes the disclosed methods.
The server can execute a program that receives the transmitted packet and interpret the transmitted data packets in order to extract database query information. The server can then execute the remaining steps of the invention by means of accessing the mass storage devices to derive the desired result of the query. Alternatively, the server can transmit the query information to another computer that is connected to the mass storage devices, and that computer can execute the invention to derive the desired result. The result can then be transmitted back to the user's computer by means of another stream of one or more data packets appropriately addressed to the user's computer. In addition, the user's computer may obtain data from the server that is considered a website, that is, a collection of data files that when retrieved by the user's computer and rendered by a program running on the user's computer, displays on the display screen of the user's computer text, images, video and in some cases outputs audio. The access of the website can be by means of a client program running on a local computer that is connected over a computer network accessing a secure or public page on the server using an Internet browser or by means of running a dedicated application that interacts with the server, sometimes referred to as an “app.” The data messages may comprise a data file that may be an HTML document (or other hypertext formatted document file), commands sent between the remote computer and the server and a web-browser program or app running on the remote computer that interacts with the data received from the server. The command can be a hyper-link that causes the browser to request a new HTML document from another remote data network address location. The HTML can also have references that result in other code modules being called up and executed, for example, Flash, scripts or other code. The HTML file may also have code embedded in the file that is executed by the client program as an interpreter, in one embodiment, Javascript. As a result a data message can be a data packet transmitted from or received by a computer containing a destination network address, a destination process or application identifier, and data values or program code that can be parsed at the destination computer located at the destination network address by the destination application in order that the relevant data values or program code are extracted and used by the destination application.
The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices. Practitioners of ordinary skill will recognize that the invention may be executed on one or more computer processors that are linked using a data network, including, for example, the Internet. In another embodiment, different steps of the process can be executed by one or more computers and storage devices geographically separated by connected by a data network in a manner so that they operate together to execute the process steps. In one embodiment, a user's computer can run an application that causes the user's computer to transmit a stream of one or more data packets across a data network to a second computer, referred to here as a server. The server, in turn, may be connected to one or more mass data storage devices where the database is stored. The server can execute a program that receives the transmitted packet and interpret the transmitted data packets in order to extract database query information. The server can then execute the remaining steps of the invention by means of accessing the mass storage devices to derive the desired result of the query. Alternatively, the server can transmit the query information to another computer that is connected to the mass storage devices, and that computer can execute the invention to derive the desired result. The result can then be transmitted back to the user's computer by means of another stream of one or more data packets appropriately addressed to the user's computer. In one embodiment, a relational database may be housed in one or more operatively connected servers operatively connected to computer memory, for example, disk drives. In yet another embodiment, the initialization of the relational database may be prepared on the set of servers and the interaction with the user's computer occur at a different place in the overall process.
The method described herein can be executed on a computer system, generally comprised of a central processing unit (CPU) that is operatively connected to a memory device, data input and output circuitry (TO) and computer data network communication circuitry. Computer code executed by the CPU can take data received by the data communication circuitry and store it in the memory device. In addition, the CPU can take data from the I/O circuitry and store it in the memory device. Further, the CPU can take data from a memory device and output it through the IO circuitry or the data communication circuitry. The data stored in memory may be further recalled from the memory device, further processed or modified by the CPU in the manner described herein and restored in the same memory device or a different memory device operatively connected to the CPU including by means of the data network circuitry. In some embodiments, data stored in memory may be stored in the memory device, or an external mass data storage device like a disk drive. In yet other embodiments, the CPU may be running an operating system where storing a data set in memory is performed virtually, such that the data resides partially in a memory device and partially on the mass storage device. The CPU may perform logic comparisons of one or more of the data items stored in memory or in the cache memory of the CPU, or perform arithmetic operations on the data in order to make selections or determinations using such logical tests or arithmetic operations. The process flow may be altered as a result of such logical tests or arithmetic operations so as to select or determine the next step of a process. For example, the CPU may obtain two data values from memory and the logic in the CPU determine whether they are the same or not. Based on such Boolean logic result, the CPU then selects a first or a second location in memory as the location of the next step in the program execution. This type of program control flow may be used to program the CPU to determine data, or select a data from a set of data. The memory device can be any kind of data storage circuit or magnetic storage or optical device, including a hard disk, optical disk or solid state memory. The IO devices can include a display screen, loudspeakers, microphone and a movable mouse that indicate to the computer the relative location of a cursor position on the display and one or more buttons that can be actuated to indicate a command.
The computer can display on the display screen operatively connected to the I/O circuitry the appearance of a user interface. Various shapes, text and other graphical forms are displayed on the screen as a result of the computer generating data that causes the pixels comprising the display screen to take on various colors and shades or brightness. The user interface may also display a graphical object referred to in the art as a cursor. The object's location on the display indicates to the user a selection of another object on the screen. The cursor may be moved by the user by means of another device connected by I/O circuitry to the computer. This device detects certain physical motions of the user, for example, the position of the hand on a flat surface or the position of a finger on a flat surface. Such devices may be referred to in the art as a mouse or a track pad. In some embodiments, the display screen itself can act as a trackpad by sensing the presence and position of one or more fingers on the surface of the display screen. When the cursor is located over a graphical object that appears to be a button or switch, the user can actuate the button or switch by engaging a physical switch on the mouse or trackpad or computer device or tapping the trackpad or touch sensitive display. When the computer detects that the physical switch has been engaged (or that the tapping of the track pad or touch sensitive screen has occurred), it takes the apparent location of the cursor (or in the case of a touch sensitive screen, the detected position of the finger) on the screen and executes the process associated with that location. As an example, not intended to limit the breadth of the disclosed invention, a graphical object that appears to be a two dimensional box with the word “enter” within it may be displayed on the screen. If the computer detects that the switch has been engaged while the cursor location (or finger location for a touch sensitive screen) was within the boundaries of a graphical object, for example, the displayed box, the computer will execute the process associated with the “enter” command. In this way, graphical objects on the screen create a user interface that permits the user to control the processes operating on the computer.
In some instances, especially where the user computer is a mobile computing device used to access data through the network the network may be any type of cellular, IP-based or converged telecommunications network, including but not limited to Global System for Mobile Communications (GSM), Time Division Multiple Access (TDMA), Code Division Multiple Access (CDMA), Orthogonal Frequency Division Multiple Access (OFDM), General Packet Radio Service (GPRS), Enhanced Data GSM Environment (EDGE), Advanced Mobile Phone System (AMPS), Worldwide Interoperability for Microwave Access (WiMAX), Universal Mobile Telecommunications System (UMTS), Evolution-Data Optimized (EVDO), Long Term Evolution (LTE), Ultra Mobile Broadband (UMB), Voice over Internet Protocol (VoIP), Unlicensed Mobile Access (UMA), any form of 802.11.xx or Bluetooth.
Computer program logic implementing all or part of the functionality previously described herein may be embodied in various forms, including, but in no way limited to, a source code form, a computer executable form, and various intermediate forms (e.g., forms generated by an assembler, compiler, linker, or locator.) Source code may include a series of computer program instructions implemented in any of various programming languages (e.g., an object code, an assembly language, or a high-level language such as Javascript, C, C++, JAVA, or HTML or scripting languages that are executed by Internet web-broswers) for use with various operating systems or operating environments. The source code may define and use various data structures and communication messages. The source code may be in a computer executable form (e.g., via an interpreter), or the source code may be converted (e.g., via a translator, assembler, or compiler) into a computer executable form.
The invention may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, binary components that, when executed by the CPU, perform particular tasks or implement particular abstract data types and when running, may generate in computer memory or store on disk, various data structures. A data structure may be represented in the disclosure as a manner of organizing data, but is implemented by storing data values in computer memory in an organized way. Data structures may be comprised of nodes, each of which may be comprised of one or more elements, encoded into computer memory locations into which is stored one or more corresponding data values that are related to an item being represented by the node in the data structure. The collection of nodes may be organized in various ways, including by having one node in the data structure being comprised of a memory location wherein is stored the memory address value or other reference, or pointer, to another node in the same data structure. By means of the pointers, the relationship by and among the nodes in the data structure may be organized in a variety of topologies or forms, including, without limitation, lists, linked lists, trees and more generally, graphs. The relationship between nodes may be denoted in the specification by a line or arrow from a designated item or node to another designated item or node. A data structure may be stored on a mass storage device in the form of data records comprising a database, or as a flat, parsable file. The processes may load the flat file, parse it, and as a result of parsing the file, construct the respective data structure in memory. In other embodiment, the data structure is one or more relational tables stored on the mass storage device and organized as a relational database.
The computer program and data may be fixed in any form (e.g., source code form, computer executable form, or an intermediate form) either permanently or transitorily in a tangible storage medium, such as a semiconductor memory device (e.g., a RAM, ROM, PROM, EEPROM, or Flash-Programmable RAM), a magnetic memory device (e.g., a diskette or fixed hard disk), an optical memory device (e.g., a CD-ROM or DVD), a PC card (e.g., PCMCIA card, SD Card), or other memory device, for example a USB key. The computer program and data may be fixed in any form in a signal that is transmittable to a computer using any of various communication technologies, including, but in no way limited to, analog technologies, digital technologies, optical technologies, wireless technologies, networking technologies, and internetworking technologies. The computer program and data may be distributed in any form as a removable storage medium with accompanying printed or electronic documentation (e.g., a disk in the form of shrink wrapped software product or a magnetic tape), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server, website or electronic bulletin board or other communication system (e.g., the Internet or World Wide Web.) It is appreciated that any of the software components of the present invention may, if desired, be implemented in ROM (read-only memory) form. The software components may, generally, be implemented in hardware, if desired, using conventional techniques.
It should be noted that the flow diagrams are used herein to demonstrate various aspects of the invention, and should not be construed to limit the present invention to any particular logic flow or logic implementation. The described logic may be partitioned into different logic blocks (e.g., programs, modules, functions, or subroutines) without changing the overall results or otherwise departing from the true scope of the invention. Oftentimes, logic elements may be added, modified, omitted, performed in a different order, or implemented using different logic constructs (e.g., logic gates, looping primitives, conditional logic, and other logic constructs) without changing the overall results or otherwise departing from the true scope of the invention. Where the disclosure refers to matching or comparisons of numbers, values, or their calculation, these may be implemented by program logic by storing the data values in computer memory and the program logic fetching the stored data values in order to process them in the CPU in accordance with the specified logical process so as to execute the matching, comparison or calculation and storing the result back into computer memory or otherwise branching into another part of the program logic in dependence on such logical process result. The locations of the stored data or values may be organized in the form of a data structure.
The described embodiments of the invention are intended to be exemplary and numerous variations and modifications will be apparent to those skilled in the art. All such variations and modifications are intended to be within the scope of the present invention as defined in the appended claims. Although the present invention has been described and illustrated in detail, it is to be clearly understood that the same is by way of illustration and example only, and is not to be taken by way of limitation. It is appreciated that various features of the invention which are, for clarity, described in the context of separate embodiments may also be provided in combination in a single embodiment. Conversely, various features of the invention which are, for brevity, described in the context of a single embodiment may also be provided separately or in any suitable combination. It is appreciated that the particular embodiment described in the Appendices is intended only to provide an extremely detailed disclosure of the present invention and is not intended to be limiting.
The foregoing description discloses only exemplary embodiments of the invention. Modifications of the above disclosed apparatus and methods which fall within the scope of the invention will be readily apparent to those of ordinary skill in the art. Accordingly, while the present invention has been disclosed in connection with exemplary embodiments thereof, it should be understood that other embodiments may fall within the spirit and scope of the invention as defined by the following claims.
This application is a continuation of copending U.S. patent application Ser. No. 16/435,196, filed Jun. 7, 2019 and entitled, “METHOD AND SYSTEM FOR EDITING AND MAINTAINING A GRAPH SCHEMA,” which claims the benefit of U.S. Provisional Patent Application No. 62/681,912 filed on Jun. 7, 2018, all which is hereby incorporated by reference in their entirety for all purposes. This specification incorporates by reference the appendices attached to the specification and filed herewith.
This invention was made with government support under Grant Nos. DBI-0851052 and 1018554 awarded by the National Science Foundation. The government has certain rights in the invention.
Number | Name | Date | Kind |
---|---|---|---|
6144962 | Weinberg et al. | Nov 2000 | A |
6317752 | Lee et al. | Nov 2001 | B1 |
6529909 | Bowman-Amuah | Mar 2003 | B1 |
6768986 | Cras et al. | Jul 2004 | B2 |
6961728 | Wynblatt et al. | Nov 2005 | B2 |
7080090 | Shah et al. | Jul 2006 | B2 |
7146375 | Egilsson et al. | Dec 2006 | B2 |
7680862 | Chong et al. | Mar 2010 | B2 |
7702639 | Stanley et al. | Apr 2010 | B2 |
7761407 | Stern | Jul 2010 | B1 |
7836063 | Salazar et al. | Nov 2010 | B2 |
7853081 | Thint | Dec 2010 | B2 |
7856416 | Hoffman et al. | Dec 2010 | B2 |
7877350 | Stanfill et al. | Jan 2011 | B2 |
7953695 | Roller et al. | May 2011 | B2 |
7987179 | Ma et al. | Jul 2011 | B2 |
8037108 | Chang | Oct 2011 | B1 |
8060472 | Itai et al. | Nov 2011 | B2 |
8099382 | Liu et al. | Jan 2012 | B2 |
8170981 | Tewksbary | May 2012 | B1 |
8275784 | Cao et al. | Sep 2012 | B2 |
8296200 | Mangipudi et al. | Oct 2012 | B2 |
8312389 | Crawford et al. | Nov 2012 | B2 |
8429179 | Mirhaji | Apr 2013 | B1 |
8521565 | Faulkner et al. | Aug 2013 | B2 |
8538985 | Betawadkar-Norwood et al. | Sep 2013 | B2 |
8583631 | Ganapathi et al. | Nov 2013 | B1 |
8616443 | Butt et al. | Dec 2013 | B2 |
8640056 | Helfman et al. | Jan 2014 | B2 |
8719252 | Miranker et al. | May 2014 | B2 |
8762160 | Lulla | Jun 2014 | B2 |
8799240 | Stowe et al. | Aug 2014 | B2 |
8831070 | Huang et al. | Sep 2014 | B2 |
8843502 | Elson et al. | Sep 2014 | B2 |
8856643 | Drieschner | Oct 2014 | B2 |
8892513 | Forsythe | Nov 2014 | B2 |
8935272 | Ganti et al. | Jan 2015 | B2 |
8943313 | Glew et al. | Jan 2015 | B2 |
8965915 | Ganti et al. | Feb 2015 | B2 |
8990236 | Mizrahy et al. | Mar 2015 | B2 |
8996559 | Ganti et al. | Mar 2015 | B2 |
8996978 | Richstein et al. | Mar 2015 | B2 |
9002860 | Ghemawat | Apr 2015 | B1 |
9171077 | Balmin et al. | Oct 2015 | B2 |
9218365 | Irani et al. | Dec 2015 | B2 |
9244952 | Ganti et al. | Jan 2016 | B2 |
9268950 | Gkoulalas-Divanis et al. | Feb 2016 | B2 |
9396283 | Miranker et al. | Jul 2016 | B2 |
9495429 | Miranker | Nov 2016 | B2 |
9560026 | Worsley | Jan 2017 | B1 |
9607042 | Long | Mar 2017 | B2 |
9613152 | Kucera | Apr 2017 | B2 |
9659081 | Ghodsi et al. | May 2017 | B1 |
9690792 | Bartlett et al. | Jun 2017 | B2 |
9696981 | Martin et al. | Jul 2017 | B2 |
9710526 | Couris et al. | Jul 2017 | B2 |
9710568 | Srinivasan et al. | Jul 2017 | B2 |
9720958 | Bagehorn et al. | Aug 2017 | B2 |
9760602 | Ghodsi et al. | Sep 2017 | B1 |
9769032 | Ghodsi et al. | Sep 2017 | B1 |
9798737 | Palmer | Oct 2017 | B2 |
9836302 | Hunter et al. | Dec 2017 | B1 |
9959337 | Ghodsi et al. | May 2018 | B2 |
9990230 | Stoica et al. | Jun 2018 | B1 |
10095735 | Ghodsi et al. | Oct 2018 | B2 |
10102258 | Jacob et al. | Oct 2018 | B2 |
10176234 | Gould et al. | Jan 2019 | B2 |
10216860 | Miranker et al. | Feb 2019 | B2 |
10248297 | Beechuk et al. | Apr 2019 | B2 |
10296329 | Hunter et al. | May 2019 | B2 |
10324925 | Jacob et al. | Jun 2019 | B2 |
10346429 | Jacob et al. | Jul 2019 | B2 |
10353911 | Reynolds et al. | Jul 2019 | B2 |
10361928 | Ghodsi et al. | Jul 2019 | B2 |
10438013 | Jacob et al. | Oct 2019 | B2 |
10452677 | Jacob et al. | Oct 2019 | B2 |
10452975 | Jacob et al. | Oct 2019 | B2 |
10474501 | Ghodsi et al. | Nov 2019 | B2 |
10474736 | Stoica et al. | Nov 2019 | B1 |
10545986 | Tappan et al. | Jan 2020 | B2 |
10546001 | Nguyen et al. | Jan 2020 | B1 |
D876454 | Knowles et al. | Feb 2020 | S |
10558664 | Armbrust et al. | Feb 2020 | B2 |
D877167 | Knowles et al. | Mar 2020 | S |
D879112 | Hejazi et al. | Mar 2020 | S |
10606675 | Luszczak et al. | Mar 2020 | B1 |
10645548 | Reynolds et al. | May 2020 | B2 |
10664509 | Reeves et al. | May 2020 | B1 |
10673887 | Crabtree et al. | Jun 2020 | B2 |
10678536 | Hunter et al. | Jun 2020 | B2 |
10691299 | Broek et al. | Jun 2020 | B2 |
10691433 | Shankar et al. | Jun 2020 | B2 |
10769130 | Armbrust et al. | Sep 2020 | B1 |
10769535 | Lindsley | Sep 2020 | B2 |
10810051 | Shankar et al. | Oct 2020 | B1 |
10984008 | Jacob et al. | Apr 2021 | B2 |
11068453 | Griffith | Jul 2021 | B2 |
11068475 | Boutros et al. | Jul 2021 | B2 |
11068847 | Boutros et al. | Jul 2021 | B2 |
20020133476 | Reinhardt | Sep 2002 | A1 |
20020143755 | Wynblatt et al. | Oct 2002 | A1 |
20030093597 | Marshak et al. | May 2003 | A1 |
20030120681 | Baclawski | Jun 2003 | A1 |
20030208506 | Greenfield et al. | Nov 2003 | A1 |
20040064456 | Fong et al. | Apr 2004 | A1 |
20050004888 | McCrady et al. | Jan 2005 | A1 |
20050010550 | Potter et al. | Jan 2005 | A1 |
20050010566 | Cushing et al. | Jan 2005 | A1 |
20050234957 | Olson et al. | Oct 2005 | A1 |
20050246357 | Geary et al. | Nov 2005 | A1 |
20050278139 | Glaenzer et al. | Dec 2005 | A1 |
20060100995 | Albornoz et al. | May 2006 | A1 |
20060117057 | Legault et al. | Jun 2006 | A1 |
20060129605 | Doshi | Jun 2006 | A1 |
20060161545 | Pura | Jul 2006 | A1 |
20060168002 | Chesley | Jul 2006 | A1 |
20060218024 | Lulla | Sep 2006 | A1 |
20060235837 | Chong et al. | Oct 2006 | A1 |
20070027904 | Chow et al. | Feb 2007 | A1 |
20070055662 | Edelman et al. | Mar 2007 | A1 |
20070139227 | Speirs et al. | Jun 2007 | A1 |
20070179760 | Smith | Aug 2007 | A1 |
20070203933 | Iversen et al. | Aug 2007 | A1 |
20070271604 | Webster et al. | Nov 2007 | A1 |
20070276875 | Brunswig et al. | Nov 2007 | A1 |
20080046427 | Lee et al. | Feb 2008 | A1 |
20080091634 | Seeman | Apr 2008 | A1 |
20080140609 | Werner et al. | Jun 2008 | A1 |
20080162550 | Fey | Jul 2008 | A1 |
20080162999 | Schlueter et al. | Jul 2008 | A1 |
20080216060 | Vargas | Sep 2008 | A1 |
20080240566 | Thint | Oct 2008 | A1 |
20080256026 | Hays | Oct 2008 | A1 |
20080294996 | Hunt et al. | Nov 2008 | A1 |
20080319829 | Hunt et al. | Dec 2008 | A1 |
20090006156 | Hunt et al. | Jan 2009 | A1 |
20090013281 | Helfman et al. | Jan 2009 | A1 |
20090018996 | Hunt et al. | Jan 2009 | A1 |
20090064053 | Crawford et al. | Mar 2009 | A1 |
20090094416 | Baeza-Yates et al. | Apr 2009 | A1 |
20090106734 | Riesen et al. | Apr 2009 | A1 |
20090119254 | Cross et al. | May 2009 | A1 |
20090132474 | Ma et al. | May 2009 | A1 |
20090132503 | Sun et al. | May 2009 | A1 |
20090138437 | Krishnamoorthy et al. | May 2009 | A1 |
20090150313 | Heilper et al. | Jun 2009 | A1 |
20090157630 | Yuan | Jun 2009 | A1 |
20090182710 | Short et al. | Jul 2009 | A1 |
20090198693 | Pura | Aug 2009 | A1 |
20090234799 | Betawadkar-Norwood et al. | Sep 2009 | A1 |
20090300054 | Fisher et al. | Dec 2009 | A1 |
20100114885 | Bowers et al. | May 2010 | A1 |
20100138388 | Wakeling et al. | Jun 2010 | A1 |
20100223266 | Balmin et al. | Sep 2010 | A1 |
20100235384 | Itai et al. | Sep 2010 | A1 |
20100241644 | Jackson et al. | Sep 2010 | A1 |
20100250576 | Bowers et al. | Sep 2010 | A1 |
20100250577 | Cao et al. | Sep 2010 | A1 |
20100268722 | Yalamanchi et al. | Oct 2010 | A1 |
20100332453 | Prahlad et al. | Dec 2010 | A1 |
20110153047 | Cameron et al. | Jun 2011 | A1 |
20110202560 | Bowers et al. | Aug 2011 | A1 |
20110283231 | Richstein et al. | Nov 2011 | A1 |
20110298804 | Hao et al. | Dec 2011 | A1 |
20120016895 | Butt et al. | Jan 2012 | A1 |
20120036162 | Gimbel | Feb 2012 | A1 |
20120102022 | Miranker et al. | Apr 2012 | A1 |
20120154633 | Rodriguez | Jun 2012 | A1 |
20120179644 | Miranker | Jul 2012 | A1 |
20120254192 | Gelbard | Oct 2012 | A1 |
20120278902 | Martin et al. | Nov 2012 | A1 |
20120284301 | Mizrahy et al. | Nov 2012 | A1 |
20120310674 | Faulkner et al. | Dec 2012 | A1 |
20120330908 | Stowe et al. | Dec 2012 | A1 |
20120330979 | Elson et al. | Dec 2012 | A1 |
20130031208 | Linton et al. | Jan 2013 | A1 |
20130031364 | Glew et al. | Jan 2013 | A1 |
20130041893 | Strike | Feb 2013 | A1 |
20130054517 | Beechuk et al. | Feb 2013 | A1 |
20130110775 | Forsythe | May 2013 | A1 |
20130114645 | Huang et al. | May 2013 | A1 |
20130138681 | Abrams et al. | May 2013 | A1 |
20130156348 | Irani et al. | Jun 2013 | A1 |
20130238667 | Carvalho et al. | Sep 2013 | A1 |
20130262443 | Leida et al. | Oct 2013 | A1 |
20130263019 | Castellanos et al. | Oct 2013 | A1 |
20130321458 | Miserendino et al. | Dec 2013 | A1 |
20140006448 | McCall | Jan 2014 | A1 |
20140019426 | Palmer | Jan 2014 | A1 |
20140067762 | Carvalho | Mar 2014 | A1 |
20140115013 | Anderson | Apr 2014 | A1 |
20140119611 | Prevrhal et al. | May 2014 | A1 |
20140164431 | Tolbert | Jun 2014 | A1 |
20140198097 | Evans | Jul 2014 | A1 |
20140214857 | Srinivasan et al. | Jul 2014 | A1 |
20140229869 | Chiantera et al. | Aug 2014 | A1 |
20140236933 | Schoenbach et al. | Aug 2014 | A1 |
20140244623 | King | Aug 2014 | A1 |
20140279640 | Moreno et al. | Sep 2014 | A1 |
20140279845 | Ganti et al. | Sep 2014 | A1 |
20140280067 | Ganti et al. | Sep 2014 | A1 |
20140280286 | Ganti et al. | Sep 2014 | A1 |
20140280287 | Ganti et al. | Sep 2014 | A1 |
20140337331 | Hassanzadeh et al. | Nov 2014 | A1 |
20140337436 | Hoagland et al. | Nov 2014 | A1 |
20140372434 | Smith et al. | Dec 2014 | A1 |
20150046547 | Vohra et al. | Feb 2015 | A1 |
20150052125 | Ellis et al. | Feb 2015 | A1 |
20150052134 | Bornea et al. | Feb 2015 | A1 |
20150081666 | Long | Mar 2015 | A1 |
20150095391 | Gajjar et al. | Apr 2015 | A1 |
20150120643 | Dantressangle et al. | Apr 2015 | A1 |
20150142829 | Lee et al. | May 2015 | A1 |
20150143248 | Beechuk et al. | May 2015 | A1 |
20150149879 | Miller et al. | May 2015 | A1 |
20150186653 | Gkoulalas-Divanis et al. | Jul 2015 | A1 |
20150213109 | Kassko et al. | Jul 2015 | A1 |
20150234884 | Henriksen | Aug 2015 | A1 |
20150242867 | Prendergast et al. | Aug 2015 | A1 |
20150269223 | Miranker et al. | Sep 2015 | A1 |
20150277725 | Masterson et al. | Oct 2015 | A1 |
20150278273 | Wigington et al. | Oct 2015 | A1 |
20150278335 | Opitz et al. | Oct 2015 | A1 |
20150339572 | Achin et al. | Nov 2015 | A1 |
20150356144 | Chawla et al. | Dec 2015 | A1 |
20150372915 | Shen et al. | Dec 2015 | A1 |
20150379079 | Kota | Dec 2015 | A1 |
20160004820 | Moore | Jan 2016 | A1 |
20160012059 | Balmin et al. | Jan 2016 | A1 |
20160019091 | Leber et al. | Jan 2016 | A1 |
20160055184 | Fokoue-Nkoutche et al. | Feb 2016 | A1 |
20160055261 | Reinhardt et al. | Feb 2016 | A1 |
20160063017 | Bartlett et al. | Mar 2016 | A1 |
20160063271 | Bartlett et al. | Mar 2016 | A1 |
20160092090 | Stojanovic et al. | Mar 2016 | A1 |
20160092474 | Stojanovic et al. | Mar 2016 | A1 |
20160092475 | Stojanovic et al. | Mar 2016 | A1 |
20160092476 | Stojanovic et al. | Mar 2016 | A1 |
20160098418 | Dakshinamurthy et al. | Apr 2016 | A1 |
20160100009 | Zoldi et al. | Apr 2016 | A1 |
20160117358 | Schmid et al. | Apr 2016 | A1 |
20160117362 | Bagehorn et al. | Apr 2016 | A1 |
20160132572 | Chang et al. | May 2016 | A1 |
20160132608 | Rathod | May 2016 | A1 |
20160132787 | Drevo et al. | May 2016 | A1 |
20160147837 | Nguyen et al. | May 2016 | A1 |
20160162785 | Grobman | Jun 2016 | A1 |
20160171380 | Kennel et al. | Jun 2016 | A1 |
20160173338 | Wolting | Jun 2016 | A1 |
20160188789 | Kisiel et al. | Jun 2016 | A1 |
20160203196 | Schnall-Levin et al. | Jul 2016 | A1 |
20160232457 | Gray et al. | Aug 2016 | A1 |
20160275204 | Miranker et al. | Sep 2016 | A1 |
20160283551 | Fokoue-Nkoutche et al. | Sep 2016 | A1 |
20160292206 | Velazquez et al. | Oct 2016 | A1 |
20160314143 | Hiroshige | Oct 2016 | A1 |
20160321316 | Pennefather et al. | Nov 2016 | A1 |
20160322082 | Davis et al. | Nov 2016 | A1 |
20160358102 | Bowers et al. | Dec 2016 | A1 |
20160358103 | Bowers et al. | Dec 2016 | A1 |
20160371288 | Biannic et al. | Dec 2016 | A1 |
20160371355 | Massari et al. | Dec 2016 | A1 |
20170017537 | Razin et al. | Jan 2017 | A1 |
20170032259 | Goranson | Feb 2017 | A1 |
20170053130 | Hughes et al. | Feb 2017 | A1 |
20170075973 | Miranker | Mar 2017 | A1 |
20170132401 | Gopi et al. | May 2017 | A1 |
20170161323 | Simitsis et al. | Jun 2017 | A1 |
20170161341 | Hrabovsky et al. | Jun 2017 | A1 |
20170177729 | Duke et al. | Jun 2017 | A1 |
20170213004 | Fox et al. | Jul 2017 | A1 |
20170220615 | Bendig et al. | Aug 2017 | A1 |
20170220667 | Ghodsi et al. | Aug 2017 | A1 |
20170228405 | Ward et al. | Aug 2017 | A1 |
20170236060 | Ignatyev | Aug 2017 | A1 |
20170316070 | Krishnan et al. | Nov 2017 | A1 |
20170357653 | Bicer et al. | Dec 2017 | A1 |
20170364538 | Jacob et al. | Dec 2017 | A1 |
20170364539 | Jacob et al. | Dec 2017 | A1 |
20170364553 | Jacob et al. | Dec 2017 | A1 |
20170364564 | Jacob et al. | Dec 2017 | A1 |
20170364568 | Reynolds et al. | Dec 2017 | A1 |
20170364569 | Jacob et al. | Dec 2017 | A1 |
20170364570 | Jacob et al. | Dec 2017 | A1 |
20170364694 | Jacob et al. | Dec 2017 | A1 |
20170364703 | Jacob et al. | Dec 2017 | A1 |
20170371881 | Reynolds et al. | Dec 2017 | A1 |
20170371926 | Shiran et al. | Dec 2017 | A1 |
20180025027 | Palmer | Jan 2018 | A1 |
20180025307 | Hui et al. | Jan 2018 | A1 |
20180032327 | Adami et al. | Feb 2018 | A1 |
20180040077 | Smith et al. | Feb 2018 | A1 |
20180046668 | Ghodsi et al. | Feb 2018 | A1 |
20180048536 | Ghodsi et al. | Feb 2018 | A1 |
20180121194 | Hunter et al. | May 2018 | A1 |
20180210936 | Reynolds et al. | Jul 2018 | A1 |
20180262864 | Reynolds et al. | Sep 2018 | A1 |
20180300354 | Liang et al. | Oct 2018 | A1 |
20180300494 | Avidan et al. | Oct 2018 | A1 |
20180314556 | Ghodsi et al. | Nov 2018 | A1 |
20180314705 | Griffith et al. | Nov 2018 | A1 |
20180314732 | Armbrust et al. | Nov 2018 | A1 |
20180330111 | Käbisch et al. | Nov 2018 | A1 |
20190005104 | Prabhu et al. | Jan 2019 | A1 |
20190034491 | Griffith et al. | Jan 2019 | A1 |
20190042606 | Griffith et al. | Feb 2019 | A1 |
20190050445 | Griffith et al. | Feb 2019 | A1 |
20190050459 | Griffith et al. | Feb 2019 | A1 |
20190057107 | Bartlett et al. | Feb 2019 | A1 |
20190065567 | Griffith et al. | Feb 2019 | A1 |
20190065569 | Boutros et al. | Feb 2019 | A1 |
20190066052 | Boutros et al. | Feb 2019 | A1 |
20190079968 | Griffith et al. | Mar 2019 | A1 |
20190095472 | Griffith | Mar 2019 | A1 |
20190121807 | Boutros et al. | Apr 2019 | A1 |
20190155852 | Miranker et al. | May 2019 | A1 |
20190258479 | Hunter et al. | Aug 2019 | A1 |
20190266155 | Jacob et al. | Aug 2019 | A1 |
20190272279 | Jacob et al. | Sep 2019 | A1 |
20190295296 | Gove, Jr. | Sep 2019 | A1 |
20190317961 | Brener et al. | Oct 2019 | A1 |
20190332606 | Kee et al. | Oct 2019 | A1 |
20190347244 | Jacob et al. | Nov 2019 | A1 |
20190347258 | Jacob et al. | Nov 2019 | A1 |
20190347259 | Jacob et al. | Nov 2019 | A1 |
20190347268 | Griffith | Nov 2019 | A1 |
20190347347 | Griffith | Nov 2019 | A1 |
20190370230 | Jacob et al. | Dec 2019 | A1 |
20190370262 | Reynolds et al. | Dec 2019 | A1 |
20190370266 | Jacob et al. | Dec 2019 | A1 |
20190370481 | Jacob et al. | Dec 2019 | A1 |
20200073644 | Shankar et al. | Mar 2020 | A1 |
20200073865 | Jacob et al. | Mar 2020 | A1 |
20200074298 | Jacob et al. | Mar 2020 | A1 |
20200117665 | Jacob et al. | Apr 2020 | A1 |
20200117688 | Sequeda et al. | Apr 2020 | A1 |
20200175012 | Jacob et al. | Jun 2020 | A1 |
20200175013 | Jacob et al. | Jun 2020 | A1 |
20200201854 | Miller | Jun 2020 | A1 |
20200218723 | Jacob et al. | Jul 2020 | A1 |
20200241950 | Luszczak et al. | Jul 2020 | A1 |
20200252766 | Reynolds et al. | Aug 2020 | A1 |
20200252767 | Reynolds et al. | Aug 2020 | A1 |
20200257689 | Armbrust et al. | Aug 2020 | A1 |
20200301684 | Shankar et al. | Sep 2020 | A1 |
20200409768 | Shankar et al. | Dec 2020 | A1 |
20210011901 | Armbrust et al. | Jan 2021 | A1 |
20210019327 | Reynolds et al. | Jan 2021 | A1 |
20210042299 | Migliori | Feb 2021 | A1 |
20210081414 | Jacob et al. | Mar 2021 | A1 |
20210109629 | Reynolds et al. | Apr 2021 | A1 |
20210173848 | Jacob et al. | Jun 2021 | A1 |
20210224250 | Griffith | Jul 2021 | A1 |
20210224330 | Miranker et al. | Jul 2021 | A1 |
Number | Date | Country |
---|---|---|
2820994 | Jan 2014 | CA |
103425734 | Jun 2017 | CN |
2631817 | Aug 2013 | EP |
2631819 | Aug 2013 | EP |
2685394 | Jun 2017 | EP |
2519779 | May 2015 | GB |
2013175181 | Sep 2013 | JP |
2013246828 | Dec 2013 | JP |
2012054860 | Apr 2012 | WO |
2017190153 | Nov 2017 | WO |
2017222927 | Dec 2017 | WO |
2018156551 | Aug 2018 | WO |
2018164971 | Sep 2018 | WO |
Entry |
---|
Stanford University, Protégé Wiki, accessed Feb. 1, 2022 at https://protegewiki.stanford.edu/index.php?title=WebProtegeUsersGuide&oldid=13283&printable=yes (Year: 2015). |
Noy, Natalya F., et al. “Tracking changes during ontology evolution.” International Semantic Web Conference. Springer, Berlin, Heidelberg, 2004. (Year: 2004). |
Tudorache, Tania, et al. “Supporting collaborative ontology development in Protégé.” International Semantic Web Conference. Springer, Berlin, Heidelberg, 2008. (Year: 2008). |
Lembo, Domenico, et al. “Eddy: A Graphical Editor for OWL 2 Ontologies.” IJCAI. 2016. (Year: 2016). |
Lembo, Domenico, et al. “Easy OWL drawing with the graphol visual ontology language.” Fifteenth International Conference on the Principles of Knowledge Representation and Reasoning. 2016. (Year: 2016). |
Nemirovski, German, and Andreas Nolle. “Map-On: A web-based editor for visual ontology mapping.” Semantic Web 8.6 (2017): 969-980. (Year: 2017). |
Barbançon, F., & Miranker, D. P. (2007). SPHINX: Schema integration by example. Journal of Intelligent Information Systems, 29(2), 145-184. (Year: 2007). |
Doan, A., Domingos, P., & Halevy, A. Y. (May 2001). Reconciling schemas of disparate data sources: A machine-learning approach. In Proceedings of the 2001 ACM SIGMOD international conference on Management of data (pp. 509-520). (Year: 2001). |
Nemirovski, German, et al. “Data integration driven ontology design, case study smart city.” Proceedings of the 3rd International Conference on Web Intelligence, Mining and Semantics. 2013. (Year: 2013). |
“Data.World Comes Out Of Stealth To Make Open Data Easier.” Americaninno.com, AustinInno, Jul. 11, 2016, www.americaninno.com/austin/open-data-tech-brett-hurts-startup-data-world-launches/. |
Dwivedi, Mahesh H., Non-Final Office Action dated Jan. 30, 2020 for U.S. Appl. No. 15/454,955. |
Gillin, Paul, “Neo4j Connector Integrates Graph Data With Business Intelligence Tools,” SiliconANGLE, Published Mar. 24, 2020, Retrieved from on Mar. 25, 2020. |
Hu, Xiaoqin, Final Office Action dated Oct. 31, 2019 for U.S. Appl. No. 15/454,969. |
Hu, Xiaoqin, Final Office Action dated Sep. 24, 2019 for U.S. Appl. No. 15/454,981. |
Woo, Isaac M., Non-Final Office Action dated May 5, 2020 for U.S. Appl. No. 16/137,292. |
Yen, Syling, Final Office Action dated Oct. 25, 2019 for U.S. Appl. No. 15/186,519. |
Yotova, Polina, Supplementary European Search Report and Examiner Search Opinion for European Patent Application No. 17815970.3, dated Feb. 21, 2020. |
Angles, R., Gutierrez. C., “The Expressive Power of SPARQL,” Proceedings of the 7th International Semantic Web Conference (ISWC2008). 2008. |
Arenas, M., et al., “A Direct Mapping of Relational Data to RDF,” W3C Recommendation, Sep. 27, 2012, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Beckett, D., Berners-Lee, T., “Turtle—Terse RDF Triple Language,” W3C Team Submission, Jan. 14, 2008, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Beckett, D., Broekstra, J., “SPARQL Query Results XML Format,” W3C Recommendation, Jan. 15, 2008, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Beckett, Dave, “RDF/XML Syntax Specification (Revised),” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Berners-Lee, Tim, “Notation 3,” 2006, Retrieved from the Internet [retrieved on Mar. 7, 2019]. |
Berners-Lee, Tim, “Linked Data,” 2009, Retrieved from the Internet [retrieved on Mar. 7, 2019]. |
Boutros et al., “Computerized Tools to Develop and Manage Data-Driven Projects Collaboratively Via a Networked Computing Platform and Collaborative Datasets,” U.S. Appl. No. 15/985,702, filed May 22, 2018. |
Boutros et al., “Computerized Tools to Facilitate Data Project Development Via Data Access Layering Logic in a Networked Computing Platform Including Collaborative Datasets,” U.S. Appl. No. 15/985,704, filed May 22, 2018. |
Boutros et al., “Dynamic Composite Data Dictionary to Facilitate Data Operations Via Computerized Tools Configured To Access Collaborative Datasets in a Networked Computing Platform,” U.S. Appl. No. 15/985,705, filed May 22, 2018. |
Boutros et al., “Graphical User Interface for a Display Screen or Portion Thereof,” U.S. Appl. No. 29/648,465, filed May 22, 2018. |
Boutros et al., “Graphical User Interface for a Display Screen or Portion Thereof,” U.S. Appl. No. 29/648,466, filed May 22, 2018. |
Boutros et al., “Graphical User Interface for a Display Screen or Portion Thereof,” U.S. Appl. No. 29/648,467, filed May 22, 2018. |
Brener et al., “Computerized Tools Configured to Determine Subsets of Graph Data Arrangements for Linking Relevant Data to Enrich Datasets Associated with a Data-Driven Collaborative Dataset Platform,” U.S. Appl. No. 16/395,036, filed Apr. 25, 2019. |
Brickley, D., Guha, R.V., “RDF Vocabulary Description Language 1.0: RDF Schema,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Buche et al., “Flexible SPARQL Querying of Web Data Tables Driven by an Ontology,” FQAS 2009, LNAI 5822, Springer, 2009, pp. 345-357. |
Bullock, Joshua, Final Office Action dated Jan. 22, 2019 for U.S. Appl. No. 15/439,908. |
Bullock, Joshua, Final Office Action dated Jan. 22, 2019 for U.S. Appl. No. 15/439,911. |
Bullock, Joshua, Final Office Action dated Oct. 30, 2018 for U.S. Appl. No. 15/186,517. |
Bullock, Joshua, Non-Final Office Action dated Jul. 12, 2018 for U.S. Appl. No. 15/186,517. |
Bullock, Joshua, Non-Final Office Action dated Jun. 28, 2018 for U.S. Appl. No. 15/439,908. |
Bullock, Joshua, Non-Final Office Action dated Jun. 28, 2018 for U.S. Appl. No. 15/439,911. |
Clark, K., Feigenbaum, L., Torres, E., “SPARQL Protocol for RDF,” W3C Recommendation, Jan. 15, 2008, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Copenheaver, Blaine R., Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration dated Jul. 5, 2017 for International Patent Application No. PCT/US2017/030474. |
Czajkowski, K., et al., “Grid Information Services for Distributed Resource Sharing,” 10th IEEE International Symposium on High Performance Distributed Computing, pp. 181-184. IEEE Press, New York (2001). |
Dean, M., Schreiber, G., “OWL Web Ontology Language Reference,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Feigenbaum, L., et al., “Semantic Web in Action,” Scientific American, pp. 90-97, Dec. 2007. |
Fernandez, J., et al., “Lightweighting the Web of Data through Compact RDF/HDT,” Lozano J.A., Moreno J.A. (eds) Advances in Artificial Intelligence. CAEPIA 2011. Lecture Notes in Computer Science, vol. 7023. Springer, Berlin, Hidelberg. |
Foster, I., Kesselman, C., “The Grid: Blueprint for a New Computing Infrastructure,” Morgan Kaufmann, San Francisco (1999). |
Foster, I., Kesselman, C., Nick, J., Tuecke, S., “The Physiology of the Grid: An Open Grid Services Architecture for Distributed Systems Integration,” Technical Report, Global Grid Forum (2002). |
Ganti et al., U.S. Appl. No. 14/058,184, filed Oct. 18, 2013 and entitled, “Assisted Query Formation, Validation, and Result Previewing in a Database Having a Complex Schema.” |
Ganti et al., U.S. Appl. No. 14/058,189, filed Oct. 18, 2013 and entitled, “Assisted Query Formation, Validation, and Result Previewing in a Database Having a Complex Schema.” |
Ganti et al., U.S. Appl. No. 14/058,206, filed Oct. 18, 2013 and entitled, “Curated Answers Community Automatically Populated Through User Query Monitoring.” |
Ganti et al., U.S. Appl. No. 14/058,208, filed Oct. 18, 2013 and entitled, “Editable and Searchable Markup Pages Automatically Populated Through User Query Monitoring.” |
Ganti et al., U.S. Appl. No. 61/802,716, filed Mar. 17, 2013 and entitled, “Data Profile Driven Query Builder.” |
Ganti et al., U.S. Appl. No. 61/802,742, filed Mar. 18, 2013 and entitled, “Developing a Social Data Catalog by Crowd-Sourcing.” |
Ganti et al., U.S. Appl. No. 61/802,743, filed Mar. 18, 2013 and entitled, “Creating a Data Catalog by Mining Queries.” |
Ganti et al., U.S. Appl. No. 61/802,744, filed Mar. 18, 2013 and entitled, “Auto-Completion of Queries with Data Object Names and Data Profiles.” |
Garcia-Molina, H., Ullman, J., Widom, J., Database Systems: The Complete Book. Editorial Pearson Prentice Hall. Second Edition. |
Gawinecki, Maciej, “How schema mapping can help in data integration?—integrating the relational databases with ontologies,” ITC School, Computer Science, XXIII Cycle DII, University of Modena and Reggio Emilia, Italy, 2008. |
Girma, Anteneh B., Final Office Action for U.S. Appl. No. 13/278,907, dated Apr. 18, 2013. |
Girma, Anteneh B., Non-Final Office Action for U.S. Appl. No. 13/278,907, dated Jul. 25, 2012. |
Grant, J., Beckett, D., “RDF Test Cases,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Griffith et al., “Aggregation of Ancillary Data Associated with Source Data in a System of Networked Collaborative Datasets,” U.S. Appl. No. 15/927,006, filed Mar. 20, 2018. |
Griffith et al., “Data Ingestion to Generate Layered Dataset Interrelations to Form a System of Networked Collaborative Datasets,” U.S. Appl. No. 15/926,999, filed Mar. 20, 2018. |
Griffith et al., “Extended Computerized Query Language Syntax for Analyzing Multiple Tabular Data Arrangements in Data-Driven Collaborative Projects,” U.S. Appl. No. 16/036,834, filed Jul. 16, 2018. |
Griffith et al., “Layered Data Generation and Data Remediation to Facilitate Formation of Interrelated Data in a System of Networked Collaborative Datasets,” U.S. Appl. No. 15/927,004, filed Mar. 20, 2018. |
Griffith et al., “Link-Formative Auxiliary Queries Applied at Data Ingestion to Facilitate Data Operations in a System of Networked Collaborative Datasets,” U.S. Appl. No. 15/943,633, filed Apr. 2, 2018. |
Griffith et al., “Localized Link Formation to Perform Implicitly Federated Queries Using Extended Computerized Query Language Syntax,” U.S. Appl. No. 16/036,836, filed Jul. 16, 2018. |
Griffith, David Lee, “Determining a Degree of Similarity of a Subset of Tabular Data Arrangements to Subsets of Graph Data Arrangements at Ingestion into a Data-Driven Collaborative Dataset Platform,” U.S. Appl. No. 16/137,297, filed Sep. 20, 2018. |
Griffith, David Lee, “Matching Subsets of Tabular Data Arrangements to Subsets of Graphical Data Arrangements at Ingestion into Data Driven Collaborative Datasets,” U.S. Appl. No. 16/137,292, filed Sep. 20, 2018. |
Griffith, David Lee, “Predictive Determination of Constraint Data for Application with Linked Data in Graph-Based Datasets Associated with a Data-Driven Collaborative Dataset Platform,” U.S. Appl. No. 16/139,374, filed Sep. 24, 2018. |
Haveliwala et al., “Evaluating Strategies for Similarity Search on the Web,” Proceedings of the 11th international conference on World Wide Web, May 7-11, 2002, Honolulu, Hawaii, USA (ACM), p. 432-442. |
Hayes, Patrick, “RDF Semantics,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Heflin, J., “OWL Web Ontology Language Use Cases and Requirements,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Hoang, Hau Hai, Final Office Action dated Jul. 30, 2019 for U.S. Appl. No. 15/186,515. |
Hoang, Hau Hai, Final Office Action dated Nov. 26, 2018 for U.S. Appl. No. 15/186,515. |
Hoang, Hau Hai, Non-Final Office Action dated Apr. 16, 2019 for U.S. Appl. No. 15/186,515. |
Hoang, Hau Hai, Non-Final Office Action dated May 3, 2018 for U.S. Appl. No. 15/186,515. |
Htay, Lin Lin M., Non-Final Office Action dated Sep. 14, 2018 for U.S. Appl. No. 15/186,516. |
Htay, Lin Lin M., Notice of Allowance and Fee(s) Due and Notice of Allowability for U.S. Appl. No. 15/186,516, dated Jan. 25, 2019. |
Hu, Xiaoqin, Final Office Action dated Apr. 5, 2019 for U.S. Appl. No. 15/454,969. |
Hu, Xiaoqin, Final Office Action dated Apr. 5, 2019 for U.S. Appl. No. 15/454,981. |
Hu, Xiaoqin, Non-Final Office Action for U.S. Appl. No. 15/454,969 dated Dec. 7, 2018. |
Hu, Xiaoqin, Non-Final Office Action for U.S. Appl. No. 15/454,981 dated Dec. 12, 2018. |
Hu, Xiaoqin, Non-Final Office Action dated Aug. 1, 2019 for U.S. Appl. No. 15/454,981. |
Hu, Xiaoqin, Non-Final Office Action dated Jul. 26, 2019 for U.S. Appl. No. 15/454,969. |
J. Perez, M. Arenas, C. Gutierrez, “Semantics and Complexity of SPARQL,” ACM Transactions on Database Systems (TODS), Vo. 34, No. 3, Article 16, Publication Date: Aug. 2009. |
Jacob et al., “Collaborative Dataset Consolidation Via Distributed Computer Networks,” U.S. Appl. No. 16/120,057, filed Aug. 31, 2018. |
Jacob et al., “Collaborative Dataset Consolidation Via Distributed Computer Networks,” U.S. Appl. No. 16/287,967, filed Feb. 27, 2019. |
Jacob et al., “Dataset Analysis and Dataset Attribute Inferencing to Form Collaborative Datasets,” U.S. Appl. No. 16/292,120, filed Mar. 4, 2019. |
Jacob et al., “Dataset Analysis and Dataset Attribute Inferencing to Form Collaborative Datasets,” U.S. Appl. No. 16/271,263, filed Feb. 8, 2019. |
Jacob et al., “Management of Collaborative Datasets Via Distributed Computer Networks,” U.S. Appl. No. 16/271,687, filed Feb. 8, 2019. |
Jacob et al., “Management of Collaborative Datasets Via Distributed Computer Networks,” U.S. Appl. No. 16/292,135, filed Mar. 4, 2019. |
Jacob et al., “Platform Management of Integrated Access of Public and Privately-Accessible Datasets Utilizing Federated Query Generation and Schema Rewriting Optimization,” International Patent Application No. PCT/US2018/018906 filed Feb. 21, 2018. |
Jacob et al., “Query Generation for Collaborative Datasets,” U.S. Appl. No. 16/395,043, filed Apr. 25, 2019. |
Jacob et al., “Query Generation for Collaborative Datasets,” U.S. Appl. No. 16/395,049, filed Apr. 25, 2019. |
Joshi, Amit Krishna et al., “Alignment-based Querying of Linked Open Data,” Lecture Notes in Computer Science, 7566, 807-824, 2012. |
Kahn, Yasar et al., “SAFE: Policy Aware SPARQL Query Federation Over RDF Data Cubes,” Proceedings of the 7th International Workshop on Semantic Web Applications and Tools for Life Sciences, Berlin, Germany, Dec. 9-11, 2014. |
Khong, Alexander, Non-Final Office Action for U.S. Appl. No. 15/165,775, dated Jun. 14, 2018. |
Klyne, G., Carroll, J., “Resource Description Framework (RDF): Concepts and Abstract Syntax,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Krishnan et al., U.S. Appl. No. 15/583,966, filed May 1, 2017 and titled “Automatic Generation of Structured Data from Semi-Structured Data.” |
Langedgger, Andreas, “XL Wrap—Spreadsheet-to-RDF Wrapper,” 2009, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Lee, Mark B., Non-Final Office Action for U.S. Appl. No. 13/180,444 dated Jul. 2, 2012. |
Lenz, H.J., Shoshani, A., “Summarizability in OLAP and Statistical Data Bases,” Proceedings of the Ninth International Conference on Scientific and Statistical Database Management, 1997. |
Manola, F., Miller, E., “RDF Primer,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Martin et al., U.S. Appl. No. 13/457,925, filed Apr. 27, 2012 and titled “Incremental Deployment of Computer Software Program Logic.” |
Martin et al., U.S. Appl. No. 61/479,621, filed Apr. 27, 2011 and titled “Incremental Deployment of Computer Software Program Logic.” |
May, P., Ehrlich, H.C., Steinke, T., “ZIB Structure Prediction Pipeline: Composing a Complex Biological Workflow through Web Services,” In: Nagel, W.E., Walter, W.V., Lehner, W. (eds.) Euro-Par 2006. LNCS, vol. 4128, pp. 1148-1158. Springer, Heidelberg (2006). |
McGuiness, D., Van Harmelen, F., “OWL Web Ontology Language Overview,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Miranker, Daniel Paul, “Accessing Relational Databases as Resource Description Framework Databases,” U.S. Appl. No. 61/406,021, filed Oct. 22, 2010. |
Miranker, Daniel Paul, “Automatic Synthesis and Presentation of OLAP Cubes from Semantically Enriched Data Sources,” U.S. Appl. No. 61/362,781, filed Jul. 9, 2010. |
National Center for Biotechnology Information, Website, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Patel-Schneider, P., Hayes, P., Horrocks, I., “OWL Web Ontology Language Semantics and Abstract Syntax,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Perez, J., Arenas, M., Gutierrez, C., “Semantics and Complexity of SPARQL,” In Proceedings of the International Semantic Web Conference (ISWC2006). 2006. |
Prud'hommeaux, E., Seaborne, A., “SPARQL Query Language for RDF,” W3C Recommendation, Jan. 15, 2008, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Raab, Christopher J., Non-Final Office Action dated Jun. 28, 2018 for U.S. Appl. No. 15/186,520. |
Raab, Christopher J., Notice of Allowance and Fee(s) Due and Notice of Allowability for U.S. Appl. No. 15/186,520, dated Jan. 2, 2019. |
RDB2RDF Working Group Charter, Sep. 2009, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Reynolds et al., “Computerized Tool Implementation of Layered Data Files to Discover, Form, or Analyze Dataset Interrelations of Networked Collaborative Datasets,” U.S. Appl. No. 15/454,981, filed Mar. 9, 2017. |
Reynolds et al., “Computerized Tools to Discover, Form, and Analyze Dataset Interrelations Among a System of Networked Collaborative Datasets,” International Patent Application No. PCT/US2018/020812 filed Mar. 3, 2018. |
Reynolds et al., “Interactive Interfaces to Present Data Arrangement Overviews and Summarized Dataset Attributes for Collaborative Datasets,” U.S. Appl. No. 15/454,969, filed Mar. 9, 2017. |
Sahoo, S., et al., “A Survey of Current Approaches for Mapping of Relational Databases to RDF,” W3C RDB2RDF XG Report, Incubator Group, Published Jan. 8, 2009. |
Sequeda, J., Depena, R., Miranker. D., “Ultrawrap: Using SQL Views for RDB2RDF,” Poster in the 8th International Semantic Web Conference (ISWC2009), Washington DC, US, 2009. |
Sequeda, J., et al., “Direct Mapping SQL Databases to the Semantic Web,” Technical Report 09-04. The University of Texas at Austin, Department of Computer Sciences. 2009. |
Sequeda, J., et al., “Ultrawrap: SPARQL Execution on Relational Data,” Technical Report. The University of Texas at Austin, Department of Computer Sciences. 2012. |
Sequeda, J., Tirmizi, S., Miranker, D., “SQL Databases are a Moving Target,” Position Paper for W3C Workshop on RDF Access to Relational Databases, Cambridge, MA, USA, 2007. |
Skevakis, Giannis et al., Metadata management, interoperability and Linked Data publishing support for Natural History Museums, Int J Digit Libr (2014), published online: Apr. 11, 2014; Springer-Verlag Berlin Heidelberg. |
Smith, M., Welty, C., McGuiness, D., “OWL Web Ontology Language Guide,” W3C Recommendation, Feb. 10, 2004, Retrieved from the Internet [retrieved Mar. 7, 2019]. |
Smith, T.F., Waterman, M.S., “Identification of Common Molecular Subsequences,” J. Mol. Biol. 147, 195-197 (1981). |
Tirmizi, S., Sequeda, J., Miranker, D., “Translating SQL Applications to the Semantic Web,” In Proceedings of the 19th International Databases and Expert Systems Application Conference (DEXA2008). Turin, Italy. 2008. |
U.S. Appl. No. 16/251,408, filed Jan. 18, 2019. |
Ultrawrap Mapper, U.S. Appl. No. 62/169,268, filed Jun. 1, 2015 (Expired). |
Vy, Hung T., Final Office Action for U.S. Appl. No. 13/180,444 dated Dec. 3, 2014. |
Vy, Hung T., Final Office Action for U.S. Appl. No. 13/180,444 dated Dec. 9, 2015. |
Vy, Hung T., Final Office Action for U.S. Appl. No. 13/180,444 dated Feb. 22, 2013. |
Vy, Hung T., Non-Final Office Action for U.S. Appl. No. 13/180,444 dated Jun. 18, 2015. |
Vy, Hung T., Non-Final Office Action for U.S. Appl. No. 13/180,444 dated Mar. 26, 2014. |
Vy, Hung T., Non-Final Office Action for U.S. Appl. No. 15/273,930 dated Dec. 20, 2017. |
Yen, Syling, Final Office Action dated Apr. 10, 2019 for U.S. Appl. No. 15/186,519. |
Yen, Syling, Non-Final Office Action dated Feb. 8, 2019 for U.S. Appl. No. 15/186,519. |
Yen, Syling, Non-Final Office Action dated Sep. 12, 2019 for U.S. Appl. No. 15/186,519. |
Young, Lee W., International Searching Authority, Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration for International Patent Application No. PCT/US2017/037846, dated Nov. 9, 2017. |
Young, Lee W., International Searching Authority, Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration for International Patent Application No. PCT/US2018/020812, dated Aug. 8, 2018. |
Young, Lee W., Invitation to Pay Additional Fees And, Where Applicable, Protest Fee, dated Jun. 14, 2018 for International Application No. PCT/US2018/020812. |
Young, Lee W., Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration dated May 29, 2018 for International Patent Application No. PCT/US2018/018906. |
Young, Lee W., Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, or the Declaration for International Application No. PCT/US2011/057334, dated Mar. 22, 2012. |
Nguyen, Kim T., Non-Final Office Action dated Jun. 14, 2018 for U.S. Appl. No. 15/186,514. |
Nguyen, Kim T., Non-Final Office Action dated Mar. 20, 2019 for U.S. Appl. No. 15/454,923. |
Nguyen, Kim T., Notice of Allowance and Fee(s) Due, dated May 15, 2019 for U.S. Appl. No. 15/454,923. |
Niinimaki et al., “An ETL Process for OLAP Using RDF/OWL Ontologies,” Journal on Data Semantics XIII, LNCS 5530, Springer, pp. 97-119, Aug. 12, 2009. |
Pandit et al., “Using Ontology Design Patterns To Define SHACL Shapes,” CEUR Workshop Proceedings, Proceedings of the 9th Workshop on Ontology Design and Patterns (WOP 2018), Monterey, USA, Oct. 9, 2018. |
Parashar et al., U.S. Appl. No. 62/329,982, filed Apr. 29, 2016 and titled “Automatic Parsing of Semi-Structured Data and Identification of Missing Delimiters.” |
Griffith et al., “Transmuting Data Associations Among Data Arrangements to Facilitate Data Operations in a System of Networked Collaborative Datasets,” U.S. Appl. No. 15/943,629, filed Apr. 2, 2018. |
Alaoui et al., “SQL to SPARQL Mapping for RDF querying based on a new Efficient Schema Conversion Technique,” International Journal of Engineering Research & Technology (IJERT); ISSN: 2278-0181; vol. 4 Issue 10, Oct. 1, 2015, Retrieved from internet: https://www.ijert.org/research/sql-to-sparql-mapping-for-rdf-querying-based-on-a-new-efficient-schema-conversion-technique-IJERTV4IS1--1-5.pdf. Retrieved on Oct. 6, 2020. |
Doung, Hien, Non-Final Office Action dated Dec. 9, 2020 for U.S. Appl. No. 16/899,544. |
Ellis, Matthew J., Non-Final Office Action dated Sep. 25, 2020 for U.S. Appl. No. 16/139,374. |
European Patent Office, Extended European Search Report for European Patent Application No. 18757122.9 dated Oct. 15, 2020. |
European Patent Office, Extended European Search Report for European Patent Application No. 18763855.6 dated Sep. 28, 2020. |
Hoang, Hau Hai, Notice of Allowance and Fee(s) Due dated Aug. 19, 2021 for U.S. Appl. No. 16/697,132. |
Nguyen, Bao-Yen Thi, Restriction Requirement dated Jun. 29, 2021 for U.S. Appl. No. 29/648,466. |
Nguyen, Kim T., Non-Final Office Action dated Dec. 10, 2020 for U.S. Appl. No. 16/137,297. |
Nguyen, Kim T., Non-Final Office Action dated Dec. 8, 2020 for U.S. Appl. No. 15/985,704. |
Nguyen, Kim T., Non-Final Office Action dated Jun. 7, 2021 for U.S. Appl. No. 16/457,766. |
Nguyen, Kim T., Non-Final Office Action dated May 11, 2021 for U.S. Appl. No. 16/395,036. |
Nguyen, Kim T., Non-Final Office Action dated Nov. 24, 2020 for U.S. Appl. No. 16/036,834. |
Nguyen, Kim T., Non-Final Office Action dated Nov. 24, 2020 for U.S. Appl. No. 16/036,836. |
Nguyen, Kim T., Non-Final Office Action dated Nov. 27, 2020 for U.S. Appl. No. 15/985,705. |
Nguyen, Kim T., Non-Final Office Action dated Oct. 14, 2020 for U.S. Appl. No. 15/943,629. |
Nguyen, Kim T., Non-Final Office Action dated Oct. 14, 2020 for U.S. Appl. No. 15/943,633. |
Nguyen, Kim T., Non-Final Office Action dated Oct. 27, 2020 for U.S. Appl. No. 15/985,702. |
Nguyen, Kim T., Non-Final Office Action dated Oct. 5, 2020 for U.S. Appl. No. 15/927,004. |
Nguyen, Kim T., Non-Final Office Action dated Oct. 5, 2020 for U.S. Appl. No. 15/927,006. |
Nguyen, Kim T., Non-Final Office Action dated Sep. 21, 2020 for U.S. Appl. No. 15/926,999. |
Nguyen, Kim T., Notice of Allowance and Fee(s) Due dated Aug. 17, 2021 for U.S. Appl. No. 16/428,915. |
Nguyen, Kim T., Notice of Allowance and Fee(s) Due dated Aug. 3, 2021 for U.S. Appl. No. 16/457,766. |
Nguyen, Kim T., Notice of Allowance and Fee(s) Due dated Mar. 16, 2021 for U.S. Appl. No. 15/985,702. |
Nguyen, Kim T., Notice of Allowance and Fee(s) Due dated Mar. 16, 2021 for U.S. Appl. No. 16/137,297. |
Nguyen, Kim T., Notice of Allowance and Fee(s) Due dated Mar. 17, 2021 for U.S. Appl. No. 15/985,704. |
Nguyen, Kim T., Notice of Allowance and Fee(s) Due dated Mar. 31, 2021 for U.S. Appl. No. 15/985,705. |
Raab, Christopher J., Non-Final Office Action dated Jul. 24, 2020 for U.S. Appl. No. 16/271,687. |
Raab, Christopher J., Non-Final Office Action dated Oct. 16, 2020 for U.S. Appl. No. 16/287,967. |
Rachapalli et al., “RETRO: A Framework for Semantics Preserving SQL-to-SPARQL Translation,” The University of Texas at Dallas; Sep. 18, 2011, XP055737294, Retrieved from internet: http://iswc2011.semanticweb.org/fileadmin/iswc/Papers/Workshope/EvoDyn/evodyn_3.pdf. Retrieved on Oct. 6, 2020. |
Spieler, William, Final Office Action dated Mar. 15, 2021 for U.S. Appl. No. 16/435,196. |
Spieler, William, Non-Final Office Action dated Dec. 31, 2020 for U.S. Appl. No. 16/435,196. |
Spieler, William, Non-Final Office Action dated Jul. 9, 2021 for U.S. Appl. No. 16/435,196. |
Uddin, Md I, Non-Final Office Action dated May 13, 2021 for U.S. Appl. No. 16/404,113. |
Uddin, Md I., Final Office Action dated Jan. 1, 2021 for U.S. Appl. No. 16/404,113. |
Uddin, Md I., Non-Final Office Action dated Oct. 6, 2020 for U.S. Appl. No. 16/404,113. |
Number | Date | Country | |
---|---|---|---|
20200097504 A1 | Mar 2020 | US |
Number | Date | Country | |
---|---|---|---|
62681912 | Jun 2018 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 16435196 | Jun 2019 | US |
Child | 16558076 | US |