Danilo7
10-04-2007, 16:14
Ciao a tutti,
devo fare il debug di un programma da modificare per la mia tesi di laurea... sono quasi alle prime armi con Java (anche se ho studiato C e C++) ed ho il seguente problema...:(
fo è una variabile Concept che ha ereditato i metodi elements() element() dalla classe AbstractElement di dom4j
fo è scritta in owl che è molto simile all' xml e ha la seguente struttura
<and xmlns=" http://dl.kr.org/dig/2003/02/lang">
<catom name="Nautical_equipments"/>
<all>
<ratom name="has_anchor_windlass"/>
<and>
< catom name="Anchor_windlass"/>
<catom name="Electric_Anchor_windlass"/>
</and>
</all>
<all>
<ratom name="has_Gangway"/>
<and>
<catom name="Gangway"/>
<catom name="Automatic_gangway"/>
</and>
</all>
</and>
Posto solo la parte del programma che penso abbia il problema e che non riesco a capire come mai non funzioni...:muro:
1. for (int f=0; f<indfirst.size(); f++){
2. Concept fo = (Concept)indfirst.elementAt(f);
3. System.out.println(f + " first for");
4. System.out.println("Concept fo"+ "number " +f+ fo.toString());
5. for(Iterator h=fo.elements("catom").iterator();h.hasNext(); )
6. {
7.
8. System.out.println("List of elements in fo" + fo.elements().size());
9. System.out.println(h.toString()+ "second for");
10. System.out.println("List of catom elements " + fo.elements("catom").size());
11. Catom r =(Catom)h.next();
12. System.out.println("Catom" + r.toString());
13. }
Ho inserito nel codice degli output (System.out.println) a console (schermo) per controllare il valore delle variabili durante i for alle righe 8 e 10, ottengo che fo.elements("catom").size() è una Lista di un solo elemento...
che è catom name="Nautical_equipments"/...(riga 12)
Secondo voi qual è il problema col metodo elements("catom")?
Perchè non mi restituisce una lista con tutti e 5 gli elementi catom di fo scritti in Xml/owl???:confused:
Pensate sia un problem legato al codice java o a come è strutturato l'elemento xml???:cry:
Spero che qualche anima pia mi aiuti :help:
Grazie in anticipo
Danilo
devo fare il debug di un programma da modificare per la mia tesi di laurea... sono quasi alle prime armi con Java (anche se ho studiato C e C++) ed ho il seguente problema...:(
fo è una variabile Concept che ha ereditato i metodi elements() element() dalla classe AbstractElement di dom4j
fo è scritta in owl che è molto simile all' xml e ha la seguente struttura
<and xmlns=" http://dl.kr.org/dig/2003/02/lang">
<catom name="Nautical_equipments"/>
<all>
<ratom name="has_anchor_windlass"/>
<and>
< catom name="Anchor_windlass"/>
<catom name="Electric_Anchor_windlass"/>
</and>
</all>
<all>
<ratom name="has_Gangway"/>
<and>
<catom name="Gangway"/>
<catom name="Automatic_gangway"/>
</and>
</all>
</and>
Posto solo la parte del programma che penso abbia il problema e che non riesco a capire come mai non funzioni...:muro:
1. for (int f=0; f<indfirst.size(); f++){
2. Concept fo = (Concept)indfirst.elementAt(f);
3. System.out.println(f + " first for");
4. System.out.println("Concept fo"+ "number " +f+ fo.toString());
5. for(Iterator h=fo.elements("catom").iterator();h.hasNext(); )
6. {
7.
8. System.out.println("List of elements in fo" + fo.elements().size());
9. System.out.println(h.toString()+ "second for");
10. System.out.println("List of catom elements " + fo.elements("catom").size());
11. Catom r =(Catom)h.next();
12. System.out.println("Catom" + r.toString());
13. }
Ho inserito nel codice degli output (System.out.println) a console (schermo) per controllare il valore delle variabili durante i for alle righe 8 e 10, ottengo che fo.elements("catom").size() è una Lista di un solo elemento...
che è catom name="Nautical_equipments"/...(riga 12)
Secondo voi qual è il problema col metodo elements("catom")?
Perchè non mi restituisce una lista con tutti e 5 gli elementi catom di fo scritti in Xml/owl???:confused:
Pensate sia un problem legato al codice java o a come è strutturato l'elemento xml???:cry:
Spero che qualche anima pia mi aiuti :help:
Grazie in anticipo
Danilo