1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
| public static String [][] RdfsManip(String conceptpath){
String[][] matconceptfils=new String[100][100];
org.jdom.Document document;
Element racine;
String str1;
Boolean trouve = false;
Boolean fils=false;
int ligne=0;
int k=0;
int j2;
int j=0;
String str3 ="";
// l'entier cl est utilisé pour enregistrer le nom du concept dans la case[0][0]
int cl=0;
String str2 ="no_relation";
SAXBuilder sxb = new SAXBuilder();
//conceptpath="C:\\Documents and Settings\\aroua\\Bureau\\PFE\\code\\rdfsconceptrelation2\\Abdomen.rdfs";
try
{
document = sxb.build(new File(conceptpath));
racine=document.getRootElement();
List listclass =racine.getChildren();
Iterator i = listclass.iterator();
while (i.hasNext())
{
Element courant = (Element)i.next();
List listlabel=courant.getChildren();
Iterator i1 = listlabel.iterator();
while (i1.hasNext()){
Element courant1 = (Element)i1.next();
if (((courant1.getQualifiedName().equals("rdfs:label"))) && (cl==0)){
str2=courant1.getText();
System.out.println(str2);
matconceptfils[0][0]=str2;
System.out.println(matconceptfils[0][0]);
}
if(courant1.getQualifiedName().equals("rdfs:label")){
str3=courant1.getText();
}
if((courant1.getQualifiedName().equals("rdfs:comment"))){
;
}
else if (courant1.getQualifiedName().equals("rdfs:subClassOf")) {
//récupérer les fils
List list2=courant1.getAttributes();
str1=list2.get(0).toString().substring(27);
StringTokenizer stl= new StringTokenizer(str1,"]");
str1=stl.nextToken();
str1=str1.substring(0, str1.length()-1);
j=0;
while( (j<100) && (trouve==false))
{ j2=0;
while( (j2<100) && (trouve==false)){
System.out.println("mat"+matconceptfils[j][j2]);
if(matconceptfils[j][j2] == null){trouve=true;}
if (matconceptfils[j][j2] != null){
if (matconceptfils[j][j2].equals(str1)){
System.out.println("je suis true");
if(j!=ligne){k=0;}
System.out.println("str3"+str3);
matconceptfils[j+1][k]=str3;
k++;
trouve=true;
}
else j2++; }
}
j++;
}
if(trouve==true){
ligne=j-1;
}
trouve=false;
}
cl++;
}
}
}
catch(Exception e){System.out.println(" we've got a problem");
e.printStackTrace ();}
return matconceptfils;
} |
Partager