예제 #1
0
		//private void  getParents(Synset synset, System.Collections.IList parents)
		//{
            //Pointer[] pointers = synset.getPointers();
            //for (int pi = 0, pn = pointers.length; pi < pn; pi++)
            //{
            //    if (pointers[pi].getType() == PointerType.HYPERNYM)
            //    {
            //        Synset parent = pointers[pi].getTargetSynset();
            //        parents.Add(System.Convert.ToString(parent.getOffset()));
            //        getParents(parent, parents);
            //    }
            //}
		//}

        private void getParents(Synset currentSynset, List<string> parentOffsets)
        {
            for (int currentRelation = 0;currentRelation < currentSynset.RelationCount;currentRelation++)
            {
                Relation relation = currentSynset.GetRelation(currentRelation);
                if (relation.SynsetRelationType.Name == "Hypernym")
                {
                    Synset parentSynset = relation.TargetSynset;
                    parentOffsets.Add(parentSynset.Offset.ToString(System.Globalization.CultureInfo.InvariantCulture));
                    getParents(parentSynset, parentOffsets);
                }
            }
        }