Asset composition
First Claim
Patent Images
1. A method of matching and composing assets, the method comprising:
- employing a processor executing computer-executable instructions stored on a computer-readable storage medium to implement the following acts;
accessing a plurality of asset specifications, the plurality of asset specifications each including metadata describing compositional properties of respective assets and ports that support composition;
responsive to a composition request, searching the plurality of asset specifications, and the metadata therein, to match a service provided by a first asset with a requirement of a second asset by;
generating a first n-bit hash code for a service section of an interface of a port of the first asset, the service section including service metadata stored in a first asset specification of the plurality of asset specifications that describes the service provided by the first asset, the service metadata including a list of service ground predicates;
generating an additional n-bit hash code for each service ground predicate in the list of service ground predicates;
generating a second n-bit hash code for a requirement section of an interface of a port of the second asset, the requirement section including requirement metadata stored in a second asset specification of the plurality of asset specifications that describes the requirement of the second asset, the requirement metadata including a list of requirement ground predicates;
generating a further n-bit hash code for each predicate in the list of requirement ground predicates;
using a matching algorithm to compare the first n-bit hash code and the second n-bit hash code; and
determining that the second n-bit hash code and the first n-bit hash code are a match based on the matching algorithm;
upon determining that the second n-bit hash code matches the first a n-bit hash code, using another algorithm to identify any matches between the additional predicate n-bit hash codes and the further n-bit hash codes; and
responsive to the composition request, based at least in part upon the second n-bit hash code matching the first n-bit hash code, and based at least in part upon any matches between the additional n-bit hash codes and the further n-bit hash codes, composing an application by linking the ports of the first and second assets.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method facilitating asset composition based, at least in part, upon metadata (e.g., asset specification) describing compositional property(ies) of the asset(s) is provided. Asset specification(s) (e.g., metadata) that describe asset(s) to efficiently search and/or match asset(s) are employed. The system can facilitate matching (e.g., automatically) the particular software component to available server(s). Thus, the system can provide a flexible manner of describing asset(s) and an efficient way of locating matching description(s).
-
Citations
12 Claims
-
1. A method of matching and composing assets, the method comprising:
employing a processor executing computer-executable instructions stored on a computer-readable storage medium to implement the following acts; accessing a plurality of asset specifications, the plurality of asset specifications each including metadata describing compositional properties of respective assets and ports that support composition; responsive to a composition request, searching the plurality of asset specifications, and the metadata therein, to match a service provided by a first asset with a requirement of a second asset by; generating a first n-bit hash code for a service section of an interface of a port of the first asset, the service section including service metadata stored in a first asset specification of the plurality of asset specifications that describes the service provided by the first asset, the service metadata including a list of service ground predicates; generating an additional n-bit hash code for each service ground predicate in the list of service ground predicates; generating a second n-bit hash code for a requirement section of an interface of a port of the second asset, the requirement section including requirement metadata stored in a second asset specification of the plurality of asset specifications that describes the requirement of the second asset, the requirement metadata including a list of requirement ground predicates; generating a further n-bit hash code for each predicate in the list of requirement ground predicates; using a matching algorithm to compare the first n-bit hash code and the second n-bit hash code; and determining that the second n-bit hash code and the first n-bit hash code are a match based on the matching algorithm; upon determining that the second n-bit hash code matches the first a n-bit hash code, using another algorithm to identify any matches between the additional predicate n-bit hash codes and the further n-bit hash codes; and responsive to the composition request, based at least in part upon the second n-bit hash code matching the first n-bit hash code, and based at least in part upon any matches between the additional n-bit hash codes and the further n-bit hash codes, composing an application by linking the ports of the first and second assets. - View Dependent Claims (2, 3, 4)
-
5. A system for matching and composing assets, the system comprising:
-
a memory; and a processor, operatively coupled to the memory, the processor executing computer-executable components configured to; access a plurality of asset specifications, the plurality of asset specifications each including metadata describing compositional properties of respective assets and ports that support composition; responsive to a composition request, search the plurality of asset specifications, and the metadata therein, to match a service provided by a first asset with a requirement of a second asset by; generating a first n-bit hash code for a service section of an interface of a port of the first asset, the service section including service metadata stored in a first asset specification of the plurality of asset specifications that describes the service provided by the first asset, the service metadata including a list of service ground predicates; generating an additional n-bit hash code for each service ground predicate in the list of service ground predicates; generating a second n-bit hash code for a requirement section of an interface of a port of the second asset, the requirement section including requirement metadata stored in a second asset specification of the plurality of asset specifications that describes the requirement of the second asset, the requirement metadata including a list of requirement ground predicates; generating a further n-bit hash code for each predicate in the list of requirement ground predicates; using a matching algorithm to compare the first n-bit hash and the second n-bit hash code; and determining that the second n-bit hash code and the first n-bit hash code are a match based on the matching algorithm; upon determining that the second n-bit hash code matches the first a n-bit hash code, using a backtracking algorithm to identify any matches between the additional predicate n-bit hash codes and the further n-bit hash codes; and responsive to the composition request, based at least in part upon the second n-bit hash code matching the first n-bit hash code, and based at least in part upon any matches between the additional n-bit hash codes and the further n-bit hash codes, composing an application by linking the ports of the first and second assets. - View Dependent Claims (6, 7, 8)
-
-
9. A method of matching and composing assets, the method comprising:
employing a processor executing computer-executable instructions stored on a computer-readable storage medium to implement the following acts; responsive to a composition request, searching a plurality of asset specifications to match a service provided by a first asset with a requirement of a second asset by; generating a first n-bit hash code for a service section of an interface of a port of the first asset, the service section including service metadata stored in a first asset specification that describes the service provided by the first asset, the service metadata including a list of service ground predicates; generating an additional n-bit hash code for each service ground predicate in the list of service ground predicates; generating a second n-bit hash code for a requirement section of an interface of a port of the second asset, the requirement section including requirement metadata stored in a second asset specification that describes the requirement of the second asset, the requirement metadata including a list of requirement ground predicates; generating a further n-bit hash code for each predicate in the list of requirement ground predicates; using a matching algorithm to compare the first n-bit hash code and the second n-bit hash code; and determining that the second n-bit hash code and the first n-bit hash code are a match based on the matching algorithm; upon determining that the second n-bit hash code matches the first a n-bit hash code, using a backtracking algorithm to identify any matches between the additional predicate n-bit hash codes and the further n-bit hash codes; and responsive to the composition request, based at least in part upon the second n-bit hash code matching the first n-bit hash code, and based at least in part upon any matches between the additional n-bit hash codes and the further n-bit hash codes, composing an application by linking the ports of the first and second assets. - View Dependent Claims (10, 11, 12)
Specification