Dans cette partie du Parcours de développement découplé AEM, vous pouvez apprendre à modéliser votre structure de contenu. Créez ensuite cette structure pour Adobe Experience Manager (AEM) à l’aide des modèles de fragments de contenu et des fragments de contenu, en vue de la réutiliser sur plusieurs canaux.
Pour commencer, la section En savoir plus sur le développement CMS découplé a décrit la diffusion de contenu en mode découplé et les raisons justifiant son utilisation. Continuez avec la section Prise en main d’AEM as a Cloud Service découplé qui décrit le découplage AEM dans le contexte de votre propre projet…
Dans le document précédent du parcours découplé AEM, Premiers pas vers votre première expérience d’utilisation du découplage AEM, vous avez découvert les étapes nécessaires à la mise en œuvre de votre premier projet. Après l’avoir lu, vous devriez :
Cet article s’appuie sur ces principes de base pour que vous compreniez comment préparer votre propre projet AEM découplé.
La modélisation des données est un sujet très large car il est utilisé lors du développement de bases de données relationnelles. De très nombreux livres et sources d’information en ligne sont disponibles.
Nous ne prendrons en compte que les aspects qui présentent un intérêt que lors de la modélisation des données à utiliser avec le découplage AEM.
Le monde extérieur est vaste et malveillant.
Peut-être est-ce vrai, ou peut-être pas, même si le monde est certainement vaste et compliqué. La modélisation des données sert donc à définir une représentation simplifiée d’une très (très) petite sous-section, en utilisant l’information spécifique nécessaire à un certain objectif.
Comme AEM traite du contenu, nous nous référons à la modélisation de données en tant que modélisation de contenu.
Par exemple :
Il y a beaucoup d’écoles, mais elles ont toutes différentes choses en commun :
Même dans un exemple aussi modeste, la liste peut sembler infinie. Pour autant, si vous souhaitez que votre application effectue une tâche simple, vous devez limiter les informations aux éléments essentiels.
Par exemple, la publicité relative à des événements spéciaux pour toutes les écoles de la région :
Nous appelons Entités ce que vous souhaitez décrire, c’est-à-dire les « objets » au sujet desquels nous voulons stocker des informations.
Les informations que nous voulons stocker à leur sujet sont les Attributs (propriétés), tels que le nom et les qualifications pour les enseignants.
Il existe ensuite diverses relations entre les entités. Par exemple, en général, une école n’a qu’un seul directeur, et de nombreux enseignants (et généralement le directeur est également enseignant).
Le processus d’analyse et de définition de ces informations, ainsi que les relations entre elles, est appelé Modélisation de contenu.
Souvent, vous devez commencer par élaborer un schéma conceptuel qui décrit les entités et leurs relations. Il s’agit généralement d’un niveau supérieur (conceptuel).
Une fois ce schéma établi de manière stable, vous pouvez traduire les modèles en Schéma logique qui décrit les entités, ainsi que les attributs et les relations. À ce niveau, vous devez examiner de près les définitions pour éliminer la duplication et optimiser votre conception.
Parfois, ces deux étapes sont fusionnées, souvent en fonction de la complexité de votre scénario.
Par exemple, avez-vous besoin d’entités distinctes pour Head Teacher
et Teacher
, ou simplement d’un attribut supplémentaire sur le modèle Teacher
?
L’intégrité des données est nécessaire pour garantir la précision et la cohérence de votre contenu tout au long de son cycle de vie. Cela implique de s’assurer que les auteurs de contenu peuvent facilement comprendre où le stocker, les éléments suivants sont donc essentiels :
La redondance des données se produit lorsque les mêmes informations sont stockées deux fois dans la structure de contenu. Vous devez éviter cette situation, car elle peut prêter à confusion lors de la création du contenu et entraîner des erreurs lors de l’interrogation, outre la mauvaise utilisation de l’espace de stockage.
En optimisant votre structure, vous pouvez améliorer les performances, tant pour la création de contenu que pour l’interrogation.
Tout est une question d’équilibre, mais la création d’une structure trop complexe ou possédant un nombre excessif de niveaux, peut avoir pour conséquences :
De la confusion pour les auteurs qui génèrent le contenu.
Un impact considérable sur les performances lorsque la requête doit accéder à plusieurs fragments de contenu imbriqués (référencés) pour récupérer le contenu nécessaire.
La modélisation des données est un ensemble de techniques établies, souvent utilisées lors de bases de données de relations développées. Que signifie la modélisation de contenu pour le découplage AEM ?
Pour que votre application puisse demander et recevoir le contenu requis d’AEM de manière cohérente et efficace, ce contenu doit être structuré.
Votre application connaît donc à l’avance la forme de réponse et, donc, comment la traiter. Cette approche est plus simple à traiter que de recevoir du contenu sous forme libre, qui doit être analysé pour déterminer ce qu’il contient et, donc, comment l’utiliser.
AEM utilise des fragments de contenu pour fournir les structures nécessaires pour une diffusion en mode découplé de votre contenu vers vos applications.
La structure de votre modèle de contenu possède les caractéristiques suivantes :
Les modèles de fragment de contenu sont également utilisés comme base des schémas GraphQL d’AEM utilisés pour récupérer votre contenu – en savoir plus à ce sujet lors d’une session ultérieure.
Les demandes de contenu sont effectuées à l’aide de l’API AEM GraphQL, une mise en œuvre personnalisée de l’API GraphQL standard. L’API AEM GraphQL permet d’effectuer des requêtes (complexes) sur vos fragments de contenu, chaque requête étant conforme à un type de modèle spécifique.
Le contenu renvoyé peut alors être utilisé par vos applications.
Les modèles de fragment de contenu offrent divers mécanismes qui vous permettent de définir la structure de votre contenu.
Un modèle de fragment de contenu décrit une entité.
Vous devez activer la fonctionnalité de Fragment de contenu dans l’explorateur de configurations afin de pouvoir créer de nouveaux modèles.
Le modèle doit être nommé de sorte que l’auteur du contenu sache quel modèle sélectionner lors de la création d’un fragment de contenu.
Dans un modèle :
Par exemple :
AEM fournit les types de données suivants pour que vous puissiez modéliser votre contenu :
Deux types de données fournissent des références au contenu en dehors d’un fragment spécifique :
Référence de contenu
Il s’agit d’une référence simple à tout autre contenu de n’importe quel type.
Par exemple, vous pouvez référencer une image à un emplacement spécifié.
Référence du fragment
Cette section fournit des références à d’autres fragments de contenu.
Ce type de référence est utilisé pour créer du contenu imbriqué, présentant les relations nécessaires au modèle de votre contenu.
Le type de données peut être configuré pour permettre aux auteurs de fragments de procéder aux opérations suivantes :
Au tout début, vous devez activer les modèles de fragment de contenu pour votre site. Pour ce faire, utilisez l’explorateur de configurations sous Outils -> Général -> Explorateur de configurations. Vous pouvez choisir de configurer l’entrée globale ou de créer une configuration. Par exemple :
Voir Ressources supplémentaires – Fragments de contenu dans l’explorateur de configurations
Ensuite, les modèles de fragments de contenu peuvent être créés et la structure définie. Vous pouvez effectuer cette action sous Outils -> Général -> Modèles de fragment de contenu. Par exemple :
Voir Ressources supplémentaires – Modèles de fragment de contenu.
Les fragments de contenu sont toujours basés sur un modèle de fragment de contenu. Le modèle fournit la structure, le fragment contient le contenu.
La première étape pour créer réellement votre contenu consiste à créer un fragment de contenu. Pour ce faire, utilisez Créer -> Fragment de contenu dans le dossier requis sous Ressources -> Fichiers. L’assistant vous guidera tout au long des étapes.
Un fragment de contenu est basé sur un modèle de fragment de contenu spécifique que vous sélectionnez comme première étape du processus de création.
Une fois votre fragment créé, vous pouvez l’ouvrir dans l’éditeur de fragment de contenu. Vous pouvez effectuer les opérations suivantes :
Après avoir sélectionné le modèle approprié, un fragment de contenu est ouvert pour modification dans l’éditeur de fragment de contenu :
Voir Ressources supplémentaires – Utilisation de fragments de contenu.
Pour obtenir une structure de base en tant qu’exemple, voir la section Exemple de structure de fragment de contenu.
Maintenant que vous avez appris à modéliser votre structure et à créer du contenu en fonction de cela, l’étape suivante consiste à Découvrir comment utiliser les requêtes GraphQL pour accéder à votre contenu de fragments de contenu et le récupérer. Vous pourrez ainsi bénéficier d’une présentation du langage GraphQL, puis accéder à un certain nombre d’exemples de requêtes pour voir comment tout cela fonctionne en pratique.