From 5b404252473247d0ffe58f21ee43bb524d177026 Mon Sep 17 00:00:00 2001 From: eliott <eliott.sammier@tetras-libre.fr> Date: Wed, 26 Jun 2024 09:26:31 +0200 Subject: [PATCH] Modules and SousParties now have and ID, used in the path --- .../macao_12/result/macao_content.ttl | 26 +++++++++++++++++++ .../macao_12/result/macao_full.ttl | 26 +++++++++++++++++++ .../macao_12/script/src/extract.py | 2 ++ .../macao_12/script/templates/path.rq | 3 ++- 4 files changed, 56 insertions(+), 1 deletion(-) diff --git a/tetras_extraction/macao_12/result/macao_content.ttl b/tetras_extraction/macao_12/result/macao_content.ttl index ed5eff07..1561c4b8 100644 --- a/tetras_extraction/macao_12/result/macao_content.ttl +++ b/tetras_extraction/macao_12/result/macao_content.ttl @@ -12,6 +12,7 @@ rdfs:label "Présentation" ; :__protege_display_name "00 | MosMod951 | Présentation" ; :contientSousPartie :MosEtp342 ; + :id "MosMod951" ; :index 0 ; :titre "Présentation" ; rdfs:subClassOf :MacaoRoot . @@ -4014,6 +4015,7 @@ rdfs:label "L'accentuation des auxiliaires" ; :__protege_display_name "02 | MosEtp252 | L'accentuation des auxiliaires" ; :contientActivite :pg686 ; + :id "MosEtp252" ; :index 2 ; :titre "L'accentuation des auxiliaires" ; rdfs:subClassOf :MosMod39 . @@ -4023,6 +4025,7 @@ rdfs:label "MACAO" ; :__protege_display_name "00 | MosEtp342 | MACAO" ; :contientActivite :pg496 ; + :id "MosEtp342" ; :index 0 ; :titre "MACAO" ; rdfs:subClassOf :MosMod951 . @@ -4032,6 +4035,7 @@ rdfs:label "La prononciation des déterminants" ; :__protege_display_name "04 | MosEtp385 | La prononciation des déterminants" ; :contientActivite :pg881 ; + :id "MosEtp385" ; :index 4 ; :titre "La prononciation des déterminants" ; rdfs:subClassOf :MosMod39 . @@ -4041,6 +4045,7 @@ rdfs:label "Utiliser les mémentos" ; :__protege_display_name "00 | MosEtp435 | Utiliser les mémentos" ; :contientActivite :pg578 ; + :id "MosEtp435" ; :index 0 ; :titre "Utiliser les mémentos" ; rdfs:subClassOf :MosMod39 . @@ -4050,6 +4055,7 @@ rdfs:label "La prononciation des prépositions" ; :__protege_display_name "03 | MosEtp534 | La prononciation des prépositions" ; :contientActivite :pg926 ; + :id "MosEtp534" ; :index 3 ; :titre "La prononciation des prépositions" ; rdfs:subClassOf :MosMod39 . @@ -4059,6 +4065,7 @@ rdfs:label "Longueur de la voyelle" ; :__protege_display_name "07 | MosEtp690 | Longueur de la voyelle" ; :contientActivite :pg397 ; + :id "MosEtp690" ; :index 7 ; :titre "Longueur de la voyelle" ; rdfs:subClassOf :MosMod39 . @@ -4068,6 +4075,7 @@ rdfs:label "Liste des phonèmes de l'anglais" ; :__protege_display_name "05 | MosEtp918 | Liste des phonèmes de l'anglais" ; :contientActivite :pg549 ; + :id "MosEtp918" ; :index 5 ; :titre "Liste des phonèmes de l'anglais" ; rdfs:subClassOf :MosMod39 . @@ -4077,6 +4085,7 @@ rdfs:label "Voyelles lâches et voyelles tendues" ; :__protege_display_name "06 | MosEtp940 | Voyelles lâches et voyelles tendues" ; :contientActivite :pg888 ; + :id "MosEtp940" ; :index 6 ; :titre "Voyelles lâches et voyelles tendues" ; rdfs:subClassOf :MosMod39 . @@ -4087,6 +4096,7 @@ :__protege_display_name "01 | MosMod10 | MACAO 1 - S'entraîner à la reconnaissance" ; :contientModule :MosMod11, :MosMod34 ; + :id "MosMod10" ; :index 1 ; :titre "MACAO 1 - S'entraîner à la reconnaissance" ; rdfs:subClassOf :MacaoRoot . @@ -4096,6 +4106,7 @@ rdfs:label "Reconnaître les syllabes" ; :__protege_display_name "00 | MosMod11 | Reconnaître les syllabes" ; :contientSousPartie :MosEtp129 ; + :id "MosMod11" ; :index 0 ; :titre "Reconnaître les syllabes" ; rdfs:subClassOf :MosMod10 . @@ -4106,6 +4117,7 @@ :__protege_display_name "02 | MosMod95 | MACAO 2 - Se servir des renseignements phonétiques du dictionnaire" ; :contientModule :MosMod341, :MosMod60 ; + :id "MosMod95" ; :index 2 ; :titre "MACAO 2 - Se servir des renseignements phonétiques du dictionnaire" ; rdfs:subClassOf :MacaoRoot . @@ -4116,6 +4128,7 @@ :__protege_display_name "01 | MosEtp777 | L'accentuation des syllabes" ; :contientActivite :pg156, :pg519 ; + :id "MosEtp777" ; :index 1 ; :titre "L'accentuation des syllabes" ; rdfs:subClassOf :MosMod39 . @@ -4126,6 +4139,7 @@ :__protege_display_name "00 | MosMod341 | Lire les symboles phonétiques" ; :contientSousPartie :MosEtp171, :MosEtp644 ; + :id "MosMod341" ; :index 0 ; :titre "Lire les symboles phonétiques" ; rdfs:subClassOf :MosMod95 . @@ -4136,6 +4150,7 @@ :__protege_display_name "01 | MosMod60 | Reconnaître les marques de l'accentuation" ; :contientSousPartie :MosEtp369, :MosEtp746 ; + :id "MosMod60" ; :index 1 ; :titre "Reconnaître les marques de l'accentuation" ; rdfs:subClassOf :MosMod95 . @@ -5658,6 +5673,7 @@ :contientSousPartie :MosEtp210, :MosEtp335, :MosEtp558 ; + :id "MosMod34" ; :index 1 ; :titre "Reconnaître les auxiliaires, les prépositions et les déterminants" ; rdfs:subClassOf :MosMod10 . @@ -5872,6 +5888,7 @@ :pg5121, :pg6241, :pg643 ; + :id "MosEtp558" ; :index 2 ; :titre "> Reconnaître les déterminants" ; rdfs:subClassOf :MosMod34 . @@ -5886,6 +5903,7 @@ :pg455, :pg672, :pg860 ; + :id "MosEtp369" ; :index 0 ; :titre "> Reconnaître les marques de l'accentuation" ; rdfs:subClassOf :MosMod60 . @@ -5901,6 +5919,7 @@ :pg594, :pg938, :pg940 ; + :id "MosEtp555" ; :index 8 ; :titre "Quelques définitions" ; rdfs:subClassOf :MosMod39 . @@ -5918,6 +5937,7 @@ :MosEtp777, :MosEtp918, :MosEtp940 ; + :id "MosMod39" ; :index 3 ; :titre "Mémentos" ; rdfs:subClassOf :MacaoRoot . @@ -6306,6 +6326,7 @@ :pg825, :pg890, :pg948 ; + :id "MosEtp335" ; :index 1 ; :titre "> Reconnaître les prépositions" ; rdfs:subClassOf :MosMod34 . @@ -6327,6 +6348,7 @@ :pg85, :pg861, :pg88 ; + :id "MosEtp129" ; :index 0 ; :titre "> Reconnaître les syllabes en anglais oral" ; rdfs:subClassOf :MosMod11 . @@ -6476,6 +6498,7 @@ :pg841, :pg8412, :pg966 ; + :id "MosEtp746" ; :index 1 ; :titre "> Utiliser les marques de l'accentuation" ; rdfs:subClassOf :MosMod60 . @@ -6502,6 +6525,7 @@ :pg879, :pg900, :pg903 ; + :id "MosEtp210" ; :index 0 ; :titre "> Reconnaître les auxiliaires" ; rdfs:subClassOf :MosMod34 . @@ -6532,6 +6556,7 @@ :pg83, :pg855, :pg896 ; + :id "MosEtp171" ; :index 0 ; :titre "> Reconnaître les symboles phonétiques" ; rdfs:subClassOf :MosMod341 . @@ -6564,6 +6589,7 @@ :pg933, :pg965, :pg98 ; + :id "MosEtp644" ; :index 1 ; :titre "> Utiliser les symboles phonétiques" ; rdfs:subClassOf :MosMod341 . diff --git a/tetras_extraction/macao_12/result/macao_full.ttl b/tetras_extraction/macao_12/result/macao_full.ttl index cce67b46..76eaf02b 100644 --- a/tetras_extraction/macao_12/result/macao_full.ttl +++ b/tetras_extraction/macao_12/result/macao_full.ttl @@ -94,6 +94,7 @@ rdfs:label "Présentation" ; :__protege_display_name "00 | MosMod951 | Présentation" ; :contientSousPartie :MosEtp342 ; + :id "MosMod951" ; :index 0 ; :titre "Présentation" ; rdfs:subClassOf :MacaoRoot . @@ -4655,6 +4656,7 @@ rdfs:label "L'accentuation des auxiliaires" ; :__protege_display_name "02 | MosEtp252 | L'accentuation des auxiliaires" ; :contientActivite :pg686 ; + :id "MosEtp252" ; :index 2 ; :titre "L'accentuation des auxiliaires" ; rdfs:subClassOf :MosMod39 . @@ -4666,6 +4668,7 @@ rdfs:label "MACAO" ; :__protege_display_name "00 | MosEtp342 | MACAO" ; :contientActivite :pg496 ; + :id "MosEtp342" ; :index 0 ; :titre "MACAO" ; rdfs:subClassOf :MosMod951 . @@ -4677,6 +4680,7 @@ rdfs:label "La prononciation des déterminants" ; :__protege_display_name "04 | MosEtp385 | La prononciation des déterminants" ; :contientActivite :pg881 ; + :id "MosEtp385" ; :index 4 ; :titre "La prononciation des déterminants" ; rdfs:subClassOf :MosMod39 . @@ -4688,6 +4692,7 @@ rdfs:label "Utiliser les mémentos" ; :__protege_display_name "00 | MosEtp435 | Utiliser les mémentos" ; :contientActivite :pg578 ; + :id "MosEtp435" ; :index 0 ; :titre "Utiliser les mémentos" ; rdfs:subClassOf :MosMod39 . @@ -4699,6 +4704,7 @@ rdfs:label "La prononciation des prépositions" ; :__protege_display_name "03 | MosEtp534 | La prononciation des prépositions" ; :contientActivite :pg926 ; + :id "MosEtp534" ; :index 3 ; :titre "La prononciation des prépositions" ; rdfs:subClassOf :MosMod39 . @@ -4710,6 +4716,7 @@ rdfs:label "Longueur de la voyelle" ; :__protege_display_name "07 | MosEtp690 | Longueur de la voyelle" ; :contientActivite :pg397 ; + :id "MosEtp690" ; :index 7 ; :titre "Longueur de la voyelle" ; rdfs:subClassOf :MosMod39 . @@ -4721,6 +4728,7 @@ rdfs:label "Liste des phonèmes de l'anglais" ; :__protege_display_name "05 | MosEtp918 | Liste des phonèmes de l'anglais" ; :contientActivite :pg549 ; + :id "MosEtp918" ; :index 5 ; :titre "Liste des phonèmes de l'anglais" ; rdfs:subClassOf :MosMod39 . @@ -4732,6 +4740,7 @@ rdfs:label "Voyelles lâches et voyelles tendues" ; :__protege_display_name "06 | MosEtp940 | Voyelles lâches et voyelles tendues" ; :contientActivite :pg888 ; + :id "MosEtp940" ; :index 6 ; :titre "Voyelles lâches et voyelles tendues" ; rdfs:subClassOf :MosMod39 . @@ -4744,6 +4753,7 @@ :__protege_display_name "01 | MosMod10 | MACAO 1 - S'entraîner à la reconnaissance" ; :contientModule :MosMod11, :MosMod34 ; + :id "MosMod10" ; :index 1 ; :titre "MACAO 1 - S'entraîner à la reconnaissance" ; rdfs:subClassOf :MacaoRoot . @@ -4755,6 +4765,7 @@ rdfs:label "Reconnaître les syllabes" ; :__protege_display_name "00 | MosMod11 | Reconnaître les syllabes" ; :contientSousPartie :MosEtp129 ; + :id "MosMod11" ; :index 0 ; :titre "Reconnaître les syllabes" ; rdfs:subClassOf :MosMod10 . @@ -4767,6 +4778,7 @@ :__protege_display_name "02 | MosMod95 | MACAO 2 - Se servir des renseignements phonétiques du dictionnaire" ; :contientModule :MosMod341, :MosMod60 ; + :id "MosMod95" ; :index 2 ; :titre "MACAO 2 - Se servir des renseignements phonétiques du dictionnaire" ; rdfs:subClassOf :MacaoRoot . @@ -4779,6 +4791,7 @@ :__protege_display_name "01 | MosEtp777 | L'accentuation des syllabes" ; :contientActivite :pg156, :pg519 ; + :id "MosEtp777" ; :index 1 ; :titre "L'accentuation des syllabes" ; rdfs:subClassOf :MosMod39 . @@ -4791,6 +4804,7 @@ :__protege_display_name "00 | MosMod341 | Lire les symboles phonétiques" ; :contientSousPartie :MosEtp171, :MosEtp644 ; + :id "MosMod341" ; :index 0 ; :titre "Lire les symboles phonétiques" ; rdfs:subClassOf :MosMod95 . @@ -4803,6 +4817,7 @@ :__protege_display_name "01 | MosMod60 | Reconnaître les marques de l'accentuation" ; :contientSousPartie :MosEtp369, :MosEtp746 ; + :id "MosMod60" ; :index 1 ; :titre "Reconnaître les marques de l'accentuation" ; rdfs:subClassOf :MosMod95 . @@ -6461,6 +6476,7 @@ :contientSousPartie :MosEtp210, :MosEtp335, :MosEtp558 ; + :id "MosMod34" ; :index 1 ; :titre "Reconnaître les auxiliaires, les prépositions et les déterminants" ; rdfs:subClassOf :MosMod10 . @@ -6715,6 +6731,7 @@ :pg5121, :pg6241, :pg643 ; + :id "MosEtp558" ; :index 2 ; :titre "> Reconnaître les déterminants" ; rdfs:subClassOf :MosMod34 . @@ -6731,6 +6748,7 @@ :pg455, :pg672, :pg860 ; + :id "MosEtp369" ; :index 0 ; :titre "> Reconnaître les marques de l'accentuation" ; rdfs:subClassOf :MosMod60 . @@ -6748,6 +6766,7 @@ :pg594, :pg938, :pg940 ; + :id "MosEtp555" ; :index 8 ; :titre "Quelques définitions" ; rdfs:subClassOf :MosMod39 . @@ -6780,6 +6799,7 @@ :MosEtp777, :MosEtp918, :MosEtp940 ; + :id "MosMod39" ; :index 3 ; :titre "Mémentos" ; rdfs:subClassOf :MacaoRoot . @@ -7202,6 +7222,7 @@ :pg825, :pg890, :pg948 ; + :id "MosEtp335" ; :index 1 ; :titre "> Reconnaître les prépositions" ; rdfs:subClassOf :MosMod34 . @@ -7231,6 +7252,7 @@ :pg85, :pg861, :pg88 ; + :id "MosEtp129" ; :index 0 ; :titre "> Reconnaître les syllabes en anglais oral" ; rdfs:subClassOf :MosMod11 . @@ -7390,6 +7412,7 @@ :pg841, :pg8412, :pg966 ; + :id "MosEtp746" ; :index 1 ; :titre "> Utiliser les marques de l'accentuation" ; rdfs:subClassOf :MosMod60 . @@ -7418,6 +7441,7 @@ :pg879, :pg900, :pg903 ; + :id "MosEtp210" ; :index 0 ; :titre "> Reconnaître les auxiliaires" ; rdfs:subClassOf :MosMod34 . @@ -7454,6 +7478,7 @@ :pg83, :pg855, :pg896 ; + :id "MosEtp171" ; :index 0 ; :titre "> Reconnaître les symboles phonétiques" ; rdfs:subClassOf :MosMod341 . @@ -7488,6 +7513,7 @@ :pg933, :pg965, :pg98 ; + :id "MosEtp644" ; :index 1 ; :titre "> Utiliser les symboles phonétiques" ; rdfs:subClassOf :MosMod341 . diff --git a/tetras_extraction/macao_12/script/src/extract.py b/tetras_extraction/macao_12/script/src/extract.py index 12133eb1..161018b0 100644 --- a/tetras_extraction/macao_12/script/src/extract.py +++ b/tetras_extraction/macao_12/script/src/extract.py @@ -1,4 +1,5 @@ import filecmp +from re import sub from lxml import etree from rdflib import RDFS, Graph, Literal, URIRef @@ -97,6 +98,7 @@ def parse_manifest_rec( # Declare RDF resource and simple properties subject = NS[id] graph.add((subject, RDF.type, OWL.NamedIndividual)) + graph.add((subject, NS["id"], Literal(id))) set_title(graph, subject, str(title)) if id.startswith("MosMod"): # It's a Module: diff --git a/tetras_extraction/macao_12/script/templates/path.rq b/tetras_extraction/macao_12/script/templates/path.rq index 9ca19c65..497fbb14 100644 --- a/tetras_extraction/macao_12/script/templates/path.rq +++ b/tetras_extraction/macao_12/script/templates/path.rq @@ -4,9 +4,10 @@ PREFIX st: <http://ns.inria.fr/sparql-template/> # Generates the path of a MacaoContenu template mt:path(?obj) { - ?rec "/" ?obj + ?rec "/" ?id } where { ?obj a :MacaoContenu . + ?obj :id ?id optional { { ?parent :contientActivite ?obj } union {?parent :contientModule ?obj} union {?parent :contientSousPartie ?obj}. bind(st:call-template(mt:path, ?parent) as ?rec) -- GitLab