{ "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\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tposseder\n", "\t\n", "\t0,1\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\tcreer\n", "\t\tdate_creation\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\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\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\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\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\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\tutiliser\n", "\t\tdate_utilisation\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\trepondre\n", "\t\n", "\t0,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\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tlicence_medicale\n", "\tcle_medicale\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", "\tapprenant\n", "\tid_apprenant\n", "\t\n", "\tnom\n", "\tprenom\n", "\tdate_de_naissance\n", "\tclasse\n", "\test_actif\n", "\tpeut_faire_test\n", "\treponses_questionnaire\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tquestion_posee\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", "\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", "\tdroit\n", "\tid_droit\n", "\t\n", "\tniveau_d_access\n", "\tnb_profil_cree\n", "\tnb_user_invite\n", "\tpeut_modifier_profil\n", "\tpeut_supprimer_profil\n", "\tpeut_faire_activite\n", "\tpeut_faire_test\n", "\tpeut_consulter_hist_activite\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", "\tcompte\n", "\tlogin\n", "\t\n", "\temail\n", "\tpassword\n", "\tetat\n", "\tdate_de_derniere_co\n", "\tnom\n", "\tprenom\n", "\tmobile\n", "\tdate_de_creation\n", "\tmoyen_paiement\n", "\test_connecte\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tprobleme_signale\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", "\tlicence\n", "\tcle\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", "\tquestionnaire\n", "\tid_questionnaire\n", "\t\n", "\tforme_rappel\n", "\tdisponibilite\n", "\treponses_questionnaire\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_debut\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", "\tpromotion\n", "\tcode\n", "\t\n", "\tdate_de_creation\n", "\tduree_reduction\n", "\treduction\n", "\tconditions\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\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\trealiser\n", "\t\tpoints_accordes\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\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tdebloquer\n", "\t\tdate_debloquement\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\tposseder\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", "\tfiche_pedagogique\n", "\tid_fiche\n", "\t\n", "\tcontenu\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", "\tetat\n", "\tdate_de_derniere_co\n", "\tnom\n", "\tprenom\n", "\tmobile\n", "\tdate_de_creation\n", "\tmoyen_paiement\n", "\test_connecte\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\tactivite\n", "\tid_activite\n", "\t\n", "\tconsigne\n", "\tdurée\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_activite\n", "\tid\n", "\t\n", "\tduree\n", "\tdate_de_realisation\n", "\tnote_difficulte\n", "\tnote_plaisir\n", "\tnote_concentration\n", "\tnote_duree\n", "\tactivite_proposee_par_algo\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", "\test_actif\n", "\tpeut_faire_test\n", "\treponses_questionnaire\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_pedagogique\n", "\tid_fiche\n", "\t\n", "\tcontenu\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_cle\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", "\tvideo\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": 6, "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\tposseder\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\trealiser\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\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\tposseder\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", "\thistorique_test_pos\n", "\tid_entree\n", "\t\n", "\tduree\n", "\tscore\n", "\ttemps_de_reaction_moyen\n", "\tdate_de_realisation\n", "\tfont_utilisée\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", "\test_actif\n", "\tpeut_faire_test\n", "\treponses_questionnaire\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", "\tetat\n", "\tdate_de_derniere_co\n", "\tnom\n", "\tprenom\n", "\tmobile\n", "\tdate_de_creation\n", "\tmoyen_paiement\n", "\test_connecte\n", "\n", "\n", "\n", "\n", "\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\t\n", "\t\n", "\thistorique_test_medical\n", "\tid_entree_medical\n", "\t\n", "\tdate_realisation\n", "\tDeficit_phonologique\n", "\tDeficit_lexical\n", "\tDeficit_articulatoire\n", "\tDeficit_ortho_optique\n", "\tDeficit_visio_attentionnel\n", "\tDeficit_visio_spacial\n", "\tDeficit_visio motrice\n", "\tDeficit_attention/concentration\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", "" ], "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\trealiser\n", "\t\tpoints_accordes\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\trealiser\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", "\tactivite\n", "\tid_activite\n", "\t\n", "\tconsigne\n", "\tdurée\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", "\tetat\n", "\tdate_de_derniere_co\n", "\tnom\n", "\tprenom\n", "\tmobile\n", "\tdate_de_creation\n", "\tmoyen_paiement\n", "\test_connecte\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", "\test_actif\n", "\tpeut_faire_test\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": [ { "name": "stderr", "output_type": "stream", "text": [ "Mocodo Err.7 - Association « debloquer » dupliquée. Si vous souhaitez faire apparaître\n", "deux associations sous le même nom, vous devez suffixer celui-ci avec un nombre." ] } ], "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 }