チェンジセット 261 : SPARQLBuilderWWW/src/java

差分発生行の前後
無視リスト:
更新日時:
2016/01/14 14:33:20 (9 年 前)
更新者:
atsuko
ログメッセージ:

エンドポイントを指定しないと全部のクラスを出すように変更

パス:
SPARQLBuilderWWW/src/java/org/biohackathon/SPARQLBuilder/OWL
ファイル:
2 変更

凡例:

変更なし
追加
削除
  • SPARQLBuilderWWW/src/java/org/biohackathon/SPARQLBuilder/OWL/OWLClassGraph.java

    r259 r261  
    1414    int nsteps = 4; 
    1515    int limit = 100; 
    16     int th = 1; 
    17     double cth = 1.0; // 0.0(no path) - 1.0(all paths) 
    1816     
    1917    List<String> nodeType; 
    20     //ArrayList<HashSet<Integer>> connectionTable; 
    2118    String sparqlEndpoint; 
    2219    Set<Integer> visited; 
     
    297294            visited.addAll(nodes); 
    298295        } 
    299         // cut visited          
     296        // cut visited 
    300297        Iterator<Integer> nit = visited.iterator(); 
    301298        while(nit.hasNext()){ 
     
    333330    } 
    334331     
     332    public List<String> getReachableClasses(){ 
     333        List<String> clURIs = new LinkedList<String>(); 
     334        if ( visited == null ){ 
     335            return null; 
     336        } 
     337        Iterator<Integer> vit = visited.iterator(); 
     338        while( vit.hasNext() ){ 
     339            Integer vn = vit.next(); 
     340            clURIs.add(labels.get(vn)); 
     341        } 
     342        return clURIs; 
     343    } 
    335344} 
  • SPARQLBuilderWWW/src/java/org/biohackathon/SPARQLBuilder/OWL/QueryPathGenerator.java

    r254 r261  
    220220        return graph; 
    221221    } 
     222     
     223    public SClass[] getReachableClasses(){ 
     224        List<String> clURIs = graph.getReachableClasses(); 
     225        SClass[] orgclasses = null; 
     226        try { 
     227            orgclasses = analyzer.getOWLClasses(null, null, null, true); 
     228        }catch( Exception e ){ 
     229            System.err.println(e); 
     230            return null; 
     231        } 
     232        HashMap<String, SClass> orgmap = new HashMap<String, SClass>(); 
     233        for (int i = 0; i < orgclasses.length; i++ ){ 
     234            orgmap.put(orgclasses[i].getClassURI(), orgclasses[i]); 
     235        } 
     236         
     237        SClass[] classes = new SClass[clURIs.size()]; 
     238        int j = 0; 
     239        ListIterator<String> uit = clURIs.listIterator(); 
     240        while(uit.hasNext()){ 
     241            String u = uit.next(); 
     242            SClass cl = orgmap.get(u); 
     243            classes[j] = cl; 
     244            j++; 
     245        } 
     246        return classes; 
     247    } 
     248     
     249    public SortedSet<String> getSortedClasses(SClass[] classes){ 
     250        setClassLabels(classes); 
     251        SortedSet<String> sortedClasses = new TreeSet<String>(); 
     252        for (int i = 0 ; i < classes.length; i++ ){ 
     253            String uri = classes[i].getClassURI(); 
     254            String label = getClassLabel(uri); 
     255            StringBuilder classbuilder = new StringBuilder(label); 
     256            classbuilder.append("  "); 
     257            classbuilder.append(classes[i].getNumOfInstances()); 
     258            classbuilder.append("  "); 
     259            classbuilder.append(uri); 
     260            sortedClasses.add(classbuilder.toString()); 
     261        } 
     262 
     263        return sortedClasses; 
     264    } 
    222265}