Using ontology to discover API requirements
First Claim
1. A computer-implemented method for discovering a specified application programming interface (API) service capability, the computer-implemented method comprising:
- generating, by a computer, a search statement related to the specified API service capability;
constructing, by the computer, a data structure in a computer readable storage medium, wherein the data structure includes characteristic nodes that are each associated with data describing a particular API characteristic, and wherein associated data for respective characteristic nodes is arranged in accordance with one or more API service ontologies;
using, by the computer, the search statement to search the data structure;
determining, by the computer, whether the search finds a match between data included in the search statement and particular ontological data associated with one or more of the characteristic nodes of the data structure representing API service capabilities;
responsive to the computer determining that no match is found between the data included in the search statement and data associated with any characteristic node of the data structure, modifying, by the computer, the search statement by inserting one or more terms related to the specified API service capability not previously included in the search statement and removing from the search statement previously included search statement elements corresponding to the inserted one or more terms related to the specified API service capability;
using, by the computer, the modified search statement to search the data structure to determine whether a match is found between data included in the modified search statement and the particular ontological data associated with the one or more of the characteristic nodes of the data structure;
responsive to the computer finding no match between any data included in the modified search statement and data associated with any of the characteristic nodes, determining, by the computer, that the specified API service capability is not available and creating, by the computer, a new characteristic node in the data structure associated with selected data included in the modified search statement;
setting, by the computer, a search weight for the new characteristic node to one, wherein the search weight indicates how many users previously searched for the specified API service capability; and
notifying, by the computer, one or more API providers of the created new characteristic node, the search weight associated with the new characteristic node, and of the selected data included in the modified search statement to enable the one or more API providers to supply APIs with capabilities that meet API consumer requirements.
1 Assignment
0 Petitions
Accused Products
Abstract
An embodiment of the invention is provided for use in discovering a specified API service capability. The embodiment includes generating a search statement related to the specified API service capability. The embodiment further includes constructing a data structure, wherein the data structure includes one or more characteristic nodes that are each associated with data describing a particular API characteristic, and the associated data for respective characteristic nodes is ordered in accordance with one or more API service ontologies. The search statement is used to selectively search the data structure. The embodiment determines whether the search finds a match between data included in the search statement, and particular ontological data associated with one or more of the characteristic nodes of the data structure.
11 Citations
15 Claims
-
1. A computer-implemented method for discovering a specified application programming interface (API) service capability, the computer-implemented method comprising:
-
generating, by a computer, a search statement related to the specified API service capability; constructing, by the computer, a data structure in a computer readable storage medium, wherein the data structure includes characteristic nodes that are each associated with data describing a particular API characteristic, and wherein associated data for respective characteristic nodes is arranged in accordance with one or more API service ontologies; using, by the computer, the search statement to search the data structure; determining, by the computer, whether the search finds a match between data included in the search statement and particular ontological data associated with one or more of the characteristic nodes of the data structure representing API service capabilities; responsive to the computer determining that no match is found between the data included in the search statement and data associated with any characteristic node of the data structure, modifying, by the computer, the search statement by inserting one or more terms related to the specified API service capability not previously included in the search statement and removing from the search statement previously included search statement elements corresponding to the inserted one or more terms related to the specified API service capability; using, by the computer, the modified search statement to search the data structure to determine whether a match is found between data included in the modified search statement and the particular ontological data associated with the one or more of the characteristic nodes of the data structure; responsive to the computer finding no match between any data included in the modified search statement and data associated with any of the characteristic nodes, determining, by the computer, that the specified API service capability is not available and creating, by the computer, a new characteristic node in the data structure associated with selected data included in the modified search statement; setting, by the computer, a search weight for the new characteristic node to one, wherein the search weight indicates how many users previously searched for the specified API service capability; and notifying, by the computer, one or more API providers of the created new characteristic node, the search weight associated with the new characteristic node, and of the selected data included in the modified search statement to enable the one or more API providers to supply APIs with capabilities that meet API consumer requirements. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer program product executable in a computer readable storage medium by a computer for discovering a specified application programming interface (API) service capability, the computer program product comprising:
-
instructions for generating a search statement related to the specified API service capability; instructions for constructing a data structure in the computer readable storage medium, wherein the data structure includes characteristic nodes that are each associated with data describing a particular API characteristic, and wherein associated data for respective characteristic nodes is arranged in accordance with one or more API service ontologies; instructions for using the search statement to search the data structure; instructions for determining whether the search finds a match between data included in the search statement and particular ontological data associated with one or more of the characteristic nodes of the data structure representing API service capabilities; instructions, responsive to determining that no match is found between the data included in the search statement and data associated with any characteristic node of the data structure, for modifying the search statement by inserting one or more terms related to the specified API service capability not previously included in the search statement and for removing from the search statement previously included search statement elements corresponding to the inserted one or more terms related to the specified API service capability; instructions for using the modified search statement to search the data structure to determine whether a match is found between data included in the modified search statement and the particular ontological data associated with the one or more of the characteristic nodes of the data structure; instructions, responsive to finding no match between any data included in the modified search statement and data associated with any of the characteristic nodes, for determining that the specified API service capability is not available and for creating a new characteristic node in the data structure associated with selected data included in the modified search statement; instructions for setting a search weight for the new characteristic node to one, wherein the search weight indicates how many users previously searched for the specified API service capability; and instructions for notifying one or more API providers of the created new characteristic node and of the selected data included in the modified search statement to enable the one or more API providers to supply APls with capabilities that meet API consumer requirements. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A computer system for discovering a specified application programming interface (API) service capability, the computer system comprising:
-
a bus; a computer readable storage medium connected to the bus, wherein program code is stored on the computer readable storage medium; and a processor unit connected to the bus, wherein the processor unit executes the program code; to generate a search statement related to the specified API service capability; to construct a data structure in the computer readable storage medium, wherein the data structure includes characteristic nodes that are each associated with data describing a particular API characteristic, and wherein associated data for respective characteristic nodes is arranged in accordance with one or more API service ontologies; to use the search statement to search the data structure; to determine whether the search finds a match between data included in the search statement and particular ontological data associated with one or more of the characteristic nodes of the data structure representing API service capabilities; to modify the search statement by inserting one or more terms related to the specified API service capability not previously included in the search statement and removing from the search statement previously included search statement elements corresponding to the inserted one or more terms related to the specified API service capability in response to determining that no match is found between the data included in the search statement and data associated with any characteristic node of the data structure; to use the modified search statement to search the data structure to determine whether a match is found between data included in the modified search statement and the particular ontological data associated with the one or more of the characteristic nodes of the data structure; to determine that the specified API service capability is not available and to create a new characteristic node in the data structure associated with selected data included in the modified search statement in response to finding no match between any data included in the modified search statement and data associated with any of the characteristic nodes; to set a search weight for the new characteristic node to one, wherein the search weight indicates how many users previously searched for the specified API service capability; and to notify one or more API providers of the created new characteristic node and of the selected data included in the modified search statement to enable the one or more API providers to supply APIs with capabilities that meet API consumer requirements.
-
Specification