Pages enfant
  • Configurer l'objet "facet"

 

Généralités :

ROF a pris la décision de générer un fichier CDM-fr différent pour chaque état, pour chaque langue ainsi que pour chaque objectif. Le seul moyen disponible pour caractériser le fichier généré par ROF est son nom. 

Uniform a pris la décision d'intégrer dans un même fichier CDM-fr lors de l'opération d'import. Le nom du fichier CDM-fr est utilisé pour générer un objet facet (facette  dans ce texte) porteur des informations utiles qui permettent de distinguer et de retouver dynamiquement chacun des fichiers générés par ROF. Ainsi les éléments CDM-fr identifiés (properties, program, course, person) porteront les attributs suivants ajoutés lors de l'opération d'import :

  • codeFormation : porte l'identification unique de la formation (cet identifiant lie toutes les facettes d'une même formation)
  • display : indique si l'élément doit être affiché (sera exploité dans une prochaine version)
  • etat : c'est létat de la publication (définitif ou provisoire)
  • facet : la représentation textuelle de la facette (permet de relier tous les éléments CDM-fr d'une même facette)
  • language : le code de langage de la facette
  • main : booléen qui indique que la facette est la facette principale de la formation
  • pdf: booléen qui indique que la facette doit servir à générer le fichier pdf de la formation
  • oai : booléen qui permet d'indiquer que la facette sera utilisée pour générer les enregistrements oai de la formation (exportation de la formation sur le dépôt géré par Uniform)
  • mobile : booléen qui indique que la facette porte les informations destinées aux mobiles

Structure du nom de fichier généré par ROF

Cette structure n'est pas encore réellement connue mais pourrait être de la forme : OF_{idformation}_{codeobjectif}_{codelangue}_{codeetat}.xml.

Dans sa version 3.10, ROF ne génère pas la partie objectif et la structure devient donc : OF_{idformation}_{codelangue}_{codeetat}.xml.

Uniform prévoit que le séparateur "_" pourrait évoluer et permet de le redéfinir dans le fichier de configuration sous le nom "sep"

Valeur de la facette pour uniform

La valeur de la facette pour uniform est construite ainsi : {codeobjectif}_{codelangue}_{codeetat}

si codeobjectif est vide alors la valeur de la facette devient : {codelangue}_{codeetat}

 

Elément facet dans le fichier de configuration

Cet élément qui se nomme facet est défini par les attributs suivants :

  • active : true ou false {si false alors le mécanisme de facette est inactif}
  • defaut : valeur par défaut de la facette 
  • regexp : expression régulière qui doit capturer dans le nom du fichier la valeur de la facette
  • filtre : expression régulière qui permet de déterminer si la facette sera importée dans uniform si elle correspond  (si elle match) à codeobjectif
  • sep : la valeur du séparateur utilisé dans la valeur de la facette pour identifier ses composants (codeobjectif, codelangue et codeetat) (normalement vaut _)
  • pdf : l'expression régulière qui permet de déterminer si la facette doit servir à générer un fichier pdf si elle correspond  (si elle match) à codeobjectif
  • mobile : l'expression régulière qui permet de déterminer si la facette porte les informations destinées aux mobiles si elle correspond (si elle match) à codeobjectif
  • oai : l'expression régulière qui permet de déterminer si la facette sera utilisée pour générer un enregistrement oai
  • cible : permet d'extraire à partir de codeobjectif le code de la cible visée par la facette

Premier exemple de configuration de facette

<facet active="true" regexp="^OF_[^_]+_(.*)\.xml" sep="_" pdf="" mobile="" oai="" defaut="fr-FR_definitif" filtre="[^_]*_definitif" cible="^(.*)$"/>

Cet élément facet indique :

  • que le mécanisme de facette est actif
  • que la valeur par défaut de la facette est fr-FR_definitif
  • que la valeur de la facette sera extraite à partir d'un nom de fichier commençant par OF_{valeurfacette}.xml
  • que le séparateur par défaut est _
  • que toutes les facettes seront utilisées pour générer un fichier pdf
  • que toutes les facettes portent des informations destinées aux mobile (les informations pour les mobiles sont les mêmes que celles pour les desktop ou pdf)
  • que toutes les facettes seront utilisées pour générer un enregistrement oai
  • que la cible de toutes les facettes sera égale au codeobjectif

 

A partir du nom de fichier OF_ME6021_en-EN_definitif.xml, examinons en détail les valeurs de sa facette 

Extraction de la valeur de la facette

Attribut regexp = "^OF_[^_]+_(.*)\.xml"

Expression régulière qui capture la valeur de la facette à parti du nom du fichier 

Dans cet exemple : en-EN_definitif

Déterminer la valeur du séparateur

Attribut sep = "_"

 La valeur du séparateur utilisé dans la valeur de la facette pour identifier ses composants (codeobjectif, codelangue et codeetat) (normalement vaut _)

Dans cet exemple : _

Déterminer la valeur par défaut de la facette

Attribut defaut = "fr-FR_definitif"

C'est la valeur par défaut de la facette 

Dans cet exemple : la valeur de la facette vaut "fr-FR_definitif", le codeojectif vaut '"", le codelangue vaut "fr-FR", le codeetat vaut "definitif"

 

Filtrer les facettes (ex sur la valeur de l'état)

Attribut = "[^_]*_definitif"

seules les facettes dont la valeur se termine par _definitif seront importées dans uniform

Dans cet  exemple : la facette est importée

Déterminer si la facette vise un pdf

Attribut pdf = ""

l'expression régulière qui permet de déterminer si la facette doit servir à générer un fichier pdf si elle correspond  (si elle match) à codeobjectif

Dans cet exemple : la facette sera utilisée pour générer un fichier pdf car "" match codeobjectif

Déterminer si la facette vise un mobile

Attribut mobile = ""

L'expression régulière qui permet de déterminer si la facette porte les informations destinées aux mobiles si elle correspond (si elle match) à codeobjectif

Dans cet exemple :les informations de la facette seront envoyées aux mobiles car "" match codeobjectif

Déterminer si la facette vise un enregistrement oai

Attribut oai = ""

L'expression régulière qui permet de déterminer si la facette sera utilisée pour générer un enregistrement oai

Dans cet exemple  : les informations de la facette seront envoyées aux mobiles car "" match codeobjectif

 

Déterminer la cible de la facette

Attribut cible = "^(.*)$"

L'expression régulière qui permet d'extraire à partir de codeobjectif le code de la cible visée par la facette

Dans cet exemple : la valeur de la cible vaut "" puisque  codeattribut = ""

Deuxième exemple de configuration de facette

<facet active="true" regexp="^OF_[^_]+_(.*)\.xml" sep="_" pdf="^pdf.*" mobile="^mobile.*" oai="^(?!(mobile|pdf))[^-]*-?lyc" defaut="lyc_fr-FR_definitif" filtre=".*_definitif" cible="^[^-]*[-]?([^-]*)$"/>

Cet élément facet indique :

  • que le mécanisme de facette est actif
  • que la valeur par défaut de la facette est fr-FR_definitif
  • que la valeur de la facette sera extraite à partir d'un nom de fichier commençant par OF_{valeurfacette}.xml
  • que le séparateur par défaut est _
  • que les facettes dont la valeur commence par pdf serviront à générer un fichier pdf
  • que les facettes dont la valeur commence par mobile verront leurs informations envoyées aux mobiles
  • que les facettes dont la valeur ne commence pas  par pdf ou mobile serviront à générer un enregistrement oai
  • que la cible de toutes les facettes sera égale à codeobjectif débarrassée éventuellement de son début s'il y a un caractère -

 

A partir du nom de fichier OF_ME6021_pdf-lyc_en-EN_definitif.xml, examinons en détail les valeurs de la facette


Extraction de la valeur de la facette

Attribut regexp = "^OF_[^_]+_(.*)\.xml"

Expression régulière qui capture la valeur de la facette à parti du nom du fichier 

Dans cet exemple : la valeur de la facette vaut "pdf-lyc_en-EN_definitif", le codeojectif vaut '"pdf-lyc", le codelangue vaut "en-EN", le codeetat vaut "definitif

Déterminer la valeur du séparateur

Attribut sep = "_"

 La valeur du séparateur utilisé dans la valeur de la facette pour identifier ses composants (codeobjectif, codelangue et codeetat) (normalement vaut _)

Dans cet exemple : _

Déterminer la valeur par défaut de la facette

Attribut defaut = "lyc_fr-FR_definitif"

C'est la valeur par défaut de la facette 

Filtrer les facettes (ex sur la valeur de l'état)

Attribut = "[^_]*_definitif"

seules les facettes dont la valeur se termine par _definitif seront importées dans uniform

Dans cet  exemple : la facette est importée

Déterminer si la facette vise un pdf

Attribut pdf = "^pdf.*"

L'expression régulière qui permet de déterminer si la facette doit servir à générer un fichier pdf si elle correspond  (si elle match) à codeobjectif

Dans cet exemple : la facette sera utilisée pour générer un fichier pdf car "^pdf.*" match "pdf-lyc"

Déterminer si la facette vise un mobile

Attribut mobile = "^mobile.*"

L'expression régulière qui permet de déterminer si la facette porte les informations destinées aux mobiles si elle correspond (si elle match) à codeobjectif

Dans cet exemple :les informations de la facette ne seront pas envoyées aux mobiles car "^mobile.*"ne  match pas  "pdf-lyc"

Déterminer si la facette vise un enregistrement oai

Attribut oai = "^(?!(mobile|pdf))[^-]*-?lyc"

L'expression régulière qui permet de déterminer si la facette sera utilisée pour générer un enregistrement oai

Dans cet exemple  : les informations de la facette ne seront pas envoyées aux mobiles car "^(?!(mobile|pdf))[^-]*-?lyc" match "pdf-lyc"

 

Déterminer la cible de la facette

Attribut cible = "^[^-]*[-]?([^-]*)$"

L'expression régulière qui permet d'extraire à partir de codeobjectif le code de la cible visée par la facette

Dans cet exemple : la valeur de la cible vaut "lyc" puisque  codeattribut = "pdf-lyc"

  • Aucune étiquette