From b2fe10ea8bfb3c13e278cfc4ed1ac9f25a43da46 Mon Sep 17 00:00:00 2001 From: tuvu Date: Tue, 11 Feb 2025 13:25:08 +0100 Subject: [PATCH] ok --- README.md | 14 ++++++++++---- src/main/antlr/TurtleLexer.g | 1 - src/main/java/TP1/ASD_Turtle.java | 8 ++++---- src/main/java/TP1/Main.java | 3 +-- 4 files changed, 15 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 2ef1436..278d95c 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,16 @@ # TP1 PDS - Traducteur RDF/Turtle vers RDF/Ntriples -Ce projet VSCode contient tout le nécessaire pour commencer à programmer le traducteur. +Réalisé par Thibaut ROCHAS et Tuan Minh VU -Vous pouvez forker ce dépôt, mais devez impérativement garder votre dépôt privé. - -Ce fichier `README.md` doit être complété au fur et à mesure de votre avancement. +## Implémentation du ASD +``` +turtle ::= Turtle(phrase*) +phrase ::= Phrase(entity, aff*) +aff ::= Aff(entity, complement*) +complement ::= Complement(Entity) + | Complement_Text(String) +entity ::= Entity(String) +``` ## Compatibilité diff --git a/src/main/antlr/TurtleLexer.g b/src/main/antlr/TurtleLexer.g index 2365876..cb08d22 100644 --- a/src/main/antlr/TurtleLexer.g +++ b/src/main/antlr/TurtleLexer.g @@ -13,7 +13,6 @@ options { } - // Whitespaces are ignored. fragment WS: (' ' | '\n' | '\t' | '\r' | '\u000C'); WSS: WS+ { skip(); }; diff --git a/src/main/java/TP1/ASD_Turtle.java b/src/main/java/TP1/ASD_Turtle.java index 81d56a2..cac3840 100644 --- a/src/main/java/TP1/ASD_Turtle.java +++ b/src/main/java/TP1/ASD_Turtle.java @@ -13,7 +13,7 @@ public class ASD_Turtle implements TurtleASD { public String toString(){ String str = ""; for (PhraseImp phrase : this.phrases) { - str+= phrase.toString(); + str = str.concat(phrase.toString()); } return str; } @@ -22,7 +22,7 @@ public class ASD_Turtle implements TurtleASD { public String toString(){ String str = "<" + this.entity.toString() + ">\n"; for (int i =0; i < this.affs.size(); i++ ){ - str += affs.get(i).toString(); + str =str.concat(affs.get(i).toString()) ; if (i < this.affs.size() - 1) { str += ";\n"; } @@ -33,9 +33,9 @@ public class ASD_Turtle implements TurtleASD { } record AffectationImp(EntityImp entity, List complements) implements Affectation{ public String toString(){ - String str= "<" + this.entity.toString() + ">"; + String str= "\t<" + this.entity.toString() + ">"; for (int i =0; i < this.complements.size(); i++) { - str += (this.complements.get(i)); + str = str.concat(this.complements.get(i).toString()); if (i < this.complements.size() - 1) { str += ","; } diff --git a/src/main/java/TP1/Main.java b/src/main/java/TP1/Main.java index 4f739c7..26575e9 100644 --- a/src/main/java/TP1/Main.java +++ b/src/main/java/TP1/Main.java @@ -16,6 +16,7 @@ public class Main { /** * Buils example AST and illustrates the translator. * + LC : '<' ; RC : '>' @@ -46,11 +47,9 @@ public class Main { morec : V comp | ; - */ public static void manualAST() { //Ridoux , ; - //System.out.println("Ridoux , ;"); EntityImp Ridoux = new EntityImp("Ridoux"); EntityImp type = new EntityImp("type"); EntityImp personne = new EntityImp("personne");