Research Article

A Method of Extracting Ontology Module Using Concept Relations for Sharing Knowledge in Mobile Cloud Computing Environment

Algorithm 3

Algorithm of module extraction (concept pruning step).
Input: Candidates Concept List, equivalentConcept
Output: Candidates Concept List
//Remove too specified descendant concepts
For (concept in DescendantList){
 If (numOfsubsume(concept) == 0)  {
  For (Aconcept in Parents(concept))  {
   If ((Aconcept != equivalentConcept)
    && (numOfsubsume(Aconcpet) <=
threshold))  {
        Pop_DescendantList(concept);
        Push_TempList(concept);
   }
  }
 }
}
//Remove the rarely used ancestor concepts
For (concept in TempList)  {
 For (Aconcept in AncestorList)  {
  If ((Subsumption_Check(Aconcept,
equivalentConcept) != true)
   && (Subsumption_Check(Aconcept, concept) ==
true))  {
   IncreaseCount(Aconcept);
  }
 }
}
For (Aconcept in AncestorList)  {
 If (Count(Aconcept) > threshold)  {
   Pop_AncestorList(Aconcept);
   Push_TempList(concept);
 }
}
//Remove the independent descendant concepts
For (concept in DescendantList){
 If ((numOfsubsume(concept) == 0)
  && (numOfsubsume(Parents(concept)) <= threshold))
{
  Pop_DescendantList(concept);
  Push_TempList(concept);
 }
}
//Hold the transitive concept
For (concept in TempList)  {
 If (inAncestorList(Ancestors(concept))
  && inDescendantList(Descendants(concept))  {
   If ((Subsumption_Check(concept,
equivalentConcept))  {
     Push_AncestorList(concept);
   }else{
     Push_DescendantList(concept);
   }
  }
}