CN106570187A - Ontological-concept-similarity-based software component retrieving method - Google Patents

Ontological-concept-similarity-based software component retrieving method Download PDF

Info

Publication number
CN106570187A
CN106570187A CN201611001249.XA CN201611001249A CN106570187A CN 106570187 A CN106570187 A CN 106570187A CN 201611001249 A CN201611001249 A CN 201611001249A CN 106570187 A CN106570187 A CN 106570187A
Authority
CN
China
Prior art keywords
tree
component
concept
inquiry
description
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201611001249.XA
Other languages
Chinese (zh)
Other versions
CN106570187B (en
Inventor
柯昌博
肖甫
王少辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Post and Telecommunication University
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing Post and Telecommunication University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Post and Telecommunication University filed Critical Nanjing Post and Telecommunication University
Priority to CN201611001249.XA priority Critical patent/CN106570187B/en
Publication of CN106570187A publication Critical patent/CN106570187A/en
Application granted granted Critical
Publication of CN106570187B publication Critical patent/CN106570187B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses an ontological-concept-similarity-based software component retrieving method. The method comprises: a user sends a component retrieving request to a software component base according to a need and the software component base constructs a corresponding semantic ontological tree based on a component demand of the user; according to the user demand, the software component base retrieves a corresponding component description ontological tree from an OWL description document library of the component; fuzzy matching is carried out on the component description ontological tree and a user need ontological tree; if the component description ontological tree does not match the user need ontological tree, component restructuring is carried out on the mismatched component; with a KMP algorithm, modified re-matching is carried out on similarity concepts of ontological tree inquiring; and according to automatic mapping of the OWL description document of the component and the corresponding component, the user retrieves a corresponding component from the component base. A target component can be discovered precisely by using semantic similarity, so that the component inquiring efficiency and reuse rate can be improved and the development period of the software can be shortened.

Description

A kind of software component retrieval method based on Ontological concept similarity
Technical field
The invention belongs to technical field of software engineering, is related to a kind of software component retrieval method based on body, particularly A kind of software component retrieval method based on Ontological concept similarity.
Background technology
With the fast development of software engineering technology, component-oriented and the software development methodology of service have become vast soft The exploitation main flow of part developer.And the maximum object that relies on of the software development methodology of component-oriented is component base.To software structure The method of expression and the inquiry of part is a lot.At present the component library system of main flow to the description of component all using feature based or The faceted description method of XML.
In gentle and quiet, Zhao Haiyan, Zhang Wei, Jin Zhi " software product of feature based model is derived automatically from method survey [J]. Journal of Software, 2016,1:002 " a kind of method that utilization characteristic model and taxonomy model are derived automatically from software component is mentioned in, is It is derived automatically from software product and provides support.But the method for feature based lack the careful research to characteristic model organization framework and Illustrate, redundancy and confusion of the characteristic model in the form of expression is result in a certain extent, also cause domain analysis people Member is difficult effectively to carry out field modeling activity in practice.Wang Y, Wang B etc. is in " A Component Retrieval Tree Matching Algorithm Based on a Faceted Classification Scheme[J] .Cybernetics and Information Technologies, 2015,15 (1):A kind of facet classification is mentioned in 14-23 " Software component retrieval method framework with it is theoretical, the component of certain specific area can be inquired about, improve inquiry efficiency and Accuracy.But, under conditions of semantic net, the context language of field component cannot be described using the component description method of facet Justice, and the recall ratio and precision ratio that are based on the querying method of keyword or faceted description are extremely limited, it is impossible to meet software and open The query demand of the personnel of sending out.
As software category is significantly increased the expansion with software size, it is semantically similar and in the different component of grammer Increase therewith, and existing method is difficult with semantic similarity and accurately finds target member, increases the reusability of component, carries The efficiency of high software development.The present invention is based on body, inquires about target member using semantic similarity, and that improves component looks into standard Rate, and then shorten the construction cycle of software.
The content of the invention
The purpose of the present invention is to provide a kind of based on Ontological concept similarity to overcome above-mentioned the deficiencies in the prior art Software component retrieval method, the method describes component by using body web language (OWL), and is translated into body tree and enters Row fuzzy matching, then recombinates to the component of mismatch, and the similar concept for inquiring about body tree is repaiied using KMP algorithms Change to improve the precision ratio of component retrieval, improve the efficiency of software development.
In order to solve the problems referred to above of prior art, the present invention is employed the following technical solutions.
A kind of software component retrieval method based on Ontological concept similarity of the present invention, comprises the following steps:
Step one, user send component retrieval request to software component library according to demand, and software component library receives user's After request, corresponding Ontology tree is built according to the component demand of user;
Step 2, described software component library are described in document library to coarseness according to the demand of user from the OWL of component Retrieve corresponding component description body tree;
Step 3, described component description body tree and user's request body tree are carried out into fuzzy matching;
If step 4, described component description body tree are unsuccessful with matching for user's request body tree, to mismatch Component carry out component restructuring;And using KMP algorithms the similar concept for inquiring about body tree is modified and match again;
Step 5, the automatic mapping that document and corresponding component are described according to the OWL of component, make user examine from component base Rope is to corresponding component.
In described step two, described describing from the OWL of component retrieve in document library corresponding component description sheet Body tree, including procedure below:
(21) document is described using the OWL that OWL is described so as to form component to each field component, is then utilized XPath extracts Ontological concept therein;But for the base attribute of the objects concept in body is ignored, described basic category Property includes:Author, date;
(22) Ontological concept for extracting XPath carries out hierarchical classification and forms a body tree;Described component description Document is to there is a description body tree;In order to the mapping of Ontological concept similarity is better achieved, by the description above body Tree is converted into description binary tree.
In described step three, described component description body tree carries out fuzzy matching with user's request body tree, is Refer to:
Save in by calculating the similarity between two component description body trees and user's request body tree interior joint and tree Point number, i.e., matching length come calculate the matching between two body trees be worth;And Value Realization two is matched according to it , there are two kinds of situations in this process in the fuzzy matching mapping between body tree;
, there is fuzzy matching between two tree body trees in the first situation:
If T=(V, E, root (T)) is the corresponding binary tree of an arbitrary body tree, then the matching of binary tree T is worth H (M) it is:
Wherein:Represent the Ontological concept phase of all nodes in tree Like degree and;︱ v ︱ represent matching length, as set the number of interior joint;
If Q=(V, E, root (Q)) is the corresponding binary tree of inquiry body tree, D=(V, E, root (D)) is description body Corresponding binary tree is set, wherein:
If:
Then two body trees are called fuzzy matching;Wherein, ≈ Refer to and set up in certain threshold range;
Second situation, if two body trees do not have fuzzy matching, by the section in the binary tree D of inquiry body tree Point Node and the leaf together with node are divided into ︱ Node ︱ stalk trees;In the same manner also by inquiry body tree binary tree Q also draw It is divided into some stalk trees;Then by the above-mentioned every stalk tree for marking off to carrying out fuzzy matching;
The binary tree D interior joint Node of inquiry body tree are extracted using following algorithm:
P=com → lchild;
while(p→rchild!=null) { p=p → rchild;printf(″p″);}
Thus, egress series is decomposed to obtain;Then corresponding subtree series is obtained, meanwhile, according to same decomposition rule The binary tree Q of inquiry body tree is resolved into into subtree;
In the latter case, to the subtree for inquiring about the binary tree D of body tree and the subtree of the binary tree Q for inquiring about body tree Mapped, if T1=(V1,E1,root(T1)), T2=(V2,E2,root(T2)) it is respectively the son for inquiring about body tree binary tree D Tree and the subtree of body tree binary tree Q is inquired about, one from T1To T1Mapping M be defined as:And to all of (V1′, V2′),(V1″,V2") ∈ M meet following condition:
(1)Represent that the node in two stalk trees is one-to-one;
(2)Represent and keep between mapping ancestors' descendent relationship;
The domain of definition of mapping is:
Range of a mapping is:
For a body tree, it is allowed to the node in tree is inserted, delete and concept transfer this 3 kinds of concept editor Operation;Therefore, for the subtree of its corresponding binary tree can also carry out this 3 generic operation.
Described step four, including step in detail below:
(41) by the mapping between the fuzzy matching described in step 3 and subtree, obtain it is semantic same or similar but The inconsistent node of grammer, recombinates to it, and calculates corresponding restructuring cost;
If Q=(V, E, root (Q)), D=(V, E, root (D)) is the son of the described corresponding binary tree of two body trees Tree, M is the mapping from Q to D, then restructuring cost S (M) for defining M is:
Described group cost includes three parts:Part I for due to label (v) ≈ label (w) change inquiry this The cost of the concept of body tree tree;Part II is no this node in description body tree tree, and Delete query body tree The cost of tree interior joint;Part III adds this node to have this node in description body tree tree in query sub tree Cost.
(42) weight is carried out to described inquiry body tree, description body two body trees of tree according to described restructuring cost Group, and similar concept is modified using KMP algorithms;
It can be seen from the definition of restructuring cost, when right in the concept for inquiring about certain node on body tree with description body tree When the concept answered is mismatched, if extracting similar concept collection phase corresponding with this concept in inquiry body tree from similar conceptual base Seemingly, then this concept in inquiry body tree is replaced;
Assume that the character string that concept set is constituted is:′S1,S2,S3...Sn', abbreviation concept set string;Inquire about the general of body tree Reading corresponding character string is:′P1,P2,P3...Pn', referred to as inquire about substring;If, now should be with kth (k in inquiry substring< J) character continues to compare, then inquire about substring in front k-1 character substring must be fulfilled for following relationship satisfaction ' p1,p2, ...pk-1'=' si-k+1,si-k+2,…si-1', and can not possibly there is k '>k;
According to the result of " part match " for having obtained ' pj-k+1,pj-k+2,...pj-1'=' si-k+1,si-k+2,…si-1', Can obtain ' p1,p2,...pk-1'=' pj-k+1,pj-k+2,...pj-1';
Meanwhile, unmatched concept is modified, so that concept substring is consistent with inquiry substring.
Compared with prior art, the present invention includes advantages below and beneficial effect:
The present invention can accurately have found target member using semantic similarity, effectively improve component search efficiency and Reusability, shortens the construction cycle of software.
Description of the drawings
Fig. 1 is a kind of method flow diagram of embodiment of the present invention.
Fig. 2 is a kind of binary tree of the corresponding description body tree of description document with description body tree of embodiment of the present invention Schematic diagram.
Fig. 3 is a kind of schematic diagram of the fuzzy matching with subtree series of embodiment of the present invention.
Fig. 4 is the schematic diagram that a kind of component of embodiment of the present invention inquires about framework.
Specific embodiment
The present invention is described in further details below in conjunction with the accompanying drawings.
Fig. 1 is a kind of method flow diagram of embodiment of the present invention.Present invention method is comprised the following steps:
Step one, user send component retrieval request to software component library according to demand, and software component library receives user's After request, corresponding Ontology tree is built according to the component demand of user;
Step 2, described software component library are according to the demand of user, OWL (body web language of the coarseness ground from component Speech) description document library in retrieve corresponding component description body tree, including procedure below:
(21) document is described using the OWL that OWL is described so as to form component to each field component, is then utilized XPath extracts Ontological concept therein;But for the base attribute of the objects concept in body is ignored, described basic category Property includes:Author, date etc..It is as shown in table 1 that the OWL of component describes document.
(22) Ontological concept for extracting XPath carries out hierarchical classification and forms a body tree;Described component description Document is to there is a description body tree;The corresponding description body tree of component description document in table 1 below as shown in Fig. 2 in order to The mapping of Ontological concept similarity is better achieved, the description above body tree is converted into into description binary tree.If Fig. 3 is Fig. 2 The binary tree that middle Com1 component representations are converted into.
Step 3, described component description body tree and user's request body tree are carried out into fuzzy matching, its process is:
Save in by calculating the similarity between two component description body trees and user's request body tree interior joint and tree Point number, i.e., matching length come calculate the matching between two body trees be worth;And Value Realization two is matched according to it , there are two kinds of situations in this process in the fuzzy matching mapping between body tree;
, there is fuzzy matching between two tree body trees in the first situation:
If T=(V, E, root (T)) is the corresponding binary tree of an arbitrary body tree, then the matching of binary tree T is worth H (M) it is:
Wherein:Represent the Ontological concept phase of all nodes in tree Like degree and;︱ v ︱ represent matching length, as set the number of interior joint;
If Q=(V, E, root (Q)) is the corresponding binary tree of inquiry body tree, D=(V, E, root (D)) is description body Corresponding binary tree is set, wherein:
If:
Then two body trees are called fuzzy matching;Wherein, ≈ Refer to and set up in certain threshold range;Fig. 4 is fuzzy matching figure.
Second situation, if two body trees do not have fuzzy matching, by the section in the binary tree D of inquiry body tree Point Node and the leaf together with node are divided into ︱ Node ︱ stalk trees;In the same manner also by inquiry body tree binary tree Q also draw It is divided into some stalk trees;Then by the above-mentioned every stalk tree for marking off to carrying out fuzzy matching;
The binary tree D interior joint Node of inquiry body tree are extracted using following algorithm:
P=com → lchild;
while(p→rchild!=null) { p=p → rchild;printf(″p″);}
Thus, egress series is decomposed to obtain;Then corresponding subtree series is obtained.Meanwhile, according to same decomposition rule The binary tree Q of inquiry body tree is resolved into into subtree;As shown in Figure 1.
In the latter case, to the subtree for inquiring about the binary tree D of body tree and the subtree of the binary tree Q for inquiring about body tree Mapped, if T1=(V1,E1,root(T1)), T2=(V2,E2,root(T2)) it is respectively the son for inquiring about body tree binary tree D Tree and the subtree of body tree binary tree Q is inquired about, one from T1To T1Mapping M be defined as:And to all of (V1′, V2′),(V1″,V2") ∈ M meet following condition:
(1)Represent that the node in two stalk trees is one-to-one;
(2)Represent and keep between mapping ancestors' descendent relationship;
The domain of definition of mapping is:
Range of a mapping is:
For a body tree, it is allowed to the node in tree is inserted, delete and concept transfer this 3 kinds of concept editor Operation;Therefore, for the subtree of its corresponding binary tree can also carry out this 3 generic operation.
If step 4, described component description body tree are unsuccessful with matching for user's request body tree, to mismatch Component carry out component restructuring;And using KMP algorithms the similar concept for inquiring about body tree is modified and match again;
Step 5, the automatic mapping that document and corresponding component are described according to the OWL of component, make user examine from component base Rope is to corresponding component.
The step of embodiment of the present invention four, including procedure below:
(41) by the mapping between the fuzzy matching described in step 3 and subtree, obtain it is semantic same or similar but The inconsistent node of grammer, recombinates to it, and calculates corresponding restructuring cost;
If Q=(V, E, root (Q)), D=(V, E, root (D)) is the son of the described corresponding binary tree of two body trees Tree, M is the mapping from Q to D, then restructuring cost S (M) for defining M is:
Described group cost includes three parts:Part I for due to label (v) ≈ label (w) change inquiry this The cost of the concept of body tree tree;Part II is no this node in description body tree tree, and Delete query body tree tree The cost of interior joint;Part III adds the cost of this node to have this node in description body tree tree in query sub tree.
(42) weight is carried out to described inquiry body tree, description body two body trees of tree according to described restructuring cost Group, and similar concept is modified using KMP algorithms;
It can be seen from the definition of restructuring cost, when right in the concept for inquiring about certain node on body tree with description body tree When the concept answered is mismatched, if extracting similar concept collection phase corresponding with this concept in inquiry body tree from similar conceptual base Seemingly, then this concept in inquiry body tree is replaced;
Assume that the character string that concept set is constituted is:′S1,S2,S3...Sn', abbreviation concept set string;Inquire about the general of body tree Reading corresponding character string is:′P1,P2,P3...Pn', referred to as inquire about substring;If, now should be with kth (k in inquiry substring< J) character continues to compare, then inquire about substring in front k-1 character substring must be fulfilled for following relationship satisfaction ' p1,p2, ...pk-1'=' si-k+1,si-k+2,…si-1', and can not possibly there is k '>k;
According to the result of " part match " for having obtained ' pj-k+1,pj-k+2,...pj-1'=' si-k+1,si-k+2,…si-1', Can obtain ' p1,p2,...pk-1'=' pj-k+1,pj-k+2,...pj-1';
Meanwhile, unmatched concept is modified, so that concept substring is consistent with inquiry substring.
Otherwise:
1. when being matching for the first time (when i.e. as n=1), carry out resolving into ︱ Node ︱ stalk trees by node (Node), so Matched again afterwards, if the match is successful, terminated.
2. when there is matching more than twice (i.e. when n >=2), recombinated according to restructuring cost, and using KMP algorithms The modification of similar concept is carried out, until all of Sub-tree Matching terminates.
To check the effect of the method for the invention, experimental verification is done as follows:
A component inquiry prototype based on body is developed using Eclipse, using Prot é g é ontology modeling tool structures Field member bodies are built.Adopt 120 components in experiment altogether, in being stored in component base, wherein most component is from Shanghai The free components extracted in government's component base.And each component is described respectively using OWL and faceted description mode.
Experimental result is respectively adopted based on the search method of keyword, base with precision ratio and recall ratio parameter as a comparison Search method in facet and the search method based on body similarity are compared analysis.
By experimental data, the component querying method based on body is on precision ratio and recall ratio apparently higher than being based on The querying method of keyword and the querying method based on facet.Higher than 23.4% based on facet in terms of precision ratio, higher than base In the 47.5% of keyword;Higher than 31.2% based on facet in terms of recall ratio, higher than 51.9% based on keyword.
Therefore, the present invention is proposed based on the component retrieval algorithm of Ontological concept similarity, and the OWL of component is described into document It is converted into body tree and carries out fuzzy matching.Then, the component of mismatch is recombinated.On this basis, using KMP algorithms pair The similar concept of inquiry body tree is modified, and so as to be met the component collection of user's request, improves the efficiency of software development.
The OWL of table 1, component describes document:

Claims (5)

1. a kind of software component retrieval method based on Ontological concept similarity, it is characterised in that comprise the following steps:
Step one, user send component retrieval request to software component library according to demand, and software component library receives the request of user Afterwards, corresponding Ontology tree is built according to the component demand of user;
, according to the demand of user, coarseness ground is described in document library from the OWL of component to be retrieved for step 2, described software component library Go out corresponding component description body tree;
Step 3, described component description body tree and user's request body tree are carried out into fuzzy matching;
If step 4, described component description body tree match unsuccessful structure to mismatch with user's request body tree Part carries out component restructuring;And using KMP algorithms the similar concept for inquiring about body tree is modified and match again;
Step 5, the automatic mapping that document and corresponding component are described according to the OWL of component, make user retrieve from component base Corresponding component.
2. a kind of software component retrieval method based on Ontological concept similarity according to claim 1, it is characterised in that In described step two, described describing from the OWL of component retrieve in document library corresponding component description body tree, including Procedure below:
(21) document is described using the OWL that OWL is described so as to form component to each field component, is then utilized XPath extracts Ontological concept therein;But for the base attribute of the objects concept in body is ignored, described basic category Property includes:Author, date;
(22) Ontological concept for extracting XPath carries out hierarchical classification and forms a body tree;Described component description document To there is a description body tree;In order to the mapping of Ontological concept similarity is better achieved, the description above body tree is turned Turn to description binary tree.
3. a kind of software component retrieval method based on Ontological concept similarity according to claim 1, it is characterised in that In described step three, described component description body tree carries out fuzzy matching with user's request body tree, refers to:
By calculating the similarity between two component description body trees and user's request body tree interior joint and setting interior joint Number, i.e. matching length come calculate the matching between two body trees value;And two sheets of Value Realization are matched according to it , there are two kinds of situations in this process in the fuzzy matching mapping between body tree;
, there is fuzzy matching between two tree body trees in the first situation:
If T=(V, E, root (T)) is the corresponding binary tree of an arbitrary body tree, then matching value H (M) of binary tree T For:
Wherein:Represent the Ontological concept similarity of all nodes in tree With;︱ v ︱ represent matching length, as set the number of interior joint;
If Q=(V, E, root (Q)) is the corresponding binary tree of inquiry body tree, D=(V, E, root (D)) is right for description body tree The binary tree for answering, wherein:
If:
Then two body trees are called fuzzy matching;Wherein, ≈ is referred to Set up in certain threshold range;
Second situation, if two body trees do not have fuzzy matching, by the node in the binary tree D of inquiry body tree Node and the leaf together with node are divided into ︱ Node ︱ stalk trees;In the same manner also by inquiry body tree binary tree Q also divide For some stalk trees;Then by the above-mentioned every stalk tree for marking off to carrying out fuzzy matching;
The binary tree D interior joint Node of inquiry body tree are extracted using following algorithm:
P=com → lchild;
while(p→rchild!=null) { p=p → rchild;printf("p");}
Thus, egress series is decomposed to obtain;Then corresponding subtree series being obtained, meanwhile, will look into according to same decomposition rule The binary tree Q for asking body tree resolves into subtree;
In the latter case, the subtree to inquiring about the subtree of the binary tree D of body tree and the binary tree Q of inquiry body tree is carried out Mapping, if T1=(V1,E1,root(T1)), T2=(V2,E2,root(T2)) respectively the subtree of inquiry body tree binary tree D with The subtree of inquiry body tree binary tree Q, one from T1To T1Mapping M be defined as:And to all of (V1′,V2′), (V1″,V2") ∈ M meet following condition:
(1)Represent that the node in two stalk trees is one-to-one;
(2)Represent and keep between mapping ancestors' descendent relationship;
The domain of definition of mapping is:
Range of a mapping is:
For a body tree, it is allowed to the node in tree is inserted, delete and concept transfer this 3 kinds of concept editor behaviour Make;Therefore, for the subtree of its corresponding binary tree can also carry out this 3 generic operation.
4. a kind of software component retrieval method based on Ontological concept similarity according to claim 1, it is characterised in that Described step four, including step in detail below:
(41) by the mapping between the fuzzy matching described in step 3 and subtree, semantic same or similar but grammer is obtained Inconsistent node, recombinates to it, and calculates corresponding restructuring cost;
If Q=(V, E, root (Q)), D=(V, E, root (D)) is the subtree of the described corresponding binary tree of two body trees, M It is the mapping from Q to D, then restructuring cost S (M) for defining M is:
S ( M ) = &Sigma; ( v , w ) &Element; M S ( l a b e l ( v ) &RightArrow; l a b e l ( w ) ) + &Sigma; v &Element; V - D o m i a n ( M ) S ( l a b e l ( v ) &RightArrow; d e l e t e ) + &Sigma; w &Element; W - R a n g e ( M ) S ( l a b e l ( w ) &RightArrow; l a b e l ( v ) )
(42) described inquiry body tree, description body two body trees of tree are recombinated according to described restructuring cost, and Similar concept is modified using KMP algorithms;
According to restructuring cost definition understand, when inquiry body tree on certain node concept with describe body tree in it is corresponding When concept is mismatched, if extraction similar concept collection corresponding with this concept in inquiry body tree is similar from similar conceptual base, Then replace this concept in inquiry body tree;
Assume that the character string that concept set is constituted is:′S1,S2,S3…Sn', abbreviation concept set string;The concept institute of inquiry body tree is right The character string answered is:′P1,P2,P3…Pn', referred to as inquire about substring;If, now should be with kth (k in inquiry substring<J) character after It is continuous to compare, then inquire about front k-1 character in substring substring must be fulfilled for following relationship satisfaction ' p1,p2,...pk-1'=' si-k+1,si-k+2,…si-1', and can not possibly there is k '>k;
According to the result of " part match " for having obtained ' pj-k+1,pj-k+2,...pj-1'=' si-k+1,si-k+2,…si-1', can be with Obtain ' p1,p2,...pk-1'=' pj-k+1,pj-k+2,...pj-1';
Meanwhile, unmatched concept is modified, so that concept substring is consistent with inquiry substring.
5. a kind of software component retrieval method based on Ontological concept similarity according to claim 4, it is characterised in that Described group cost includes three parts:Part I for due to label (v) ≈ label (w) change inquiry body tree tree Concept cost;Part II is no this node in description body tree tree, and Delete query body tree tree interior joint Cost;Part III adds the cost of this node to have this node in description body tree tree in query sub tree.
CN201611001249.XA 2016-11-14 2016-11-14 Software component retrieval method based on ontology concept similarity Active CN106570187B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611001249.XA CN106570187B (en) 2016-11-14 2016-11-14 Software component retrieval method based on ontology concept similarity

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611001249.XA CN106570187B (en) 2016-11-14 2016-11-14 Software component retrieval method based on ontology concept similarity

Publications (2)

Publication Number Publication Date
CN106570187A true CN106570187A (en) 2017-04-19
CN106570187B CN106570187B (en) 2020-04-21

Family

ID=58542819

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611001249.XA Active CN106570187B (en) 2016-11-14 2016-11-14 Software component retrieval method based on ontology concept similarity

Country Status (1)

Country Link
CN (1) CN106570187B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110874412A (en) * 2018-08-31 2020-03-10 中国移动通信有限公司研究院 Ontology matching method and device and computer storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101446944A (en) * 2008-12-10 2009-06-03 苏州大学 Method for constructing and comparing semantic relation tree for natural language sentences
CN104063215A (en) * 2014-05-12 2014-09-24 重庆邮电大学 RESTful Web service matching system
CN104090958A (en) * 2014-07-04 2014-10-08 许昌学院 Semantic information retrieval system and method based on domain ontology
CN104572991A (en) * 2015-01-05 2015-04-29 温州大学 Heterogeneous facet conversion-based component retrieval method in network forming software component library
US20150248478A1 (en) * 2014-02-28 2015-09-03 San Diego State University Research Foundation Knowledge reference system and method
CN105550189A (en) * 2015-06-26 2016-05-04 许昌学院 Ontology-based intelligent retrieval system for information security event
DE102015121509A1 (en) * 2014-12-18 2016-06-23 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Methodology and device for consistency check by comparison of ontology models

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101446944A (en) * 2008-12-10 2009-06-03 苏州大学 Method for constructing and comparing semantic relation tree for natural language sentences
US20150248478A1 (en) * 2014-02-28 2015-09-03 San Diego State University Research Foundation Knowledge reference system and method
CN104063215A (en) * 2014-05-12 2014-09-24 重庆邮电大学 RESTful Web service matching system
CN104090958A (en) * 2014-07-04 2014-10-08 许昌学院 Semantic information retrieval system and method based on domain ontology
DE102015121509A1 (en) * 2014-12-18 2016-06-23 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Methodology and device for consistency check by comparison of ontology models
CN104572991A (en) * 2015-01-05 2015-04-29 温州大学 Heterogeneous facet conversion-based component retrieval method in network forming software component library
CN105550189A (en) * 2015-06-26 2016-05-04 许昌学院 Ontology-based intelligent retrieval system for information security event

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LI NIE 等: ""Component Retrieval Based on Domain Ontology and User Interest"", 《2009 INTERNATIONAL CONFERENCE ON E-BUSINESS AND INFORMATION SYSTEM SECURITY》 *
李文敬 等: ""基于本体相似度的构件查询算法研究"", 《计算机工程与科学》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110874412A (en) * 2018-08-31 2020-03-10 中国移动通信有限公司研究院 Ontology matching method and device and computer storage medium
CN110874412B (en) * 2018-08-31 2022-07-26 中国移动通信有限公司研究院 Ontology matching method and device and computer storage medium

Also Published As

Publication number Publication date
CN106570187B (en) 2020-04-21

Similar Documents

Publication Publication Date Title
CN110298032B (en) Text classification corpus labeling training system
CN106250412B (en) Knowledge mapping construction method based on the fusion of multi-source entity
WO2020143326A1 (en) Knowledge data storage method, device, computer apparatus, and storage medium
Mulwad et al. Semantic message passing for generating linked data from tables
CN114218400A (en) Semantic-based data lake query system and method
CN105138864B (en) Protein interactive relation data base construction method based on Biomedical literature
Mulwad et al. A domain independent framework for extracting linked semantic data from tables
CN113010663A (en) Adaptive reasoning question-answering method and system based on industrial cognitive map
Pal et al. Deep learning for network analysis: problems, approaches and challenges
CN105335510A (en) Text data efficient searching method
CN104573009A (en) Method for expanding domain knowledge database attribute
CN105138674B (en) A kind of data bank access method
CN105160046A (en) Text-based data retrieval method
CN108959366B (en) Open question-answering method
CN113190655A (en) Spatial relationship extraction method and device based on semantic dependence
CN106570187A (en) Ontological-concept-similarity-based software component retrieving method
Ceravolo et al. Knowledge extraction from semi-structured data based on fuzzy techniques
Tang et al. Risk minimization based ontology mapping
CN110795453A (en) Method for automatically constructing RDF (remote data format) based on relational database
Yao et al. An automatic semantic extraction method for web data interchange
CN115878177A (en) Code clone detection method and system
Rao et al. A knowledge ecosystem for the food, energy, and water system
Ajeissh et al. An adaptive distributed approach of a self organizing map model for document clustering using ring topology
Zhao et al. Ontology-based 3D Relief Models Retrieval
US20220358336A1 (en) Artificial intelligence (ai) based data matching and alignment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20170419

Assignee: NUPT INSTITUTE OF BIG DATA RESEARCH AT YANCHENG

Assignor: NANJING University OF POSTS AND TELECOMMUNICATIONS

Contract record no.: X2021980013920

Denomination of invention: A software component retrieval method based on ontology concept similarity

Granted publication date: 20200421

License type: Common License

Record date: 20211202