Files
tp1-rdf/README.md
2025-02-12 21:23:38 +01:00

123 lines
3.5 KiB
Markdown

# TP1 PDS - Traducteur RDF/Turtle vers RDF/Ntriples
Réalisé par Thibaut ROCHAS et Tuan Minh VU
## Implémentation du ASD
```
turtle ::= Turtle(phrase*)
phrase ::= Phrase(entity, aff*)
aff ::= Aff(ntity, complement*)
complement ::= Complement(entity)
| Complement_Text(String)
entity ::= Entity(String)
```
## Conversion vers Ntriples par ASD attribuée
```
turtle ::= Turtle(phrase*)
phrase ::= Phrase(entity, aff*)
phrase.s = entity.val
aff ::= Aff(ntity, complement*)
aff.s = phrase.s
aff.v = enity.val
complement ::= Complement(entity)
phrase.s = aff.s
phrase.v = aff.v
phrase.c = entity.val
| Complement_Text(String)
phrase.s = aff.s
phrase.v = aff.v
phrase.c = String.self
entity ::= Entity(String)
entity.val=String.self
```
|TAD |Nom d'attribut |Type | Polarité
|----------------|-----------------|---------------------|---------|
|phrase |s |String |H
|aff |s |String |H
|aff |v |String |H
|complement |s |String |H
|complement |v |String |H
|complement |c |String |H/S
|Entity |val |String |S
|TAD |Nom d'attribut |Type | Polarité
|----------------|-----------------|---------------------|---------|
|turtle |val |list(Phrase) |S
|phrase |sujet_p |String |H
|phrase |affs |list(Aff) |S
|aff |sujet_a |String |H
|aff |vebre_a |String |H
|aff |comps |list(comp) |S
|complement |sujet_c |String |H
|complement |verbe_c |String |H
|complement |comp_c |String |H/S
|Entity |val |String |S
```
Ntriples ::= Ntriples(phrase*)
phrase ::= Phrases(entity1,entity2,complement)
phrase.s = entity1.val
phrase.v = entity2.val
phrase.c = complent.ent
complement ::= Complement(entity)
complement.ent = entity.val
| Complement_Text(String)
complement.ent = String.self
entity ::= Entity(String)
entity.val=String.self
```
TAD Nom Type Polarité Descp
Ntriples val list(phrase) H
phrase s String H
v String H
c String H
complement ent String H/S
entity val String S
## Compatibilité
- Java JDK 21
- ANTLR3 3.5.2
- Gradle 8.5
## Construction, exécution
Pour construire le projet, depuis la racine du projet :
```bash
./gradlew build
```
Pour exécuter le programme Java TP1.Main, depuis la racine du projet :
```bash
java -jar /build/libs/TP1.jar [args]
```
## Structure du projet
Fichiers de code source et de tests
- `src/main/java/` : fichiers sources Java à compléter
- `src/main/antlr/` : fichier sources ANTLR à compléter
- `tests/` : fichiers textes à utiliser pour les tests
Moteur de production Gradle
- `settings.gradle`, `build.gradle` : configuration Gradle
- `gradle/wrapper` : exécutable de Wrapper Gradle
- `gradlew`, `gradlew.bat` : scripts (unix/windows) à exécuter depuis le terminal pour lancer le moteur de production
Environnement VSCode
- `.vscode` : configuration de VSCode
- `eclipse-formatter.xml` : formatage de code source Java, optionnel
Git
- `.gitignore` : configuration pour ignorer certains fichiers et répertoires