IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0039368
(2011-03-03)
|
등록번호 |
US-8478753
(2013-07-02)
|
발명자
/ 주소 |
|
출원인 / 주소 |
- International Business Machines Corporation
|
대리인 / 주소 |
Schmeiser, Olsen & Watts, LLP
|
인용정보 |
피인용 횟수 :
3 인용 특허 :
14 |
초록
▼
A system and associated method for advanced searching of a service registry for a service description that is most closely matches a service name provided by a user. A Service Oriented Architecture (SOA) service registry system receives the service name and searches the service registry for the serv
A system and associated method for advanced searching of a service registry for a service description that is most closely matches a service name provided by a user. A Service Oriented Architecture (SOA) service registry system receives the service name and searches the service registry for the service description that is an exact match of the service name. Upon determining that the exact match does not exist in the service registry, the SOA service registry system generates an alternative service name list by use of a name parser, a dictionary, and a name composer of the SOA service registry system and calculates respective ranks of alternative service names. The service registry is searched pursuant to respective ranks of the alternative service names and the SOA service registry system returns the service description that is searched by a highest ranked alternative service name from the ranked alternative service name list.
대표청구항
▼
1. A method for advanced searching of a service registry for a service description that most closely matches a service name provided by a user, the method comprising: receiving the service name, by a processor of a computer on which a Service Oriented Architecture (SOA) service registry system runs,
1. A method for advanced searching of a service registry for a service description that most closely matches a service name provided by a user, the method comprising: receiving the service name, by a processor of a computer on which a Service Oriented Architecture (SOA) service registry system runs, wherein the SOA service registry system comprises the service registry, a name parser, a dictionary, and a name composer, and wherein the service registry comprises at least one service description searchable by a respectively associated service name;determining that the service name does not have the service description that is an exact match to the received service name in the service registry;generating a ranked alternative service name list by use of the name parser, the dictionary, and the name composer, wherein the ranked alternative service name list comprises at least one alternative service name and a respective rank of each alternative service name of said at least one alternative service name, wherein the respective rank indicates how closely the alternative service name associated with the respective rank resembles the service name provided by the user;ascertaining that the service description matches the highest ranked alternative service name in the alternative service name list by searching the service registry with said at least one alternative service name in a descending order of the respective ranks of said at least one alternative service name; andcommunicating the service description matching the highest ranked alternative service name to the user. 2. The method of claim 1, said generating comprising: creating a constituent word list comprising at least one constituent word that is a respective dictionary word appearing in the service name as a result of parsing the service name into a set of dictionary words by the name parser;associating a respective weight to each constituent word of said at least one constituent word, wherein said respective weight associated with said each constituent word is predefined by the SOA service registry system;producing a respective synonym list for said each constituent word as a result of running the dictionary, the respective synonym list comprising at least one synonym of said each constituent word as located in the dictionary;associating a respective weight to each synonym in the respective synonym list for said each constituent word, wherein said respective weight associated with said each synonym is predefined by the SOA service registry system;composing at least one alternative service name by combining said at least one constituent word from the constituent word list and said at least one synonym from the respective synonym list pursuant to a sequence in the service name by use of the name composer;calculating a respective rank for said at least one alternative service name by adding the respective weights of all words employed in each alternative service name from said composing;rendering the ranked alternative service name list by associating the respective rank with said each alternative service name. 3. The method of claim 2, wherein the respective weight for said each constituent word is predefined in a first range of positive integers greater than one hundred (100), and wherein the respective weight for said each synonym of said each constituent word is predefined in a second range of zero (0) and positive integers less than five (5) such that a first alternative service name comprising more constituent words ranks higher than a second alternative service name comprising more synonyms in place of constituent words of the service name input by the user. 4. The method of claim 1, said ascertaining comprising: sorting the ranked alternative service name list by respective rank of said each alternative service name; andsearching the service registry for the service description with said at least one alternative service name from a top entry of the ranked alternative service name such that the service description is associated with the highest ranked alternative service name. 5. The method of claim 1, said ascertaining comprising: searching a top rank by locating a greatest value among all ranks in the ranked alternative service name list; andlooking up the service registry for the service description with a first alternative service name associated with the top rank from said searching such that the service description is associated with the highest ranked alternative service name. 6. A computer program product comprising: a computer readable storage device having a computer readable program code embodied therein, said computer readable program code containing instructions that, upon being executed by a processor of a computer, perform a method for advanced searching of a service registry for a service description that most closely matches a service name provided by a user, said method comprising:said processor receiving the service name, wherein the SOA service registry system comprises the service registry, a name parser, a dictionary, and a name composer, and wherein the service registry comprises at least one service description searchable by a respectively associated service name;said processor determining that the service name does not have the service description that is an exact match to the received service name in the service registry;said processor generating a ranked alternative service name list by use of the name parser, the dictionary, and the name composer, wherein the ranked alternative service name list comprises at least one alternative service name and a respective rank of each alternative service name of said at least one alternative service name, wherein the respective rank indicates how closely the alternative service name associated with the respective rank resembles the service name provided by the user;said processor ascertaining that the service description matches the highest ranked alternative service name in the alternative service name list by searching the service registry with said at least one alternative service name in a descending order of the respective ranks of said at least one alternative service name; andsaid processor communicating the service description matching the highest ranked alternative service name to the user. 7. The computer program product of claim 6, said generating comprising: creating a constituent word list comprising at least one constituent word that is a respective dictionary word appearing in the service name as a result of parsing the service name into a set of dictionary words by the name parser;associating a respective weight to each constituent word of said at least one constituent word, wherein said respective weight associated with said each constituent word is predefined by the SOA service registry system;producing a respective synonym list for said each constituent word as a result of running the dictionary, the respective synonym list comprising at least one synonym of said each constituent word as located in the dictionary;associating a respective weight to each synonym in the respective synonym list for said each constituent word, wherein said respective weight associated with said each synonym is predefined by the SOA service registry system;composing at least one alternative service name by combining said at least one constituent word from the constituent word list and said at least one synonym from the respective synonym list pursuant to a sequence in the service name by use of the name composer;calculating a respective rank for said at least one alternative service name by adding the respective weights of all words employed in each alternative service name from said composing;rendering the ranked alternative service name list by associating the respective rank with said each alternative service name. 8. The computer program product of claim 7, wherein the respective weight for said each constituent word is predefined in a first range of positive integers greater than one hundred (100), and wherein the respective weight for said each synonym of said each constituent word is predefined in a second range of zero (0) and positive integers less than five (5) such that a first alternative service name comprising more constituent words ranks higher than a second alternative service name comprising more synonyms in place of constituent words of the service name input by the user. 9. The computer program product of claim 6, said ascertaining comprising: sorting the ranked alternative service name list by respective rank of said each alternative service name; andsearching the service registry for the service description with said at least one alternative service name from a top entry of the ranked alternative service name such that the service description is associated with the highest ranked alternative service name. 10. The computer program product of claim 6, said ascertaining comprising: searching a top rank by locating a greatest value among all ranks in the ranked alternative service name list; andlooking up the service registry for the service description with a first alternative service name associated with the top rank from said searching such that the service description is associated with the highest ranked alternative service name. 11. A computer system comprising a processor, a memory coupled to the processor, and a computer readable storage device coupled to the processor, said storage device containing program code configured to be executed by the processor via the memory to implement a method for advanced searching of a service registry for a service description that most closely matches a service name provided by a user, said method comprising: said processor receiving the service name wherein the SOA service registry system comprises the service registry, a name parser, a dictionary, and a name composer, and wherein the service registry comprises at least one service description searchable by a respectively associated service name;said processor determining that the service name does not have the service description that is an exact match to the received service name in the service registry;said processor generating a ranked alternative service name list by use of the name parser, the dictionary, and the name composer, wherein the ranked alternative service name list comprises at least one alternative service name and a respective rank of each alternative service name of said at least one alternative service name, wherein the respective rank indicates how closely the alternative service name associated with the respective rank resembles the service name provided by the user;said processor ascertaining that the service description matches the highest ranked alternative service name in the alternative service name list by searching the service registry with said at least one alternative service name in a descending order of the respective ranks of said at least one alternative service name; andsaid processor communicating the service description matching the highest ranked alternative service name to the user. 12. The computer system of claim 11, said generating comprising: creating a constituent word list comprising at least one constituent word that is a respective dictionary word appearing in the service name as a result of parsing the service name into a set of dictionary words by the name parser;associating a respective weight to each constituent word of said at least one constituent word, wherein said respective weight associated with said each constituent word is predefined by the SOA service registry system;producing a respective synonym list for said each constituent word as a result of running the dictionary, the respective synonym list comprising at least one synonym of said each constituent word as located in the dictionary;associating a respective weight to each synonym in the respective synonym list for said each constituent word, wherein said respective weight associated with said each synonym is predefined by the SOA service registry system;composing at least one alternative service name by combining said at least one constituent word from the constituent word list and said at least one synonym from the respective synonym list pursuant to a sequence in the service name by use of the name composer;calculating a respective rank for said at least one alternative service name by adding the respective weights of all words employed in each alternative service name from said composing;rendering the ranked alternative service name list by associating the respective rank with said each alternative service name. 13. The computer system of claim 12, wherein the respective weight for said each constituent word is predefined in a first range of positive integers greater than one hundred (100), and wherein the respective weight for said each synonym of said each constituent word is predefined in a second range of zero (0) and positive integers less than five (5) such that a first alternative service name comprising more constituent words ranks higher than a second alternative service name comprising more synonyms in place of constituent words of the service name input by the user. 14. The computer system of claim 11, said ascertaining comprising: sorting the ranked alternative service name list by respective rank of said each alternative service name; andsearching the service registry for the service description with said at least one alternative service name from a top entry of the ranked alternative service name such that the service description is associated with the highest ranked alternative service name. 15. The computer system of claim 11, said ascertaining comprising: searching a top rank by locating a greatest value among all ranks in the ranked alternative service name list; andlooking up the service registry for the service description with a first alternative service name associated with the top rank from said searching such that the service description is associated with the highest ranked alternative service name. 16. A process for supporting computer infrastructure, said process comprising providing at least one support service for at least one of creating, integrating, hosting, maintaining, and deploying computer-readable code in a computing system, wherein the code in combination with the computing system is capable of performing a method for advanced searching of a service registry for a service description that most closely matches a service name provided by a user, said method comprising: receiving the service name, by a processor of a computer on which a Service Oriented Architecture (SOA) service registry system runs, wherein the SOA service registry system comprises the service registry, a name parser, a dictionary, and a name composer, and wherein the service registry comprises at least one service description searchable by a respectively associated service name;determining that the service name does not have the service description that is an exact match to the received service name in the service registry;generating a ranked alternative service name list by use of the name parser, the dictionary, and the name composer, wherein the ranked alternative service name list comprises at least one alternative service name and a respective rank of each alternative service name of said at least one alternative service name, wherein the respective rank indicates how closely the alternative service name associated with the respective rank resembles the service name provided by the user;ascertaining that the service description matches the highest ranked alternative service name in the alternative service name list by searching the service registry with said at least one alternative service name in a descending order of the respective ranks of said at least one alternative service name; andcommunicating the service description matching the highest ranked alternative service name to the user. 17. The process of claim 16, said generating comprising: creating a constituent word list comprising at least one constituent word that is a respective dictionary word appearing in the service name as a result of parsing the service name into a set of dictionary words by the name parser;associating a respective weight to each constituent word of said at least one constituent word, wherein said respective weight associated with said each constituent word is predefined by the SOA service registry system;producing a respective synonym list for said each constituent word as a result of running the dictionary, the respective synonym list comprising at least one synonym of said each constituent word as located in the dictionary;associating a respective weight to each synonym in the respective synonym list for said each constituent word, wherein said respective weight associated with said each synonym is predefined by the SOA service registry system;composing at least one alternative service name by combining said at least one constituent word from the constituent word list and said at least one synonym from the respective synonym list pursuant to a sequence in the service name by use of the name composer;calculating a respective rank for said at least one alternative service name by adding the respective weights of all words employed in each alternative service name from said composing;rendering the ranked alternative service name list by associating the respective rank with said each alternative service name. 18. The process of claim 17, wherein the respective weight for said each constituent word is predefined in a first range of positive integers greater than one hundred (100), and wherein the respective weight for said each synonym of said each constituent word is predefined in a second range of zero (0) and positive integers less than five (5) such that a first alternative service name comprising more constituent words ranks higher than a second alternative service name comprising more synonyms in place of constituent words of the service name input by the user. 19. The process of claim 16, said ascertaining comprising: sorting the ranked alternative service name list by respective rank of said each alternative service name; andsearching the service registry for the service description with said at least one alternative service name from a top entry of the ranked alternative service name such that the service description is associated with the highest ranked alternative service name. 20. The process of claim 16, said ascertaining comprising: searching a top rank by locating a greatest value among all ranks in the ranked alternative service name list; andlooking up the service registry for the service description with a first alternative service name associated with the top rank from said searching such that the service description is associated with the highest ranked alternative service name.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.