{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Mocodo 4.2.4 loaded.\n" ] } ], "source": [ "%reload_ext mocodo\n", "from mocodo.magic import mocodo\n", "import mcd_mocodo as mcd" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def generer_mcd(domaine:str, ga:bool=False,seed:float=1):\n", " \"\"\"\n", " Genère un graphe MCD à partir d'un domaine exprimé en MCD mocodo\n", "\n", " :param domaine: Le domaine exprimé en MCD mocodo\n", " :type domaine: str\n", " :param ga: Utiliser l'algorithme génétique pour arranger les entités, par défaut False\n", " :type ga: bool, optional\n", " :param seed: La graine pour le réarangement des entités, par défaut 1\n", " :type seed: float, optional\n", "\n", " \"\"\"\n", " return mocodo(f\"\"\"\n", " %mocodo --colors ocean -t arrange{\":algo=ga\" if ga else \"\"} --seed {seed} --detect_overlaps --select mcd\n", " {domaine}\n", " \"\"\")\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tassigner\n", "\t\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tposer\n", "\t\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tacheter\n", "\t\tdate d’achat\n", "\t\n", "\t0,N\n", "\t0,N\n", "\t0,N\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tposer\n", "\t\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\trepondre\n", "\t\n", "\t0,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tutiliser\n", "\t\n", "\t0,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tsignaler\n", "\t\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tcréer\n", "\t\n", "\t0,N\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tinviter\n", "\t\tdate invitation\n", "\t\n", "\t0,N\n", "\t0,N\n", "\t0,N\n", "\t0,N\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tsignaler\n", "\t\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tpromotion\n", "\tcode\n", "\t\n", "\tdate_de_création\n", "\tdurée_reduction\n", "\treduction\n", "\tconditions\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tabonnement\n", "\tnom_abonnement\n", "\t\n", "\tprix\n", "\tdate_de_début\n", "\tdate_de_fin\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tquestion_posée\n", "\tid_quest\n", "\t\n", "\tquestion\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tlicence\n", "\tclé\n", "\t\n", "\tdate_utilisation\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tcompte\n", "\tlogin\n", "\t\n", "\temail\n", "\tpassword\n", "\tétat\n", "\tdate_de_derniere_co\n", "\tnom\n", "\tprenom\n", "\tmobile\n", "\tdate_de_création\n", "\tmoyen_paiement\n", "\test_connecté\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tdroit\n", "\tid_droit\n", "\t\n", "\tniveau_d_access\n", "\tnb_profil_crée\n", "\tnb_user_invite\n", "\tpeut_modifier_profil\n", "\tpeut_supprimer_profil\n", "\tpeut_faire_activité\n", "\tpeut_faire_test\n", "\tpeut_consulter_hist_activité\n", "\tpeut_consulter_hist_test\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tanonyme\n", "\tid\n", "\t\n", "\temail\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tquestionnaire\n", "\tid_questionnaire\n", "\t\n", "\tforme_rappel\n", "\tdisponibilité\n", "\treponses_questionnaire\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tprobleme_signalé\n", "\tid_prob\n", "\t\n", "\tversion de l’application\n", "\tsupport\n", "\tdate du signalement\n", "\tcommentaire\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tapprenant\n", "\tid_apprenant\n", "\t\n", "\tnom\n", "\tprenom\n", "\tdate_de_naissance\n", "\tclasse\n", "\treponses_questionnaire\n", "\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "generer_mcd(mcd.auth,seed=4)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tdecrire\n", "\t\n", "\t0,N\n", "\t1,1\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tposséser\n", "\t\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tréaliser\n", "\t\tpoints accordés\n", "\t\n", "\t0,N\n", "\t0,N\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tajouter\n", "\t\n", "\t0,N\n", "\t0,N\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tfiche_activité\n", "\tid_fiche\n", "\t\n", "\tcomp_travaillé\n", "\tpourquoi_travailler_comp\n", "\tvariantes\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tapprenant\n", "\tid_apprenant\n", "\t\n", "\tnom\n", "\tprenom\n", "\tdate_de_naissance\n", "\tclasse\n", "\treponses_questionnaire\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tactivité\n", "\tid_activité\n", "\t\n", "\tcaracteristiques ia\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\thistorique_activité\n", "\tid\n", "\t\n", "\tdurée\n", "\tdate de réalisation\n", "\tnote difficulté\n", "\tnote plaisir\n", "\tnote concentration\n", "\tnote durée\n", "\tactivité proposée par algo\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tcompte\n", "\tlogin\n", "\t\n", "\temail\n", "\tpassword\n", "\tétat\n", "\tdate_de_derniere_co\n", "\tnom\n", "\tprenom\n", "\tmobile\n", "\tdate_de_création\n", "\tmoyen_paiement\n", "\test_connecté\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tactivité_ajoutee\n", "\ttitre\n", "\t\n", "\tcaracteristiques ia\n", "\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "generer_mcd(mcd.activites,seed=2)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tetre\n", "\t\n", "\t0,N\n", "\t1,1\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tetre\n", "\t\n", "\t0,N\n", "\t1,1\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tcontenir\n", "\t\n", "\t0,N\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tetre\n", "\t\n", "\t0,N\n", "\t1,1\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tfiche_activité\n", "\tid_fiche\n", "\t\n", "\tcomp_travaillé\n", "\tpourquoi_travailler_comp\n", "\tvariantes\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tRessource\n", "\tid_ress\n", "\t\n", "\ttitre\n", "\tdescription\n", "\tdate_de_publication\n", "\ttype\n", "\tniveau_d_access\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tmot_clé\n", "\tmot\n", "\t\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tarticle\n", "\tid_article\n", "\t\n", "\tlien_vers_site_externe\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tvidéo\n", "\tid_video\n", "\t\n", "\tlien_vers_site_externe\n", "\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "generer_mcd(mcd.ressources,seed=2)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tposséser\n", "\t\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tréaliser\n", "\t\n", "\t0,N\n", "\t0,N\n", "\t1,1\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tapprenant\n", "\tid_apprenant\n", "\t\n", "\tnom\n", "\tprenom\n", "\tdate_de_naissance\n", "\tclasse\n", "\treponses_questionnaire\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\thistorique_test\n", "\tid_entree\n", "\t\n", "\tdurée\n", "\tscore\n", "\ttemps de réaction moyen\n", "\tdate de réalisation\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\ttest_de_positionnement\n", "\tid_testpos\n", "\t\n", "\tconsigne\n", "\tcaracteristiques ia\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tcompte\n", "\tlogin\n", "\t\n", "\temail\n", "\tpassword\n", "\tétat\n", "\tdate_de_derniere_co\n", "\tnom\n", "\tprenom\n", "\tmobile\n", "\tdate_de_création\n", "\tmoyen_paiement\n", "\test_connecté\n", "\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "generer_mcd(mcd.test,seed=3)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tréaliser\n", "\t\tpoints accordés\n", "\t\n", "\t0,N\n", "\t0,N\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tréaliser\n", "\t\n", "\t0,N\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tatteindre\n", "\t\n", "\t0,N\n", "\t0,N\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tdebloquer\n", "\t\n", "\t0,N\n", "\t1,1\n", "\n", "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tdebloquer\n", "\t\n", "\t0,N\n", "\t1,1\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tactivité\n", "\tid_activité\n", "\t\n", "\tcaracteristiques ia\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tcompte\n", "\tlogin\n", "\t\n", "\temail\n", "\tpassword\n", "\tétat\n", "\tdate_de_derniere_co\n", "\tnom\n", "\tprenom\n", "\tmobile\n", "\tdate_de_création\n", "\tmoyen_paiement\n", "\test_connecté\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tapprenant\n", "\tid_apprenant\n", "\t\n", "\tnom\n", "\tprenom\n", "\tdate_de_naissance\n", "\tclasse\n", "\treponses_questionnaire\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tdefi\n", "\tid_defi\n", "\t\n", "\tnom\n", "\tobjectif\n", "\tdate limite\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tpalier\n", "\tid_palier\n", "\t\n", "\tnombre de points\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tbadge\n", "\tid_badge\n", "\t\n", "\tnom\n", "\tdescription\n", "\timage\n", "\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "generer_mcd(mcd.recompenses,seed=3)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "def generer_mmd(domaine:str):\n", " \"\"\"\n", " Genère un graphe Mermaid Crowfoot notation à partir d'un domaine exprimé en MCD mocodo.\n", " \n", " :param domaine: Le domaine exprimé en MCD mocodo\n", " :type domaine: str\n", " \"\"\"\n", "\n", " return mocodo(f\"\"\"\n", " %mocodo --colors ocean -t crow:mmd\n", " {domaine}\n", " \"\"\")\n", " " ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/markdown": [ "\n", "
\n", "
\n", "\n", "\n", "mocodo_notebook/sandbox_erd_crow.mmd\n", "\n", "\n", "
\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/markdown": [ "```mmd\n", "erDiagram\n", " licence {\n", " TYPE cle PK\n", " TYPE date_utilisation\n", " }\n", " promotion {\n", " TYPE code PK\n", " TYPE date_de_creation\n", " TYPE duree_reduction\n", " TYPE reduction\n", " TYPE conditions\n", " }\n", " abonnement {\n", " TYPE nom_abonnement PK\n", " TYPE prix\n", " TYPE date_de_debut\n", " TYPE date_de_fin\n", " }\n", " droit {\n", " TYPE id_droit PK\n", " TYPE niveau_d_access\n", " TYPE nb_profil_cree\n", " TYPE nb_user_invite\n", " TYPE peut_modifier_profil\n", " TYPE peut_supprimer_profil\n", " TYPE peut_faire_activite\n", " TYPE peut_faire_test\n", " TYPE peut_consulter_hist_activite\n", " TYPE peut_consulter_hist_test\n", " }\n", " questionnaire {\n", " TYPE id_questionnaire PK\n", " TYPE forme_rappel\n", " TYPE disponibilite\n", " TYPE reponses_questionnaire\n", " }\n", " probleme_signale {\n", " TYPE id_prob PK\n", " TYPE version_de_l_application\n", " TYPE support\n", " TYPE date_du_signalement\n", " TYPE commentaire\n", " }\n", " question_posee {\n", " TYPE id_quest PK\n", " TYPE question\n", " }\n", " anonyme {\n", " TYPE id PK\n", " TYPE email\n", " }\n", " inviter {\n", " TYPE date_invitation PK\n", " TYPE \n", " }\n", " acheter {\n", " TYPE date_d_achat PK\n", " }\n", " activite_ajoutee {\n", " TYPE titre PK\n", " TYPE caracteristiques_ia\n", " }\n", " historique_activite {\n", " TYPE id PK\n", " TYPE duree\n", " TYPE date_de_realisation\n", " TYPE note_difficulte\n", " TYPE note_plaisir\n", " TYPE note_concentration\n", " TYPE note_duree\n", " TYPE activite_proposee_par_algo\n", " TYPE points_accordes\n", " }\n", " palier {\n", " TYPE id_palier PK\n", " TYPE nombre_de_points\n", " }\n", " defi {\n", " TYPE id_defi PK\n", " TYPE nom\n", " TYPE objectif\n", " TYPE date_limite\n", " }\n", " badge {\n", " TYPE id_badge PK\n", " TYPE nom\n", " TYPE description\n", " TYPE image\n", " }\n", " mot_cle {\n", " TYPE mot PK\n", " }\n", " Ressource {\n", " TYPE id_ress PK\n", " TYPE titre\n", " TYPE description\n", " TYPE date_de_publication\n", " TYPE type\n", " TYPE niveau_d_access\n", " }\n", " video {\n", " TYPE id_video PK\n", " TYPE lien_vers_site_externe\n", " }\n", " article {\n", " TYPE id_article PK\n", " TYPE lien_vers_site_externe\n", " }\n", " test_de_positionnement {\n", " TYPE id_testpos PK\n", " TYPE consigne\n", " TYPE caracteristiques_ia\n", " }\n", " historique_test {\n", " TYPE id_entree PK\n", " TYPE duree\n", " TYPE score\n", " TYPE temps_de_reaction_moyen\n", " TYPE date_de_realisation\n", " }\n", " apprenant {\n", " TYPE id_apprenant PK\n", " TYPE nom\n", " TYPE prenom\n", " TYPE date_de_naissance\n", " TYPE classe\n", " TYPE reponses_questionnaire\n", " }\n", " compte {\n", " TYPE login PK\n", " TYPE email\n", " TYPE password\n", " TYPE etat\n", " TYPE date_de_derniere_co\n", " TYPE nom\n", " TYPE prenom\n", " TYPE mobile\n", " TYPE date_de_creation\n", " TYPE moyen_paiement\n", " TYPE est_connecte\n", " }\n", " fiche_activite {\n", " TYPE id_fiche PK\n", " TYPE comp_travaille\n", " TYPE pourquoi_travailler_comp\n", " TYPE variantes\n", " }\n", " activite {\n", " TYPE id_activite PK\n", " TYPE caracteristiques_ia\n", " }\n", " inviter }o..|| compte: DF\n", " inviter }o..|| compte: DF\n", " inviter }o..|| apprenant: DF\n", " inviter }o..|| droit: DF\n", " inviter }o..|| licence: DF\n", " compte }o--o| licence: utiliser\n", " compte }o--o| questionnaire: repondre\n", " compte }o--o{ apprenant: creer\n", " acheter }o..|| compte: DF\n", " acheter }o..|| promotion: DF\n", " acheter }o..|| licence: DF\n", " acheter }o..|| abonnement: DF\n", " abonnement }o--|| droit: assigner\n", " question_posee }o--|| anonyme: poser\n", " question_posee }o--|| compte: poser\n", " probleme_signale }o--|| anonyme: signaler\n", " probleme_signale }o--|| compte: signaler\n", " historique_activite }o--|| compte: realiser\n", " historique_activite }o--|| activite: realiser\n", " historique_activite }o--|| apprenant: realiser\n", " historique_activite }o--|| compte: ajouter\n", " historique_activite }o--|| activite_ajoutee: ajouter\n", " historique_activite }o--|| apprenant: ajouter\n", " historique_activite }o--|| apprenant: posseser\n", " fiche_activite ||--o{ activite: decrire\n", " apprenant }o--o{ palier: atteindre\n", " apprenant }o--o{ defi: realiser\n", " defi ||--o{ badge: debloquer\n", " palier ||--o{ badge: debloquer\n", " mot_cle }o--o{ Ressource: contenir\n", " Ressource ||--o{ video: etre\n", " Ressource ||--o{ article: etre\n", " Ressource ||--o{ fiche_activite: etre\n", " historique_test }o--|| compte: realiser2\n", " historique_test }o--|| test_de_positionnement: realiser2\n", " historique_test }o--|| apprenant: realiser2\n", " historique_test }o--|| apprenant: posseser\n", "\n", "```" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "generer_mmd(mcd.texte_complet)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "def generer_types(domaine:str):\n", " \"\"\"\n", " Infère les types des attribut d'un domaine exprimé en MCD mocodo.\n", " \n", " :param domaine: Le domaine exprimé en MCD mocodo\n", " :type domaine: str\n", " \"\"\"\n", " return mocodo(f\"\"\"\n", " %mocodo -t create:types=TODO --select rw\n", " {domaine}\n", " \"\"\")\n", "\n", "def generer_mld(domaine:str):\n", " \"\"\"\n", " Genère un MLD textuel à partir d'un domaine exprimé en MCD mocodo.\n", " \n", " :param domaine: Le domaine exprimé en MCD mocodo\n", " :type domaine: str\n", " \"\"\"\n", " return mocodo(f\"\"\"\n", " %mocodo -t mld\n", " {domaine}\n", " \"\"\")" ] } ], "metadata": { "kernelspec": { "display_name": "venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.8" } }, "nbformat": 4, "nbformat_minor": 2 }