Aide:Avancée
<EN RÉVISION>
Créer la page de la classe
Utiliser le formulaire Formulaire:Classe pour créer une page qui contiendra toutes les pages nécessaires à la nouvelle classe. Une fois la page créée, celle-ci sera votre tableau de bord centralisé pour générer le reste des pages requises. Pour créer les autres pages, cliquer sur les liens qui apparaissent en rouge dans la page de la classe. Ceux-ci vous enverront à l'endroit approprié pour créer les pages en question.
Comment créer les modèles
Pour créer un modèle, il est recommandé de rédiger d'abord une page typique qui sert de brouillon. Ensuite, on peut se servir d'un compositeur sémantique en fichier classeur, pour générer les codes appropriés des attributs. (faire un lien vers le compositeur tout nu)
On crée un modèle de cette manière: (remplir la manière officielle qu'on ne se souvient plus...) On ne peut pas utiliser d'apostrophes dans l’appellation des modèles.
On peut aussi crée le lien directement de la barre d'adresse, en modifiant l'inscription après le symbole «=».
Par exemple: http://smw.infrastructures.cc/index.php?title=Modèle:nom du modèle
On peut alors rédiger le modèle facilement, en copiant/collant la colonne «Code pour champ du modèle» du compositeur sémantique et complétant avec les titres et sous-titres.
Finalement, on ajoute en haut du modèle le code pour lier le modèle à une catégorie: [[Catégorie:nom de la catégorie]]
Si la catégorie existe déjà elle apparaîtra en lien interne bleu. Sinon, lien interne rouge permettra de la créer.
Modèle dans un modèle
Il est possible d'utiliser un modèle à l'intérieur d'un autre modèle. Pour intégrer les sous-modèles dans les pages qui utilisent un modèle donné, la manière la plus efficace est de leur faire appel dans le formulaire utilisé pour inclure des donnés dans ce modèle. La syntaxe {{{for template|''nom du modèle''|}}} permet l'ajout de données aux différents modèles souhaités et, ainsi, place les sous modèles dans les pages qui utilisaient le modèle original.
Pour placer les sous modèles dans un ordre donné, il faut respecter cet ordre dans le formulaire. On peut même placer un modèle à l'aide du formulaire même si ce dernier ne sert pas à lui fournir des donnés. Le simple fait d'ouvrir une section dédiée au sous modèle ( à l'aide de la syntaxe {{{for template|''nom du modèle''|}}} ) pour ensuite la refermer ( à l'aide de la syntaxe {{{end template}}} ) fera appel au sous-modèle à cet endroit dans la page.
En fonction du titre de la page active
Le "mot magique" {{PAGENAME}} est remplacé par le nom de la page où il se trouve. En posant une requête qui utilise cette fonction dans un modèle, par exemple, on peut faire en sorte que les résultats concerne toujours la page active. Un exemple de cette mécanique appliqué se trouve à la page du Modèle d'unité. La requête prend la form suivante :
{{#ask:[[Catégorie:Enjeu] [[Suivi::Fermé]] [[Concerne l'unité::{{PAGENAME}}]] |?Concerne le processus |?Est à l étape de traitement de l enjeu=Étape |headers=plain |sort=Étape de traitement |order=asc}}
Ainsi, chaque page d'unité appellera les enjeux fermés qui la concerne.
En fonction d'un attribut de la page active
Cette mécanique permet l'appel de pages en fonction des valeurs attribués aux propriétés de la page active. Plus précisement, la requête recherche les pages dont le nom correspond à la valeure d'une propriété de la page active. Pour l'utiliser, poser le critère de sélection de page en nommant l'attribut dont ont veut appeler la valeur précédé d'un deux-points, comme ceci:
[[:{{{"Nom de l'attribut à évaluer"}}}]]
Un exemple en application se trouve dans le modèle de contenu :
{{#ask: [[:{{{Est une demande du type de contenu}}}]] |?A le processus de mise à disposition |format=plain |headers=hide |mainlabel=- }}
Cette requête appelle, dans une page de contenu, la page du type de contenu auquel le contenu à été assigné en fonction de son attribut Est une demande du type de contenu. Comme cette mécanique appelle les pages dont le nom est assigné à l'attribut, le type d'attribut sur lequel on fait cette requête doit obligatoirement être du type page.
Comment créer les formulaires
On crée un formulaire de cette manière: (remplir la manière officielle qu'on ne se souvient plus...)
On peut aussi crée le lien directement de la barre d'adresse, en modifiant l'inscription après le symbole «=».
Par exemple: http://smw.infrastructures.cc/index.php?title=Formulaire:Nom du formulaire
On ouvre alors l'onglet «Modifier» en haut à droite pour remplir les champs du formulaire souhaité. Le formulaire se rédige comme ceci:
- Un encodage standard en haut de tous les formulaire:
<noinclude>
Ceci est le formulaire « Nom du formulaire ».
Pour créer une page avec ce formulaire, entrez le nom de la page ci-dessous ;
si une page avec ce nom existe déjà, vous serez dirigé vers un formulaire pour l’éditer.
{{#forminput:form=Nom du formulaire}}
</noinclude><includeonly>
<div id="wikiPreview" style="display: none; padding-bottom: 25px; margin-bottom: 25px; border-bottom: 1px solid #AAAAAA;"></div>
{{{for template|Nom du modèle associé}}}
- Les informations de la colonne «Code pour champ du formulaire» importée du compositeur sémantique, espacée et complétée par les libellés de chacun des attributs.
- Un encodage standart à la fin de tous les formulaire:
{{{end template}}}
'''Texte libre:'''
{{{standard input|free text|rows=10}}}
{{{standard input|summary}}}
{{{standard input|minor edit}}} {{{standard input|watch}}}
{{{standard input|save}}} {{{standard input|preview}}} {{{standard input|changes}}} {{{standard input|cancel}}}
</includeonly>
(Explication des input type, besoin d'aide là-dessus Guillaume)
Comment créer les pages attributs
Chacun des liens d'attributs qui ont été créés dans le descriptif du modèle, doit être configuré à l'aide de l'onglet «Modifier avec formulaire».
(décrire chacune des cases du formulaire à attribut, besoin d'aide là dessus M. Coulombe)
Comment créer les catégories
Ça se crée tout seul?...
Attributs
De manière générale, on essai de créer le moins de propriétés inutiles possibles. Ainsi, avant de créer une propriété, il est important de vérifier qu'aucune autre propriété existante ne peut la remplacer.
On peut utiliser le modèle d'attribut pour définir et spécifier le type des attributs utilisés.
On peut obtenir une liste des valeurs unique attribuées à une propriété : http://smw.referata.com/wiki/List_the_set_of_unique_values_for_a_property
On ne peut pas utiliser d'apostrophes dans l’appellation des attributs.
Mécaniques Wiki
Poser des questions au wiki
On peut trouver un guide d'aide général sur les requêtes à la page d'aide pour les Requêtes intégrées officielle de Semantic Media Wiki (SMW).
Une requête appelle des pages selon certains critères que l'on doit poser tel qu'expliqué à la page d'aide de Selection des pages officielle de Semantic Media Wiki (SMW).
Le requête présente ensuite les résultats obtenus selon un format spécifié. La liste exhaustive des formats se trouve à la page d'aide des Formats des résultats officielle de Semantic Media Wiki (SMW).
Le fichier suivant mécanise le codage de fonctions des propriétés appelées dans une requête pour créer un fichier csv : Fichier:Constructeur à propriétés de requêtes.ods.
En fonction d'une inégalité
Certaines syntaxes permettent l'appel de page en fonction de leur valeur pour une propriété sans toutefois avoir recours à une valeur en particulier. Ainsi, on peut appeler les pages qui ont une valeur différente de, plus grande ou plus petite que ou encore similaire. Une explication détaillée de l'utilisation de ces mécaniques de requêtes de trouve à la page page d'aide pour la sélection de pages officielle de Semantic Media Wiki (SMW).
Un exemple du critère différent de peut-être vu à la page du modèle de local à la section Contenus qui transitent par ce local.
En fonction de propriétés inverses
De manière similaire, mais pour des pages autres que celle active, on peut faire appel aux pages qui sont assignés comme propriétés à une page. Pour ce faire, on ajoute un moins (-) devant la propriété dont on veut appeler la valeur, puis ,après les deux-points, on nomme la page qui a cet attribut, comme suit :
{{#ask: [[-Est dans le bâtiment::Alcôve lingerie 01.01 Unité de soins-36 lits Corridor nord-est]] }}
ce qui donne
On peut aussi faire appel à une page au lieu de la nommer, par exemple avec la syntaxe {{{PAGENAME}}}, tel qu'illustré dans le modèle de calcul des totaux des segments de trajets ou encore en appelant une propriété (de type page) de la page active avec la syntaxe {{{nom de la propriété|}}}.
Fonctions
Pour un résumé condensé des fonctions de Semantic Media Wiki (SMW), se référer au fichier de références SMW
Fonctions parseurs
Le fichier suivant mécanise le codage de fonctions parseurs if ou arraymap dans un modèle à partir d'une propriété : Fichier:Constructeur à Arraymap et If.ods.
Si un formulaire permet l'entrée de plusieurs valeurs pour une même propriété, la modèle doit présent cette propriété au travers d'un #arraymap tandis que si une seule valeur est associé à la propriété, on utilise habituellement la fonction #if.
On peut trouver un guide d'aide fonctions parseurs aux différentes pages d'aide officielles de Semantic Media Wiki (SMW) :
Mots magiques
EDITSECTION
L'option EDITSECTION a été ôté pour éviter des os, ce qui est recommandé lorsqu'on utilise des modèles et formulaires sémantiques. Il sera possible de rétablir cette fonctionnalité pour permettre l'édition de pages plus longues. Toutefois il faudra faire un travail de désactiver cette fonctionnalité dans chacun des formulaires et modèles. :
- Plus un problème avec les modèles qui utilisent des titres de section - un peu confusant : faudrait encapsuler le contenu de tous les modèles (et p-e formulaire) par un :
div class="pas_de_edit_section_ici" entre <> puis tout le modèle suivi d'une : /div
Et dans le CSS (dans la page MediaWiki:Vector.css) ajouter : .pas_de_edit_section_ici span.editsection {display:none;} (et enlever la règle CSS qui fait disparaître les span.editsection).
Étapes de validation/révision
Dans le cas où une valeur n'apparaît pas dans la modification avec formulaire mais est visible dans la page publiée, l'erreur vient probablement d'une faute de frappe dans le formulaire (vice-versa)
Vector.css
L'habillage local des tableaux et boîtes à droite est fait (en mode admin) à la page MediaWiki:Vector.css
Liens utiles
Ontology design patterns : http://ontologydesignpatterns.org/wiki/Submissions:Lexico_Syntactic_ODP_corresponding_to_SubclassOf_relation_ODP