ConceptGraph.json

De CNES
Révision datée du 21 juin 2024 à 13:20 par Admin (discussion | contributions) (Updated Concepts graph)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

{

 "$schema": "https://vega.github.io/schema/vega/v5.json",
 "description": "Concept graph",
 "width": 1000,
 "height": 500,
 "padding": 5,
 "data": [
     {
       "name": "domains",
       "values": [
                   {"name": "Protocole quantique", "id": 4},
         {"name": "Matériel quantique", "id": 3},
         {"name": "Protocole de communication", "id": 5},
         {"name": "Sources d'intrication probabilistes", "id": 1},
         {"name": "Application (quantique)", "id": 2},
         {"name": "Internet quantique généralités", "id": 6}
       ]
     },
   {
     "name": "concepts",
     "values": [
       {"name": "accord de phase", "id": 6, "x":  882, "y": 483, "domainId": 1},
       {"name": "blind quantum computing", "id": 7, "x":  1237, "y": 943, "domainId": 2},
       {"name": "brillance de la source", "id": 8, "x":  170, "y": 831, "domainId": 1},
       {"name": "calcul quantique distribué", "id": 9, "x":  1023, "y": 1101, "domainId": 2},
       {"name": "commutateur quantique", "id": 10, "x":  2632, "y": 818, "domainId": 3},
       {"name": "cristal non-linéaire", "id": 11, "x":  152, "y": 356, "domainId": 1},
       {"name": "interconnexion de nœuds de cryptographie quantique", "id": 13, "x":  2257, "y": 1081, "domainId": 2},
       {"name": "source d'intrication probabiliste", "id": 142, "x":  371, "y": 12, "domainId": 3},
       {"name": "distillation de l'intrication", "id": 15, "x":  2286, "y": 555, "domainId": 4},
       {"name": "distribution de l'intrication", "id": 16, "x":  1792, "y": 215, "domainId": 4},
       {"name": "échange d'intrication", "id": 17, "x":  2195, "y": 223, "domainId": 4},
       {"name": "état de Bell", "id": 19, "x":  1611, "y": 0, "domainId": 3},
       {"name": "canal quantique (physique)", "id": 147, "x":  2098, "y": 813, "domainId": 3},
       {"name": "fidélité de l'intrication", "id": 20, "x":  2047, "y": 435, "domainId": 4},
       {"name": "Interconnexion des calculateurs quantiques", "id": 151, "x":  1370, "y": 1092, "domainId": 2},
       {"name": "puissance du laser pompe", "id": 26, "x":  0, "y": 507, "domainId": 1},
       {"name": "interconnexion de bout en bout quantique", "id": 28, "x":  1524, "y": 815, "domainId": 5},
       {"name": "internet quantique", "id": 29, "x":  1793, "y": 695, "domainId": 6},
       {"name": "pompe laser", "id": 30, "x":  100, "y": 17, "domainId": 1},
       {"name": "liaison de données quantiques", "id": 31, "x":  1872, "y": 581, "domainId": 4},
       {"name": "mélange à quatre ondes", "id": 35, "x":  372, "y": 245, "domainId": 1},
       {"name": "mélange à trois ondes", "id": 36, "x":  577, "y": 368, "domainId": 1},
       {"name": "mesure de Bell", "id": 37, "x":  2205, "y": 19, "domainId": 3},
       {"name": "nœud de communication quantique", "id": 38, "x":  2594, "y": 650, "domainId": 3},
       {"name": "protocole de communication quantique", "id": 42, "x":  1109, "y": 732, "domainId": 5},
       {"name": "température du cristal", "id": 171, "x":  874, "y": 282, "domainId": 1},
       {"name": "interconnexion de capteurs quantiques", "id": 44, "x":  2373, "y": 924, "domainId": 2},
       {"name": "réseau de communication quantique", "id": 45, "x":  1854, "y": 1090, "domainId": 6},
       {"name": "longueur du cristal", "id": 173, "x":  1076, "y": 358, "domainId": 1},
       {"name": "satellite-based quantum internet", "id": 46, "x":  1282, "y": 409, "domainId": 6},
       {"name": "angle d'interaction", "id": 174, "x":  892, "y": 681, "domainId": 1},
       {"name": "source d'intrication", "id": 48, "x":  1202, "y": 0, "domainId": 3},
       {"name": "source d'intrication à la demande", "id": 49, "x":  849, "y": 139, "domainId": 3},
       {"name": "demande de communication d'intrication", "id": 179, "x":  1758, "y": 78, "domainId": 4},
       {"name": "accord de phase de type 0", "id": 53, "x":  414, "y": 510, "domainId": 1},
       {"name": "accord de phase de type I", "id": 54, "x":  469, "y": 670, "domainId": 1},
       {"name": "accord de phase de type II", "id": 55, "x":  490, "y": 790, "domainId": 1},
       {"name": "satellite quantique", "id": 189, "x":  1259, "y": 205, "domainId": 6}
     ],
     "transform": [
       { "type": "extent", "field": "x", "signal": "xext" },
       { "type": "extent", "field": "y", "signal": "yext" },
       {
          "type": "lookup",
          "from": "domains",
          "key": "id",
          "fields": ["domainId"],
          "as": ["domain"]
        }
      ]
   },
   {
     "name": "link0",
     "values": [
       {"x": 1854, "y": 1090, "sourceId": 45, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1863, "centerY": 836},
       {"x": 1856, "y": 988, "sourceId": 45, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1863, "centerY": 836},
       {"x": 1870, "y": 683, "sourceId": 45, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1863, "centerY": 836},
       {"x": 1872, "y": 581, "sourceId": 45, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1863, "centerY": 836}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link1",
     "values": [
       {"x": 0, "y": 507, "sourceId": 8, "targetId": 26, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 85, "centerY": 669},
       {"x": 17, "y": 572, "sourceId": 8, "targetId": 26, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 85, "centerY": 669},
       {"x": 153, "y": 766, "sourceId": 8, "targetId": 26, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 85, "centerY": 669},
       {"x": 170, "y": 831, "sourceId": 8, "targetId": 26, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 85, "centerY": 669}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link2",
     "values": [
       {"x": 170, "y": 831, "sourceId": 8, "targetId": 53, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 292, "centerY": 671},
       {"x": 195, "y": 767, "sourceId": 8, "targetId": 53, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 292, "centerY": 671},
       {"x": 390, "y": 574, "sourceId": 8, "targetId": 53, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 292, "centerY": 671},
       {"x": 414, "y": 510, "sourceId": 8, "targetId": 53, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 292, "centerY": 671}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link3",
     "values": [
       {"x": 170, "y": 831, "sourceId": 8, "targetId": 54, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 320, "centerY": 751},
       {"x": 200, "y": 799, "sourceId": 8, "targetId": 54, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 320, "centerY": 751},
       {"x": 439, "y": 703, "sourceId": 8, "targetId": 54, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 320, "centerY": 751},
       {"x": 469, "y": 670, "sourceId": 8, "targetId": 54, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 320, "centerY": 751}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link4",
     "values": [
       {"x": 170, "y": 831, "sourceId": 8, "targetId": 55, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 330, "centerY": 811},
       {"x": 202, "y": 823, "sourceId": 8, "targetId": 55, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 330, "centerY": 811},
       {"x": 458, "y": 799, "sourceId": 8, "targetId": 55, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 330, "centerY": 811},
       {"x": 490, "y": 790, "sourceId": 8, "targetId": 55, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 330, "centerY": 811}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link5",
     "values": [
       {"x": 1023, "y": 1101, "sourceId": 9, "targetId": 151, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1197, "centerY": 1097},
       {"x": 1058, "y": 1099, "sourceId": 9, "targetId": 151, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1197, "centerY": 1097},
       {"x": 1336, "y": 1094, "sourceId": 9, "targetId": 151, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1197, "centerY": 1097},
       {"x": 1370, "y": 1092, "sourceId": 9, "targetId": 151, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1197, "centerY": 1097}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link6",
     "values": [
       {"x": 1854, "y": 1090, "sourceId": 13, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2056, "centerY": 1086},
       {"x": 1894, "y": 1088, "sourceId": 13, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2056, "centerY": 1086},
       {"x": 2217, "y": 1083, "sourceId": 13, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2056, "centerY": 1086},
       {"x": 2257, "y": 1081, "sourceId": 13, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2056, "centerY": 1086}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link7",
     "values": [
       {"x": 1524, "y": 815, "sourceId": 16, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1658, "centerY": 515},
       {"x": 1551, "y": 695, "sourceId": 16, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1658, "centerY": 515},
       {"x": 1765, "y": 335, "sourceId": 16, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1658, "centerY": 515},
       {"x": 1792, "y": 215, "sourceId": 16, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1658, "centerY": 515}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link8",
     "values": [
       {"x": 1792, "y": 215, "sourceId": 16, "targetId": 29, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1793, "centerY": 455},
       {"x": 1792, "y": 311, "sourceId": 16, "targetId": 29, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1793, "centerY": 455},
       {"x": 1793, "y": 599, "sourceId": 16, "targetId": 29, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1793, "centerY": 455},
       {"x": 1793, "y": 695, "sourceId": 16, "targetId": 29, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1793, "centerY": 455}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link9",
     "values": [
       {"x": 1792, "y": 215, "sourceId": 16, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1832, "centerY": 398},
       {"x": 1800, "y": 289, "sourceId": 16, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1832, "centerY": 398},
       {"x": 1864, "y": 508, "sourceId": 16, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1832, "centerY": 398},
       {"x": 1872, "y": 581, "sourceId": 16, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1832, "centerY": 398}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link10",
     "values": [
       {"x": 1792, "y": 215, "sourceId": 16, "targetId": 38, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2193, "centerY": 433},
       {"x": 1872, "y": 302, "sourceId": 16, "targetId": 38, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2193, "centerY": 433},
       {"x": 2514, "y": 563, "sourceId": 16, "targetId": 38, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2193, "centerY": 433},
       {"x": 2594, "y": 650, "sourceId": 16, "targetId": 38, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2193, "centerY": 433}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link11",
     "values": [
       {"x": 1109, "y": 732, "sourceId": 16, "targetId": 42, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1451, "centerY": 474},
       {"x": 1177, "y": 629, "sourceId": 16, "targetId": 42, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1451, "centerY": 474},
       {"x": 1724, "y": 319, "sourceId": 16, "targetId": 42, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1451, "centerY": 474},
       {"x": 1792, "y": 215, "sourceId": 16, "targetId": 42, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1451, "centerY": 474}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link12",
     "values": [
       {"x": 1282, "y": 409, "sourceId": 16, "targetId": 46, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1537, "centerY": 312},
       {"x": 1333, "y": 370, "sourceId": 16, "targetId": 46, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1537, "centerY": 312},
       {"x": 1741, "y": 254, "sourceId": 16, "targetId": 46, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1537, "centerY": 312},
       {"x": 1792, "y": 215, "sourceId": 16, "targetId": 46, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1537, "centerY": 312}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link13",
     "values": [
       {"x": 1792, "y": 215, "sourceId": 20, "targetId": 16, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1920, "centerY": 325},
       {"x": 1818, "y": 259, "sourceId": 20, "targetId": 16, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1920, "centerY": 325},
       {"x": 2022, "y": 391, "sourceId": 20, "targetId": 16, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1920, "centerY": 325},
       {"x": 2047, "y": 435, "sourceId": 20, "targetId": 16, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1920, "centerY": 325}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link14",
     "values": [
       {"x": 1872, "y": 581, "sourceId": 20, "targetId": 31, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 1960, "centerY": 508},
       {"x": 1890, "y": 552, "sourceId": 20, "targetId": 31, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 1960, "centerY": 508},
       {"x": 2030, "y": 465, "sourceId": 20, "targetId": 31, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 1960, "centerY": 508},
       {"x": 2047, "y": 435, "sourceId": 20, "targetId": 31, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 1960, "centerY": 508}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link15",
     "values": [
       {"x": 1524, "y": 815, "sourceId": 29, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1659, "centerY": 755},
       {"x": 1551, "y": 791, "sourceId": 29, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1659, "centerY": 755},
       {"x": 1766, "y": 719, "sourceId": 29, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1659, "centerY": 755},
       {"x": 1793, "y": 695, "sourceId": 29, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1659, "centerY": 755}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link16",
     "values": [
       {"x": 1524, "y": 815, "sourceId": 38, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2059, "centerY": 733},
       {"x": 1631, "y": 782, "sourceId": 38, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2059, "centerY": 733},
       {"x": 2487, "y": 683, "sourceId": 38, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2059, "centerY": 733},
       {"x": 2594, "y": 650, "sourceId": 38, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2059, "centerY": 733}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link17",
     "values": [
       {"x": 1793, "y": 695, "sourceId": 38, "targetId": 29, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 2194, "centerY": 673},
       {"x": 1873, "y": 686, "sourceId": 38, "targetId": 29, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 2194, "centerY": 673},
       {"x": 2514, "y": 659, "sourceId": 38, "targetId": 29, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 2194, "centerY": 673},
       {"x": 2594, "y": 650, "sourceId": 38, "targetId": 29, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 2194, "centerY": 673}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link18",
     "values": [
       {"x": 1872, "y": 581, "sourceId": 38, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2233, "centerY": 616},
       {"x": 1944, "y": 595, "sourceId": 38, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2233, "centerY": 616},
       {"x": 2522, "y": 636, "sourceId": 38, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2233, "centerY": 616},
       {"x": 2594, "y": 650, "sourceId": 38, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2233, "centerY": 616}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link19",
     "values": [
       {"x": 1109, "y": 732, "sourceId": 42, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1317, "centerY": 774},
       {"x": 1151, "y": 749, "sourceId": 42, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1317, "centerY": 774},
       {"x": 1483, "y": 798, "sourceId": 42, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1317, "centerY": 774},
       {"x": 1524, "y": 815, "sourceId": 42, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1317, "centerY": 774}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link20",
     "values": [
       {"x": 1109, "y": 732, "sourceId": 42, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1482, "centerY": 911},
       {"x": 1184, "y": 804, "sourceId": 42, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1482, "centerY": 911},
       {"x": 1780, "y": 1019, "sourceId": 42, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1482, "centerY": 911},
       {"x": 1854, "y": 1090, "sourceId": 42, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1482, "centerY": 911}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link21",
     "values": [
       {"x": 1854, "y": 1090, "sourceId": 45, "targetId": 44, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2114, "centerY": 1007},
       {"x": 1906, "y": 1057, "sourceId": 45, "targetId": 44, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2114, "centerY": 1007},
       {"x": 2321, "y": 957, "sourceId": 45, "targetId": 44, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2114, "centerY": 1007},
       {"x": 2373, "y": 924, "sourceId": 45, "targetId": 44, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2114, "centerY": 1007}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link22",
     "values": [
       {"x": 1370, "y": 1092, "sourceId": 45, "targetId": 151, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1612, "centerY": 1091},
       {"x": 1419, "y": 1092, "sourceId": 45, "targetId": 151, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1612, "centerY": 1091},
       {"x": 1806, "y": 1090, "sourceId": 45, "targetId": 151, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1612, "centerY": 1091},
       {"x": 1854, "y": 1090, "sourceId": 45, "targetId": 151, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1612, "centerY": 1091}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link23",
     "values": [
       {"x": 1282, "y": 409, "sourceId": 46, "targetId": 29, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1538, "centerY": 552},
       {"x": 1333, "y": 466, "sourceId": 46, "targetId": 29, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1538, "centerY": 552},
       {"x": 1742, "y": 638, "sourceId": 46, "targetId": 29, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1538, "centerY": 552},
       {"x": 1793, "y": 695, "sourceId": 46, "targetId": 29, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1538, "centerY": 552}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link24",
     "values": [
       {"x": 1202, "y": 0, "sourceId": 48, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1537, "centerY": 291},
       {"x": 1269, "y": 116, "sourceId": 48, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1537, "centerY": 291},
       {"x": 1805, "y": 465, "sourceId": 48, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1537, "centerY": 291},
       {"x": 1872, "y": 581, "sourceId": 48, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1537, "centerY": 291}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link25",
     "values": [
       {"x": 849, "y": 139, "sourceId": 48, "targetId": 49, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 1026, "centerY": 70},
       {"x": 884, "y": 111, "sourceId": 48, "targetId": 49, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 1026, "centerY": 70},
       {"x": 1167, "y": 28, "sourceId": 48, "targetId": 49, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 1026, "centerY": 70},
       {"x": 1202, "y": 0, "sourceId": 48, "targetId": 49, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 1026, "centerY": 70}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link26",
     "values": [
       {"x": 2047, "y": 435, "sourceId": 15, "targetId": 20, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2167, "centerY": 495},
       {"x": 2071, "y": 459, "sourceId": 15, "targetId": 20, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2167, "centerY": 495},
       {"x": 2263, "y": 531, "sourceId": 15, "targetId": 20, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2167, "centerY": 495},
       {"x": 2286, "y": 555, "sourceId": 15, "targetId": 20, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2167, "centerY": 495}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link27",
     "values": [
       {"x": 371, "y": 12, "sourceId": 142, "targetId": 48, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 787, "centerY": 6},
       {"x": 454, "y": 9, "sourceId": 142, "targetId": 48, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 787, "centerY": 6},
       {"x": 1119, "y": 2, "sourceId": 142, "targetId": 48, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 787, "centerY": 6},
       {"x": 1202, "y": 0, "sourceId": 142, "targetId": 48, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 787, "centerY": 6}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link28",
     "values": [
       {"x": 1854, "y": 1090, "sourceId": 38, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2224, "centerY": 870},
       {"x": 1928, "y": 1002, "sourceId": 38, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2224, "centerY": 870},
       {"x": 2520, "y": 738, "sourceId": 38, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2224, "centerY": 870},
       {"x": 2594, "y": 650, "sourceId": 38, "targetId": 45, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2224, "centerY": 870}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link29",
     "values": [
       {"x": 1872, "y": 581, "sourceId": 147, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1985, "centerY": 697},
       {"x": 1895, "y": 628, "sourceId": 147, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1985, "centerY": 697},
       {"x": 2076, "y": 766, "sourceId": 147, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1985, "centerY": 697},
       {"x": 2098, "y": 813, "sourceId": 147, "targetId": 31, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1985, "centerY": 697}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link30",
     "values": [
       {"x": 1793, "y": 695, "sourceId": 29, "targetId": 45, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1824, "centerY": 893},
       {"x": 1799, "y": 774, "sourceId": 29, "targetId": 45, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1824, "centerY": 893},
       {"x": 1848, "y": 1011, "sourceId": 29, "targetId": 45, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1824, "centerY": 893},
       {"x": 1854, "y": 1090, "sourceId": 29, "targetId": 45, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1824, "centerY": 893}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link31",
     "values": [
       {"x": 1524, "y": 815, "sourceId": 45, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1689, "centerY": 953},
       {"x": 1557, "y": 870, "sourceId": 45, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1689, "centerY": 953},
       {"x": 1821, "y": 1035, "sourceId": 45, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1689, "centerY": 953},
       {"x": 1854, "y": 1090, "sourceId": 45, "targetId": 28, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1689, "centerY": 953}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link32",
     "values": [
       {"x": 1792, "y": 215, "sourceId": 17, "targetId": 16, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 1994, "centerY": 219},
       {"x": 1832, "y": 217, "sourceId": 17, "targetId": 16, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 1994, "centerY": 219},
       {"x": 2155, "y": 222, "sourceId": 17, "targetId": 16, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 1994, "centerY": 219},
       {"x": 2195, "y": 223, "sourceId": 17, "targetId": 16, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 1994, "centerY": 219}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link33",
     "values": [
       {"x": 2594, "y": 650, "sourceId": 10, "targetId": 38, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 2613, "centerY": 734},
       {"x": 2598, "y": 683, "sourceId": 10, "targetId": 38, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 2613, "centerY": 734},
       {"x": 2628, "y": 784, "sourceId": 10, "targetId": 38, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 2613, "centerY": 734},
       {"x": 2632, "y": 818, "sourceId": 10, "targetId": 38, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 2613, "centerY": 734}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link34",
     "values": [
       {"x": 1202, "y": 0, "sourceId": 48, "targetId": 19, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 1407, "centerY": 0},
       {"x": 1243, "y": 0, "sourceId": 48, "targetId": 19, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 1407, "centerY": 0},
       {"x": 1571, "y": 0, "sourceId": 48, "targetId": 19, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 1407, "centerY": 0},
       {"x": 1611, "y": 0, "sourceId": 48, "targetId": 19, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 1407, "centerY": 0}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link35",
     "values": [
       {"x": 2195, "y": 223, "sourceId": 37, "targetId": 17, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2200, "centerY": 121},
       {"x": 2196, "y": 183, "sourceId": 37, "targetId": 17, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2200, "centerY": 121},
       {"x": 2204, "y": 60, "sourceId": 37, "targetId": 17, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2200, "centerY": 121},
       {"x": 2205, "y": 19, "sourceId": 37, "targetId": 17, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 2200, "centerY": 121}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link36",
     "values": [
       {"x": 100, "y": 17, "sourceId": 30, "targetId": 142, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 236, "centerY": 15},
       {"x": 127, "y": 16, "sourceId": 30, "targetId": 142, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 236, "centerY": 15},
       {"x": 344, "y": 13, "sourceId": 30, "targetId": 142, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 236, "centerY": 15},
       {"x": 371, "y": 12, "sourceId": 30, "targetId": 142, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 236, "centerY": 15}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link37",
     "values": [
       {"x": 371, "y": 12, "sourceId": 36, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 474, "centerY": 190},
       {"x": 391, "y": 83, "sourceId": 36, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 474, "centerY": 190},
       {"x": 556, "y": 297, "sourceId": 36, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 474, "centerY": 190},
       {"x": 577, "y": 368, "sourceId": 36, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 474, "centerY": 190}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link38",
     "values": [
       {"x": 371, "y": 12, "sourceId": 35, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 372, "centerY": 128},
       {"x": 371, "y": 58, "sourceId": 35, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 372, "centerY": 128},
       {"x": 372, "y": 198, "sourceId": 35, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 372, "centerY": 128},
       {"x": 372, "y": 245, "sourceId": 35, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 372, "centerY": 128}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link39",
     "values": [
       {"x": 0, "y": 507, "sourceId": 26, "targetId": 30, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 50, "centerY": 262},
       {"x": 10, "y": 409, "sourceId": 26, "targetId": 30, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 50, "centerY": 262},
       {"x": 90, "y": 115, "sourceId": 26, "targetId": 30, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 50, "centerY": 262},
       {"x": 100, "y": 17, "sourceId": 26, "targetId": 30, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 50, "centerY": 262}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link40",
     "values": [
       {"x": 100, "y": 17, "sourceId": 11, "targetId": 30, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 126, "centerY": 186},
       {"x": 105, "y": 84, "sourceId": 11, "targetId": 30, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 126, "centerY": 186},
       {"x": 147, "y": 288, "sourceId": 11, "targetId": 30, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 126, "centerY": 186},
       {"x": 152, "y": 356, "sourceId": 11, "targetId": 30, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 126, "centerY": 186}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link41",
     "values": [
       {"x": 152, "y": 356, "sourceId": 11, "targetId": 142, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 262, "centerY": 184},
       {"x": 174, "y": 287, "sourceId": 11, "targetId": 142, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 262, "centerY": 184},
       {"x": 349, "y": 80, "sourceId": 11, "targetId": 142, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 262, "centerY": 184},
       {"x": 371, "y": 12, "sourceId": 11, "targetId": 142, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 262, "centerY": 184}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link42",
     "values": [
       {"x": 490, "y": 790, "sourceId": 55, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 686, "centerY": 637},
       {"x": 530, "y": 729, "sourceId": 55, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 686, "centerY": 637},
       {"x": 843, "y": 545, "sourceId": 55, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 686, "centerY": 637},
       {"x": 882, "y": 483, "sourceId": 55, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 686, "centerY": 637}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link43",
     "values": [
       {"x": 469, "y": 670, "sourceId": 54, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 676, "centerY": 577},
       {"x": 510, "y": 633, "sourceId": 54, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 676, "centerY": 577},
       {"x": 841, "y": 521, "sourceId": 54, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 676, "centerY": 577},
       {"x": 882, "y": 483, "sourceId": 54, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 676, "centerY": 577}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link44",
     "values": [
       {"x": 414, "y": 510, "sourceId": 53, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 648, "centerY": 497},
       {"x": 461, "y": 504, "sourceId": 53, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 648, "centerY": 497},
       {"x": 835, "y": 489, "sourceId": 53, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 648, "centerY": 497},
       {"x": 882, "y": 483, "sourceId": 53, "targetId": 6, "type": "typeOf", "englishName": "is related to", "frenchName": "est lié à", "centerX": 648, "centerY": 497}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link45",
     "values": [
       {"x": 152, "y": 356, "sourceId": 11, "targetId": 35, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 262, "centerY": 300},
       {"x": 174, "y": 333, "sourceId": 11, "targetId": 35, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 262, "centerY": 300},
       {"x": 350, "y": 267, "sourceId": 11, "targetId": 35, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 262, "centerY": 300},
       {"x": 372, "y": 245, "sourceId": 11, "targetId": 35, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 262, "centerY": 300}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link46",
     "values": [
       {"x": 152, "y": 356, "sourceId": 11, "targetId": 36, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 364, "centerY": 362},
       {"x": 194, "y": 358, "sourceId": 11, "targetId": 36, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 364, "centerY": 362},
       {"x": 534, "y": 365, "sourceId": 11, "targetId": 36, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 364, "centerY": 362},
       {"x": 577, "y": 368, "sourceId": 11, "targetId": 36, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 364, "centerY": 362}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link47",
     "values": [
       {"x": 874, "y": 282, "sourceId": 171, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 878, "centerY": 383},
       {"x": 875, "y": 322, "sourceId": 171, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 878, "centerY": 383},
       {"x": 881, "y": 443, "sourceId": 171, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 878, "centerY": 383},
       {"x": 882, "y": 483, "sourceId": 171, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 878, "centerY": 383}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link48",
     "values": [
       {"x": 882, "y": 483, "sourceId": 173, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 979, "centerY": 421},
       {"x": 901, "y": 458, "sourceId": 173, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 979, "centerY": 421},
       {"x": 1056, "y": 383, "sourceId": 173, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 979, "centerY": 421},
       {"x": 1076, "y": 358, "sourceId": 173, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 979, "centerY": 421}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link49",
     "values": [
       {"x": 882, "y": 483, "sourceId": 174, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 887, "centerY": 582},
       {"x": 883, "y": 523, "sourceId": 174, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 887, "centerY": 582},
       {"x": 891, "y": 641, "sourceId": 174, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 887, "centerY": 582},
       {"x": 892, "y": 681, "sourceId": 174, "targetId": 6, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 887, "centerY": 582}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link50",
     "values": [
       {"x": 371, "y": 12, "sourceId": 6, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 627, "centerY": 248},
       {"x": 422, "y": 106, "sourceId": 6, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 627, "centerY": 248},
       {"x": 831, "y": 389, "sourceId": 6, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 627, "centerY": 248},
       {"x": 882, "y": 483, "sourceId": 6, "targetId": 142, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 627, "centerY": 248}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link51",
     "values": [
       {"x": 577, "y": 368, "sourceId": 6, "targetId": 36, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 730, "centerY": 426},
       {"x": 607, "y": 391, "sourceId": 6, "targetId": 36, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 730, "centerY": 426},
       {"x": 852, "y": 460, "sourceId": 6, "targetId": 36, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 730, "centerY": 426},
       {"x": 882, "y": 483, "sourceId": 6, "targetId": 36, "type": "propertyOf", "englishName": "is a property of", "frenchName": "est une propriété de", "centerX": 730, "centerY": 426}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link52",
     "values": [
       {"x": 1237, "y": 943, "sourceId": 151, "targetId": 7, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1304, "centerY": 1018},
       {"x": 1250, "y": 973, "sourceId": 151, "targetId": 7, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1304, "centerY": 1018},
       {"x": 1357, "y": 1062, "sourceId": 151, "targetId": 7, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1304, "centerY": 1018},
       {"x": 1370, "y": 1092, "sourceId": 151, "targetId": 7, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1304, "centerY": 1018}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link53",
     "values": [
       {"x": 1758, "y": 78, "sourceId": 179, "targetId": 16, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1775, "centerY": 147},
       {"x": 1762, "y": 106, "sourceId": 179, "targetId": 16, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1775, "centerY": 147},
       {"x": 1789, "y": 188, "sourceId": 179, "targetId": 16, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1775, "centerY": 147},
       {"x": 1792, "y": 215, "sourceId": 179, "targetId": 16, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1775, "centerY": 147}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link54",
     "values": [
       {"x": 1202, "y": 0, "sourceId": 48, "targetId": 189, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1231, "centerY": 103},
       {"x": 1208, "y": 41, "sourceId": 48, "targetId": 189, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1231, "centerY": 103},
       {"x": 1253, "y": 164, "sourceId": 48, "targetId": 189, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1231, "centerY": 103},
       {"x": 1259, "y": 205, "sourceId": 48, "targetId": 189, "type": "componentOf", "englishName": "is a component of", "frenchName": "est un composant de", "centerX": 1231, "centerY": 103}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link55",
     "values": [
       {"x": 1259, "y": 205, "sourceId": 189, "targetId": 46, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1271, "centerY": 307},
       {"x": 1261, "y": 246, "sourceId": 189, "targetId": 46, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1271, "centerY": 307},
       {"x": 1280, "y": 368, "sourceId": 189, "targetId": 46, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1271, "centerY": 307},
       {"x": 1282, "y": 409, "sourceId": 189, "targetId": 46, "type": "contributesTo", "englishName": "contributes to", "frenchName": "contribue à", "centerX": 1271, "centerY": 307}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   },
   {
     "name": "link56",
     "values": [
       {"x": 1611, "y": 0, "sourceId": 19, "targetId": 37, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1908, "centerY": 10},
       {"x": 1671, "y": 4, "sourceId": 19, "targetId": 37, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1908, "centerY": 10},
       {"x": 2146, "y": 15, "sourceId": 19, "targetId": 37, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1908, "centerY": 10},
       {"x": 2205, "y": 19, "sourceId": 19, "targetId": 37, "type": "actsOn", "englishName": "acts on", "frenchName": "agit sur", "centerX": 1908, "centerY": 10}
     ],
     "transform": [
       {
         "type": "lookup",
         "from": "concepts",
         "key": "id",
         "fields": ["sourceId", "targetId"],
         "as": ["source", "target"]
       }
     ]
   }
 ],
 "signals": [
   {
     "name": "concepthovered",
     "value": {},
     "on": [
       {"events": "mouseover", "update": "if (isDefined(datum.name), datum, {})"}
     ]
   },
   {
     "name": "url",
     "update": "if (isDefined(concepthovered), concepthovered.name, )"
   },
   {
     "name": "linkhovered",
     "value": {},
     "on": [
       {"events": "mouseover", "update": "if (isDefined(datum.centerX), datum, {})"},
       {"events": "mouseout", "update": "{}"}
     ]
   },
   {
     "name": "margin",
     "value": 20
   },
   {
     "name": "hover",
     "on": [
       {"events": "*:mouseover", "encode": "hover"},
       {"events": "*:mouseout",  "encode": "leave"},
       {"events": "*:mousedown", "encode": "select"},
       {"events": "*:mouseup",   "encode": "release"}
     ]
   },
   {
     "name": "xoffset",
     "update": "-(height + padding.bottom)"
   },
   {
     "name": "yoffset",
     "update": "-(width + padding.left)"
   },
   { "name": "xrange", "update": "[0, width]" },
   { "name": "yrange", "update": "[height, 0]" },
   {
     "name": "down", "value": null,
     "on": [
       {"events": "touchend", "update": "null"},
       {"events": "mousedown, touchstart", "update": "xy()"}
     ]
   },
   {
     "name": "xcur", "value": null,
     "on": [
       {
         "events": "mousedown, touchstart, touchend",
         "update": "slice(xdom)"
       }
     ]
   },
   {
     "name": "ycur", "value": null,
     "on": [
       {
         "events": "mousedown, touchstart, touchend",
         "update": "slice(ydom)"
       }
     ]
   },
   {
     "name": "delta", "value": [0, 0],
     "on": [
       {
         "events": [
           {
             "source": "window", "type": "mousemove", "consume": true,
             "between": [{"type": "mousedown"}, {"source": "window", "type": "mouseup"}]
           },
           {
             "type": "touchmove", "consume": true,
             "filter": "event.touches.length === 1"
           }
         ],
         "update": "down ? [down[0]-x(), y()-down[1]] : [0,0]"
       }
     ]
   },
   {
     "name": "anchor", "value": [0, 0],
     "on": [
       {
         "events": "wheel",
         "update": "[invert('xscale', x()), invert('yscale', y())]"
       },
       {
         "events": {"type": "touchstart", "filter": "event.touches.length===2"},
         "update": "[(xdom[0] + xdom[1]) / 2, (ydom[0] + ydom[1]) / 2]"
       }
     ]
   },
   {
     "name": "zoom", "value": 1,
     "on": [
       {
         "events": "wheel!",
         "force": true,
         "update": "pow(1.001, event.deltaY * pow(16, event.deltaMode))"
       },
       {
         "events": {"signal": "dist2"},
         "force": true,
         "update": "dist1 / dist2"
       }
     ]
   },
   {
     "name": "dist1", "value": 0,
     "on": [
       {
         "events": {"type": "touchstart", "filter": "event.touches.length===2"},
         "update": "pinchDistance(event)"
       },
       {
         "events": {"signal": "dist2"},
         "update": "dist2"
       }
     ]
   },
   {
     "name": "dist2", "value": 0,
     "on": [{
       "events": {"type": "touchmove", "consume": true, "filter": "event.touches.length===2"},
       "update": "pinchDistance(event)"
     }]
   },
   {
     "name": "xdom", "update": "slice(xext)",
     "on": [
       {
         "events": {"signal": "delta"},
         "update": "[xcur[0] + span(xcur) * delta[0] / width, xcur[1] + span(xcur) * delta[0] / width]"
       },
       {
         "events": {"signal": "zoom"},
         "update": "[anchor[0] + (xdom[0] - anchor[0]) * zoom, anchor[0] + (xdom[1] - anchor[0]) * zoom]"
       }
     ]
   },
   {
     "name": "ydom", "update": "slice(yext)",
     "on": [
       {
         "events": {"signal": "delta"},
         "update": "[ycur[0] + span(ycur) * delta[1] / height, ycur[1] + span(ycur) * delta[1] / height]"
       },
       {
         "events": {"signal": "zoom"},
         "update": "[anchor[1] + (ydom[0] - anchor[1]) * zoom, anchor[1] + (ydom[1] - anchor[1]) * zoom]"
       }
     ]
   },
   {
     "name": "size",
     "update": "clamp(2000000 / span(xdom), 200, 10000)"
   }
 ],
 "scales": [
   {
     "name": "xscale", "zero": false,
     "domain": {"signal": "xdom"},
     "range": {"signal": "xrange"}
   },
   {
     "name": "yscale", "zero": false,
     "domain": {"signal": "ydom"},
     "range": {"signal": "yrange"}
   },
   {
     "name": "concept_color",
     "type": "ordinal",
     "domain": {"data": "domains", "field": "name"},
     "range": {"scheme": "pastel1"}
   }
 ],
 "marks": [
   {
     "type": "line",
     "from": {"data": "link0"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link1"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link2"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link3"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link4"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link5"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link6"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link7"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link8"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link9"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link10"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link11"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link12"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link13"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link14"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "orange"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link15"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link16"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link17"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "blue"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link18"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link19"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link20"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link21"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link22"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link23"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "blue"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link24"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link25"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "black"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link26"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link27"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "black"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link28"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link29"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link30"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "blue"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link31"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link32"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "black"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link33"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "black"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link34"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "orange"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link35"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link36"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "blue"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link37"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link38"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link39"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "orange"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link40"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link41"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "blue"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link42"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "black"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link43"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "black"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link44"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "black"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link45"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link46"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link47"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link48"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link49"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link50"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link51"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "orange"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link52"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link53"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link54"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "blue"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link55"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "red"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "line",
     "from": {"data": "link56"},
     "encode": {
       "enter":  {
          "interpolate": {"value": "basis"}
       },
       "update": {
         "x": {"scale": "xscale", "field": "x"},
         "y": {"scale": "yscale", "field": "y"},
         "stroke": {"value": "green"},
         "strokeOpacity": {"value": "1.0"}
       },
       "hover": {
         "strokeOpacity": {"value": "0.5"}
       }
     }
   },
   {
     "type": "rect",
     "from": {"data":"concepts"},
     "encode": {
       "enter": {
         "stroke": {"value": "black"},
         "tooltip": {
           "signal": "datum.name"
         }
       },
       "update": {
         "fill": {"scale": "concept_color", "field": "domain.name"},
         "xc": {"scale": "xscale", "signal": "datum.x"},
         "yc": {"scale": "yscale", "signal": "datum.y"},
         "width": {"signal": "size / 8"},
         "height": {"signal": "size / 20"},
         "cornerRadius": {"signal": "size / 100"},
         "href": {"signal": "url"}
       },
       "hover": {
         "href": {"signal": "url"}
       }
     }
   },
   {
     "type" : "text",
     "from": {"data":"concepts"},
     "interactive": false,
     "encode": {
       "update": {
         "x": {"scale": "xscale", "signal": "datum.x - 80"},
         "y": {"scale": "yscale", "signal": "datum.y"},
         "fontSize": {"signal": "clamp(size / 70, 6, 12)"},
         "text": {"field": "name"},
         "baseline": {"value": "middle"},
         "limit": {"signal": "size / 10"}
       }
     }
   },
   {
     "type": "group",
     "encode": {
       "enter": {
         "width": {"value": 300},
         "height": {"value": 160},
         "fill": {"value": "white"},
         "stroke": {"value": "black"}
       }
     },
     "legends": [
       {
         "fill": "concept_color",
         "orient": "top-left",
         "title": "Sous-domaines",
         "labelLimit": 290,
         "titleLimit": 290,
         "labelFontSize": 12,
         "titleFontSize": 12
       }
     ]
   },
   {
     "type": "group",
     "encode": {
       "enter": {
         "xc": {"value": 200},
         "yc": {"value": 200},
         "width": {"value": 200},
         "height": {"value": 60},
         "fill": {"value": "white"},
         "stroke": {"value": "black"},
         "opacity": {"value": 0.0},
         "clip": {"value": true},
         "zindex": {"value": 1}
       },
       "update": {
         "xc": {"scale": "xscale", "signal": "if (linkhovered.centerX, linkhovered.centerX, 0)"},
         "yc": {"scale": "yscale", "signal": "if (linkhovered.centerY, linkhovered.centerY, 0)"},
         "opacity": {"signal": "if (linkhovered.source, 0.8, 0.0)"}
       }
     },
     "marks": [
       {
         "type": "text",
         "encode": {
           "enter": {
             "x": {"value": 100},
             "y": {"value": 20},
             "opacity": {"value": 0.0},
             "lineBreak": {"value" : "|"},
             "align": {"value": "center"}
           },
           "update": {
             "text": {
               "signal": "if (linkhovered.source, linkhovered.source.name + '|' + if(linkhovered.type=='typeOf', 'type de', linkhovered.frenchName) + '|' + linkhovered.target.name, )"
             },
             "opacity": {"signal": "if (linkhovered.source, 0.8, 0.0)"},
             "fontSize": {"signal": "12"}
           }
         }
       }
     ]
   }
 ]

}