Формат данных узла иерархии классов в OWL от OWLAPI

Я хотел бы извлечь все узлы класса в онтологии OWL, и узлы класса записываются в следующем формате:

[{
   name: node1
   children: [{
       name: node11
      },
      {name: node12,
       children: [{
              name:node121,
              name:node122
      }]
}]
}]

Я использую метод printHierachy для извлечения структуры иерархии классов, но как передать структуру в вышеуказанный формат?


person yuan    schedule 15.08.2018    source источник


Ответы (1)


Вы должны использовать метод override toString для объекта Node:

@Override
public String toString() {
    StringBuilder builder = new StringBuilder(  );

    builder.append( "{ name: "  );
    builder.append( this.name  );

    builder.append( ", children: [ " );
    if(this.children != null ) {
        for ( Node n : this.children ) {
            builder.append( n.toString() + ", " );
        }
    }
    builder.append( " ] }" );
    return builder.toString();

}
person Morteza Jalambadani    schedule 15.08.2018
comment
Должен ли я определить объект узла, например: открытый класс TreeNode {private String treenodeName, private ArrayList‹TreeNode› ChildrenNode}? - person yuan; 15.08.2018
comment
@yuan yes объект должен быть определен - person Morteza Jalambadani; 15.08.2018