Outils pour utilisateurs

Outils du site


td_histoire_numerique:exercice_5

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
td_histoire_numerique:exercice_5 [2016/01/05 22:52]
Francesco Beretta [Extraction de donnée structurées]
td_histoire_numerique:exercice_5 [2016/01/05 23:09]
Francesco Beretta [Extraction des naissances]
Ligne 70: Ligne 70:
  
 Et le résultat: Et le résultat:
 +^Unité de connaissance^Clé du type d'​unité de connaissance^Type d'​unité de connaissance^Date^Clé de l'​acteur concerné^Nom de l'​acteur concerné^
 |<in ana="​11"><​en ref="​1620"​ ana="​23">​Christopher Grienberger</​en>​ (aussi écrit Christopher Gruemberger,​ ou encore Grinberg, Bamberger, ou Gamberger, voire Panberger), né le <dat when="​15510702"​ type="​du">​2 juillet 1551</​dat>​ à <en type="​li"​ ana="​22">​Hall dans le Tyrol</​en></​in>​|11|Naissance|15510702|1620|Grienberger,​ Christoph| |<in ana="​11"><​en ref="​1620"​ ana="​23">​Christopher Grienberger</​en>​ (aussi écrit Christopher Gruemberger,​ ou encore Grinberg, Bamberger, ou Gamberger, voire Panberger), né le <dat when="​15510702"​ type="​du">​2 juillet 1551</​dat>​ à <en type="​li"​ ana="​22">​Hall dans le Tyrol</​en></​in>​|11|Naissance|15510702|1620|Grienberger,​ Christoph|
 |<in ana="​11"><​en ref="​1619"​ ana="​23">​Michael Maestlin</​en>​ (aussi appelé Mästlin, Möstlin, ou Moestlin), né le <dat when="​15500930"​ type="​du">​30 septembre 1550</​dat>​ à <en type="​li"​ ana="​22">​Göppingen en Bade-Wurtemberg</​en></​in>​|11|Naissance|15500930|1619|Maestlin,​ Michael| |<in ana="​11"><​en ref="​1619"​ ana="​23">​Michael Maestlin</​en>​ (aussi appelé Mästlin, Möstlin, ou Moestlin), né le <dat when="​15500930"​ type="​du">​30 septembre 1550</​dat>​ à <en type="​li"​ ana="​22">​Göppingen en Bade-Wurtemberg</​en></​in>​|11|Naissance|15500930|1619|Maestlin,​ Michael|
Ligne 79: Ligne 80:
 ==== Extraction des naissances ==== ==== Extraction des naissances ====
  
 +La requête peut évidemment être adaptée au questionnement du chercheur. On peut ainsi, par exemple, sélectionner uniquement les enseignements:​
 +<code sql>
 +WITH tw1 AS
 +(
 +  SELECT UNNEST(xpath ('//​in',​texte_xml)) texte_xml
 +  FROM objets.objet
 +  WHERE pk_objet = 3
 +)
 +SELECT tw1.texte_xml,​
 +       ​(((xpath ('/​in[@ana=1621]/​@ana',​tw1.texte_xml))[1])::​text)::​integer cle_type_information,​
 +       ​t1.nom type_information,​
 +       ​array_to_string(xpath('/​in/​dat/​@when',​tw1.texte_xml),​ '​–'​) dates,
 +       ​array_to_string(xpath('/​in/​en[@ana=1624]/​@ref',​tw1.texte_xml),​ ','​) acteur,
 +       ​t2.nom nom_acteur,
 +       ​regexp_replace(array_to_string(xpath('/​in/​en[@ana=10]/​descendant-or-self::​*/​text()',​tw1.texte_xml),​ ' '), '​\s{1,​}',​ ' ', '​g'​ ) institution,​
 +       ​array_to_string(xpath('//​en[@ana=1622]/​descendant-or-self::​*/​text()',​tw1.texte_xml),​ ','​) matiere
 +
 +
 +FROM tw1
 +  JOIN vues.vm_objet_vue_de_base t1 ON t1.pk_objet = ( ( (xpath ('/​in/​@ana',​tw1.texte_xml))[1])::​text)::​integer
 +  LEFT JOIN vues.vm_objet_vue_de_base t2 ON t2.pk_objet = ( ( (xpath ('/​in/​en/​@ref',​tw1.texte_xml))[1])::​text)::​integer
 +WHERE (((xpath ('/​in[@ana=1621]/​@ana',​tw1.texte_xml))[1])::​text)::​integer = 1621
 +</​code>​
td_histoire_numerique/exercice_5.txt · Dernière modification: 2016/03/03 10:26 par Francesco Beretta