US2023169360A1PendingUtilityA1

Generating ontologies from programmatic specifications

Assignee: ACCENTURE GLOBAL SOLUTIONS LTDPriority: Nov 29, 2021Filed: Nov 29, 2022Published: Jun 1, 2023
Est. expiryNov 29, 2041(~15.3 yrs left)· nominal 20-yr term from priority
G06F 16/212G06N 5/022G06F 16/9024G06F 16/367G06F 16/35G06N 20/00G06N 5/02G06N 5/01
48
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Implementations include methods, systems, computer-readable storage medium for generating ontologies from programmatic specifications. A method includes receiving data indicating a configuration for a data crawler; extracting, by the data crawler, representations of a subset of programmatic specifications; generating a knowledge graph model of the subset of the programmatic specifications; refining the knowledge graph model by classifying nodes in the knowledge graph model to obtain a refined knowledge graph model; and generating an ontology from the refined knowledge graph model. Refining the knowledge graph model comprises: iteratively classifying nodes of the knowledge graph model and refining the knowledge graph model based on the classifications of the nodes to obtain the refined knowledge graph model. the programmatic specifications include application programming interface specifications or databases of tables.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A computer-implemented method comprising:
 receiving data indicating a configuration for a data crawler;   extracting, by the data crawler, representations of a subset of programmatic specifications;   generating a knowledge graph model of the subset of the programmatic specifications;   refining the knowledge graph model by classifying nodes in the knowledge graph model to obtain a refined knowledge graph model; and   generating an ontology from the refined knowledge graph model.   
     
     
         2 . The method of  claim 1 , wherein:
 the knowledge graph model includes nodes and edges;   a first node represents a first object type;   a second node represents a second object type;   attributes of the first node represent attributes of the first object type; and   an edge between the first node and a second node represents an attribute of the first object type that references the second object type.   
     
     
         3 . The method of  claim 1 , wherein:
 classifying the nodes in the knowledge graph model comprises classifying a node as matching a category; and   refining the knowledge graph model comprises:
 in response to classifying the node as matching the category, applying a refinement policy for the category. 
   
     
     
         4 . The method of  claim 3 , wherein applying the refinement policy for the category comprises removing the node from the knowledge graph model. 
     
     
         5 . The method of  claim 3 , wherein applying the refinement policy for the category comprises collapsing the node into another node of the knowledge graph model. 
     
     
         6 . The method of  claim 5 , wherein collapsing the node into the another node of the knowledge graph model comprises collapsing attributes of the node into the another node. 
     
     
         7 . The method of  claim 5 , wherein collapsing the node into the another node of the knowledge graph model comprises connecting edges of the node to the another node. 
     
     
         8 . The method of  claim 1 , wherein classifying the nodes in the knowledge graph model comprises evaluating the knowledge graph model using a set of classifiers, each classifier of the set of classifiers being associated with a type category. 
     
     
         9 . The method of  claim 8 , comprising:
 receiving policy data identifying the set of classifiers for evaluating the knowledge graph model.   
     
     
         10 . The method of  claim 9 , wherein the policy data is received as user input. 
     
     
         11 . The method of  claim 8 , wherein refining the knowledge graph model comprises:
 evaluating the knowledge graph model using a first classifier of the set of classifiers;   based on the evaluation using the first classifier, removing nodes of the knowledge graph model to obtain a first refined knowledge graph model;   evaluating the first refined knowledge graph model using a second classifier of the set of classifiers; and   based on the evaluation using the second classifier, removing nodes of the knowledge graph model to obtain a second refined knowledge graph model.   
     
     
         12 . The method of  claim 1 , wherein refining the knowledge graph model comprises:
 iteratively classifying nodes of the knowledge graph model and refining the knowledge graph model based on the classifications of the nodes to obtain the refined knowledge graph model.   
     
     
         13 . The method of  claim 1 , comprising:
 refining the knowledge graph model by:
 iteratively performing, on the knowledge graph model, a series of steps, each step including a classification sub-step and a refinement sub-step, until a similarity between a second refined knowledge graph model output by a final step of the series of steps and a first refined knowledge graph model output by the final step of the series of steps in the immediately previous iteration satisfies similarity criteria; and 
   determining to generate the ontology from the second refined knowledge graph model.   
     
     
         14 . The method of  claim 1 , comprising:
 refining the knowledge graph model by:
 applying a set of classifiers and refiners to the knowledge graph model to obtain a first refined knowledge graph model; and 
 determining that a similarity between the first refined knowledge graph model and the knowledge graph model satisfies similarity criteria; and 
   in response to determining that the similarity between the first refined knowledge graph model and the knowledge graph model satisfies similarity criteria, determining to generate the ontology from the first refined knowledge graph model.   
     
     
         15 . The method of  claim 1 , wherein the programmatic specifications comprise application programming interface (API) specifications. 
     
     
         16 . The method of  claim 1 , wherein the programmatic specifications comprise databases of tables. 
     
     
         17 . The method of  claim 1 , comprising presenting a visual representation of the ontology on a user interface. 
     
     
         18 . The method of  claim 1 , wherein the data indicating the configuration for the data crawler is received as user input. 
     
     
         19 . A non-transitory computer-readable storage medium coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations comprising:
 receiving data indicating a configuration for a data crawler;   extracting, by the data crawler, representations of a subset of programmatic specifications;   generating a knowledge graph model of the subset of the programmatic specifications;   refining the knowledge graph model by classifying nodes in the knowledge graph model to obtain a refined knowledge graph model; and   
       generating an ontology from the refined knowledge graph model. 
     
     
         20 . A system, comprising:
 a computing device; and   a computer-readable storage device coupled to the computing device and having instructions stored thereon which, when executed by the computing device, cause the computing device to perform operations comprising:
 receiving data indicating a configuration for a data crawler; 
 extracting, by the data crawler, representations of a subset of programmatic specifications; 
 generating a knowledge graph model of the subset of the programmatic specifications; 
 refining the knowledge graph model by classifying nodes in the knowledge graph model to obtain a refined knowledge graph model; and 
 generating an ontology from the refined knowledge graph model.

Join the waitlist — get patent alerts

Track US2023169360A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.