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
serveurscrutari:config:scrutariinfo [2009/12/17 11:27]
127.0.0.1 modification externe
serveurscrutari:config:scrutariinfo [2022/09/11 12:24] (Version actuelle)
vincent
Ligne 1: Ligne 1:
 ====== Les fichiers d'​information ====== ====== Les fichiers d'​information ======
  
-Comme indiqué dans la description du fichier de configuration [[serveurscrutari:​config:​sources|sources.xml]], ​l'URL d'une source de données ​n'est pas directement ​l'​adresse du fichier ​complet ​au format ScrutariData. L'URL qui doit être renseigné est l'URL d'un fichier d'information qui indique en particulier la dernière date de mise à jour du fichier au format ScrutariData.+Comme indiqué dans la description du fichier de configuration [[serveurscrutari:​config:​sources|sources.xml]],​ une source de données ​peut être indiquée soit par une URL pointant ​directement ​sur un fichier au format ScrutariData ​soit par une URL pointant sur un fichier ​contenant les informations nécessaires à la constitution ​d'un fichier ​complet ​au format ScrutariData.
  
-L'​intérêt d'un tel fichier ​est d'éviter au serveur Scrutari, au moment ​de sa mise à jour quotidienne,​ de télécharger ​des données ​qui n'ont pas bougé depuis ​la veille et donc qu'il possède déjà.+Le format de ce fichier d'information est aussi du XML et il contient les trois informations suivantes : 
 +  * la date de dernière ​mise à jour des données ​du site (évite ainsi au moteur Scrutari de faire un téléchargement superflu s'​il ​n'y a pas de mise à jour) 
 +  * la ou les URL des fichiers permettant de retrouver les données au format ScrutariData 
 +  * dus fragments de code XML insérés directement
  
-Le format de ce fichier d'​information est aussi du XML et il contient les deux informations suivantes : 
-  * la date de dernière mise à jour des données du site 
-  * l'URL du fichier complet au format ScrutariData du site 
- 
-Ces fichiers doivent donc être fournis par les sites qui exportent leurs données au format ScrutariData. 
  
 ===== Structure du format XML ===== ===== Structure du format XML =====
Ligne 15: Ligne 13:
 L'​élément racine est l'​élément !!<​info>​!! qui contient seulement deux éléments : L'​élément racine est l'​élément !!<​info>​!! qui contient seulement deux éléments :
   * !!<​date>​!! : date de dernière mise à jour au format ISO,   * !!<​date>​!! : date de dernière mise à jour au format ISO,
-  * !!<​scrutaridata-url>​!! : URL du fichier ​au format ScrutariData ​; le chemin indiqué peut être relatif par rapport à l'URL du fichier d'​information.+  * !!<​scrutaridata-url>​!! : URL d'​un ​fichier ​à télécharger ​; le chemin indiqué peut être relatif par rapport à l'URL du fichier d'​information ​; il peut y avoir plusieurs éléments <​scrutaridata-url>,​ le serveur les téléchargera dans l'​ordre indiqué et les fusionnera pour obtenir un seul fichier. 
 +  * !!<​xml-fragment>​!! : code XML à inclure directement 
 + 
 +===== Approche par fichier unique ===== 
 + 
 +Cette approche est celle des petites bases ou des systèmes qui n'ont pas de problème de ressources. Dans cette approche, la source de données met à disposition un fichier unique conforme au format ScrutariData (comme elle le ferait pour un fichier de syndication). Dans ce cas, le fichier d'​information ne comprend qu'un seul élément !!<​scrutaridata-url>​!! avec l'​adresse de ce fichier et aucun !!<​xml-fragment>​!!.
  
 ==== Exemple ==== ==== Exemple ====
Ligne 22: Ligne 25:
 <?xml version='​1.0'​ encoding='​UTF-8'?>​ <?xml version='​1.0'​ encoding='​UTF-8'?>​
 <​info>​ <​info>​
-   <​date>​2009-07-03</​date>​+   <​date>​2014-04-01</​date>​
    <​scrutaridata-url>​site.scrutari-data.xml</​scrutaridata-url>​    <​scrutaridata-url>​site.scrutari-data.xml</​scrutaridata-url>​
 </​info>​ </​info>​
 </​code>​ </​code>​
 +
 +
 +===== Approche par reconstitution =====
 +
 +Cette approche est utile quand le traitement dans un fichier unique risque d'​atteindre les limites du serveur (par exemple, un script PHP peut avoir une limite de mémoire allouée). L'​idée est de les données sous le forme de plusieurs fichiers qui seront concaténés par le moteur Scrutari en un fichier unique. Ces fichiers n'ont pas à être des fichiers XML valides, le moteur les concatène d'​abord comme des chaines de caractères et ensuite parse le XML. Les éléments !!<​xml-fragment>​!! déclarés dans le fichier d'​information sont égalément concaténés comme des chaines de caractères,​ ils n'ont pas à être du XML valide non plus.
 +
 +!!<​scrutaridata-url>​!! et !!<​xml-fragment>​!! sont concaténés dans l'​ordre d'​apparition dans le fichier d'​information.
 +
 +Dans l'​exemple suivant, l'​exportation se fait en plusieurs temps. Le premier script ''​export.php?​type=debut''​ écrit le début du fichier XML avec en particulier la partie !!<​base-metadata>​!!,​ le script ''​export.php?​type=corpus&​amp;​corpus=video''​ commence un nouveau corpus (avec la partie !!<​corpus-metadata>​!! et le script ''​export.php?​type=fiches&​amp;​corpus=video''​ liste les fiches du corpus. ''<​xml-fragment><​![CDATA[</​corpus>​]]></​xml-fragment>''​ permet de fermer le corpus avant l'​appel d'un autre corpus.
 +
 +<code xml>
 +<?xml version='​1.0'​ encoding='​UTF-8'?>​
 +<​info>​
 +   <​date>​2014-04-01</​date>​
 +   <​scrutaridata-url>​export.php?​type=debut</​scrutaridata-url>​
 +   <​scrutaridata-url>​export.php?​type=corpus&​amp;​corpus=video</​scrutaridata-url>​
 +   <​scrutaridata-url>​export.php?​type=fiches&​amp;​corpus=video</​scrutaridata-url>​
 +   <​xml-fragment><​![CDATA[</​corpus>​]]></​xml-fragment>​
 +   <​scrutaridata-url>​export.php?​type=corpus&​amp;​corpus=document</​scrutaridata-url>​
 +   <​scrutaridata-url>​export.php?​type=fiches&​amp;​corpus=document</​scrutaridata-url>​
 +   <​xml-fragment><​![CDATA[</​corpus>​]]></​xml-fragment>​
 +   <​xml-fragment><​![CDATA[</​base>​]]></​xml-fragment>​
 +</​info>​
 +</​code>​
 +
  
 ===== DTD ===== ===== DTD =====
  
 <code xml> <code xml>
-<​!ELEMENT info (date|scrutaridata-url)>​+<​!ELEMENT info (date|scrutaridata-url+)>
  
    <​!ELEMENT date (#​PCDATA)>​    <​!ELEMENT date (#​PCDATA)>​
  
    <​!ELEMENT scrutaridata-url (#​PCDATA)>​    <​!ELEMENT scrutaridata-url (#​PCDATA)>​
 +   
 +   <​!ELEMENT xml-fragment (#​PCDATA)>​
  
 </​code>​ </​code>​
serveurscrutari/config/scrutariinfo.1261045624.txt.gz · Dernière modification: 2013/04/21 19:56 (modification externe)
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0