code: private void filterMappingsOfChildren(INode sourceParent, INode targetParent, char semanticRelation) {
          List<INode> source = new ArrayList<INode>(sourceParent.getChildrenList());
          List<INode> target = new ArrayList<INode>(targetParent.getChildrenList());
  
          sourceIndex.add(sourceParent.getLevel(), 0);
          targetIndex.add(targetParent.getLevel(), 0);
  
          if (source.size() >= 1 && target.size() >= 1) {
              //sorts the siblings first with the strongest relation, and then with the others
              filterMappingsOfSiblingsByRelation(source, target, semanticRelation);
          }
  
          sourceIndex.remove(sourceParent.getLevel());
          targetIndex.remove(targetParent.getLevel());
      }
docs: Sorts the children of the given nodes.
  
  @param sourceParent     Source node.
  @param targetParent     Target node.
  @param semanticRelation the relation to use for comparison.