@canonical/pragma-cli 0.34.0 → 0.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (832) hide show
  1. package/README.md +153 -30
  2. package/bundled-skills/add-standard/SKILL.md +338 -0
  3. package/bundled-skills/adoption-a1-styles/SKILL.md +269 -0
  4. package/bundled-skills/adoption-a2-components/SKILL.md +291 -0
  5. package/bundled-skills/adoption-a3-forms/SKILL.md +260 -0
  6. package/bundled-skills/anatomy-author/ANATOMY_DSL_SPEC.md +406 -0
  7. package/bundled-skills/anatomy-author/SKILL.md +1226 -0
  8. package/bundled-skills/design-auditor/SKILL.md +455 -0
  9. package/bundled-skills/implement-component/SKILL.md +333 -0
  10. package/bundled-skills/specify-component/SKILL.md +331 -0
  11. package/bundled-skills/specify-pattern/SKILL.md +292 -0
  12. package/dist/.build-ok +0 -0
  13. package/dist/package.json +84 -0
  14. package/dist/pragma.conf.js +1016 -0
  15. package/dist/pragma.conf.js.map +1 -0
  16. package/dist/src/bin.js +356 -0
  17. package/dist/src/bin.js.map +1 -0
  18. package/dist/src/capabilities/capabilities/capabilities.render.js +70 -0
  19. package/dist/src/capabilities/capabilities/capabilities.render.js.map +1 -0
  20. package/dist/src/capabilities/capabilities/capabilities.verb.js +59 -0
  21. package/dist/src/capabilities/capabilities/capabilities.verb.js.map +1 -0
  22. package/dist/src/capabilities/capabilities/catalog.js +130 -0
  23. package/dist/src/capabilities/capabilities/catalog.js.map +1 -0
  24. package/dist/src/capabilities/capabilities/hints.js +195 -0
  25. package/dist/src/capabilities/capabilities/hints.js.map +1 -0
  26. package/dist/src/capabilities/capabilities/index.js +11 -0
  27. package/dist/src/capabilities/capabilities/index.js.map +1 -0
  28. package/dist/src/capabilities/capabilities/types.js +11 -0
  29. package/dist/src/capabilities/capabilities/types.js.map +1 -0
  30. package/dist/src/capabilities/colophon/collectColophon.js +83 -0
  31. package/dist/src/capabilities/colophon/collectColophon.js.map +1 -0
  32. package/dist/src/capabilities/colophon/colophon.render.js +59 -0
  33. package/dist/src/capabilities/colophon/colophon.render.js.map +1 -0
  34. package/dist/src/capabilities/colophon/colophon.verb.js +43 -0
  35. package/dist/src/capabilities/colophon/colophon.verb.js.map +1 -0
  36. package/dist/src/capabilities/colophon/index.js +5 -0
  37. package/dist/src/capabilities/colophon/index.js.map +1 -0
  38. package/dist/src/capabilities/colophon/markdownTerminal.js +90 -0
  39. package/dist/src/capabilities/colophon/markdownTerminal.js.map +1 -0
  40. package/dist/src/capabilities/colophon/types.js +10 -0
  41. package/dist/src/capabilities/colophon/types.js.map +1 -0
  42. package/dist/src/capabilities/config/collectConfigShow.js +59 -0
  43. package/dist/src/capabilities/config/collectConfigShow.js.map +1 -0
  44. package/dist/src/capabilities/config/field.render.js +22 -0
  45. package/dist/src/capabilities/config/field.render.js.map +1 -0
  46. package/dist/src/capabilities/config/fields.js +46 -0
  47. package/dist/src/capabilities/config/fields.js.map +1 -0
  48. package/dist/src/capabilities/config/get.verb.js +61 -0
  49. package/dist/src/capabilities/config/get.verb.js.map +1 -0
  50. package/dist/src/capabilities/config/index.js +5 -0
  51. package/dist/src/capabilities/config/index.js.map +1 -0
  52. package/dist/src/capabilities/config/runField.js +59 -0
  53. package/dist/src/capabilities/config/runField.js.map +1 -0
  54. package/dist/src/capabilities/config/runGet.js +28 -0
  55. package/dist/src/capabilities/config/runGet.js.map +1 -0
  56. package/dist/src/capabilities/config/runSet.js +53 -0
  57. package/dist/src/capabilities/config/runSet.js.map +1 -0
  58. package/dist/src/capabilities/config/set.verb.js +66 -0
  59. package/dist/src/capabilities/config/set.verb.js.map +1 -0
  60. package/dist/src/capabilities/config/show.render.js +84 -0
  61. package/dist/src/capabilities/config/show.render.js.map +1 -0
  62. package/dist/src/capabilities/config/show.verb.js +44 -0
  63. package/dist/src/capabilities/config/show.verb.js.map +1 -0
  64. package/dist/src/capabilities/config/types.js +5 -0
  65. package/dist/src/capabilities/config/types.js.map +1 -0
  66. package/dist/src/capabilities/config/unset.verb.js +49 -0
  67. package/dist/src/capabilities/config/unset.verb.js.map +1 -0
  68. package/dist/src/capabilities/create/cliProjection.js +195 -0
  69. package/dist/src/capabilities/create/cliProjection.js.map +1 -0
  70. package/dist/src/capabilities/create/constants.js +47 -0
  71. package/dist/src/capabilities/create/constants.js.map +1 -0
  72. package/dist/src/capabilities/create/create.render.js +100 -0
  73. package/dist/src/capabilities/create/create.render.js.map +1 -0
  74. package/dist/src/capabilities/create/create.verb.js +438 -0
  75. package/dist/src/capabilities/create/create.verb.js.map +1 -0
  76. package/dist/src/capabilities/create/createHelp.js +47 -0
  77. package/dist/src/capabilities/create/createHelp.js.map +1 -0
  78. package/dist/src/capabilities/create/createSurface.generated.js +394 -0
  79. package/dist/src/capabilities/create/createSurface.generated.js.map +1 -0
  80. package/dist/src/capabilities/create/generatorToVerbSpec.js +106 -0
  81. package/dist/src/capabilities/create/generatorToVerbSpec.js.map +1 -0
  82. package/dist/src/capabilities/create/index.js +18 -0
  83. package/dist/src/capabilities/create/index.js.map +1 -0
  84. package/dist/src/capabilities/create/messages.js +16 -0
  85. package/dist/src/capabilities/create/messages.js.map +1 -0
  86. package/dist/src/capabilities/create/mount.js +294 -0
  87. package/dist/src/capabilities/create/mount.js.map +1 -0
  88. package/dist/src/capabilities/create/pathJail.js +65 -0
  89. package/dist/src/capabilities/create/pathJail.js.map +1 -0
  90. package/dist/src/capabilities/create/pickGenerator.js +53 -0
  91. package/dist/src/capabilities/create/pickGenerator.js.map +1 -0
  92. package/dist/src/capabilities/create/types.js +2 -0
  93. package/dist/src/capabilities/create/types.js.map +1 -0
  94. package/dist/src/capabilities/distribution.js +40 -0
  95. package/dist/src/capabilities/distribution.js.map +1 -0
  96. package/dist/src/capabilities/doctor/checks/checkKeStore.js +40 -0
  97. package/dist/src/capabilities/doctor/checks/checkKeStore.js.map +1 -0
  98. package/dist/src/capabilities/doctor/checks/checkNodeVersion.js +21 -0
  99. package/dist/src/capabilities/doctor/checks/checkNodeVersion.js.map +1 -0
  100. package/dist/src/capabilities/doctor/checks/checkPackageRefs.js +148 -0
  101. package/dist/src/capabilities/doctor/checks/checkPackageRefs.js.map +1 -0
  102. package/dist/src/capabilities/doctor/checks/checkPragmaVersion.js +19 -0
  103. package/dist/src/capabilities/doctor/checks/checkPragmaVersion.js.map +1 -0
  104. package/dist/src/capabilities/doctor/checks/checkShellCompletions.js +199 -0
  105. package/dist/src/capabilities/doctor/checks/checkShellCompletions.js.map +1 -0
  106. package/dist/src/capabilities/doctor/checks/harnessInventory.js +195 -0
  107. package/dist/src/capabilities/doctor/checks/harnessInventory.js.map +1 -0
  108. package/dist/src/capabilities/doctor/checks/index.js +27 -0
  109. package/dist/src/capabilities/doctor/checks/index.js.map +1 -0
  110. package/dist/src/capabilities/doctor/checks/mcpCommand.js +57 -0
  111. package/dist/src/capabilities/doctor/checks/mcpCommand.js.map +1 -0
  112. package/dist/src/capabilities/doctor/checks/targetHealth.js +349 -0
  113. package/dist/src/capabilities/doctor/checks/targetHealth.js.map +1 -0
  114. package/dist/src/capabilities/doctor/doctor.render.js +164 -0
  115. package/dist/src/capabilities/doctor/doctor.render.js.map +1 -0
  116. package/dist/src/capabilities/doctor/doctor.verb.js +49 -0
  117. package/dist/src/capabilities/doctor/doctor.verb.js.map +1 -0
  118. package/dist/src/capabilities/doctor/index.js +5 -0
  119. package/dist/src/capabilities/doctor/index.js.map +1 -0
  120. package/dist/src/capabilities/doctor/runChecks.js +86 -0
  121. package/dist/src/capabilities/doctor/runChecks.js.map +1 -0
  122. package/dist/src/capabilities/doctor/types.js +5 -0
  123. package/dist/src/capabilities/doctor/types.js.map +1 -0
  124. package/dist/src/capabilities/graph/index.js +19 -0
  125. package/dist/src/capabilities/graph/index.js.map +1 -0
  126. package/dist/src/capabilities/graph/inspect.render.js +76 -0
  127. package/dist/src/capabilities/graph/inspect.render.js.map +1 -0
  128. package/dist/src/capabilities/graph/inspect.verb.js +53 -0
  129. package/dist/src/capabilities/graph/inspect.verb.js.map +1 -0
  130. package/dist/src/capabilities/graph/query.render.js +73 -0
  131. package/dist/src/capabilities/graph/query.render.js.map +1 -0
  132. package/dist/src/capabilities/graph/query.verb.js +49 -0
  133. package/dist/src/capabilities/graph/query.verb.js.map +1 -0
  134. package/dist/src/capabilities/graph/runQuery.js +41 -0
  135. package/dist/src/capabilities/graph/runQuery.js.map +1 -0
  136. package/dist/src/capabilities/index.js +56 -0
  137. package/dist/src/capabilities/index.js.map +1 -0
  138. package/dist/src/capabilities/info/collectInfo.js +72 -0
  139. package/dist/src/capabilities/info/collectInfo.js.map +1 -0
  140. package/dist/src/capabilities/info/index.js +5 -0
  141. package/dist/src/capabilities/info/index.js.map +1 -0
  142. package/dist/src/capabilities/info/info.render.js +57 -0
  143. package/dist/src/capabilities/info/info.render.js.map +1 -0
  144. package/dist/src/capabilities/info/info.verb.js +42 -0
  145. package/dist/src/capabilities/info/info.verb.js.map +1 -0
  146. package/dist/src/capabilities/info/types.js +5 -0
  147. package/dist/src/capabilities/info/types.js.map +1 -0
  148. package/dist/src/capabilities/meta/complete.verb.js +43 -0
  149. package/dist/src/capabilities/meta/complete.verb.js.map +1 -0
  150. package/dist/src/capabilities/meta/index.js +13 -0
  151. package/dist/src/capabilities/meta/index.js.map +1 -0
  152. package/dist/src/capabilities/meta/mcp.verb.js +34 -0
  153. package/dist/src/capabilities/meta/mcp.verb.js.map +1 -0
  154. package/dist/src/capabilities/ontology/index.js +21 -0
  155. package/dist/src/capabilities/ontology/index.js.map +1 -0
  156. package/dist/src/capabilities/ontology/queries.js +123 -0
  157. package/dist/src/capabilities/ontology/queries.js.map +1 -0
  158. package/dist/src/capabilities/ontology/render.js +66 -0
  159. package/dist/src/capabilities/ontology/render.js.map +1 -0
  160. package/dist/src/capabilities/ontology/verbs.js +181 -0
  161. package/dist/src/capabilities/ontology/verbs.js.map +1 -0
  162. package/dist/src/capabilities/prompt/index.js +16 -0
  163. package/dist/src/capabilities/prompt/index.js.map +1 -0
  164. package/dist/src/capabilities/prompt/prompt.render.js +78 -0
  165. package/dist/src/capabilities/prompt/prompt.render.js.map +1 -0
  166. package/dist/src/capabilities/prompt/types.js +10 -0
  167. package/dist/src/capabilities/prompt/types.js.map +1 -0
  168. package/dist/src/capabilities/prompt/verbs.js +93 -0
  169. package/dist/src/capabilities/prompt/verbs.js.map +1 -0
  170. package/dist/src/capabilities/resources/index.js +10 -0
  171. package/dist/src/capabilities/resources/index.js.map +1 -0
  172. package/dist/src/capabilities/resources/provider.js +423 -0
  173. package/dist/src/capabilities/resources/provider.js.map +1 -0
  174. package/dist/src/capabilities/setup/buildPlan.js +172 -0
  175. package/dist/src/capabilities/setup/buildPlan.js.map +1 -0
  176. package/dist/src/capabilities/setup/index.js +5 -0
  177. package/dist/src/capabilities/setup/index.js.map +1 -0
  178. package/dist/src/capabilities/setup/mode.js +53 -0
  179. package/dist/src/capabilities/setup/mode.js.map +1 -0
  180. package/dist/src/capabilities/setup/operations/index.js +39 -0
  181. package/dist/src/capabilities/setup/operations/index.js.map +1 -0
  182. package/dist/src/capabilities/setup/operations/setupCompletions.js +160 -0
  183. package/dist/src/capabilities/setup/operations/setupCompletions.js.map +1 -0
  184. package/dist/src/capabilities/setup/operations/setupConfig.js +101 -0
  185. package/dist/src/capabilities/setup/operations/setupConfig.js.map +1 -0
  186. package/dist/src/capabilities/setup/operations/setupGenerator.js +390 -0
  187. package/dist/src/capabilities/setup/operations/setupGenerator.js.map +1 -0
  188. package/dist/src/capabilities/setup/operations/setupLsp.js +329 -0
  189. package/dist/src/capabilities/setup/operations/setupLsp.js.map +1 -0
  190. package/dist/src/capabilities/setup/operations/setupMcp.js +253 -0
  191. package/dist/src/capabilities/setup/operations/setupMcp.js.map +1 -0
  192. package/dist/src/capabilities/setup/operations/setupSkills.js +594 -0
  193. package/dist/src/capabilities/setup/operations/setupSkills.js.map +1 -0
  194. package/dist/src/capabilities/setup/plan.js +128 -0
  195. package/dist/src/capabilities/setup/plan.js.map +1 -0
  196. package/dist/src/capabilities/setup/plan.render.js +271 -0
  197. package/dist/src/capabilities/setup/plan.render.js.map +1 -0
  198. package/dist/src/capabilities/setup/setup.render.js +54 -0
  199. package/dist/src/capabilities/setup/setup.render.js.map +1 -0
  200. package/dist/src/capabilities/setup/setup.verb.js +387 -0
  201. package/dist/src/capabilities/setup/setup.verb.js.map +1 -0
  202. package/dist/src/capabilities/setup/shell.js +196 -0
  203. package/dist/src/capabilities/setup/shell.js.map +1 -0
  204. package/dist/src/capabilities/setup/targets.js +328 -0
  205. package/dist/src/capabilities/setup/targets.js.map +1 -0
  206. package/dist/src/capabilities/setup/types.js +5 -0
  207. package/dist/src/capabilities/setup/types.js.map +1 -0
  208. package/dist/src/capabilities/shared/assertExecOk.js +137 -0
  209. package/dist/src/capabilities/shared/assertExecOk.js.map +1 -0
  210. package/dist/src/capabilities/shared/index.js +27 -0
  211. package/dist/src/capabilities/shared/index.js.map +1 -0
  212. package/dist/src/capabilities/shared/packageManager.js +349 -0
  213. package/dist/src/capabilities/shared/packageManager.js.map +1 -0
  214. package/dist/src/capabilities/shared/registry.js +55 -0
  215. package/dist/src/capabilities/shared/registry.js.map +1 -0
  216. package/dist/src/capabilities/skill/discover.js +281 -0
  217. package/dist/src/capabilities/skill/discover.js.map +1 -0
  218. package/dist/src/capabilities/skill/index.js +10 -0
  219. package/dist/src/capabilities/skill/index.js.map +1 -0
  220. package/dist/src/capabilities/skill/render.js +49 -0
  221. package/dist/src/capabilities/skill/render.js.map +1 -0
  222. package/dist/src/capabilities/skill/verbs.js +83 -0
  223. package/dist/src/capabilities/skill/verbs.js.map +1 -0
  224. package/dist/src/capabilities/sources/collectStatus.js +103 -0
  225. package/dist/src/capabilities/sources/collectStatus.js.map +1 -0
  226. package/dist/src/capabilities/sources/index.js +13 -0
  227. package/dist/src/capabilities/sources/index.js.map +1 -0
  228. package/dist/src/capabilities/sources/installSkills.js +309 -0
  229. package/dist/src/capabilities/sources/installSkills.js.map +1 -0
  230. package/dist/src/capabilities/sources/runUpdate.js +460 -0
  231. package/dist/src/capabilities/sources/runUpdate.js.map +1 -0
  232. package/dist/src/capabilities/sources/status.render.js +64 -0
  233. package/dist/src/capabilities/sources/status.render.js.map +1 -0
  234. package/dist/src/capabilities/sources/status.verb.js +40 -0
  235. package/dist/src/capabilities/sources/status.verb.js.map +1 -0
  236. package/dist/src/capabilities/sources/types.js +6 -0
  237. package/dist/src/capabilities/sources/types.js.map +1 -0
  238. package/dist/src/capabilities/sources/update.render.js +34 -0
  239. package/dist/src/capabilities/sources/update.render.js.map +1 -0
  240. package/dist/src/capabilities/sources/update.verb.js +55 -0
  241. package/dist/src/capabilities/sources/update.verb.js.map +1 -0
  242. package/dist/src/capabilities/upgrade/index.js +5 -0
  243. package/dist/src/capabilities/upgrade/index.js.map +1 -0
  244. package/dist/src/capabilities/upgrade/runUpgrade.js +135 -0
  245. package/dist/src/capabilities/upgrade/runUpgrade.js.map +1 -0
  246. package/dist/src/capabilities/upgrade/types.js +5 -0
  247. package/dist/src/capabilities/upgrade/types.js.map +1 -0
  248. package/dist/src/capabilities/upgrade/upgrade.render.js +52 -0
  249. package/dist/src/capabilities/upgrade/upgrade.render.js.map +1 -0
  250. package/dist/src/capabilities/upgrade/upgrade.verb.js +52 -0
  251. package/dist/src/capabilities/upgrade/upgrade.verb.js.map +1 -0
  252. package/dist/src/capabilities/version/index.js +10 -0
  253. package/dist/src/capabilities/version/index.js.map +1 -0
  254. package/dist/src/capabilities/version/version.verb.js +36 -0
  255. package/dist/src/capabilities/version/version.verb.js.map +1 -0
  256. package/dist/src/constants.js +87 -0
  257. package/dist/src/constants.js.map +1 -0
  258. package/dist/src/index.js +12 -0
  259. package/dist/src/index.js.map +1 -0
  260. package/dist/src/kernel/completion/complete.js +66 -0
  261. package/dist/src/kernel/completion/complete.js.map +1 -0
  262. package/dist/src/kernel/completion/emitScripts.js +92 -0
  263. package/dist/src/kernel/completion/emitScripts.js.map +1 -0
  264. package/dist/src/kernel/completion/entitySource.js +285 -0
  265. package/dist/src/kernel/completion/entitySource.js.map +1 -0
  266. package/dist/src/kernel/completion/index.js +14 -0
  267. package/dist/src/kernel/completion/index.js.map +1 -0
  268. package/dist/src/kernel/completion/model.js +301 -0
  269. package/dist/src/kernel/completion/model.js.map +1 -0
  270. package/dist/src/kernel/completion/parse.js +253 -0
  271. package/dist/src/kernel/completion/parse.js.map +1 -0
  272. package/dist/src/kernel/completion/rank.js +101 -0
  273. package/dist/src/kernel/completion/rank.js.map +1 -0
  274. package/dist/src/kernel/completion/resolve.js +100 -0
  275. package/dist/src/kernel/completion/resolve.js.map +1 -0
  276. package/dist/src/kernel/completion/templates/bash.js +209 -0
  277. package/dist/src/kernel/completion/templates/bash.js.map +1 -0
  278. package/dist/src/kernel/completion/templates/fish.js +214 -0
  279. package/dist/src/kernel/completion/templates/fish.js.map +1 -0
  280. package/dist/src/kernel/completion/templates/index.js +23 -0
  281. package/dist/src/kernel/completion/templates/index.js.map +1 -0
  282. package/dist/src/kernel/completion/templates/shared.js +98 -0
  283. package/dist/src/kernel/completion/templates/shared.js.map +1 -0
  284. package/dist/src/kernel/completion/templates/zsh.js +201 -0
  285. package/dist/src/kernel/completion/templates/zsh.js.map +1 -0
  286. package/dist/src/kernel/completion/types.js +13 -0
  287. package/dist/src/kernel/completion/types.js.map +1 -0
  288. package/dist/src/kernel/config/defaults.js +17 -0
  289. package/dist/src/kernel/config/defaults.js.map +1 -0
  290. package/dist/src/kernel/config/evaluateProjectConfig.js +126 -0
  291. package/dist/src/kernel/config/evaluateProjectConfig.js.map +1 -0
  292. package/dist/src/kernel/config/findProjectConfig.js +43 -0
  293. package/dist/src/kernel/config/findProjectConfig.js.map +1 -0
  294. package/dist/src/kernel/config/firstRun.js +34 -0
  295. package/dist/src/kernel/config/firstRun.js.map +1 -0
  296. package/dist/src/kernel/config/globalConfig.js +79 -0
  297. package/dist/src/kernel/config/globalConfig.js.map +1 -0
  298. package/dist/src/kernel/config/index.js +16 -0
  299. package/dist/src/kernel/config/index.js.map +1 -0
  300. package/dist/src/kernel/config/paths.js +35 -0
  301. package/dist/src/kernel/config/paths.js.map +1 -0
  302. package/dist/src/kernel/config/readConfig.js +78 -0
  303. package/dist/src/kernel/config/readConfig.js.map +1 -0
  304. package/dist/src/kernel/config/schema.js +130 -0
  305. package/dist/src/kernel/config/schema.js.map +1 -0
  306. package/dist/src/kernel/config/types.js +19 -0
  307. package/dist/src/kernel/config/types.js.map +1 -0
  308. package/dist/src/kernel/config/writeConfigField.js +59 -0
  309. package/dist/src/kernel/config/writeConfigField.js.map +1 -0
  310. package/dist/src/kernel/copy.js +43 -0
  311. package/dist/src/kernel/copy.js.map +1 -0
  312. package/dist/src/kernel/error/PragmaError.js +149 -0
  313. package/dist/src/kernel/error/PragmaError.js.map +1 -0
  314. package/dist/src/kernel/error/constants.js +40 -0
  315. package/dist/src/kernel/error/constants.js.map +1 -0
  316. package/dist/src/kernel/error/fromTaskError.js +96 -0
  317. package/dist/src/kernel/error/fromTaskError.js.map +1 -0
  318. package/dist/src/kernel/error/index.js +13 -0
  319. package/dist/src/kernel/error/index.js.map +1 -0
  320. package/dist/src/kernel/error/recovery.js +52 -0
  321. package/dist/src/kernel/error/recovery.js.map +1 -0
  322. package/dist/src/kernel/error/renderError.js +115 -0
  323. package/dist/src/kernel/error/renderError.js.map +1 -0
  324. package/dist/src/kernel/error/serialize.js +25 -0
  325. package/dist/src/kernel/error/serialize.js.map +1 -0
  326. package/dist/src/kernel/error/types.js +9 -0
  327. package/dist/src/kernel/error/types.js.map +1 -0
  328. package/dist/src/kernel/index.js +34 -0
  329. package/dist/src/kernel/index.js.map +1 -0
  330. package/dist/src/kernel/interactivity.js +68 -0
  331. package/dist/src/kernel/interactivity.js.map +1 -0
  332. package/dist/src/kernel/packs/collect.js +187 -0
  333. package/dist/src/kernel/packs/collect.js.map +1 -0
  334. package/dist/src/kernel/packs/compile.js +304 -0
  335. package/dist/src/kernel/packs/compile.js.map +1 -0
  336. package/dist/src/kernel/packs/disclosure.js +76 -0
  337. package/dist/src/kernel/packs/disclosure.js.map +1 -0
  338. package/dist/src/kernel/packs/glob.js +38 -0
  339. package/dist/src/kernel/packs/glob.js.map +1 -0
  340. package/dist/src/kernel/packs/graphql/buildLookupDocument.js +258 -0
  341. package/dist/src/kernel/packs/graphql/buildLookupDocument.js.map +1 -0
  342. package/dist/src/kernel/packs/graphql/fetchGraphqlLookup.js +157 -0
  343. package/dist/src/kernel/packs/graphql/fetchGraphqlLookup.js.map +1 -0
  344. package/dist/src/kernel/packs/graphql/index.js +20 -0
  345. package/dist/src/kernel/packs/graphql/index.js.map +1 -0
  346. package/dist/src/kernel/packs/graphql/nameMap.js +63 -0
  347. package/dist/src/kernel/packs/graphql/nameMap.js.map +1 -0
  348. package/dist/src/kernel/packs/index.js +34 -0
  349. package/dist/src/kernel/packs/index.js.map +1 -0
  350. package/dist/src/kernel/packs/iri.js +110 -0
  351. package/dist/src/kernel/packs/iri.js.map +1 -0
  352. package/dist/src/kernel/packs/renderPack.js +129 -0
  353. package/dist/src/kernel/packs/renderPack.js.map +1 -0
  354. package/dist/src/kernel/packs/resolveEntity.js +274 -0
  355. package/dist/src/kernel/packs/resolveEntity.js.map +1 -0
  356. package/dist/src/kernel/packs/runBodies.js +140 -0
  357. package/dist/src/kernel/packs/runBodies.js.map +1 -0
  358. package/dist/src/kernel/packs/sample.js +56 -0
  359. package/dist/src/kernel/packs/sample.js.map +1 -0
  360. package/dist/src/kernel/packs/schema.js +421 -0
  361. package/dist/src/kernel/packs/schema.js.map +1 -0
  362. package/dist/src/kernel/packs/sparql/applyFilters.js +167 -0
  363. package/dist/src/kernel/packs/sparql/applyFilters.js.map +1 -0
  364. package/dist/src/kernel/packs/sparql/applySearch.js +25 -0
  365. package/dist/src/kernel/packs/sparql/applySearch.js.map +1 -0
  366. package/dist/src/kernel/packs/sparql/buildLookupQuery.js +480 -0
  367. package/dist/src/kernel/packs/sparql/buildLookupQuery.js.map +1 -0
  368. package/dist/src/kernel/packs/sparql/escape.js +21 -0
  369. package/dist/src/kernel/packs/sparql/escape.js.map +1 -0
  370. package/dist/src/kernel/packs/sparql/index.js +31 -0
  371. package/dist/src/kernel/packs/sparql/index.js.map +1 -0
  372. package/dist/src/kernel/packs/sparql/runSelect.js +101 -0
  373. package/dist/src/kernel/packs/sparql/runSelect.js.map +1 -0
  374. package/dist/src/kernel/packs/types.js +30 -0
  375. package/dist/src/kernel/packs/types.js.map +1 -0
  376. package/dist/src/kernel/packs/uniqueness.js +30 -0
  377. package/dist/src/kernel/packs/uniqueness.js.map +1 -0
  378. package/dist/src/kernel/project/cli/buildProgram.js +263 -0
  379. package/dist/src/kernel/project/cli/buildProgram.js.map +1 -0
  380. package/dist/src/kernel/project/cli/constants.js +27 -0
  381. package/dist/src/kernel/project/cli/constants.js.map +1 -0
  382. package/dist/src/kernel/project/cli/dispatch.js +420 -0
  383. package/dist/src/kernel/project/cli/dispatch.js.map +1 -0
  384. package/dist/src/kernel/project/cli/exitCodes.js +66 -0
  385. package/dist/src/kernel/project/cli/exitCodes.js.map +1 -0
  386. package/dist/src/kernel/project/cli/globalFlags.js +219 -0
  387. package/dist/src/kernel/project/cli/globalFlags.js.map +1 -0
  388. package/dist/src/kernel/project/cli/helpFormat.js +58 -0
  389. package/dist/src/kernel/project/cli/helpFormat.js.map +1 -0
  390. package/dist/src/kernel/project/cli/index.js +14 -0
  391. package/dist/src/kernel/project/cli/index.js.map +1 -0
  392. package/dist/src/kernel/project/cli/rootHelp.js +227 -0
  393. package/dist/src/kernel/project/cli/rootHelp.js.map +1 -0
  394. package/dist/src/kernel/project/cli/suggest.js +75 -0
  395. package/dist/src/kernel/project/cli/suggest.js.map +1 -0
  396. package/dist/src/kernel/project/cli/suggestNames.js +96 -0
  397. package/dist/src/kernel/project/cli/suggestNames.js.map +1 -0
  398. package/dist/src/kernel/project/cli/verbHelp.js +131 -0
  399. package/dist/src/kernel/project/cli/verbHelp.js.map +1 -0
  400. package/dist/src/kernel/project/mcp/buildServer.js +67 -0
  401. package/dist/src/kernel/project/mcp/buildServer.js.map +1 -0
  402. package/dist/src/kernel/project/mcp/envelope.js +37 -0
  403. package/dist/src/kernel/project/mcp/envelope.js.map +1 -0
  404. package/dist/src/kernel/project/mcp/index.js +8 -0
  405. package/dist/src/kernel/project/mcp/index.js.map +1 -0
  406. package/dist/src/kernel/project/mcp/instructions.js +44 -0
  407. package/dist/src/kernel/project/mcp/instructions.js.map +1 -0
  408. package/dist/src/kernel/project/mcp/mcpError.js +42 -0
  409. package/dist/src/kernel/project/mcp/mcpError.js.map +1 -0
  410. package/dist/src/kernel/project/mcp/prompts/index.js +36 -0
  411. package/dist/src/kernel/project/mcp/prompts/index.js.map +1 -0
  412. package/dist/src/kernel/project/mcp/prompts/provider.js +98 -0
  413. package/dist/src/kernel/project/mcp/prompts/provider.js.map +1 -0
  414. package/dist/src/kernel/project/mcp/prompts/source.js +154 -0
  415. package/dist/src/kernel/project/mcp/prompts/source.js.map +1 -0
  416. package/dist/src/kernel/project/mcp/registerVerb.js +315 -0
  417. package/dist/src/kernel/project/mcp/registerVerb.js.map +1 -0
  418. package/dist/src/kernel/project/mcp/serve.js +35 -0
  419. package/dist/src/kernel/project/mcp/serve.js.map +1 -0
  420. package/dist/src/kernel/render/compactUri.js +24 -0
  421. package/dist/src/kernel/render/compactUri.js.map +1 -0
  422. package/dist/src/kernel/render/contracts.js +10 -0
  423. package/dist/src/kernel/render/contracts.js.map +1 -0
  424. package/dist/src/kernel/render/disclosure.js +34 -0
  425. package/dist/src/kernel/render/disclosure.js.map +1 -0
  426. package/dist/src/kernel/render/envelope.js +30 -0
  427. package/dist/src/kernel/render/envelope.js.map +1 -0
  428. package/dist/src/kernel/render/formatters.js +27 -0
  429. package/dist/src/kernel/render/formatters.js.map +1 -0
  430. package/dist/src/kernel/render/index.js +15 -0
  431. package/dist/src/kernel/render/index.js.map +1 -0
  432. package/dist/src/kernel/render/prefixes.js +46 -0
  433. package/dist/src/kernel/render/prefixes.js.map +1 -0
  434. package/dist/src/kernel/render/renderers.js +468 -0
  435. package/dist/src/kernel/render/renderers.js.map +1 -0
  436. package/dist/src/kernel/render/style.js +105 -0
  437. package/dist/src/kernel/render/style.js.map +1 -0
  438. package/dist/src/kernel/render/turtle.js +194 -0
  439. package/dist/src/kernel/render/turtle.js.map +1 -0
  440. package/dist/src/kernel/render/vocabulary.js +174 -0
  441. package/dist/src/kernel/render/vocabulary.js.map +1 -0
  442. package/dist/src/kernel/render/writeStdout.js +43 -0
  443. package/dist/src/kernel/render/writeStdout.js.map +1 -0
  444. package/dist/src/kernel/runtime/boot.js +49 -0
  445. package/dist/src/kernel/runtime/boot.js.map +1 -0
  446. package/dist/src/kernel/runtime/facade.js +39 -0
  447. package/dist/src/kernel/runtime/facade.js.map +1 -0
  448. package/dist/src/kernel/runtime/graphpack/build.js +122 -0
  449. package/dist/src/kernel/runtime/graphpack/build.js.map +1 -0
  450. package/dist/src/kernel/runtime/graphpack/buildIndex.js +303 -0
  451. package/dist/src/kernel/runtime/graphpack/buildIndex.js.map +1 -0
  452. package/dist/src/kernel/runtime/graphpack/embedded/pack.generated.js +6 -0
  453. package/dist/src/kernel/runtime/graphpack/embedded/pack.generated.js.map +1 -0
  454. package/dist/src/kernel/runtime/graphpack/embedded/pack.index.generated.js +4 -0
  455. package/dist/src/kernel/runtime/graphpack/embedded/pack.index.generated.js.map +1 -0
  456. package/dist/src/kernel/runtime/graphpack/embedded/pack.stories.generated.js +4 -0
  457. package/dist/src/kernel/runtime/graphpack/embedded/pack.stories.generated.js.map +1 -0
  458. package/dist/src/kernel/runtime/graphpack/embedded.js +82 -0
  459. package/dist/src/kernel/runtime/graphpack/embedded.js.map +1 -0
  460. package/dist/src/kernel/runtime/graphpack/hash.js +38 -0
  461. package/dist/src/kernel/runtime/graphpack/hash.js.map +1 -0
  462. package/dist/src/kernel/runtime/graphpack/index.js +11 -0
  463. package/dist/src/kernel/runtime/graphpack/index.js.map +1 -0
  464. package/dist/src/kernel/runtime/graphpack/manifest.js +145 -0
  465. package/dist/src/kernel/runtime/graphpack/manifest.js.map +1 -0
  466. package/dist/src/kernel/runtime/graphpack/read.js +92 -0
  467. package/dist/src/kernel/runtime/graphpack/read.js.map +1 -0
  468. package/dist/src/kernel/runtime/graphpack/schemas.js +70 -0
  469. package/dist/src/kernel/runtime/graphpack/schemas.js.map +1 -0
  470. package/dist/src/kernel/runtime/graphpack/stories.js +68 -0
  471. package/dist/src/kernel/runtime/graphpack/stories.js.map +1 -0
  472. package/dist/src/kernel/runtime/graphpack/types.js +55 -0
  473. package/dist/src/kernel/runtime/graphpack/types.js.map +1 -0
  474. package/dist/src/kernel/runtime/index.js +8 -0
  475. package/dist/src/kernel/runtime/index.js.map +1 -0
  476. package/dist/src/kernel/runtime/loadSession.js +34 -0
  477. package/dist/src/kernel/runtime/loadSession.js.map +1 -0
  478. package/dist/src/kernel/runtime/paths.js +78 -0
  479. package/dist/src/kernel/runtime/paths.js.map +1 -0
  480. package/dist/src/kernel/runtime/probe.js +37 -0
  481. package/dist/src/kernel/runtime/probe.js.map +1 -0
  482. package/dist/src/kernel/runtime/readEntity.js +363 -0
  483. package/dist/src/kernel/runtime/readEntity.js.map +1 -0
  484. package/dist/src/kernel/runtime/refs/gitOps.js +65 -0
  485. package/dist/src/kernel/runtime/refs/gitOps.js.map +1 -0
  486. package/dist/src/kernel/runtime/refs/index.js +29 -0
  487. package/dist/src/kernel/runtime/refs/index.js.map +1 -0
  488. package/dist/src/kernel/runtime/refs/parseRef.js +70 -0
  489. package/dist/src/kernel/runtime/refs/parseRef.js.map +1 -0
  490. package/dist/src/kernel/runtime/refs/resolve.js +332 -0
  491. package/dist/src/kernel/runtime/refs/resolve.js.map +1 -0
  492. package/dist/src/kernel/runtime/resolveSources.js +62 -0
  493. package/dist/src/kernel/runtime/resolveSources.js.map +1 -0
  494. package/dist/src/kernel/runtime/store.js +75 -0
  495. package/dist/src/kernel/runtime/store.js.map +1 -0
  496. package/dist/src/kernel/runtime/storeReadiness.js +51 -0
  497. package/dist/src/kernel/runtime/storeReadiness.js.map +1 -0
  498. package/dist/src/kernel/runtime/types.js +11 -0
  499. package/dist/src/kernel/runtime/types.js.map +1 -0
  500. package/dist/src/kernel/spec/asVerb.js +21 -0
  501. package/dist/src/kernel/spec/asVerb.js.map +1 -0
  502. package/dist/src/kernel/spec/emitReference.js +578 -0
  503. package/dist/src/kernel/spec/emitReference.js.map +1 -0
  504. package/dist/src/kernel/spec/emitSurface.js +202 -0
  505. package/dist/src/kernel/spec/emitSurface.js.map +1 -0
  506. package/dist/src/kernel/spec/index.js +11 -0
  507. package/dist/src/kernel/spec/index.js.map +1 -0
  508. package/dist/src/kernel/spec/surfaceConformance.js +103 -0
  509. package/dist/src/kernel/spec/surfaceConformance.js.map +1 -0
  510. package/dist/src/kernel/spec/types.js +14 -0
  511. package/dist/src/kernel/spec/types.js.map +1 -0
  512. package/dist/src/kernel/spec/validate.js +110 -0
  513. package/dist/src/kernel/spec/validate.js.map +1 -0
  514. package/dist/src/kernel/vocabulary.js +97 -0
  515. package/dist/src/kernel/vocabulary.js.map +1 -0
  516. package/dist/src/types.js +11 -0
  517. package/dist/src/types.js.map +1 -0
  518. package/package.json +22 -23
  519. package/pragma.conf.ts +486 -90
  520. package/src/bin.ts +274 -82
  521. package/src/capabilities/block.parity.test.ts +29 -12
  522. package/src/capabilities/block.shipped.exec.test.ts +282 -0
  523. package/src/capabilities/block.tierRank.exec.test.ts +300 -0
  524. package/src/capabilities/capabilities/capabilities.render.ts +1 -1
  525. package/src/capabilities/capabilities/capabilities.verb.ts +1 -1
  526. package/src/capabilities/capabilities/catalog.ts +3 -3
  527. package/src/capabilities/capabilities/hints.ts +32 -7
  528. package/src/capabilities/capabilities/index.ts +1 -1
  529. package/src/capabilities/colophon/collectColophon.ts +35 -24
  530. package/src/capabilities/colophon/colophon.render.ts +24 -1
  531. package/src/capabilities/colophon/colophon.test.ts +42 -21
  532. package/src/capabilities/colophon/colophon.verb.ts +4 -4
  533. package/src/capabilities/config/collectConfigShow.test.ts +1 -0
  534. package/src/capabilities/config/collectConfigShow.ts +3 -3
  535. package/src/capabilities/config/field.render.ts +4 -5
  536. package/src/capabilities/config/fields.ts +17 -10
  537. package/src/capabilities/config/get.verb.ts +70 -0
  538. package/src/capabilities/config/getUnset.test.ts +264 -0
  539. package/src/capabilities/config/index.ts +5 -1
  540. package/src/capabilities/config/runField.ts +40 -22
  541. package/src/capabilities/config/runGet.ts +34 -0
  542. package/src/capabilities/config/runSet.ts +35 -9
  543. package/src/capabilities/config/set.test.ts +48 -14
  544. package/src/capabilities/config/set.verb.ts +8 -7
  545. package/src/capabilities/config/show.render.ts +1 -1
  546. package/src/capabilities/config/show.verb.ts +9 -6
  547. package/src/capabilities/config/types.ts +18 -4
  548. package/src/capabilities/config/unset.verb.ts +58 -0
  549. package/src/capabilities/create/byteEquality.subprocess.test.ts +2 -3
  550. package/src/capabilities/create/byteEquality.test.ts +25 -11
  551. package/src/capabilities/create/cliProjection.ts +227 -0
  552. package/src/capabilities/create/constants.ts +36 -61
  553. package/src/capabilities/create/create.mcp.test.ts +89 -5
  554. package/src/capabilities/create/create.render.ts +71 -7
  555. package/src/capabilities/create/create.test.ts +433 -219
  556. package/src/capabilities/create/create.verb.ts +297 -328
  557. package/src/capabilities/create/createGrammar.test.ts +865 -0
  558. package/src/capabilities/create/createHelp.ts +71 -0
  559. package/src/capabilities/create/createSurface.generated.ts +400 -0
  560. package/src/capabilities/create/crossCli.subprocess.test.ts +745 -0
  561. package/src/capabilities/create/cwdJail.test.ts +24 -5
  562. package/src/capabilities/create/generatorToVerbSpec.test.ts +186 -0
  563. package/src/capabilities/create/generatorToVerbSpec.ts +13 -11
  564. package/src/capabilities/create/index.ts +7 -4
  565. package/src/capabilities/create/messages.ts +18 -0
  566. package/src/capabilities/create/mount.ts +391 -0
  567. package/src/capabilities/create/pathJail.test.ts +90 -0
  568. package/src/capabilities/create/pathJail.ts +8 -5
  569. package/src/capabilities/create/pickGenerator.ts +23 -35
  570. package/src/capabilities/create/shippedCreate.subprocess.test.ts +164 -0
  571. package/src/capabilities/create/types.ts +20 -0
  572. package/src/capabilities/distribution.parity.test.ts +4 -0
  573. package/src/capabilities/distribution.test.ts +3 -1
  574. package/src/capabilities/distribution.ts +10 -15
  575. package/src/capabilities/doctor/checks/checkKeStore.ts +7 -5
  576. package/src/capabilities/doctor/checks/checkPackageRefs.ts +75 -8
  577. package/src/capabilities/doctor/checks/checkPragmaVersion.ts +2 -2
  578. package/src/capabilities/doctor/checks/checkShellCompletions.test.ts +76 -29
  579. package/src/capabilities/doctor/checks/checkShellCompletions.ts +63 -17
  580. package/src/capabilities/doctor/checks/harnessInventory.test.ts +219 -0
  581. package/src/capabilities/doctor/checks/harnessInventory.ts +298 -0
  582. package/src/capabilities/doctor/checks/index.ts +27 -0
  583. package/src/capabilities/doctor/checks/mcpCommand.test.ts +100 -0
  584. package/src/capabilities/doctor/checks/mcpCommand.ts +69 -0
  585. package/src/capabilities/doctor/checks/targetHealth.ts +444 -0
  586. package/src/capabilities/doctor/doctor.render.test.ts +125 -38
  587. package/src/capabilities/doctor/doctor.render.ts +74 -74
  588. package/src/capabilities/doctor/doctor.test.ts +338 -37
  589. package/src/capabilities/doctor/doctor.verb.ts +8 -3
  590. package/src/capabilities/doctor/runChecks.ts +65 -63
  591. package/src/capabilities/doctor/types.ts +22 -15
  592. package/src/capabilities/emptyRecovery.test.ts +21 -8
  593. package/src/capabilities/graph/examples.exec.test.ts +107 -0
  594. package/src/capabilities/graph/index.ts +1 -1
  595. package/src/capabilities/graph/inspect.render.ts +70 -22
  596. package/src/capabilities/graph/inspect.test.ts +260 -5
  597. package/src/capabilities/graph/inspect.verb.ts +18 -6
  598. package/src/capabilities/graph/query.render.ts +15 -3
  599. package/src/capabilities/graph/query.verb.ts +3 -3
  600. package/src/capabilities/graph/runQuery.ts +2 -3
  601. package/src/capabilities/index.ts +3 -1
  602. package/src/capabilities/info/collectInfo.ts +13 -5
  603. package/src/capabilities/info/info.render.ts +7 -3
  604. package/src/capabilities/info/info.test.ts +37 -1
  605. package/src/capabilities/info/info.verb.ts +1 -1
  606. package/src/capabilities/info/types.ts +10 -2
  607. package/src/capabilities/lazy.test.ts +32 -0
  608. package/src/capabilities/meta/complete.verb.ts +1 -1
  609. package/src/capabilities/meta/index.ts +1 -1
  610. package/src/capabilities/meta/mcp.verb.ts +10 -8
  611. package/src/capabilities/ontology/index.ts +15 -11
  612. package/src/capabilities/ontology/ontology.test.ts +6 -55
  613. package/src/capabilities/ontology/queries.ts +2 -2
  614. package/src/capabilities/ontology/render.ts +3 -4
  615. package/src/capabilities/ontology/verbs.ts +27 -68
  616. package/src/capabilities/prompt/index.ts +2 -2
  617. package/src/capabilities/prompt/prompt.render.ts +6 -2
  618. package/src/capabilities/prompt/types.ts +1 -1
  619. package/src/capabilities/prompt/verbs.ts +4 -5
  620. package/src/capabilities/reference.test.ts +63 -0
  621. package/src/capabilities/renderVocabularySync.test.ts +82 -0
  622. package/src/capabilities/resources/provider.ts +342 -85
  623. package/src/capabilities/resources/resources.test.ts +355 -59
  624. package/src/capabilities/scopeTypeSync.test.ts +29 -15
  625. package/src/capabilities/setup/buildPlan.ts +240 -0
  626. package/src/capabilities/setup/index.ts +7 -7
  627. package/src/capabilities/setup/mode.ts +74 -0
  628. package/src/capabilities/setup/operations/index.ts +79 -0
  629. package/src/capabilities/setup/operations/setupCompletions.ts +97 -24
  630. package/src/capabilities/setup/operations/setupConfig.ts +124 -0
  631. package/src/capabilities/setup/operations/setupGenerator.ts +478 -334
  632. package/src/capabilities/setup/operations/setupLsp.ts +420 -67
  633. package/src/capabilities/setup/operations/setupMcp.ts +238 -127
  634. package/src/capabilities/setup/operations/setupSkills.ts +667 -105
  635. package/src/capabilities/setup/plan.render.ts +336 -0
  636. package/src/capabilities/setup/plan.ts +241 -0
  637. package/src/capabilities/setup/setup.mcp.correctness.test.ts +432 -0
  638. package/src/capabilities/setup/setup.render.test.ts +297 -75
  639. package/src/capabilities/setup/setup.render.ts +45 -77
  640. package/src/capabilities/setup/setup.test.ts +1819 -225
  641. package/src/capabilities/setup/setup.verb.ts +288 -78
  642. package/src/capabilities/setup/shell.test.ts +86 -0
  643. package/src/capabilities/setup/shell.ts +137 -11
  644. package/src/capabilities/setup/targets.ts +435 -0
  645. package/src/capabilities/setup/types.ts +23 -70
  646. package/src/capabilities/shared/assertExecOk.ts +68 -10
  647. package/src/capabilities/shared/index.ts +43 -0
  648. package/src/capabilities/shared/packageManager.test.ts +470 -0
  649. package/src/capabilities/shared/packageManager.ts +425 -34
  650. package/src/capabilities/skill/bundledSkills.test.ts +347 -0
  651. package/src/capabilities/skill/discover.ts +131 -10
  652. package/src/capabilities/skill/index.ts +1 -1
  653. package/src/capabilities/skill/render.ts +10 -9
  654. package/src/capabilities/skill/skill.test.ts +22 -7
  655. package/src/capabilities/skill/verbs.ts +3 -4
  656. package/src/capabilities/sources/collectStatus.ts +7 -2
  657. package/src/capabilities/sources/index.ts +1 -1
  658. package/src/capabilities/sources/installSkills.ts +265 -10
  659. package/src/capabilities/sources/runUpdate.ts +131 -23
  660. package/src/capabilities/sources/sources.test.ts +382 -2
  661. package/src/capabilities/sources/status.render.ts +1 -1
  662. package/src/capabilities/sources/status.verb.ts +1 -1
  663. package/src/capabilities/sources/update.render.ts +1 -1
  664. package/src/capabilities/sources/update.verb.ts +4 -4
  665. package/src/capabilities/surface.test.ts +136 -19
  666. package/src/capabilities/upgrade/runUpgrade.ts +53 -14
  667. package/src/capabilities/upgrade/types.ts +10 -2
  668. package/src/capabilities/upgrade/upgrade.render.ts +13 -7
  669. package/src/capabilities/upgrade/upgrade.test.ts +75 -3
  670. package/src/capabilities/upgrade/upgrade.verb.ts +1 -1
  671. package/src/capabilities/version/index.ts +12 -0
  672. package/src/capabilities/version/version.test.ts +66 -0
  673. package/src/capabilities/version/version.verb.ts +39 -0
  674. package/src/constants.ts +36 -1
  675. package/src/identity.test.ts +57 -29
  676. package/src/kernel/completion/__snapshots__/emitScripts.test.ts.snap +15 -13
  677. package/src/kernel/completion/complete.test.ts +12 -2
  678. package/src/kernel/completion/complete.ts +1 -1
  679. package/src/kernel/completion/emitScripts.ts +1 -1
  680. package/src/kernel/completion/entitySource.test.ts +16 -3
  681. package/src/kernel/completion/entitySource.ts +21 -8
  682. package/src/kernel/completion/model.test.ts +164 -12
  683. package/src/kernel/completion/model.ts +94 -14
  684. package/src/kernel/completion/parse.test.ts +4 -7
  685. package/src/kernel/completion/parse.ts +15 -0
  686. package/src/kernel/completion/resolve.test.ts +0 -1
  687. package/src/kernel/completion/safety.test.ts +50 -35
  688. package/src/kernel/completion/shellDrive.test.ts +28 -9
  689. package/src/kernel/completion/templates/bash.ts +7 -2
  690. package/src/kernel/completion/templates/index.ts +23 -0
  691. package/src/kernel/completion/types.ts +7 -0
  692. package/src/kernel/config/defaults.test.ts +27 -3
  693. package/src/kernel/config/defaults.ts +4 -3
  694. package/src/kernel/config/evaluateProjectConfig.ts +31 -8
  695. package/src/kernel/config/firstRun.test.ts +44 -38
  696. package/src/kernel/config/firstRun.ts +24 -88
  697. package/src/kernel/config/index.ts +1 -1
  698. package/src/kernel/config/readConfig.test.ts +6 -3
  699. package/src/kernel/config/readConfig.ts +1 -1
  700. package/src/kernel/config/schema.ts +3 -1
  701. package/src/kernel/config/types.ts +3 -1
  702. package/src/kernel/copy.test.ts +34 -4
  703. package/src/kernel/copy.ts +54 -0
  704. package/src/kernel/error/PragmaError.test.ts +5 -2
  705. package/src/kernel/error/PragmaError.ts +4 -2
  706. package/src/kernel/error/constants.ts +7 -5
  707. package/src/kernel/error/fromTaskError.ts +28 -6
  708. package/src/kernel/error/recovery.ts +14 -0
  709. package/src/kernel/error/renderError.ts +42 -1
  710. package/src/kernel/error/types.ts +21 -1
  711. package/src/kernel/index.ts +35 -0
  712. package/src/kernel/interactivity.test.ts +76 -0
  713. package/src/kernel/interactivity.ts +69 -0
  714. package/src/kernel/packs/collect.ts +12 -16
  715. package/src/kernel/packs/compile.test.ts +222 -1
  716. package/src/kernel/packs/compile.ts +93 -3
  717. package/src/kernel/packs/disclosure.ts +2 -2
  718. package/src/kernel/packs/graphql/buildLookupDocument.ts +1 -1
  719. package/src/kernel/packs/graphql/fetchGraphqlLookup.ts +3 -4
  720. package/src/kernel/packs/graphql/index.ts +20 -0
  721. package/src/kernel/packs/index.ts +40 -0
  722. package/src/kernel/packs/iri.test.ts +73 -0
  723. package/src/kernel/packs/iri.ts +66 -14
  724. package/src/kernel/packs/renderPack.ts +25 -6
  725. package/src/kernel/packs/resolveEntity.test.ts +274 -0
  726. package/src/kernel/packs/resolveEntity.ts +200 -42
  727. package/src/kernel/packs/runBodies.ts +86 -22
  728. package/src/kernel/packs/sample.ts +1 -1
  729. package/src/kernel/packs/schema.ts +78 -5
  730. package/src/kernel/packs/sparql/applyFilters.ts +136 -16
  731. package/src/kernel/packs/sparql/buildLookupQuery.test.ts +290 -0
  732. package/src/kernel/packs/sparql/buildLookupQuery.ts +367 -17
  733. package/src/kernel/packs/sparql/index.ts +37 -0
  734. package/src/kernel/packs/sparql/runSelect.test.ts +1 -1
  735. package/src/kernel/packs/sparql/runSelect.ts +3 -4
  736. package/src/kernel/packs/toolDescription.test.ts +77 -4
  737. package/src/kernel/packs/types.ts +136 -0
  738. package/src/kernel/packs/uniqueness.ts +1 -1
  739. package/src/kernel/project/cli/buildProgram.test.ts +218 -12
  740. package/src/kernel/project/cli/buildProgram.ts +84 -18
  741. package/src/kernel/project/cli/constants.ts +34 -0
  742. package/src/kernel/project/cli/dispatch.test.ts +160 -2
  743. package/src/kernel/project/cli/dispatch.ts +226 -45
  744. package/src/kernel/project/cli/exitCodes.ts +1 -1
  745. package/src/kernel/project/cli/globalFlags.test.ts +117 -1
  746. package/src/kernel/project/cli/globalFlags.ts +134 -31
  747. package/src/kernel/project/cli/helpFormat.ts +14 -2
  748. package/src/kernel/project/cli/rootHelp.ts +74 -12
  749. package/src/kernel/project/cli/suggest.test.ts +33 -1
  750. package/src/kernel/project/cli/suggest.ts +25 -1
  751. package/src/kernel/project/cli/verbHelp.test.ts +30 -0
  752. package/src/kernel/project/cli/verbHelp.ts +23 -7
  753. package/src/kernel/project/mcp/buildServer.ts +7 -4
  754. package/src/kernel/project/mcp/envelope.ts +2 -2
  755. package/src/kernel/project/mcp/instructions.ts +2 -2
  756. package/src/kernel/project/mcp/mcpError.ts +1 -1
  757. package/src/kernel/project/mcp/parity.test.ts +5 -2
  758. package/src/kernel/project/mcp/prompts/index.ts +37 -0
  759. package/src/kernel/project/mcp/prompts/source.ts +2 -2
  760. package/src/kernel/project/mcp/registerVerb.ts +55 -10
  761. package/src/kernel/project/mcp/serve.ts +2 -2
  762. package/src/kernel/render/__snapshots__/renderers.test.ts.snap +7 -4
  763. package/src/kernel/render/contracts.ts +21 -0
  764. package/src/kernel/render/envelope.ts +2 -3
  765. package/src/kernel/render/formatters.ts +1 -1
  766. package/src/kernel/render/renderers.test.ts +243 -6
  767. package/src/kernel/render/renderers.ts +222 -20
  768. package/src/kernel/render/style.test.ts +75 -24
  769. package/src/kernel/render/style.ts +59 -6
  770. package/src/kernel/render/turtle.ts +222 -0
  771. package/src/kernel/render/vocabulary.ts +276 -0
  772. package/src/kernel/runtime/graphpack/buildIndex.ts +1 -1
  773. package/src/kernel/runtime/graphpack/embedded/pack.generated.ts +3 -3
  774. package/src/kernel/runtime/graphpack/embedded/pack.index.generated.ts +1 -1
  775. package/src/kernel/runtime/graphpack/embedded.ts +3 -3
  776. package/src/kernel/runtime/graphpack/manifest.ts +1 -1
  777. package/src/kernel/runtime/graphpack/read.ts +1 -2
  778. package/src/kernel/runtime/loadSession.ts +1 -1
  779. package/src/kernel/runtime/probe.ts +6 -6
  780. package/src/kernel/runtime/readEntity.ts +472 -28
  781. package/src/kernel/runtime/refs/index.ts +39 -0
  782. package/src/kernel/runtime/refs/parseRef.ts +2 -2
  783. package/src/kernel/runtime/refs/resolve.ts +4 -4
  784. package/src/kernel/runtime/storeReadiness.ts +1 -2
  785. package/src/kernel/runtime/types.ts +15 -1
  786. package/src/kernel/runtime/wasmEmbed.test.ts +37 -39
  787. package/src/kernel/spec/emitReference.ts +105 -30
  788. package/src/kernel/spec/emitSurface.ts +48 -6
  789. package/src/kernel/spec/surfaceConformance.test.ts +4 -2
  790. package/src/kernel/spec/types.ts +277 -4
  791. package/src/testing/PARITY_GAPS.ts +9 -3
  792. package/src/testing/behavioral/docExamples.test.ts +16 -0
  793. package/src/testing/behavioral/errorMatrix.mcp.test.ts +112 -9
  794. package/src/testing/behavioral/firstRun.e2e.test.ts +24 -24
  795. package/src/testing/behavioral/journeys.cli.test.ts +1 -1
  796. package/src/testing/behavioral/journeys.defaultPack.test.ts +7 -7
  797. package/src/testing/behavioral/journeys.firstInstall.test.ts +7 -2
  798. package/src/testing/behavioral/journeys.implementation.test.ts +206 -0
  799. package/src/testing/behavioral/journeys.interactiveTty.e2e.test.ts +2 -2
  800. package/src/testing/behavioral/journeys.packageStories.test.ts +10 -7
  801. package/src/testing/behavioral/mcpServe.e2e.test.ts +57 -2
  802. package/src/testing/behavioral/mcpSurface.test.ts +1 -1
  803. package/src/testing/behavioral/rootCli.e2e.test.ts +26 -2
  804. package/src/testing/eval/__snapshots__/eval.test.ts.snap +26 -1
  805. package/src/testing/eval/cases/effectful.ts +3 -2
  806. package/src/testing/eval/cases/readNouns.ts +245 -9
  807. package/src/testing/fixtures/blockGraph.ts +104 -10
  808. package/src/testing/fixtures/graph/canonical.ts +182 -13
  809. package/src/testing/fixtures/graph/defaultPack.ts +1 -1
  810. package/src/testing/helpers/blankCanonicalRanges.ts +36 -0
  811. package/src/testing/helpers/projectMcp.ts +32 -6
  812. package/src/testing/helpers/runCli.ts +35 -18
  813. package/src/testing/perf/budgets.test.ts +20 -9
  814. package/src/testing/perf/budgets.ts +58 -9
  815. package/src/testing/perf/codegen.test.ts +126 -0
  816. package/src/testing/perf/globalSetup.test.ts +286 -0
  817. package/src/testing/perf/globalSetup.ts +505 -23
  818. package/src/testing/perf/measure.test.ts +38 -0
  819. package/src/testing/perf/measure.ts +23 -4
  820. package/src/testing/setupXdgIsolation.ts +81 -21
  821. package/src/testing/tempRoot.globalSetup.ts +122 -0
  822. package/dist/pragma +0 -0
  823. package/src/capabilities/create/compiledCreate.subprocess.test.ts +0 -189
  824. package/src/capabilities/create/templates.embedded.generated.ts +0 -28
  825. package/src/capabilities/doctor/checks/checkConfigFile.ts +0 -42
  826. package/src/capabilities/doctor/checks/checkMcpCommands.ts +0 -114
  827. package/src/capabilities/doctor/checks/checkMcpConfigured.ts +0 -68
  828. package/src/capabilities/doctor/checks/checkSkillsSymlinked.ts +0 -61
  829. package/src/capabilities/doctor/checks/deriveBand.test.ts +0 -42
  830. package/src/capabilities/doctor/checks/deriveBand.ts +0 -28
  831. package/src/capabilities/shared/bands.ts +0 -16
  832. package/src/kernel/config/__snapshots__/firstRun.test.ts.snap +0 -11
@@ -0,0 +1,4 @@
1
+ // AUTO-GENERATED by scripts/bundle.ts — do not edit by hand.
2
+ // Regenerate from the packs pragma.conf.ts declares: `bun run bundle`.
3
+ export const indexJson = "{\"version\":2,\"contentHash\":\"738838617910bf67d81cb284901aa738c0641782fbb1a56896fed9619493806d\",\"prefixes\":{\"rdf\":\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\",\"rdfs\":\"http://www.w3.org/2000/01/rdf-schema#\",\"owl\":\"http://www.w3.org/2002/07/owl#\",\"xsd\":\"http://www.w3.org/2001/XMLSchema#\",\"skos\":\"http://www.w3.org/2004/02/skos/core#\",\"sh\":\"http://www.w3.org/ns/shacl#\",\"dcterms\":\"http://purl.org/dc/terms/\",\"ds\":\"https://ds.canonical.com/\",\"anatomy\":\"http://anatomy-dsl.example.org/ontology#\",\"cs\":\"http://pragma.canonical.com/codestandards#\",\"dso\":\"https://ds.canonical.com/ontology#\"},\"entities\":[{\"name\":\"anatomy:AnonymousNode\",\"type\":\"owl:Class\",\"uri\":\"http://anatomy-dsl.example.org/ontology#AnonymousNode\",\"prefixed\":\"anatomy:AnonymousNode\",\"types\":[\"owl:Class\"],\"label\":\"Anonymous Node\",\"box\":\"tbox\",\"description\":\"Structural element without design system identity.\"},{\"name\":\"anatomy:AnonymousNodeShape\",\"type\":\"sh:NodeShape\",\"uri\":\"http://anatomy-dsl.example.org/ontology#AnonymousNodeShape\",\"prefixed\":\"anatomy:AnonymousNodeShape\",\"types\":[\"sh:NodeShape\"],\"label\":\"Anonymous Node Shape\",\"box\":\"abox\",\"description\":\"Role presence and uri exclusion.\"},{\"name\":\"anatomy:Edge\",\"type\":\"owl:Class\",\"uri\":\"http://anatomy-dsl.example.org/ontology#Edge\",\"prefixed\":\"anatomy:Edge\",\"types\":[\"owl:Class\"],\"label\":\"Edge\",\"box\":\"tbox\",\"description\":\"Reified parent-child relationship in the anatomy tree.\"},{\"name\":\"anatomy:EdgeShape\",\"type\":\"sh:NodeShape\",\"uri\":\"http://anatomy-dsl.example.org/ontology#EdgeShape\",\"prefixed\":\"anatomy:EdgeShape\",\"types\":[\"sh:NodeShape\"],\"label\":\"Edge Shape\",\"box\":\"abox\",\"description\":\"Mutual exclusivity of edgeTarget and edgeSwitch.\"},{\"name\":\"anatomy:NamedNode\",\"type\":\"owl:Class\",\"uri\":\"http://anatomy-dsl.example.org/ontology#NamedNode\",\"prefixed\":\"anatomy:NamedNode\",\"types\":[\"owl:Class\"],\"label\":\"Named Node\",\"box\":\"tbox\",\"description\":\"Design system entity instantiable by consumers.\"},{\"name\":\"anatomy:NamedNodeShape\",\"type\":\"sh:NodeShape\",\"uri\":\"http://anatomy-dsl.example.org/ontology#NamedNodeShape\",\"prefixed\":\"anatomy:NamedNodeShape\",\"types\":[\"sh:NodeShape\"],\"label\":\"Named Node Shape\",\"box\":\"abox\",\"description\":\"URI encoding and presence constraints.\"},{\"name\":\"anatomy:Node\",\"type\":\"owl:Class\",\"uri\":\"http://anatomy-dsl.example.org/ontology#Node\",\"prefixed\":\"anatomy:Node\",\"types\":[\"owl:Class\"],\"label\":\"Node\",\"box\":\"tbox\",\"description\":\"Position in the anatomy tree.\"},{\"name\":\"anatomy:Relation\",\"type\":\"owl:Class\",\"uri\":\"http://anatomy-dsl.example.org/ontology#Relation\",\"prefixed\":\"anatomy:Relation\",\"types\":[\"owl:Class\"],\"label\":\"Relation\",\"box\":\"tbox\",\"description\":\"Metadata qualifying a parent-child relationship.\"},{\"name\":\"anatomy:RelationShape\",\"type\":\"sh:NodeShape\",\"uri\":\"http://anatomy-dsl.example.org/ontology#RelationShape\",\"prefixed\":\"anatomy:RelationShape\",\"types\":[\"sh:NodeShape\"],\"label\":\"Relation Shape\",\"box\":\"abox\",\"description\":\"Cardinality pattern and slotName constraints.\"},{\"name\":\"anatomy:Specification\",\"type\":\"owl:Class\",\"uri\":\"http://anatomy-dsl.example.org/ontology#Specification\",\"prefixed\":\"anatomy:Specification\",\"types\":[\"owl:Class\"],\"label\":\"Specification\",\"box\":\"tbox\",\"description\":\"Root of an anatomy file.\"},{\"name\":\"anatomy:SpecificationShape\",\"type\":\"sh:NodeShape\",\"uri\":\"http://anatomy-dsl.example.org/ontology#SpecificationShape\",\"prefixed\":\"anatomy:SpecificationShape\",\"types\":[\"sh:NodeShape\"],\"label\":\"Specification Shape\",\"box\":\"abox\",\"description\":\"Root document constraints.\"},{\"name\":\"anatomy:Style\",\"type\":\"owl:Class\",\"uri\":\"http://anatomy-dsl.example.org/ontology#Style\",\"prefixed\":\"anatomy:Style\",\"types\":[\"owl:Class\"],\"label\":\"Style\",\"box\":\"tbox\",\"description\":\"A single style declaration binding a property key to a value.\"},{\"name\":\"anatomy:StyleShape\",\"type\":\"sh:NodeShape\",\"uri\":\"http://anatomy-dsl.example.org/ontology#StyleShape\",\"prefixed\":\"anatomy:StyleShape\",\"types\":[\"sh:NodeShape\"],\"label\":\"Style Shape\",\"box\":\"abox\",\"description\":\"Reified key-value tuple: exactly one key and one value.\"},{\"name\":\"anatomy:Switch\",\"type\":\"owl:Class\",\"uri\":\"http://anatomy-dsl.example.org/ontology#Switch\",\"prefixed\":\"anatomy:Switch\",\"types\":[\"owl:Class\"],\"label\":\"Switch\",\"box\":\"tbox\",\"description\":\"Polymorphic position admitting several alternatives.\"},{\"name\":\"anatomy:SwitchCase\",\"type\":\"owl:Class\",\"uri\":\"http://anatomy-dsl.example.org/ontology#SwitchCase\",\"prefixed\":\"anatomy:SwitchCase\",\"types\":[\"owl:Class\"],\"label\":\"Switch Case\",\"box\":\"tbox\",\"description\":\"One alternative within a Switch.\"},{\"name\":\"anatomy:SwitchCaseShape\",\"type\":\"sh:NodeShape\",\"uri\":\"http://anatomy-dsl.example.org/ontology#SwitchCaseShape\",\"prefixed\":\"anatomy:SwitchCaseShape\",\"types\":[\"sh:NodeShape\"],\"label\":\"Switch Case Shape\",\"box\":\"abox\",\"description\":\"Each case resolves to a node.\"},{\"name\":\"anatomy:SwitchShape\",\"type\":\"sh:NodeShape\",\"uri\":\"http://anatomy-dsl.example.org/ontology#SwitchShape\",\"prefixed\":\"anatomy:SwitchShape\",\"types\":[\"sh:NodeShape\"],\"label\":\"Switch Shape\",\"box\":\"abox\",\"description\":\"Discriminator vocabulary and minimum case count.\"},{\"name\":\"anatomy:cardinality\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#cardinality\",\"prefixed\":\"anatomy:cardinality\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"cardinality\",\"box\":\"tbox\",\"description\":\"Instance count constraint on the child.\"},{\"name\":\"anatomy:caseNode\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#caseNode\",\"prefixed\":\"anatomy:caseNode\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"case node\",\"box\":\"tbox\",\"description\":\"Node this case resolves to.\"},{\"name\":\"anatomy:discriminator\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#discriminator\",\"prefixed\":\"anatomy:discriminator\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"discriminator\",\"box\":\"tbox\",\"description\":\"What determines which case applies.\"},{\"name\":\"anatomy:edgeSwitch\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#edgeSwitch\",\"prefixed\":\"anatomy:edgeSwitch\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"edge switch\",\"box\":\"tbox\",\"description\":\"Polymorphic switch this edge connects to.\"},{\"name\":\"anatomy:edgeTarget\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#edgeTarget\",\"prefixed\":\"anatomy:edgeTarget\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"edge target\",\"box\":\"tbox\",\"description\":\"Child node this edge connects to.\"},{\"name\":\"anatomy:hasCase\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#hasCase\",\"prefixed\":\"anatomy:hasCase\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"has case\",\"box\":\"tbox\",\"description\":\"An alternative within this switch.\"},{\"name\":\"anatomy:hasEdge\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#hasEdge\",\"prefixed\":\"anatomy:hasEdge\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"has edge\",\"box\":\"tbox\",\"description\":\"Connects a node to a child relationship.\"},{\"name\":\"anatomy:hasRelation\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#hasRelation\",\"prefixed\":\"anatomy:hasRelation\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"has relation\",\"box\":\"tbox\",\"description\":\"Relation qualifying this edge.\"},{\"name\":\"anatomy:hasStyle\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#hasStyle\",\"prefixed\":\"anatomy:hasStyle\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"has style\",\"box\":\"tbox\",\"description\":\"Attaches a style declaration to a node.\"},{\"name\":\"anatomy:role\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#role\",\"prefixed\":\"anatomy:role\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"role\",\"box\":\"tbox\",\"description\":\"Human-readable purpose of an anonymous node.\"},{\"name\":\"anatomy:rootNode\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#rootNode\",\"prefixed\":\"anatomy:rootNode\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"root node\",\"box\":\"tbox\",\"description\":\"Top-level node of an anatomy specification.\"},{\"name\":\"anatomy:slotName\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#slotName\",\"prefixed\":\"anatomy:slotName\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"slot name\",\"box\":\"tbox\",\"description\":\"Named slot in the parent that this child maps to.\"},{\"name\":\"anatomy:styleKey\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#styleKey\",\"prefixed\":\"anatomy:styleKey\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"style key\",\"box\":\"tbox\",\"description\":\"Platform-agnostic style property identifier.\"},{\"name\":\"anatomy:styleValue\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#styleValue\",\"prefixed\":\"anatomy:styleValue\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"style value\",\"box\":\"tbox\",\"description\":\"Value for a style property.\"},{\"name\":\"anatomy:uri\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://anatomy-dsl.example.org/ontology#uri\",\"prefixed\":\"anatomy:uri\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"uri\",\"box\":\"tbox\",\"description\":\"Unique identifier for a named node within the design system.\"},{\"name\":\"cs:\",\"type\":\"owl:Ontology\",\"uri\":\"http://pragma.canonical.com/codestandards#\",\"prefixed\":\"cs:\",\"types\":[\"owl:Ontology\"],\"label\":\"Code Standards Ontology\",\"box\":\"abox\",\"description\":\"An ontology for describing software development code standards and best practices. The canonical public identifier for a standard is its compact prefixed IRI (for example `cs:code.function.purity`), using dot-separated hierarchy segments and snake_case for multi-word local-name segments. `cs:name` is an optional human-readable display title and never participates in identity.\"},{\"name\":\"cs:Category\",\"type\":\"owl:Class\",\"uri\":\"http://pragma.canonical.com/codestandards#Category\",\"prefixed\":\"cs:Category\",\"types\":[\"owl:Class\"],\"label\":\"Category\",\"box\":\"tbox\",\"description\":\"A category for grouping related code standards (e.g., testing, components, react, typescript)\"},{\"name\":\"cs:CodeStandard\",\"type\":\"owl:Class\",\"uri\":\"http://pragma.canonical.com/codestandards#CodeStandard\",\"prefixed\":\"cs:CodeStandard\",\"types\":[\"owl:Class\"],\"label\":\"Code Standard\",\"box\":\"tbox\",\"description\":\"A coding standard or best practice guideline for software development\"},{\"name\":\"cs:Example\",\"type\":\"owl:Class\",\"uri\":\"http://pragma.canonical.com/codestandards#Example\",\"prefixed\":\"cs:Example\",\"types\":[\"owl:Class\"],\"label\":\"Example\",\"box\":\"tbox\",\"description\":\"A single do or don't example with a description, optional language tag, and optional code block\"},{\"name\":\"cs:code\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://pragma.canonical.com/codestandards#code\",\"prefixed\":\"cs:code\",\"types\":[\"owl:DatatypeProperty\",\"cs:Category\"],\"label\":\"Code\",\"box\":\"tbox\",\"description\":\"General typescript coding standards and best practices\"},{\"name\":\"cs:code\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#code\",\"prefixed\":\"cs:code\",\"types\":[\"owl:DatatypeProperty\",\"cs:Category\"],\"label\":\"Code\",\"box\":\"abox\",\"description\":\"General typescript coding standards and best practices\"},{\"name\":\"cs:code.api.stability\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.api.stability\",\"prefixed\":\"cs:code.api.stability\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:code.array.safe_access\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.array.safe_access\",\"prefixed\":\"cs:code.array.safe_access\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:code.assertion.non_null\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.assertion.non_null\",\"prefixed\":\"cs:code.assertion.non_null\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:code.constants.file\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.constants.file\",\"prefixed\":\"cs:code.constants.file\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:code.fallback.defensive\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.fallback.defensive\",\"prefixed\":\"cs:code.fallback.defensive\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:code.function.composition\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.function.composition\",\"prefixed\":\"cs:code.function.composition\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:code.function.location\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.function.location\",\"prefixed\":\"cs:code.function.location\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:code.function.purity\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.function.purity\",\"prefixed\":\"cs:code.function.purity\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:code.naming.function_verb\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.naming.function_verb\",\"prefixed\":\"cs:code.naming.function_verb\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:code.types.file\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#code.types.file\",\"prefixed\":\"cs:code.types.file\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#css\",\"prefixed\":\"cs:css\",\"types\":[\"cs:Category\"],\"label\":\"CSS\",\"box\":\"abox\",\"description\":\"Standards for CSS technical implementation\"},{\"name\":\"cs:css.animation.scroll_timeline\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.animation.scroll_timeline\",\"prefixed\":\"cs:css.animation.scroll_timeline\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.animation.starting_style\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.animation.starting_style\",\"prefixed\":\"cs:css.animation.starting_style\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.component.encapsulation\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.component.encapsulation\",\"prefixed\":\"cs:css.component.encapsulation\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.component.states\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.component.states\",\"prefixed\":\"cs:css.component.states\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.media.container_queries\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.media.container_queries\",\"prefixed\":\"cs:css.media.container_queries\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.media.scripting\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.media.scripting\",\"prefixed\":\"cs:css.media.scripting\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.positioning.anchor\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.positioning.anchor\",\"prefixed\":\"cs:css.positioning.anchor\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.properties.values\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.properties.values\",\"prefixed\":\"cs:css.properties.values\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.selectors.child_elements\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.selectors.child_elements\",\"prefixed\":\"cs:css.selectors.child_elements\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.selectors.has\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.selectors.has\",\"prefixed\":\"cs:css.selectors.has\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.selectors.namespace\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.selectors.namespace\",\"prefixed\":\"cs:css.selectors.namespace\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.selectors.naming_convention\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.selectors.naming_convention\",\"prefixed\":\"cs:css.selectors.naming_convention\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.selectors.semantics\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.selectors.semantics\",\"prefixed\":\"cs:css.selectors.semantics\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.selectors.specificity\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.selectors.specificity\",\"prefixed\":\"cs:css.selectors.specificity\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:css.themes.activation\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#css.themes.activation\",\"prefixed\":\"cs:css.themes.activation\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:description\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://pragma.canonical.com/codestandards#description\",\"prefixed\":\"cs:description\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"description\",\"box\":\"tbox\",\"description\":\"A general description of the code standard or example\"},{\"name\":\"cs:do\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://pragma.canonical.com/codestandards#do\",\"prefixed\":\"cs:do\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"do\",\"box\":\"tbox\",\"description\":\"A positive example showing what should be done\"},{\"name\":\"cs:dont\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://pragma.canonical.com/codestandards#dont\",\"prefixed\":\"cs:dont\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"don't\",\"box\":\"tbox\",\"description\":\"A negative example showing what should not be done\"},{\"name\":\"cs:extends\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://pragma.canonical.com/codestandards#extends\",\"prefixed\":\"cs:extends\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"extends\",\"box\":\"tbox\",\"description\":\"Associates a code standard with another standard that it extends or adds further context to\"},{\"name\":\"cs:git\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#git\",\"prefixed\":\"cs:git\",\"types\":[\"cs:Category\"],\"label\":\"Git\",\"box\":\"abox\",\"description\":\"Standards for git workflows — branch naming, commit messages, merge strategies, tagging, and remote branch management\"},{\"name\":\"cs:git.branch.name\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#git.branch.name\",\"prefixed\":\"cs:git.branch.name\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:git.commit.message\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#git.commit.message\",\"prefixed\":\"cs:git.commit.message\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:git.commit.scope\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#git.commit.scope\",\"prefixed\":\"cs:git.commit.scope\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:git.pr.template\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#git.pr.template\",\"prefixed\":\"cs:git.pr.template\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:git.remote.main_branch\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#git.remote.main_branch\",\"prefixed\":\"cs:git.remote.main_branch\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:git.repo.gitignore\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#git.repo.gitignore\",\"prefixed\":\"cs:git.repo.gitignore\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:git.tag.versioning\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#git.tag.versioning\",\"prefixed\":\"cs:git.tag.versioning\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:hasCategory\",\"type\":\"owl:ObjectProperty\",\"uri\":\"http://pragma.canonical.com/codestandards#hasCategory\",\"prefixed\":\"cs:hasCategory\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"has category\",\"box\":\"tbox\",\"description\":\"Associates a code standard with its category\"},{\"name\":\"cs:icons\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#icons\",\"prefixed\":\"cs:icons\",\"types\":[\"cs:Category\"],\"label\":\"Icons\",\"box\":\"abox\",\"description\":\"Standards for icon development and implementation\"},{\"name\":\"cs:icons.file.naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#icons.file.naming\",\"prefixed\":\"cs:icons.file.naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:icons.file.storage\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#icons.file.storage\",\"prefixed\":\"cs:icons.file.storage\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:icons.svg.color_usage\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#icons.svg.color_usage\",\"prefixed\":\"cs:icons.svg.color_usage\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:icons.svg.group_element\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#icons.svg.group_element\",\"prefixed\":\"cs:icons.svg.group_element\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:icons.svg.mask_usage\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#icons.svg.mask_usage\",\"prefixed\":\"cs:icons.svg.mask_usage\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:icons.svg.viewbox\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#icons.svg.viewbox\",\"prefixed\":\"cs:icons.svg.viewbox\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:icons.type_safety.definition\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#icons.type_safety.definition\",\"prefixed\":\"cs:icons.type_safety.definition\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:icons.variant.single_file\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#icons.variant.single_file\",\"prefixed\":\"cs:icons.variant.single_file\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:language\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://pragma.canonical.com/codestandards#language\",\"prefixed\":\"cs:language\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"language\",\"box\":\"tbox\",\"description\":\"The programming language of the example code block (e.g., 'typescript', 'rust', 'css', 'bash', 'svg', 'turtle')\"},{\"name\":\"cs:lit\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#lit\",\"prefixed\":\"cs:lit\",\"types\":[\"cs:Category\"],\"label\":\"Lit\",\"box\":\"abox\",\"description\":\"Standards for Lit web component development\"},{\"name\":\"cs:lit.component.a11y.aria\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.a11y.aria\",\"prefixed\":\"cs:lit.component.a11y.aria\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.barrel-exports\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.barrel-exports\",\"prefixed\":\"cs:lit.component.barrel-exports\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.global-styles\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.global-styles\",\"prefixed\":\"cs:lit.component.global-styles\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.imports\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.imports\",\"prefixed\":\"cs:lit.component.imports\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.ssr\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.ssr\",\"prefixed\":\"cs:lit.component.ssr\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.ssr.bundling\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.ssr.bundling\",\"prefixed\":\"cs:lit.component.ssr.bundling\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.ssr.hydration\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.ssr.hydration\",\"prefixed\":\"cs:lit.component.ssr.hydration\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.structure.folder\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.structure.folder\",\"prefixed\":\"cs:lit.component.structure.folder\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.styles\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.styles\",\"prefixed\":\"cs:lit.component.styles\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.styles.variables\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.styles.variables\",\"prefixed\":\"cs:lit.component.styles.variables\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.testing\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.testing\",\"prefixed\":\"cs:lit.component.testing\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.tsdoc\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.tsdoc\",\"prefixed\":\"cs:lit.component.tsdoc\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:lit.component.types\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#lit.component.types\",\"prefixed\":\"cs:lit.component.types\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:name\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://pragma.canonical.com/codestandards#name\",\"prefixed\":\"cs:name\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"name\",\"box\":\"tbox\",\"description\":\"An optional human-readable display title for a code standard. This is not an identifier and must not duplicate the canonical role of the subject IRI.\"},{\"name\":\"cs:packaging\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#packaging\",\"prefixed\":\"cs:packaging\",\"types\":[\"cs:Category\"],\"label\":\"Packaging\",\"box\":\"abox\",\"description\":\"Standards for structuring TypeScript/JavaScript packages — archetype classification, folder layout, export shape, barrel files, and file naming\"},{\"name\":\"cs:packaging.application.structure\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#packaging.application.structure\",\"prefixed\":\"cs:packaging.application.structure\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:packaging.export.barrel\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#packaging.export.barrel\",\"prefixed\":\"cs:packaging.export.barrel\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:packaging.export.declaration\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#packaging.export.declaration\",\"prefixed\":\"cs:packaging.export.declaration\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:packaging.export.shape\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#packaging.export.shape\",\"prefixed\":\"cs:packaging.export.shape\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:packaging.import.cross_domain\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#packaging.import.cross_domain\",\"prefixed\":\"cs:packaging.import.cross_domain\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:packaging.library.structure\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#packaging.library.structure\",\"prefixed\":\"cs:packaging.library.structure\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:packaging.naming.single_export_file\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#packaging.naming.single_export_file\",\"prefixed\":\"cs:packaging.naming.single_export_file\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#react\",\"prefixed\":\"cs:react\",\"types\":[\"cs:Category\"],\"label\":\"React\",\"box\":\"abox\",\"description\":\"Standards specific to React development\"},{\"name\":\"cs:react.component.barrel_exports\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.barrel_exports\",\"prefixed\":\"cs:react.component.barrel_exports\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.class_name_construction\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.class_name_construction\",\"prefixed\":\"cs:react.component.class_name_construction\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.dependencies\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.dependencies\",\"prefixed\":\"cs:react.component.dependencies\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.file_naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.file_naming\",\"prefixed\":\"cs:react.component.file_naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.link_component\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.link_component\",\"prefixed\":\"cs:react.component.link_component\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.naming\",\"prefixed\":\"cs:react.component.naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.props\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.props\",\"prefixed\":\"cs:react.component.props\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.props.html_rendering\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.props.html_rendering\",\"prefixed\":\"cs:react.component.props.html_rendering\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.props.wrapper\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.props.wrapper\",\"prefixed\":\"cs:react.component.props.wrapper\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.structure.context\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.structure.context\",\"prefixed\":\"cs:react.component.structure.context\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.structure.folder\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.structure.folder\",\"prefixed\":\"cs:react.component.structure.folder\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.subcomponent_export_api\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.subcomponent_export_api\",\"prefixed\":\"cs:react.component.subcomponent_export_api\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.tsdoc\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.tsdoc\",\"prefixed\":\"cs:react.component.tsdoc\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.component.tsdoc.import\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.component.tsdoc.import\",\"prefixed\":\"cs:react.component.tsdoc.import\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.hooks.custom\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.hooks.custom\",\"prefixed\":\"cs:react.hooks.custom\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:react.hooks.naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#react.hooks.naming\",\"prefixed\":\"cs:react.hooks.naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#rust\",\"prefixed\":\"cs:rust\",\"types\":[\"cs:Category\"],\"label\":\"Rust\",\"box\":\"abox\",\"description\":\"Standards for idiomatic Rust development with Haskell-inspired strong typing, functional programming, monadic composition, and TDD practices\"},{\"name\":\"cs:rust.composition.result_chaining\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.composition.result_chaining\",\"prefixed\":\"cs:rust.composition.result_chaining\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.errors.context_enrichment\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.errors.context_enrichment\",\"prefixed\":\"cs:rust.errors.context_enrichment\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.functions.kleisli_composition\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.functions.kleisli_composition\",\"prefixed\":\"cs:rust.functions.kleisli_composition\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.iterators.combinator_pipelines\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.iterators.combinator_pipelines\",\"prefixed\":\"cs:rust.iterators.combinator_pipelines\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.option.explicit_absence\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.option.explicit_absence\",\"prefixed\":\"cs:rust.option.explicit_absence\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.testing.property_based\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.testing.property_based\",\"prefixed\":\"cs:rust.testing.property_based\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.testing.tdd_red_green_refactor\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.testing.tdd_red_green_refactor\",\"prefixed\":\"cs:rust.testing.tdd_red_green_refactor\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.traits.small_composable\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.traits.small_composable\",\"prefixed\":\"cs:rust.traits.small_composable\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.types.discriminated_unions\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.types.discriminated_unions\",\"prefixed\":\"cs:rust.types.discriminated_unions\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.types.newtype_wrappers\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.types.newtype_wrappers\",\"prefixed\":\"cs:rust.types.newtype_wrappers\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:rust.validation.typestate_guards\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#rust.validation.typestate_guards\",\"prefixed\":\"cs:rust.validation.typestate_guards\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:slug\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"http://pragma.canonical.com/codestandards#slug\",\"prefixed\":\"cs:slug\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"slug\",\"box\":\"tbox\",\"description\":\"A short identifier for the category or standard, used for domain annotation.\"},{\"name\":\"cs:storybook\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook\",\"prefixed\":\"cs:storybook\",\"types\":[\"cs:Category\"],\"label\":\"Storybook\",\"box\":\"abox\",\"description\":\"Standards for documenting components using Storybook\"},{\"name\":\"cs:storybook.documentation.source\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.documentation.source\",\"prefixed\":\"cs:storybook.documentation.source\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.decorator\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.decorator\",\"prefixed\":\"cs:storybook.story.decorator\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.documentation\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.documentation\",\"prefixed\":\"cs:storybook.story.documentation\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.folders\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.folders\",\"prefixed\":\"cs:storybook.story.folders\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.format\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.format\",\"prefixed\":\"cs:storybook.story.format\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.import\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.import\",\"prefixed\":\"cs:storybook.story.import\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.naming\",\"prefixed\":\"cs:storybook.story.naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.organization\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.organization\",\"prefixed\":\"cs:storybook.story.organization\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.subcomponent_nesting\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.subcomponent_nesting\",\"prefixed\":\"cs:storybook.story.subcomponent_nesting\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.testing\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.testing\",\"prefixed\":\"cs:storybook.story.testing\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:storybook.story.visibility\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#storybook.story.visibility\",\"prefixed\":\"cs:storybook.story.visibility\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:styling\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#styling\",\"prefixed\":\"cs:styling\",\"types\":[\"cs:Category\"],\"label\":\"Styling\",\"box\":\"abox\",\"description\":\"Standards for implementing design system styling patterns\"},{\"name\":\"cs:styling.themes.definition\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#styling.themes.definition\",\"prefixed\":\"cs:styling.themes.definition\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:styling.tokens.creation\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#styling.tokens.creation\",\"prefixed\":\"cs:styling.tokens.creation\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:styling.tokens.scoping\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#styling.tokens.scoping\",\"prefixed\":\"cs:styling.tokens.scoping\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:styling.tokens.types\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#styling.tokens.types\",\"prefixed\":\"cs:styling.tokens.types\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte\",\"prefixed\":\"cs:svelte\",\"types\":[\"cs:Category\"],\"label\":\"Svelte\",\"box\":\"abox\",\"description\":\"Standards specific to Svelte component development\"},{\"name\":\"cs:svelte.component.effect-descriptions\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.component.effect-descriptions\",\"prefixed\":\"cs:svelte.component.effect-descriptions\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.component.native-prop-naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.component.native-prop-naming\",\"prefixed\":\"cs:svelte.component.native-prop-naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.component.purity\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.component.purity\",\"prefixed\":\"cs:svelte.component.purity\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.component.reference-naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.component.reference-naming\",\"prefixed\":\"cs:svelte.component.reference-naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.component.use-call-sites\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.component.use-call-sites\",\"prefixed\":\"cs:svelte.component.use-call-sites\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.component.use-naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.component.use-naming\",\"prefixed\":\"cs:svelte.component.use-naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.composition.attachment-naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.composition.attachment-naming\",\"prefixed\":\"cs:svelte.composition.attachment-naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.composition.customization\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.composition.customization\",\"prefixed\":\"cs:svelte.composition.customization\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.composition.reactivity-boundaries\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.composition.reactivity-boundaries\",\"prefixed\":\"cs:svelte.composition.reactivity-boundaries\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.composition.snippet-attributes\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.composition.snippet-attributes\",\"prefixed\":\"cs:svelte.composition.snippet-attributes\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.composition.snippets-vs-subcomponents\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.composition.snippets-vs-subcomponents\",\"prefixed\":\"cs:svelte.composition.snippets-vs-subcomponents\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.composition.stable-ids\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.composition.stable-ids\",\"prefixed\":\"cs:svelte.composition.stable-ids\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.composition.subcomponents\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.composition.subcomponents\",\"prefixed\":\"cs:svelte.composition.subcomponents\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.progressive-enhancement.ssr-runtime-access\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.progressive-enhancement.ssr-runtime-access\",\"prefixed\":\"cs:svelte.progressive-enhancement.ssr-runtime-access\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:svelte.testing.snippet-fixtures\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#svelte.testing.snippet-fixtures\",\"prefixed\":\"cs:svelte.testing.snippet-fixtures\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:testing\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#testing\",\"prefixed\":\"cs:testing\",\"types\":[\"cs:Category\"],\"label\":\"Testing\",\"box\":\"abox\",\"description\":\"Top-level category for all testing standards\"},{\"name\":\"cs:testing.coverage\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.coverage\",\"prefixed\":\"cs:testing.coverage\",\"types\":[\"cs:Category\"],\"label\":\"Coverage\",\"box\":\"abox\",\"description\":\"Standards for code coverage configuration, thresholds, and ignore pragmas\"},{\"name\":\"cs:testing.coverage.config\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.coverage.config\",\"prefixed\":\"cs:testing.coverage.config\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:testing.coverage.ignore_pragma\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.coverage.ignore_pragma\",\"prefixed\":\"cs:testing.coverage.ignore_pragma\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:testing.file.structure\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.file.structure\",\"prefixed\":\"cs:testing.file.structure\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:testing.integration\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.integration\",\"prefixed\":\"cs:testing.integration\",\"types\":[\"cs:Category\"],\"label\":\"Integration Testing\",\"box\":\"abox\",\"description\":\"Standards for integration test placement and structure\"},{\"name\":\"cs:testing.integration.structure\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.integration.structure\",\"prefixed\":\"cs:testing.integration.structure\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:testing.regression\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.regression\",\"prefixed\":\"cs:testing.regression\",\"types\":[\"cs:Category\"],\"label\":\"Regression Testing\",\"box\":\"abox\",\"description\":\"Standards for numbered regression reproducers that pin once-broken behaviour\"},{\"name\":\"cs:testing.regression.structure\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.regression.structure\",\"prefixed\":\"cs:testing.regression.structure\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:testing.unit\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.unit\",\"prefixed\":\"cs:testing.unit\",\"types\":[\"cs:Category\"],\"label\":\"Unit Testing\",\"box\":\"abox\",\"description\":\"Standards for unit test structure, fixtures, mocking, and describe organization\"},{\"name\":\"cs:testing.unit.describe_organization\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.unit.describe_organization\",\"prefixed\":\"cs:testing.unit.describe_organization\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:testing.unit.fixtures_pattern\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.unit.fixtures_pattern\",\"prefixed\":\"cs:testing.unit.fixtures_pattern\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:testing.unit.mocking_minimal\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#testing.unit.mocking_minimal\",\"prefixed\":\"cs:testing.unit.mocking_minimal\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:tsdoc\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#tsdoc\",\"prefixed\":\"cs:tsdoc\",\"types\":[\"cs:Category\"],\"label\":\"TSDoc\",\"box\":\"abox\",\"description\":\"Standards for TypeScript documentation comments — placement, layering, and tag usage.\"},{\"name\":\"cs:tsdoc.documentation_layers\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#tsdoc.documentation_layers\",\"prefixed\":\"cs:tsdoc.documentation_layers\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:tsdoc.module_tag_location\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#tsdoc.module_tag_location\",\"prefixed\":\"cs:tsdoc.module_tag_location\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:tsdoc.self_contained\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#tsdoc.self_contained\",\"prefixed\":\"cs:tsdoc.self_contained\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:turtle\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#turtle\",\"prefixed\":\"cs:turtle\",\"types\":[\"cs:Category\"],\"label\":\"Turtle\",\"box\":\"abox\",\"description\":\"Standards specific to Turtle (RDF) file authoring\"},{\"name\":\"cs:turtle.naming.local_name_casing\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#turtle.naming.local_name_casing\",\"prefixed\":\"cs:turtle.naming.local_name_casing\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:turtle.naming.unified_prefix\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#turtle.naming.unified_prefix\",\"prefixed\":\"cs:turtle.naming.unified_prefix\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:turtle.structure.definitions_vs_data\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#turtle.structure.definitions_vs_data\",\"prefixed\":\"cs:turtle.structure.definitions_vs_data\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:turtle.syntax.prefix_declaration\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#turtle.syntax.prefix_declaration\",\"prefixed\":\"cs:turtle.syntax.prefix_declaration\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:ui_blocks\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks\",\"prefixed\":\"cs:ui_blocks\",\"types\":[\"cs:Category\"],\"label\":\"UI Blocks\",\"box\":\"abox\",\"description\":\"Framework-agnostic capabilities and patterns for implementing UI blocks\"},{\"name\":\"cs:ui_blocks.forms.native_validation\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.forms.native_validation\",\"prefixed\":\"cs:ui_blocks.forms.native_validation\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:ui_blocks.media.lazy_loading\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.media.lazy_loading\",\"prefixed\":\"cs:ui_blocks.media.lazy_loading\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:ui_blocks.nojs\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.nojs\",\"prefixed\":\"cs:ui_blocks.nojs\",\"types\":[\"cs:Category\"],\"label\":\"No-JavaScript\",\"box\":\"abox\",\"description\":\"UI block capabilities delivered without client-side JavaScript, using semantic HTML and declarative platform features\"},{\"name\":\"cs:ui_blocks.nojs.aria_contracts\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.nojs.aria_contracts\",\"prefixed\":\"cs:ui_blocks.nojs.aria_contracts\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:ui_blocks.nojs.dialog\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.nojs.dialog\",\"prefixed\":\"cs:ui_blocks.nojs.dialog\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:ui_blocks.nojs.disclosure\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.nojs.disclosure\",\"prefixed\":\"cs:ui_blocks.nojs.disclosure\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:ui_blocks.nojs.invoker_commands\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.nojs.invoker_commands\",\"prefixed\":\"cs:ui_blocks.nojs.invoker_commands\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:ui_blocks.nojs.popover\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.nojs.popover\",\"prefixed\":\"cs:ui_blocks.nojs.popover\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:ui_blocks.nojs.toggles\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.nojs.toggles\",\"prefixed\":\"cs:ui_blocks.nojs.toggles\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:ui_blocks.principles.scripting_progressive_enhancement\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#ui_blocks.principles.scripting_progressive_enhancement\",\"prefixed\":\"cs:ui_blocks.principles.scripting_progressive_enhancement\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:webcomponents\",\"type\":\"cs:Category\",\"uri\":\"http://pragma.canonical.com/codestandards#webcomponents\",\"prefixed\":\"cs:webcomponents\",\"types\":[\"cs:Category\"],\"label\":\"Web Components\",\"box\":\"abox\",\"description\":\"Framework-agnostic standards for web component authoring\"},{\"name\":\"cs:webcomponents.component.a11y.aria\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#webcomponents.component.a11y.aria\",\"prefixed\":\"cs:webcomponents.component.a11y.aria\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:webcomponents.component.a11y.focus\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#webcomponents.component.a11y.focus\",\"prefixed\":\"cs:webcomponents.component.a11y.focus\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:webcomponents.component.a11y.keyboard\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#webcomponents.component.a11y.keyboard\",\"prefixed\":\"cs:webcomponents.component.a11y.keyboard\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:webcomponents.component.class-names\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#webcomponents.component.class-names\",\"prefixed\":\"cs:webcomponents.component.class-names\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:webcomponents.component.naming\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#webcomponents.component.naming\",\"prefixed\":\"cs:webcomponents.component.naming\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"cs:webcomponents.component.slots\",\"type\":\"cs:CodeStandard\",\"uri\":\"http://pragma.canonical.com/codestandards#webcomponents.component.slots\",\"prefixed\":\"cs:webcomponents.component.slots\",\"types\":[\"cs:CodeStandard\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:\",\"type\":\"owl:Ontology\",\"uri\":\"https://ds.canonical.com/\",\"prefixed\":\"ds:\",\"types\":[\"owl:Ontology\"],\"label\":\"Design System Ontology\",\"box\":\"abox\",\"description\":\"OWL ontology for UI design system based on schema diagram\"},{\"name\":\"ds:ChangeLogEntry\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/ChangeLogEntry\",\"prefixed\":\"ds:ChangeLogEntry\",\"types\":[\"owl:Class\"],\"label\":\"Change Log Entry\",\"box\":\"tbox\",\"description\":\"A single dated record of a change to a UIBlock, with a timestamp, the change description, an owner, an optional GitHub link, and a change type.\"},{\"name\":\"ds:Component\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Component\",\"prefixed\":\"ds:Component\",\"types\":[\"owl:Class\"],\"label\":\"Component\",\"box\":\"tbox\",\"description\":\"An implementable piece of user interface defined by its appearance and behaviour\"},{\"name\":\"ds:Concept\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Concept\",\"prefixed\":\"ds:Concept\",\"types\":[\"owl:Class\"],\"label\":\"Concept\",\"box\":\"tbox\",\"description\":\"A standalone piece of design-system documentation not bound to a single UIBlock — a cross-cutting guide, disambiguation, foundation, or decision (e.g. 'Foundations: Grid', 'Disambiguation: Badge/Chip/Tag'). Carries a long-form Markdown body (content), an optional short summary, a concept type, and a tier.\"},{\"name\":\"ds:ConceptType\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/ConceptType\",\"prefixed\":\"ds:ConceptType\",\"types\":[\"owl:Class\"],\"label\":\"Concept Type\",\"box\":\"tbox\",\"description\":\"A controlled-vocabulary classification of a Concept (e.g. 'Decision guide', 'Foundation', 'Disambiguation').\"},{\"name\":\"ds:Entity\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Entity\",\"prefixed\":\"ds:Entity\",\"types\":[\"owl:Class\"],\"label\":\"Entity\",\"box\":\"tbox\",\"description\":\"Abstract root class for all design system entities. Provides common properties (name, summary) inherited by all classes.\"},{\"name\":\"ds:Group\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Group\",\"prefixed\":\"ds:Group\",\"types\":[\"owl:Class\"],\"label\":\"Group\",\"box\":\"tbox\",\"description\":\"A collection UIBlock: a container that arranges multiple instances of a single sibling UIBlock (typically a Component) as a repeating series. The plural counterpart of a singular Component (e.g. Cards groups Card units, Tiles groups Tile units), responsible for their shared layout rather than for any content of its own.\"},{\"name\":\"ds:ImplementationLibrary\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/ImplementationLibrary\",\"prefixed\":\"ds:ImplementationLibrary\",\"types\":[\"owl:Class\"],\"label\":\"Implementation Library\",\"box\":\"tbox\",\"description\":\"A code library or package that provides platform-specific implementations of UIBlocks\"},{\"name\":\"ds:ImplementationObject\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/ImplementationObject\",\"prefixed\":\"ds:ImplementationObject\",\"types\":[\"owl:Class\"],\"label\":\"Implementation Object\",\"box\":\"tbox\",\"description\":\"Platform-specific implementation of a UI Block\"},{\"name\":\"ds:Layout\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Layout\",\"prefixed\":\"ds:Layout\",\"types\":[\"owl:Class\"],\"label\":\"Layout\",\"box\":\"tbox\",\"description\":\"Layouts are an opinionated division of space to navigate a domain of information.\"},{\"name\":\"ds:Modifier\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Modifier\",\"prefixed\":\"ds:Modifier\",\"types\":[\"owl:Class\"],\"label\":\"Modifier\",\"box\":\"tbox\",\"description\":\"A named variant value within a ModifierFamily that alters the appearance or behaviour of a UIBlock (e.g. 'primary', 'secondary' within the 'importance' family)\"},{\"name\":\"ds:ModifierFamily\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/ModifierFamily\",\"prefixed\":\"ds:ModifierFamily\",\"types\":[\"owl:Class\"],\"label\":\"Modifier Family\",\"box\":\"tbox\",\"description\":\"A grouping of related modifiers that can be applied to UI Blocks\"},{\"name\":\"ds:Pattern\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Pattern\",\"prefixed\":\"ds:Pattern\",\"types\":[\"owl:Class\"],\"label\":\"Pattern\",\"box\":\"tbox\",\"description\":\"A reusable solution to a recurring user problem in a specific context\"},{\"name\":\"ds:Property\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Property\",\"prefixed\":\"ds:Property\",\"types\":[\"owl:Class\"],\"label\":\"Property\",\"box\":\"tbox\",\"description\":\"A configurable property of a UI Block\"},{\"name\":\"ds:SemverString\",\"type\":\"rdfs:Datatype\",\"uri\":\"https://ds.canonical.com/SemverString\",\"prefixed\":\"ds:SemverString\",\"types\":[\"rdfs:Datatype\"],\"label\":null,\"box\":\"abox\",\"description\":\"Semantic version string following semver specification (MAJOR.MINOR.PATCH)\"},{\"name\":\"ds:Subcomponent\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Subcomponent\",\"prefixed\":\"ds:Subcomponent\",\"types\":[\"owl:Class\"],\"label\":\"Subcomponent\",\"box\":\"tbox\",\"description\":\"A named part of a Component that has design-system identity but is typically not used independently outside its parent\"},{\"name\":\"ds:Tag\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Tag\",\"prefixed\":\"ds:Tag\",\"types\":[\"owl:Class\"],\"label\":\"Tag\",\"box\":\"tbox\",\"description\":\"A controlled-vocabulary label applied to a UIBlock. Tags are grouped into facets by their category (e.g. 'documentation stage', 'review status', 'channel', 'implementation status'). The category-typed views over this vocabulary are tracked as future work; for now a Tag carries its name, category, and apply/remove guidance.\"},{\"name\":\"ds:TagCategory\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/TagCategory\",\"prefixed\":\"ds:TagCategory\",\"types\":[\"owl:Class\"],\"label\":\"Tag Category\",\"box\":\"tbox\",\"description\":\"A facet that groups related Tags (e.g. 'documentation stage', 'review status', 'channel', 'implementation status').\"},{\"name\":\"ds:Tier\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/Tier\",\"prefixed\":\"ds:Tier\",\"types\":[\"owl:Class\"],\"label\":\"Tier\",\"box\":\"tbox\",\"description\":\"A scope level in the design system hierarchy that determines where UIBlocks are intended to be used (e.g. global, apps, site)\"},{\"name\":\"ds:UIBlock\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/UIBlock\",\"prefixed\":\"ds:UIBlock\",\"types\":[\"owl:Class\"],\"label\":\"UI Block\",\"box\":\"tbox\",\"description\":\"A category of visual or abstract entity that fulfills a particular role in composing user interfaces\"},{\"name\":\"ds:UIElement\",\"type\":\"owl:Class\",\"uri\":\"https://ds.canonical.com/UIElement\",\"prefixed\":\"ds:UIElement\",\"types\":[\"owl:Class\"],\"label\":\"UI Element\",\"box\":\"tbox\",\"description\":\"Base class for all visual and interactive design system elements\"},{\"name\":\"ds:acceptanceCriteria\",\"type\":\"owl:AnnotationProperty\",\"uri\":\"https://ds.canonical.com/acceptanceCriteria\",\"prefixed\":\"ds:acceptanceCriteria\",\"types\":[\"owl:AnnotationProperty\"],\"label\":\"acceptanceCriteria\",\"box\":\"tbox\",\"description\":\"Acceptance criteria that must be met for this property\"},{\"name\":\"ds:anatomyClassic\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/anatomyClassic\",\"prefixed\":\"ds:anatomyClassic\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"anatomyClassic\",\"box\":\"tbox\",\"description\":\"DEPRECATED. Legacy anatomy field (free-form text). Superseded by ds:anatomyDsl.\"},{\"name\":\"ds:anatomyDsl\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/anatomyDsl\",\"prefixed\":\"ds:anatomyDsl\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"anatomyDsl\",\"box\":\"tbox\",\"description\":\"YAML specification of component structure using the Anatomy DSL. Describes nodes (named/anonymous), edges with cardinality, slots, and CTI-inspired styles.\"},{\"name\":\"ds:apps\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps\",\"prefixed\":\"ds:apps\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.component.file_tree\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps.component.file_tree\",\"prefixed\":\"ds:apps.component.file_tree\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"FileTree\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.component.key_value_pair\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps.component.key_value_pair\",\"prefixed\":\"ds:apps.component.key_value_pair\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"KeyValuePair\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.component.navigation\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps.component.navigation\",\"prefixed\":\"ds:apps.component.navigation\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Navigation\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.component.notification\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps.component.notification\",\"prefixed\":\"ds:apps.component.notification\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Notification\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.component.side_navigation\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps.component.side_navigation\",\"prefixed\":\"ds:apps.component.side_navigation\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"SideNavigation\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.component.skeleton_loading\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps.component.skeleton_loading\",\"prefixed\":\"ds:apps.component.skeleton_loading\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"SkeletonLoading\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.component.status_bar\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps.component.status_bar\",\"prefixed\":\"ds:apps.component.status_bar\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"StatusBar\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.component.toolbar\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps.component.toolbar\",\"prefixed\":\"ds:apps.component.toolbar\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Toolbar\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.group.key_value_pairs\",\"type\":\"ds:Group\",\"uri\":\"https://ds.canonical.com/apps.group.key_value_pairs\",\"prefixed\":\"ds:apps.group.key_value_pairs\",\"types\":[\"ds:Group\"],\"label\":null,\"altNames\":[\"KeyValuePairs\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.group.notifications\",\"type\":\"ds:Group\",\"uri\":\"https://ds.canonical.com/apps.group.notifications\",\"prefixed\":\"ds:apps.group.notifications\",\"types\":[\"ds:Group\"],\"label\":null,\"altNames\":[\"Notifications\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.layout.application_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/apps.layout.application_layout\",\"prefixed\":\"ds:apps.layout.application_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"ApplicationLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.layout.content_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/apps.layout.content_layout\",\"prefixed\":\"ds:apps.layout.content_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"ContentLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.layout.empty_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/apps.layout.empty_layout\",\"prefixed\":\"ds:apps.layout.empty_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"EmptyLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.layout.list_page_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/apps.layout.list_page_layout\",\"prefixed\":\"ds:apps.layout.list_page_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"ListPageLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.layout.settings_page_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/apps.layout.settings_page_layout\",\"prefixed\":\"ds:apps.layout.settings_page_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"SettingsPageLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.layout.view_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/apps.layout.view_layout\",\"prefixed\":\"ds:apps.layout.view_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"ViewLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.pattern.action_bar\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps.pattern.action_bar\",\"prefixed\":\"ds:apps.pattern.action_bar\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"ActionBar\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.pattern.code_diff\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps.pattern.code_diff\",\"prefixed\":\"ds:apps.pattern.code_diff\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"CodeDiff\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.pattern.data_table\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps.pattern.data_table\",\"prefixed\":\"ds:apps.pattern.data_table\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"DataTable\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.pattern.destructive_modal\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps.pattern.destructive_modal\",\"prefixed\":\"ds:apps.pattern.destructive_modal\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"DestructiveModal\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.pattern.drawer\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps.pattern.drawer\",\"prefixed\":\"ds:apps.pattern.drawer\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Drawer\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.pattern.keyboard_shortcuts\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps.pattern.keyboard_shortcuts\",\"prefixed\":\"ds:apps.pattern.keyboard_shortcuts\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"KeyboardShortcuts\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.pattern.notification_center\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps.pattern.notification_center\",\"prefixed\":\"ds:apps.pattern.notification_center\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"NotificationCenter\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.pattern.side_panel\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps.pattern.side_panel\",\"prefixed\":\"ds:apps.pattern.side_panel\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"SidePanel\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.pattern.sidepanel_stacked\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps.pattern.sidepanel_stacked\",\"prefixed\":\"ds:apps.pattern.sidepanel_stacked\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"SidePanel Stacked\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.data_table-action_bar\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.data_table-action_bar\",\"prefixed\":\"ds:apps.subcomponent.data_table-action_bar\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DataTable.ActionBar\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.data_table-body_cell\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.data_table-body_cell\",\"prefixed\":\"ds:apps.subcomponent.data_table-body_cell\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DataTable.BodyCell\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.data_table-group_header_row\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.data_table-group_header_row\",\"prefixed\":\"ds:apps.subcomponent.data_table-group_header_row\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DataTable.GroupHeaderRow\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.data_table-header_cell\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.data_table-header_cell\",\"prefixed\":\"ds:apps.subcomponent.data_table-header_cell\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DataTable.HeaderCell\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.data_table-pagination_bar\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.data_table-pagination_bar\",\"prefixed\":\"ds:apps.subcomponent.data_table-pagination_bar\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DataTable.PaginationBar\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.data_table-persistent_selection\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.data_table-persistent_selection\",\"prefixed\":\"ds:apps.subcomponent.data_table-persistent_selection\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DataTable.PersistentSelection\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.data_table-settings_menu\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.data_table-settings_menu\",\"prefixed\":\"ds:apps.subcomponent.data_table-settings_menu\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DataTable.SettingsMenu\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.drawer-content\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.drawer-content\",\"prefixed\":\"ds:apps.subcomponent.drawer-content\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Drawer.Content\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.drawer-footer\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.drawer-footer\",\"prefixed\":\"ds:apps.subcomponent.drawer-footer\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Drawer.Footer\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.drawer-header\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.drawer-header\",\"prefixed\":\"ds:apps.subcomponent.drawer-header\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Drawer.Header\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.file_tree-node\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.file_tree-node\",\"prefixed\":\"ds:apps.subcomponent.file_tree-node\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"FileTree.Node\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.log\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.log\",\"prefixed\":\"ds:apps.subcomponent.log\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Log\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.side_panel-content\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.side_panel-content\",\"prefixed\":\"ds:apps.subcomponent.side_panel-content\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SidePanel.Content\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.side_panel-footer\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.side_panel-footer\",\"prefixed\":\"ds:apps.subcomponent.side_panel-footer\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SidePanel.Footer\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps.subcomponent.side_panel-header\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps.subcomponent.side_panel-header\",\"prefixed\":\"ds:apps.subcomponent.side_panel-header\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SidePanel.Header\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_anbox\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps_anbox\",\"prefixed\":\"ds:apps_anbox\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps/Anbox\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_anbox.component.theme_switcher\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_anbox.component.theme_switcher\",\"prefixed\":\"ds:apps_anbox.component.theme_switcher\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"ThemeSwitcher\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_anbox.pattern.side_menu\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps_anbox.pattern.side_menu\",\"prefixed\":\"ds:apps_anbox.pattern.side_menu\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"SideMenu\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_debcrafters\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps_debcrafters\",\"prefixed\":\"ds:apps_debcrafters\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps/Debcrafters\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_debcrafters.component.example\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_debcrafters.component.example\",\"prefixed\":\"ds:apps_debcrafters.component.example\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Example\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_debcrafters.component.my_fancy_component\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_debcrafters.component.my_fancy_component\",\"prefixed\":\"ds:apps_debcrafters.component.my_fancy_component\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"MyFancyComponent\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_juju\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps_juju\",\"prefixed\":\"ds:apps_juju\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps/Juju\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_juju.pattern.single_select_multi_layered\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps_juju.pattern.single_select_multi_layered\",\"prefixed\":\"ds:apps_juju.pattern.single_select_multi_layered\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Single select , multi-layered\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_landscape\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps_landscape\",\"prefixed\":\"ds:apps_landscape\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps/Landscape\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_landscape.component.password_constraints\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_landscape.component.password_constraints\",\"prefixed\":\"ds:apps_landscape.component.password_constraints\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"PasswordConstraints\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_landscape.component.truncated_cell\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_landscape.component.truncated_cell\",\"prefixed\":\"ds:apps_landscape.component.truncated_cell\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"TruncatedCell\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps_launchpad\",\"prefixed\":\"ds:apps_launchpad\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps/Launchpad\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.avatar\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.avatar\",\"prefixed\":\"ds:apps_launchpad.component.avatar\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Avatar\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.badge\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.badge\",\"prefixed\":\"ds:apps_launchpad.component.badge\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Badge\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.breadcrumbs\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.breadcrumbs\",\"prefixed\":\"ds:apps_launchpad.component.breadcrumbs\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Breadcrumbs\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.button\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.button\",\"prefixed\":\"ds:apps_launchpad.component.button\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Button\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.checkbox_input\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.checkbox_input\",\"prefixed\":\"ds:apps_launchpad.component.checkbox_input\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"CheckboxInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.chip\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.chip\",\"prefixed\":\"ds:apps_launchpad.component.chip\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Chip\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.combobox\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.combobox\",\"prefixed\":\"ds:apps_launchpad.component.combobox\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Combobox\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.description_list\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.description_list\",\"prefixed\":\"ds:apps_launchpad.component.description_list\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"DescriptionList\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.drawer\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.drawer\",\"prefixed\":\"ds:apps_launchpad.component.drawer\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Drawer\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.log\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.log\",\"prefixed\":\"ds:apps_launchpad.component.log\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Log\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.modal\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.modal\",\"prefixed\":\"ds:apps_launchpad.component.modal\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Modal\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.radio_input\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.radio_input\",\"prefixed\":\"ds:apps_launchpad.component.radio_input\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"RadioInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.select_input\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.select_input\",\"prefixed\":\"ds:apps_launchpad.component.select_input\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"SelectInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.switch\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.switch\",\"prefixed\":\"ds:apps_launchpad.component.switch\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Switch\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.text_input\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.text_input\",\"prefixed\":\"ds:apps_launchpad.component.text_input\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"TextInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.textarea_input\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.textarea_input\",\"prefixed\":\"ds:apps_launchpad.component.textarea_input\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"TextareaInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.component.tooltip\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_launchpad.component.tooltip\",\"prefixed\":\"ds:apps_launchpad.component.tooltip\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Tooltip\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.combobox-checkbox_option\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.combobox-checkbox_option\",\"prefixed\":\"ds:apps_launchpad.subcomponent.combobox-checkbox_option\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Combobox.CheckboxOption\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.combobox-footer\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.combobox-footer\",\"prefixed\":\"ds:apps_launchpad.subcomponent.combobox-footer\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Combobox.Footer\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.combobox-group\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.combobox-group\",\"prefixed\":\"ds:apps_launchpad.subcomponent.combobox-group\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Combobox.Group\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.combobox-helper\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.combobox-helper\",\"prefixed\":\"ds:apps_launchpad.subcomponent.combobox-helper\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Combobox.Helper\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.combobox-loading\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.combobox-loading\",\"prefixed\":\"ds:apps_launchpad.subcomponent.combobox-loading\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Combobox.Loading\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.combobox-no_results\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.combobox-no_results\",\"prefixed\":\"ds:apps_launchpad.subcomponent.combobox-no_results\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Combobox.NoResults\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.combobox-radio_option\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.combobox-radio_option\",\"prefixed\":\"ds:apps_launchpad.subcomponent.combobox-radio_option\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Combobox.RadioOption\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.combobox-search\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.combobox-search\",\"prefixed\":\"ds:apps_launchpad.subcomponent.combobox-search\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Combobox.Search\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.description_list-item\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.description_list-item\",\"prefixed\":\"ds:apps_launchpad.subcomponent.description_list-item\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DescriptionList.Item\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.log-line\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.log-line\",\"prefixed\":\"ds:apps_launchpad.subcomponent.log-line\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Log.Line\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.modal-content\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.modal-content\",\"prefixed\":\"ds:apps_launchpad.subcomponent.modal-content\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Modal.Content\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.modal-content-body\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.modal-content-body\",\"prefixed\":\"ds:apps_launchpad.subcomponent.modal-content-body\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Modal.Content.Body\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.modal-content-footer\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.modal-content-footer\",\"prefixed\":\"ds:apps_launchpad.subcomponent.modal-content-footer\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Modal.Content.Footer\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.modal-content-header\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.modal-content-header\",\"prefixed\":\"ds:apps_launchpad.subcomponent.modal-content-header\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Modal.Content.Header\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.modal-content-header-close_button\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.modal-content-header-close_button\",\"prefixed\":\"ds:apps_launchpad.subcomponent.modal-content-header-close_button\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Modal.Content.Header.CloseButton\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.side_panel-content\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.side_panel-content\",\"prefixed\":\"ds:apps_launchpad.subcomponent.side_panel-content\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SidePanel.Content\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.side_panel-content-body\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.side_panel-content-body\",\"prefixed\":\"ds:apps_launchpad.subcomponent.side_panel-content-body\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SidePanel.Content.Body\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.side_panel-content-footer\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.side_panel-content-footer\",\"prefixed\":\"ds:apps_launchpad.subcomponent.side_panel-content-footer\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SidePanel.Content.Footer\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.side_panel-content-header\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.side_panel-content-header\",\"prefixed\":\"ds:apps_launchpad.subcomponent.side_panel-content-header\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SidePanel.Content.Header\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_launchpad.subcomponent.side_panel-content-header-close_button\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_launchpad.subcomponent.side_panel-content-header-close_button\",\"prefixed\":\"ds:apps_launchpad.subcomponent.side_panel-content-header-close_button\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SidePanel.Content.Header.CloseButton\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps_lxd\",\"prefixed\":\"ds:apps_lxd\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps/LXD\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.component.back_link\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_lxd.component.back_link\",\"prefixed\":\"ds:apps_lxd.component.back_link\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"BackLink\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.component.code_snippet_with_copy_button\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_lxd.component.code_snippet_with_copy_button\",\"prefixed\":\"ds:apps_lxd.component.code_snippet_with_copy_button\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"CodeSnippetWithCopyButton\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.component.confirmation_checkbox\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_lxd.component.confirmation_checkbox\",\"prefixed\":\"ds:apps_lxd.component.confirmation_checkbox\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"ConfirmationCheckbox\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.component.doc_link\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_lxd.component.doc_link\",\"prefixed\":\"ds:apps_lxd.component.doc_link\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"DocLink\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.component.meter\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_lxd.component.meter\",\"prefixed\":\"ds:apps_lxd.component.meter\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Meter\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.component.output_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_lxd.component.output_field\",\"prefixed\":\"ds:apps_lxd.component.output_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"OutputField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.component.rename_header\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_lxd.component.rename_header\",\"prefixed\":\"ds:apps_lxd.component.rename_header\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"RenameHeader\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.component.tab_links\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_lxd.component.tab_links\",\"prefixed\":\"ds:apps_lxd.component.tab_links\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"TabLinks\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.subcomponent.copy_to_clipboard\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_lxd.subcomponent.copy_to_clipboard\",\"prefixed\":\"ds:apps_lxd.subcomponent.copy_to_clipboard\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"CopyToClipboard\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_lxd.view.network_topology\",\"type\":\"ds:View\",\"uri\":\"https://ds.canonical.com/apps_lxd.view.network_topology\",\"prefixed\":\"ds:apps_lxd.view.network_topology\",\"types\":[\"ds:View\"],\"label\":null,\"altNames\":[\"NetworkTopology\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_notary\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps_notary\",\"prefixed\":\"ds:apps_notary\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps/Notary\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_portal\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps_portal\",\"prefixed\":\"ds:apps_portal\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps/Portal\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_portal.component.badge\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_portal.component.badge\",\"prefixed\":\"ds:apps_portal.component.badge\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Badge\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_portal.component.credit_card_input\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_portal.component.credit_card_input\",\"prefixed\":\"ds:apps_portal.component.credit_card_input\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"CreditCardInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_portal.component.key_value_pair\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_portal.component.key_value_pair\",\"prefixed\":\"ds:apps_portal.component.key_value_pair\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Key value pair\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_portal.pattern.purchase_summary\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps_portal.pattern.purchase_summary\",\"prefixed\":\"ds:apps_portal.pattern.purchase_summary\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Purchase summary\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_portal.subcomponent.read_only_modal\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/apps_portal.subcomponent.read_only_modal\",\"prefixed\":\"ds:apps_portal.subcomponent.read_only_modal\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Read only modal\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_workplaceengineering\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/apps_workplaceengineering\",\"prefixed\":\"ds:apps_workplaceengineering\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Apps/WorkplaceEngineering\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_workplaceengineering.component.label-highlight\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_workplaceengineering.component.label-highlight\",\"prefixed\":\"ds:apps_workplaceengineering.component.label-highlight\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Label.Highlight\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_workplaceengineering.component.rule\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_workplaceengineering.component.rule\",\"prefixed\":\"ds:apps_workplaceengineering.component.rule\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Rule\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_workplaceengineering.component.skip_link\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_workplaceengineering.component.skip_link\",\"prefixed\":\"ds:apps_workplaceengineering.component.skip_link\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"SkipLink\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_workplaceengineering.component.theme_switcher\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/apps_workplaceengineering.component.theme_switcher\",\"prefixed\":\"ds:apps_workplaceengineering.component.theme_switcher\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"ThemeSwitcher\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_workplaceengineering.pattern.callout_numbers_card\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps_workplaceengineering.pattern.callout_numbers_card\",\"prefixed\":\"ds:apps_workplaceengineering.pattern.callout_numbers_card\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Callout numbers card\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_workplaceengineering.pattern.event_timeline\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps_workplaceengineering.pattern.event_timeline\",\"prefixed\":\"ds:apps_workplaceengineering.pattern.event_timeline\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"EventTimeline\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_workplaceengineering.pattern.group_card\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps_workplaceengineering.pattern.group_card\",\"prefixed\":\"ds:apps_workplaceengineering.pattern.group_card\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"GroupCard\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:apps_workplaceengineering.pattern.travel_provider_card\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/apps_workplaceengineering.pattern.travel_provider_card\",\"prefixed\":\"ds:apps_workplaceengineering.pattern.travel_provider_card\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"TravelProviderCard\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:category\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/category\",\"prefixed\":\"ds:category\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"category\",\"box\":\"tbox\",\"description\":\"The category (facet) a Tag belongs to, e.g. documentation stage, review status, channel, implementation status\"},{\"name\":\"ds:change\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/change\",\"prefixed\":\"ds:change\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"change\",\"box\":\"tbox\",\"description\":\"Human-readable description of what changed\"},{\"name\":\"ds:changeLog\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/changeLog\",\"prefixed\":\"ds:changeLog\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"changeLog\",\"box\":\"tbox\",\"description\":\"Links a UI Block to its dated change log entries.\"},{\"name\":\"ds:changeType\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/changeType\",\"prefixed\":\"ds:changeType\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"changeType\",\"box\":\"tbox\",\"description\":\"The category of change (e.g. change, addition, deprecation)\"},{\"name\":\"ds:completionGuidance\",\"type\":\"owl:AnnotationProperty\",\"uri\":\"https://ds.canonical.com/completionGuidance\",\"prefixed\":\"ds:completionGuidance\",\"types\":[\"owl:AnnotationProperty\"],\"label\":\"completionGuidance\",\"box\":\"tbox\",\"description\":\"Completion guidance for this property. This will be shown in an interface for the contributors.\"},{\"name\":\"ds:concept.Foundations-Grid\",\"type\":\"ds:Concept\",\"uri\":\"https://ds.canonical.com/concept.Foundations-Grid\",\"prefixed\":\"ds:concept.Foundations-Grid\",\"types\":[\"ds:Concept\"],\"label\":null,\"altNames\":[\"Foundations: Grid\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:concept.How-to-differentiate-components-variantsinheritance\",\"type\":\"ds:Concept\",\"uri\":\"https://ds.canonical.com/concept.How-to-differentiate-components-variantsinheritance\",\"prefixed\":\"ds:concept.How-to-differentiate-components-variantsinheritance\",\"types\":[\"ds:Concept\"],\"label\":null,\"altNames\":[\"How to differentiate components (variants/inheritance)\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:concept.Indicating-required-fields-in-forms\",\"type\":\"ds:Concept\",\"uri\":\"https://ds.canonical.com/concept.Indicating-required-fields-in-forms\",\"prefixed\":\"ds:concept.Indicating-required-fields-in-forms\",\"types\":[\"ds:Concept\"],\"label\":null,\"altNames\":[\"Indicating required fields in forms\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:concept.Question-mark-vs-information-icon\",\"type\":\"ds:Concept\",\"uri\":\"https://ds.canonical.com/concept.Question-mark-vs-information-icon\",\"prefixed\":\"ds:concept.Question-mark-vs-information-icon\",\"types\":[\"ds:Concept\"],\"label\":null,\"altNames\":[\"Question mark vs information icon\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:conceptType\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/conceptType\",\"prefixed\":\"ds:conceptType\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"conceptType\",\"box\":\"tbox\",\"description\":\"The controlled-vocabulary type a Concept belongs to, e.g. Decision guide, Foundation, Disambiguation\"},{\"name\":\"ds:concepttype.Decision-guide\",\"type\":\"ds:ConceptType\",\"uri\":\"https://ds.canonical.com/concepttype.Decision-guide\",\"prefixed\":\"ds:concepttype.Decision-guide\",\"types\":[\"ds:ConceptType\"],\"label\":null,\"altNames\":[\"Decision guide\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:concepttype.Explanation\",\"type\":\"ds:ConceptType\",\"uri\":\"https://ds.canonical.com/concepttype.Explanation\",\"prefixed\":\"ds:concepttype.Explanation\",\"types\":[\"ds:ConceptType\"],\"label\":null,\"altNames\":[\"Explanation\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:concepttype.How-to-guide\",\"type\":\"ds:ConceptType\",\"uri\":\"https://ds.canonical.com/concepttype.How-to-guide\",\"prefixed\":\"ds:concepttype.How-to-guide\",\"types\":[\"ds:ConceptType\"],\"label\":null,\"altNames\":[\"How to guide\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:concepttype.Mental-model\",\"type\":\"ds:ConceptType\",\"uri\":\"https://ds.canonical.com/concepttype.Mental-model\",\"prefixed\":\"ds:concepttype.Mental-model\",\"types\":[\"ds:ConceptType\"],\"label\":null,\"altNames\":[\"Mental model\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:concepttype.Reference\",\"type\":\"ds:ConceptType\",\"uri\":\"https://ds.canonical.com/concepttype.Reference\",\"prefixed\":\"ds:concepttype.Reference\",\"types\":[\"ds:ConceptType\"],\"label\":null,\"altNames\":[\"Reference\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:concepttype.Tutorial\",\"type\":\"ds:ConceptType\",\"uri\":\"https://ds.canonical.com/concepttype.Tutorial\",\"prefixed\":\"ds:concepttype.Tutorial\",\"types\":[\"ds:ConceptType\"],\"label\":null,\"altNames\":[\"Tutorial\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:constraints\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/constraints\",\"prefixed\":\"ds:constraints\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"constraints\",\"box\":\"tbox\",\"description\":\"Constraints on valid values for this property. For choice types, lists allowed values (e.g. '[primary, secondary, tertiary]'). For numbers, specifies ranges. For objects, describes required structure.\"},{\"name\":\"ds:content\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/content\",\"prefixed\":\"ds:content\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"content\",\"box\":\"tbox\",\"description\":\"The long-form Markdown body of a Concept — the full documentation text (sections, prose, tables, links). Stored as a plain string literal; the content is Markdown.\"},{\"name\":\"ds:decisionLog\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/decisionLog\",\"prefixed\":\"ds:decisionLog\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"decisionLog\",\"box\":\"tbox\",\"description\":\"Log of decisions with [date][author][content]\"},{\"name\":\"ds:defaultValue\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/defaultValue\",\"prefixed\":\"ds:defaultValue\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"defaultValue\",\"box\":\"tbox\",\"description\":\"The default value for this property when not explicitly set by the consumer\"},{\"name\":\"ds:documentation\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/documentation\",\"prefixed\":\"ds:documentation\",\"types\":[\"owl:DatatypeProperty\",\"ds:Tier\"],\"label\":\"documentation\",\"altNames\":[\"Documentation\"],\"box\":\"tbox\",\"description\":\"Documentation link if different from main artifact\"},{\"name\":\"ds:documentation\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/documentation\",\"prefixed\":\"ds:documentation\",\"types\":[\"owl:DatatypeProperty\",\"ds:Tier\"],\"label\":\"documentation\",\"altNames\":[\"Documentation\"],\"box\":\"abox\",\"description\":\"Documentation link if different from main artifact\"},{\"name\":\"ds:documentation.layout.documentation_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/documentation.layout.documentation_layout\",\"prefixed\":\"ds:documentation.layout.documentation_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"DocumentationLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:documentation.pattern.library_side_navigation\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/documentation.pattern.library_side_navigation\",\"prefixed\":\"ds:documentation.pattern.library_side_navigation\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"LibrarySideNavigation\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:documentationStage\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/documentationStage\",\"prefixed\":\"ds:documentationStage\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"documentationStage\",\"box\":\"tbox\",\"description\":\"Links a UI Block to the documentation-stage Tag(s) applied to it (e.g. needs:documentation). One facet of the wider Tag vocabulary; the other tag facets are tracked as future work.\"},{\"name\":\"ds:domain\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/domain\",\"prefixed\":\"ds:domain\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"domain\",\"box\":\"tbox\",\"description\":\"The information domain this layout is designed to navigate\"},{\"name\":\"ds:figmaLink\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/figmaLink\",\"prefixed\":\"ds:figmaLink\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"figmaLink\",\"box\":\"tbox\",\"description\":\"Link to the Figma design file for this UI block\"},{\"name\":\"ds:githubLink\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/githubLink\",\"prefixed\":\"ds:githubLink\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"githubLink\",\"box\":\"tbox\",\"description\":\"Optional link to a GitHub issue, PR or discussion for this change\"},{\"name\":\"ds:global\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/global\",\"prefixed\":\"ds:global\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Global\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.accordion\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.accordion\",\"prefixed\":\"ds:global.component.accordion\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Accordion\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.announcement\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.announcement\",\"prefixed\":\"ds:global.component.announcement\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Announcement\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.avatar\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.avatar\",\"prefixed\":\"ds:global.component.avatar\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Avatar\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.badge\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.badge\",\"prefixed\":\"ds:global.component.badge\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Badge\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.breadcrumbs\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.breadcrumbs\",\"prefixed\":\"ds:global.component.breadcrumbs\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Breadcrumbs\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.button\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.button\",\"prefixed\":\"ds:global.component.button\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Button\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.button_link\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.button_link\",\"prefixed\":\"ds:global.component.button_link\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"ButtonLink\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.card\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.card\",\"prefixed\":\"ds:global.component.card\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Card\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.checkbox_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.checkbox_field\",\"prefixed\":\"ds:global.component.checkbox_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"CheckboxField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.chip\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.chip\",\"prefixed\":\"ds:global.component.chip\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Chip\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.choices_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.choices_field\",\"prefixed\":\"ds:global.component.choices_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"ChoicesField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.code_snippet\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.code_snippet\",\"prefixed\":\"ds:global.component.code_snippet\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"CodeSnippet\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.code_snippet-content\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.code_snippet-content\",\"prefixed\":\"ds:global.component.code_snippet-content\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"CodeSnippet.Content\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.code_snippet-header\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.code_snippet-header\",\"prefixed\":\"ds:global.component.code_snippet-header\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"CodeSnippet.Header\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.color_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.color_field\",\"prefixed\":\"ds:global.component.color_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"ColorField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.combobox_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.combobox_field\",\"prefixed\":\"ds:global.component.combobox_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"ComboboxField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.contextual_menu\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.contextual_menu\",\"prefixed\":\"ds:global.component.contextual_menu\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"ContextualMenu\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.data_tooltip\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.data_tooltip\",\"prefixed\":\"ds:global.component.data_tooltip\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"DataTooltip\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.date_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.date_field\",\"prefixed\":\"ds:global.component.date_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"DateField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.date_time_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.date_time_field\",\"prefixed\":\"ds:global.component.date_time_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"DateTimeField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.dropdown_button\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.dropdown_button\",\"prefixed\":\"ds:global.component.dropdown_button\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"DropdownButton\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.file_upload_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.file_upload_field\",\"prefixed\":\"ds:global.component.file_upload_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"FileUploadField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.heading\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.heading\",\"prefixed\":\"ds:global.component.heading\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Heading\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.hidden_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.hidden_field\",\"prefixed\":\"ds:global.component.hidden_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"HiddenField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.icon\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.icon\",\"prefixed\":\"ds:global.component.icon\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Icon\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.icon_in_container\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.icon_in_container\",\"prefixed\":\"ds:global.component.icon_in_container\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Icon in Container\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.inline_code\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.inline_code\",\"prefixed\":\"ds:global.component.inline_code\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"InlineCode\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.keyboard_key\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.keyboard_key\",\"prefixed\":\"ds:global.component.keyboard_key\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"KeyboardKey\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.markdown_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.markdown_field\",\"prefixed\":\"ds:global.component.markdown_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"MarkdownField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.mode_switcher\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.mode_switcher\",\"prefixed\":\"ds:global.component.mode_switcher\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"ModeSwitcher\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.month_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.month_field\",\"prefixed\":\"ds:global.component.month_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"MonthField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.notification_inline\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.notification_inline\",\"prefixed\":\"ds:global.component.notification_inline\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"NotificationInline\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.notification_toast\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.notification_toast\",\"prefixed\":\"ds:global.component.notification_toast\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"NotificationToast\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.number_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.number_field\",\"prefixed\":\"ds:global.component.number_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"NumberField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.pagination\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.pagination\",\"prefixed\":\"ds:global.component.pagination\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Pagination\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.password_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.password_field\",\"prefixed\":\"ds:global.component.password_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"PasswordField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.phone_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.phone_field\",\"prefixed\":\"ds:global.component.phone_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"PhoneField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.popover\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.popover\",\"prefixed\":\"ds:global.component.popover\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Popover\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.range_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.range_field\",\"prefixed\":\"ds:global.component.range_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"RangeField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.rating_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.rating_field\",\"prefixed\":\"ds:global.component.rating_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"RatingField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.relative_timestamp\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.relative_timestamp\",\"prefixed\":\"ds:global.component.relative_timestamp\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"RelativeTimestamp\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.rich_choices_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.rich_choices_field\",\"prefixed\":\"ds:global.component.rich_choices_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"RichChoicesField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.rich_text_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.rich_text_field\",\"prefixed\":\"ds:global.component.rich_text_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"RichTextField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.search_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.search_field\",\"prefixed\":\"ds:global.component.search_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"SearchField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.segmented_control_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.segmented_control_field\",\"prefixed\":\"ds:global.component.segmented_control_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"SegmentedControlField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.select_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.select_field\",\"prefixed\":\"ds:global.component.select_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"SelectField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.switch_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.switch_field\",\"prefixed\":\"ds:global.component.switch_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"SwitchField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.table\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.table\",\"prefixed\":\"ds:global.component.table\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Table\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.tabs\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.tabs\",\"prefixed\":\"ds:global.component.tabs\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Tabs\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.tag\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.tag\",\"prefixed\":\"ds:global.component.tag\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Tag\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.text_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.text_field\",\"prefixed\":\"ds:global.component.text_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"TextField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.textarea_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.textarea_field\",\"prefixed\":\"ds:global.component.textarea_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"TextareaField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.tile\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.tile\",\"prefixed\":\"ds:global.component.tile\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Tile\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.time_field\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.time_field\",\"prefixed\":\"ds:global.component.time_field\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"TimeField\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.timestamp\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.timestamp\",\"prefixed\":\"ds:global.component.timestamp\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Timestamp\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.tooltip\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.tooltip\",\"prefixed\":\"ds:global.component.tooltip\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Tooltip\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.component.tooltip_wrapper\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/global.component.tooltip_wrapper\",\"prefixed\":\"ds:global.component.tooltip_wrapper\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"TooltipWrapper\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.group.buttons\",\"type\":\"ds:Group\",\"uri\":\"https://ds.canonical.com/global.group.buttons\",\"prefixed\":\"ds:global.group.buttons\",\"types\":[\"ds:Group\"],\"label\":null,\"altNames\":[\"Buttons\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.group.cards\",\"type\":\"ds:Group\",\"uri\":\"https://ds.canonical.com/global.group.cards\",\"prefixed\":\"ds:global.group.cards\",\"types\":[\"ds:Group\"],\"label\":null,\"altNames\":[\"Cards\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.group.code_snippets\",\"type\":\"ds:Group\",\"uri\":\"https://ds.canonical.com/global.group.code_snippets\",\"prefixed\":\"ds:global.group.code_snippets\",\"types\":[\"ds:Group\"],\"label\":null,\"altNames\":[\"CodeSnippets\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.group.keyboard_keys\",\"type\":\"ds:Group\",\"uri\":\"https://ds.canonical.com/global.group.keyboard_keys\",\"prefixed\":\"ds:global.group.keyboard_keys\",\"types\":[\"ds:Group\"],\"label\":null,\"altNames\":[\"KeyboardKeys\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.group.tiles\",\"type\":\"ds:Group\",\"uri\":\"https://ds.canonical.com/global.group.tiles\",\"prefixed\":\"ds:global.group.tiles\",\"types\":[\"ds:Group\"],\"label\":null,\"altNames\":[\"Tiles\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.layout.error_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/global.layout.error_layout\",\"prefixed\":\"ds:global.layout.error_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"ErrorLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.layout.form_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/global.layout.form_layout\",\"prefixed\":\"ds:global.layout.form_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"FormLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.layout.identity_page_form\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/global.layout.identity_page_form\",\"prefixed\":\"ds:global.layout.identity_page_form\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"Identity page / form\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.alpha\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.alpha\",\"prefixed\":\"ds:global.modifier.alpha\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Alpha\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.beta\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.beta\",\"prefixed\":\"ds:global.modifier.beta\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Beta\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.caution\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.caution\",\"prefixed\":\"ds:global.modifier.caution\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Caution\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.comfortable\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.comfortable\",\"prefixed\":\"ds:global.modifier.comfortable\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Comfortable\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.completed\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.completed\",\"prefixed\":\"ds:global.modifier.completed\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Completed\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.constructive\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.constructive\",\"prefixed\":\"ds:global.modifier.constructive\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Constructive\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.dark\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.dark\",\"prefixed\":\"ds:global.modifier.dark\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Dark\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.dense\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.dense\",\"prefixed\":\"ds:global.modifier.dense\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Dense\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.destructive\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.destructive\",\"prefixed\":\"ds:global.modifier.destructive\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Destructive\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.editable\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.editable\",\"prefixed\":\"ds:global.modifier.editable\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Editable\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.elevated\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.elevated\",\"prefixed\":\"ds:global.modifier.elevated\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Elevated (?)\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.error\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.error\",\"prefixed\":\"ds:global.modifier.error\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Error\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.experimental\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.experimental\",\"prefixed\":\"ds:global.modifier.experimental\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Experimental\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.failed\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.failed\",\"prefixed\":\"ds:global.modifier.failed\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Failed\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.focused\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.focused\",\"prefixed\":\"ds:global.modifier.focused\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Focused (?)\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.highlighted\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.highlighted\",\"prefixed\":\"ds:global.modifier.highlighted\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Highlighted\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.in_progress\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.in_progress\",\"prefixed\":\"ds:global.modifier.in_progress\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"In Progress\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.information\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.information\",\"prefixed\":\"ds:global.modifier.information\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Information\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.light\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.light\",\"prefixed\":\"ds:global.modifier.light\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Light\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.loading\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.loading\",\"prefixed\":\"ds:global.modifier.loading\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Loading\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.modal\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.modal\",\"prefixed\":\"ds:global.modifier.modal\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Modal\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.muted\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.muted\",\"prefixed\":\"ds:global.modifier.muted\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Muted\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.planned\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.planned\",\"prefixed\":\"ds:global.modifier.planned\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Planned\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.primary\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.primary\",\"prefixed\":\"ds:global.modifier.primary\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Primary\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.secondary\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.secondary\",\"prefixed\":\"ds:global.modifier.secondary\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Secondary\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.stable\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.stable\",\"prefixed\":\"ds:global.modifier.stable\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Stable\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.success\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.success\",\"prefixed\":\"ds:global.modifier.success\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Success\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.surface1\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.surface1\",\"prefixed\":\"ds:global.modifier.surface1\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Surface1\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.surface2\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.surface2\",\"prefixed\":\"ds:global.modifier.surface2\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Surface2\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.surface3\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.surface3\",\"prefixed\":\"ds:global.modifier.surface3\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Surface3\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.tertiary\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.tertiary\",\"prefixed\":\"ds:global.modifier.tertiary\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Tertiary\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.warning\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.warning\",\"prefixed\":\"ds:global.modifier.warning\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Warning\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier.wireframe\",\"type\":\"ds:Modifier\",\"uri\":\"https://ds.canonical.com/global.modifier.wireframe\",\"prefixed\":\"ds:global.modifier.wireframe\",\"types\":[\"ds:Modifier\"],\"label\":null,\"altNames\":[\"Wireframe (?)\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family._color_luminosity\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family._color_luminosity\",\"prefixed\":\"ds:global.modifier_family._color_luminosity\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"(Color luminosity)\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family._emphasis\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family._emphasis\",\"prefixed\":\"ds:global.modifier_family._emphasis\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"(Emphasis)\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family._other\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family._other\",\"prefixed\":\"ds:global.modifier_family._other\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"(Other)\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family.anticipation\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family.anticipation\",\"prefixed\":\"ds:global.modifier_family.anticipation\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"Anticipation\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family.criticality\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family.criticality\",\"prefixed\":\"ds:global.modifier_family.criticality\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"Criticality\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family.density\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family.density\",\"prefixed\":\"ds:global.modifier_family.density\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"Density\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family.importance\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family.importance\",\"prefixed\":\"ds:global.modifier_family.importance\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"Importance\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family.lifecycle\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family.lifecycle\",\"prefixed\":\"ds:global.modifier_family.lifecycle\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"Lifecycle\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family.mode\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family.mode\",\"prefixed\":\"ds:global.modifier_family.mode\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"Mode\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family.release\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family.release\",\"prefixed\":\"ds:global.modifier_family.release\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"Release\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.modifier_family.surface\",\"type\":\"ds:ModifierFamily\",\"uri\":\"https://ds.canonical.com/global.modifier_family.surface\",\"prefixed\":\"ds:global.modifier_family.surface\",\"types\":[\"ds:ModifierFamily\"],\"label\":null,\"altNames\":[\"Surface\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.description_list\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.description_list\",\"prefixed\":\"ds:global.pattern.description_list\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"DescriptionList\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.field\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.field\",\"prefixed\":\"ds:global.pattern.field\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Field\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.form\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.form\",\"prefixed\":\"ds:global.pattern.form\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Form\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.form_login\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.form_login\",\"prefixed\":\"ds:global.pattern.form_login\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"FormLogin\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.info_table\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.info_table\",\"prefixed\":\"ds:global.pattern.info_table\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"InfoTable\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.modal\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.modal\",\"prefixed\":\"ds:global.pattern.modal\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Modal\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.navigation\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.navigation\",\"prefixed\":\"ds:global.pattern.navigation\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Navigation\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.stepper\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.stepper\",\"prefixed\":\"ds:global.pattern.stepper\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Stepper\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.table_of_contents\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.table_of_contents\",\"prefixed\":\"ds:global.pattern.table_of_contents\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"TableOfContents\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.pattern.timeline\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/global.pattern.timeline\",\"prefixed\":\"ds:global.pattern.timeline\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Timeline\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.accordion-item\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.accordion-item\",\"prefixed\":\"ds:global.subcomponent.accordion-item\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Accordion.Item\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.breadcrumbs-item\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.breadcrumbs-item\",\"prefixed\":\"ds:global.subcomponent.breadcrumbs-item\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Breadcrumbs.Item\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.card-content\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.card-content\",\"prefixed\":\"ds:global.subcomponent.card-content\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Card.Content\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.card-footer\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.card-footer\",\"prefixed\":\"ds:global.subcomponent.card-footer\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Card.Footer\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.card-header\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.card-header\",\"prefixed\":\"ds:global.subcomponent.card-header\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Card.Header\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.card-image\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.card-image\",\"prefixed\":\"ds:global.subcomponent.card-image\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Card.Image\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.card-thumbnail\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.card-thumbnail\",\"prefixed\":\"ds:global.subcomponent.card-thumbnail\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Card.Thumbnail\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.chart_legend\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.chart_legend\",\"prefixed\":\"ds:global.subcomponent.chart_legend\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"ChartLegend\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.chart_legend_item\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.chart_legend_item\",\"prefixed\":\"ds:global.subcomponent.chart_legend_item\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"ChartLegendItem\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.checkbox_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.checkbox_input\",\"prefixed\":\"ds:global.subcomponent.checkbox_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"CheckboxInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.color_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.color_input\",\"prefixed\":\"ds:global.subcomponent.color_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"ColorInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.combobox_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.combobox_input\",\"prefixed\":\"ds:global.subcomponent.combobox_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"ComboboxInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.date_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.date_input\",\"prefixed\":\"ds:global.subcomponent.date_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DateInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.date_time_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.date_time_input\",\"prefixed\":\"ds:global.subcomponent.date_time_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"DateTimeInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.field-description\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.field-description\",\"prefixed\":\"ds:global.subcomponent.field-description\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Field.Description\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.field-label\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.field-label\",\"prefixed\":\"ds:global.subcomponent.field-label\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Field.Label\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.file_upload_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.file_upload_input\",\"prefixed\":\"ds:global.subcomponent.file_upload_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"FileUploadInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.hidden_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.hidden_input\",\"prefixed\":\"ds:global.subcomponent.hidden_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"HiddenInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.kvp_container\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.kvp_container\",\"prefixed\":\"ds:global.subcomponent.kvp_container\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"KVP (container)\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.kvpitem_base\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.kvpitem_base\",\"prefixed\":\"ds:global.subcomponent.kvpitem_base\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"KVPItem (base)\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.markdown_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.markdown_input\",\"prefixed\":\"ds:global.subcomponent.markdown_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"MarkdownInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.modal-content\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.modal-content\",\"prefixed\":\"ds:global.subcomponent.modal-content\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Modal.Content\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.modal-footer\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.modal-footer\",\"prefixed\":\"ds:global.subcomponent.modal-footer\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Modal.Footer\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.modal-header\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.modal-header\",\"prefixed\":\"ds:global.subcomponent.modal-header\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Modal.Header\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.month_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.month_input\",\"prefixed\":\"ds:global.subcomponent.month_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"MonthInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.number_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.number_input\",\"prefixed\":\"ds:global.subcomponent.number_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"NumberInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.password_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.password_input\",\"prefixed\":\"ds:global.subcomponent.password_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"PasswordInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.phone_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.phone_input\",\"prefixed\":\"ds:global.subcomponent.phone_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"PhoneInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.radio_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.radio_input\",\"prefixed\":\"ds:global.subcomponent.radio_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"RadioInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.range_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.range_input\",\"prefixed\":\"ds:global.subcomponent.range_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"RangeInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.rating_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.rating_input\",\"prefixed\":\"ds:global.subcomponent.rating_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"RatingInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.rich_text_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.rich_text_input\",\"prefixed\":\"ds:global.subcomponent.rich_text_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"RichTextInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.search_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.search_input\",\"prefixed\":\"ds:global.subcomponent.search_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SearchInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.segmented_control_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.segmented_control_input\",\"prefixed\":\"ds:global.subcomponent.segmented_control_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SegmentedControlInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.select_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.select_input\",\"prefixed\":\"ds:global.subcomponent.select_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SelectInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.spin_button\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.spin_button\",\"prefixed\":\"ds:global.subcomponent.spin_button\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SpinButton\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.spinner\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.spinner\",\"prefixed\":\"ds:global.subcomponent.spinner\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Spinner\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.switch_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.switch_input\",\"prefixed\":\"ds:global.subcomponent.switch_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"SwitchInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.table-cell\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.table-cell\",\"prefixed\":\"ds:global.subcomponent.table-cell\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Table.Cell\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.table-row\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.table-row\",\"prefixed\":\"ds:global.subcomponent.table-row\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Table.Row\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.text_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.text_input\",\"prefixed\":\"ds:global.subcomponent.text_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"TextInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.textarea_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.textarea_input\",\"prefixed\":\"ds:global.subcomponent.textarea_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"TextareaInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.tile-content\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.tile-content\",\"prefixed\":\"ds:global.subcomponent.tile-content\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Tile.Content\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.tile-header\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.tile-header\",\"prefixed\":\"ds:global.subcomponent.tile-header\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Tile.Header\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.time_input\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.time_input\",\"prefixed\":\"ds:global.subcomponent.time_input\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"TimeInput\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.timeline-content\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.timeline-content\",\"prefixed\":\"ds:global.subcomponent.timeline-content\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Timeline.Content\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.timeline-event\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.timeline-event\",\"prefixed\":\"ds:global.subcomponent.timeline-event\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Timeline.Event\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.timeline-expansion_indicator\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.timeline-expansion_indicator\",\"prefixed\":\"ds:global.subcomponent.timeline-expansion_indicator\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Timeline.ExpansionIndicator\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.subcomponent.timeline-header\",\"type\":\"ds:Subcomponent\",\"uri\":\"https://ds.canonical.com/global.subcomponent.timeline-header\",\"prefixed\":\"ds:global.subcomponent.timeline-header\",\"types\":[\"ds:Subcomponent\"],\"label\":null,\"altNames\":[\"Timeline.Header\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.variant.tooltip_dense\",\"type\":\"ds:Variant\",\"uri\":\"https://ds.canonical.com/global.variant.tooltip_dense\",\"prefixed\":\"ds:global.variant.tooltip_dense\",\"types\":[\"ds:Variant\"],\"label\":null,\"altNames\":[\"Tooltip+Dense\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:global.view.settings_view\",\"type\":\"ds:View\",\"uri\":\"https://ds.canonical.com/global.view.settings_view\",\"prefixed\":\"ds:global.view.settings_view\",\"types\":[\"ds:View\"],\"label\":null,\"altNames\":[\"SettingsView\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:grid\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/grid\",\"prefixed\":\"ds:grid\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"grid\",\"box\":\"tbox\",\"description\":\"CSS grid template definition for this layout\"},{\"name\":\"ds:gridAreas\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/gridAreas\",\"prefixed\":\"ds:gridAreas\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"gridAreas\",\"box\":\"tbox\",\"description\":\"Named CSS grid areas defined by this layout\"},{\"name\":\"ds:guidelines\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/guidelines\",\"prefixed\":\"ds:guidelines\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"guidelines\",\"box\":\"tbox\",\"description\":\"Detailed specification for correctly using and implementing the UI block.\"},{\"name\":\"ds:hasModifier\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/hasModifier\",\"prefixed\":\"ds:hasModifier\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"hasModifier\",\"box\":\"tbox\",\"description\":\"Modifiers belonging to this modifier family\"},{\"name\":\"ds:hasModifierFamily\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/hasModifierFamily\",\"prefixed\":\"ds:hasModifierFamily\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"hasModifierFamily\",\"box\":\"tbox\",\"description\":\"Links a UI Block to applicable modifier families\"},{\"name\":\"ds:hasProperty\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/hasProperty\",\"prefixed\":\"ds:hasProperty\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"hasProperty\",\"box\":\"tbox\",\"description\":\"Links a UI Block to its configurable properties\"},{\"name\":\"ds:hasSubcomponent\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/hasSubcomponent\",\"prefixed\":\"ds:hasSubcomponent\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"hasSubcomponent\",\"box\":\"tbox\",\"description\":\"Subcomponents that are structural parts of this component\"},{\"name\":\"ds:hasVariant\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/hasVariant\",\"prefixed\":\"ds:hasVariant\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"hasVariant\",\"box\":\"tbox\",\"description\":\"The variants of this UI Block (inverse of ds:variantOf). E.g. Tooltip has variant Tooltip+Dense.\"},{\"name\":\"ds:headLink\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/headLink\",\"prefixed\":\"ds:headLink\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"headLink\",\"box\":\"tbox\",\"description\":\"URL to the latest/HEAD version of this implementation in source control\"},{\"name\":\"ds:implementation.ds-types.global.modifier_family.anticipation\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.ds-types.global.modifier_family.anticipation\",\"prefixed\":\"ds:implementation.ds-types.global.modifier_family.anticipation\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.ds-types.global.modifier_family.criticality\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.ds-types.global.modifier_family.criticality\",\"prefixed\":\"ds:implementation.ds-types.global.modifier_family.criticality\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.ds-types.global.modifier_family.density\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.ds-types.global.modifier_family.density\",\"prefixed\":\"ds:implementation.ds-types.global.modifier_family.density\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.ds-types.global.modifier_family.emphasis\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.ds-types.global.modifier_family.emphasis\",\"prefixed\":\"ds:implementation.ds-types.global.modifier_family.emphasis\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.ds-types.global.modifier_family.importance\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.ds-types.global.modifier_family.importance\",\"prefixed\":\"ds:implementation.ds-types.global.modifier_family.importance\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.ds-types.global.modifier_family.lifecycle\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.ds-types.global.modifier_family.lifecycle\",\"prefixed\":\"ds:implementation.ds-types.global.modifier_family.lifecycle\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.ds-types.global.modifier_family.release\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.ds-types.global.modifier_family.release\",\"prefixed\":\"ds:implementation.ds-types.global.modifier_family.release\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.ds-types.global.modifier_family.severity\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.ds-types.global.modifier_family.severity\",\"prefixed\":\"ds:implementation.ds-types.global.modifier_family.severity\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.library.ds-types\",\"type\":\"ds:ImplementationLibrary\",\"uri\":\"https://ds.canonical.com/implementation.library.ds-types\",\"prefixed\":\"ds:implementation.library.ds-types\",\"types\":[\"ds:ImplementationLibrary\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.library.react-ds-global\",\"type\":\"ds:ImplementationLibrary\",\"uri\":\"https://ds.canonical.com/implementation.library.react-ds-global\",\"prefixed\":\"ds:implementation.library.react-ds-global\",\"types\":[\"ds:ImplementationLibrary\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.library.react-ds-global-form\",\"type\":\"ds:ImplementationLibrary\",\"uri\":\"https://ds.canonical.com/implementation.library.react-ds-global-form\",\"prefixed\":\"ds:implementation.library.react-ds-global-form\",\"types\":[\"ds:ImplementationLibrary\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.library.svelte-ds-global\",\"type\":\"ds:ImplementationLibrary\",\"uri\":\"https://ds.canonical.com/implementation.library.svelte-ds-global\",\"prefixed\":\"ds:implementation.library.svelte-ds-global\",\"types\":[\"ds:ImplementationLibrary\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.checkbox_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.checkbox_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.checkbox_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.choices_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.choices_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.choices_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.color_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.color_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.color_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.combobox_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.combobox_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.combobox_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.date_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.date_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.date_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.date_time_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.date_time_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.date_time_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.file_upload_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.file_upload_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.file_upload_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.hidden_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.hidden_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.hidden_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.number_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.number_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.number_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.password_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.password_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.password_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.phone_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.phone_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.phone_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.range_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.range_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.range_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.rating_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.rating_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.rating_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.rich_choices_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.rich_choices_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.rich_choices_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.select_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.select_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.select_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.switch_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.switch_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.switch_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.text_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.text_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.text_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.textarea_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.textarea_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.textarea_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.component.time_field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.component.time_field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.component.time_field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.pattern.field\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.pattern.field\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.pattern.field\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.pattern.form\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.pattern.form\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.pattern.form\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.checkbox_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.checkbox_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.checkbox_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.color_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.color_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.color_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.combobox_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.combobox_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.combobox_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.date_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.date_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.date_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.date_time_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.date_time_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.date_time_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.field-description\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.field-description\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.field-description\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.field-label\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.field-label\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.field-label\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.file_upload_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.file_upload_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.file_upload_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.hidden_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.hidden_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.hidden_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.number_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.number_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.number_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.password_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.password_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.password_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.phone_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.phone_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.phone_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.radio_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.radio_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.radio_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.range_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.range_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.range_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.rating_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.rating_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.rating_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.select_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.select_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.select_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.switch_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.switch_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.switch_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.text_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.text_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.text_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.textarea_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.textarea_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.textarea_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global-form.global.subcomponent.time_input\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global-form.global.subcomponent.time_input\",\"prefixed\":\"ds:implementation.react-ds-global-form.global.subcomponent.time_input\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.accordion\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.accordion\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.accordion\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.announcement\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.announcement\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.announcement\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.badge\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.badge\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.badge\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.breadcrumbs\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.breadcrumbs\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.breadcrumbs\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.button\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.button\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.button\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.card\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.card\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.card\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.chip\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.chip\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.chip\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.contextual_menu\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.contextual_menu\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.contextual_menu\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.heading\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.heading\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.heading\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.icon\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.icon\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.icon\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.inline_code\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.inline_code\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.inline_code\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.keyboard_key\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.keyboard_key\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.keyboard_key\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.label\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.label\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.label\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.link\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.link\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.link\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.popover\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.popover\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.popover\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.tabs\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.tabs\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.tabs\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.tile\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.tile\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.tile\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.tooltip\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.tooltip\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.tooltip\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.component.tooltip_wrapper\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.component.tooltip_wrapper\",\"prefixed\":\"ds:implementation.react-ds-global.global.component.tooltip_wrapper\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.group.cards\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.group.cards\",\"prefixed\":\"ds:implementation.react-ds-global.global.group.cards\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.group.keyboard_keys\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.group.keyboard_keys\",\"prefixed\":\"ds:implementation.react-ds-global.global.group.keyboard_keys\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.pattern.skip_link\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.pattern.skip_link\",\"prefixed\":\"ds:implementation.react-ds-global.global.pattern.skip_link\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.pattern.timeline\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.pattern.timeline\",\"prefixed\":\"ds:implementation.react-ds-global.global.pattern.timeline\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.accordion-item\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.accordion-item\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.accordion-item\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.breadcrumbs-item\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.breadcrumbs-item\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.breadcrumbs-item\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.card-content\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.card-content\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.card-content\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.card-footer\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.card-footer\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.card-footer\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.card-header\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.card-header\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.card-header\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.card-image\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.card-image\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.card-image\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.contextual-menu-item\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.contextual-menu-item\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.contextual-menu-item\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.spinner\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.spinner\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.spinner\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.tile-content\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.tile-content\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.tile-content\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.tile-header\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.tile-header\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.tile-header\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.timeline-content\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.timeline-content\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.timeline-content\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.global.subcomponent.timeline-event\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.global.subcomponent.timeline-event\",\"prefixed\":\"ds:implementation.react-ds-global.global.subcomponent.timeline-event\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.site.component.rule\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.site.component.rule\",\"prefixed\":\"ds:implementation.react-ds-global.site.component.rule\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.react-ds-global.site.component.section\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.react-ds-global.site.component.section\",\"prefixed\":\"ds:implementation.react-ds-global.site.component.section\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.svelte-ds-global.global.component.breadcrumbs\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.svelte-ds-global.global.component.breadcrumbs\",\"prefixed\":\"ds:implementation.svelte-ds-global.global.component.breadcrumbs\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.svelte-ds-global.global.pattern.skip_link\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.svelte-ds-global.global.pattern.skip_link\",\"prefixed\":\"ds:implementation.svelte-ds-global.global.pattern.skip_link\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementation.svelte-ds-global.global.subcomponent.breadcrumbs-item\",\"type\":\"ds:ImplementationObject\",\"uri\":\"https://ds.canonical.com/implementation.svelte-ds-global.global.subcomponent.breadcrumbs-item\",\"prefixed\":\"ds:implementation.svelte-ds-global.global.subcomponent.breadcrumbs-item\",\"types\":[\"ds:ImplementationObject\"],\"label\":null,\"box\":\"abox\",\"description\":null},{\"name\":\"ds:implementationVersion\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/implementationVersion\",\"prefixed\":\"ds:implementationVersion\",\"types\":[\"owl:FunctionalProperty\",\"owl:DatatypeProperty\"],\"label\":\"implementationVersion\",\"box\":\"tbox\",\"description\":\"Version of this specific implementation, independent of the UIBlock version\"},{\"name\":\"ds:implementsBlock\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/implementsBlock\",\"prefixed\":\"ds:implementsBlock\",\"types\":[\"owl:FunctionalProperty\",\"owl:ObjectProperty\"],\"label\":\"implementsBlock\",\"box\":\"tbox\",\"description\":\"The UIBlock that this implementation realises in code\"},{\"name\":\"ds:inheritsFrom\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/inheritsFrom\",\"prefixed\":\"ds:inheritsFrom\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"inheritsFrom\",\"box\":\"tbox\",\"description\":\"The UI Block this block inherits from / specialises (e.g. a Data tooltip inherits from Tooltip). Distinct from subcomponent containment: inheritance is an is-a-specialisation relationship.\"},{\"name\":\"ds:isDraft\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/isDraft\",\"prefixed\":\"ds:isDraft\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"isDraft\",\"box\":\"tbox\",\"description\":\"Whether this implementation is in draft state and not yet ready for production use\"},{\"name\":\"ds:knownEdgeCases\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/knownEdgeCases\",\"prefixed\":\"ds:knownEdgeCases\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"known edge cases\",\"box\":\"tbox\",\"description\":\"Free-text notes on edge cases, caveats, or open questions for the Concept.\"},{\"name\":\"ds:library\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/library\",\"prefixed\":\"ds:library\",\"types\":[\"owl:FunctionalProperty\",\"owl:ObjectProperty\"],\"label\":\"library\",\"box\":\"tbox\",\"description\":\"The implementation library that contains this implementation\"},{\"name\":\"ds:libraryName\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/libraryName\",\"prefixed\":\"ds:libraryName\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"libraryName\",\"box\":\"tbox\",\"description\":\"The package or library name as published (e.g. npm package name)\"},{\"name\":\"ds:libraryTier\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/libraryTier\",\"prefixed\":\"ds:libraryTier\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"libraryTier\",\"box\":\"tbox\",\"description\":\"The design system tier that this library implements\"},{\"name\":\"ds:link\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/link\",\"prefixed\":\"ds:link\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"link\",\"box\":\"tbox\",\"description\":\"URL to the library's main artifact or repository\"},{\"name\":\"ds:modifierFamily\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/modifierFamily\",\"prefixed\":\"ds:modifierFamily\",\"types\":[\"owl:FunctionalProperty\",\"owl:ObjectProperty\"],\"label\":\"modifierFamily\",\"box\":\"tbox\",\"description\":\"The modifier family to which this modifier belongs\"},{\"name\":\"ds:name\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/name\",\"prefixed\":\"ds:name\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"name\",\"box\":\"tbox\",\"description\":\"A human-readable text for the entity. The primary identifier, used for referencing and display purposes.\"},{\"name\":\"ds:optional\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/optional\",\"prefixed\":\"ds:optional\",\"types\":[\"owl:FunctionalProperty\",\"owl:DatatypeProperty\"],\"label\":\"optional\",\"box\":\"tbox\",\"description\":\"Whether this property is optional when configuring the UI Block\"},{\"name\":\"ds:owner\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/owner\",\"prefixed\":\"ds:owner\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"owner\",\"box\":\"tbox\",\"description\":\"The person responsible for the change\"},{\"name\":\"ds:parentComponent\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/parentComponent\",\"prefixed\":\"ds:parentComponent\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"parentComponent\",\"box\":\"tbox\",\"description\":\"The component to which this subcomponent structurally belongs\"},{\"name\":\"ds:platform\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/platform\",\"prefixed\":\"ds:platform\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"platform\",\"box\":\"tbox\",\"description\":\"The platform or technology this library targets (e.g. React, Web Components, Flutter)\"},{\"name\":\"ds:propertyType\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/propertyType\",\"prefixed\":\"ds:propertyType\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"propertyType\",\"box\":\"tbox\",\"description\":\"The data type of this configurable property (e.g. text, choice, boolean, node)\"},{\"name\":\"ds:sites\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/sites\",\"prefixed\":\"ds:sites\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Sites\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.component.blog_card\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/sites.component.blog_card\",\"prefixed\":\"ds:sites.component.blog_card\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"BlogCard\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.component.quote\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/sites.component.quote\",\"prefixed\":\"ds:sites.component.quote\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Quote\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.component.rule\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/sites.component.rule\",\"prefixed\":\"ds:sites.component.rule\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Rule\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.component.section\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/sites.component.section\",\"prefixed\":\"ds:sites.component.section\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Section\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.group.blog_cards\",\"type\":\"ds:Group\",\"uri\":\"https://ds.canonical.com/sites.group.blog_cards\",\"prefixed\":\"ds:sites.group.blog_cards\",\"types\":[\"ds:Group\"],\"label\":null,\"altNames\":[\"BlogCards\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.group.xblog_elements\",\"type\":\"ds:Group\",\"uri\":\"https://ds.canonical.com/sites.group.xblog_elements\",\"prefixed\":\"ds:sites.group.xblog_elements\",\"types\":[\"ds:Group\"],\"label\":null,\"altNames\":[\"XBlogElements\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.layout.blog_page_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/sites.layout.blog_page_layout\",\"prefixed\":\"ds:sites.layout.blog_page_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"BlogPageLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.layout.case_study_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/sites.layout.case_study_layout\",\"prefixed\":\"ds:sites.layout.case_study_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"CaseStudyLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.layout.site_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/sites.layout.site_layout\",\"prefixed\":\"ds:sites.layout.site_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"SiteLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.pattern.hero\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites.pattern.hero\",\"prefixed\":\"ds:sites.pattern.hero\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Hero\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.pattern.hero-github\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites.pattern.hero-github\",\"prefixed\":\"ds:sites.pattern.hero-github\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Hero.Github\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.pattern.info_table\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites.pattern.info_table\",\"prefixed\":\"ds:sites.pattern.info_table\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"InfoTable\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.pattern.pricing_section\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites.pattern.pricing_section\",\"prefixed\":\"ds:sites.pattern.pricing_section\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"PricingSection\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.pattern.pricing_table\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites.pattern.pricing_table\",\"prefixed\":\"ds:sites.pattern.pricing_table\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"PricingTable\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.pattern.read_more_section\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites.pattern.read_more_section\",\"prefixed\":\"ds:sites.pattern.read_more_section\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"ReadMoreSection\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites.pattern.skip_link\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites.pattern.skip_link\",\"prefixed\":\"ds:sites.pattern.skip_link\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"SkipLink\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype\",\"prefixed\":\"ds:sites_webcomponentsprototype\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Sites/WebComponentsPrototype\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.component.blog_cards\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.component.blog_cards\",\"prefixed\":\"ds:sites_webcomponentsprototype.component.blog_cards\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"BlogCards\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.component.ctablock\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.component.ctablock\",\"prefixed\":\"ds:sites_webcomponentsprototype.component.ctablock\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"CTABlock\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.component.list\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.component.list\",\"prefixed\":\"ds:sites_webcomponentsprototype.component.list\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"List\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.component.tabs\",\"type\":\"ds:Component\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.component.tabs\",\"prefixed\":\"ds:sites_webcomponentsprototype.component.tabs\",\"types\":[\"ds:Component\"],\"label\":null,\"altNames\":[\"Tabs\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.layout.site_layout\",\"type\":\"ds:Layout\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.layout.site_layout\",\"prefixed\":\"ds:sites_webcomponentsprototype.layout.site_layout\",\"types\":[\"ds:Layout\"],\"label\":null,\"altNames\":[\"SiteLayout\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.pattern.basic_section\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.pattern.basic_section\",\"prefixed\":\"ds:sites_webcomponentsprototype.pattern.basic_section\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"BasicSection\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.pattern.blog_section\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.pattern.blog_section\",\"prefixed\":\"ds:sites_webcomponentsprototype.pattern.blog_section\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"BlogSection\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.pattern.ctasection\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.pattern.ctasection\",\"prefixed\":\"ds:sites_webcomponentsprototype.pattern.ctasection\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"CTASection\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.pattern.equal_heights\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.pattern.equal_heights\",\"prefixed\":\"ds:sites_webcomponentsprototype.pattern.equal_heights\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"EqualHeights\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.pattern.hero\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.pattern.hero\",\"prefixed\":\"ds:sites_webcomponentsprototype.pattern.hero\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Hero\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.pattern.logo_section\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.pattern.logo_section\",\"prefixed\":\"ds:sites_webcomponentsprototype.pattern.logo_section\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"LogoSection\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.pattern.quote_wrapper\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.pattern.quote_wrapper\",\"prefixed\":\"ds:sites_webcomponentsprototype.pattern.quote_wrapper\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"QuoteWrapper\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:sites_webcomponentsprototype.pattern.tiered_list\",\"type\":\"ds:Pattern\",\"uri\":\"https://ds.canonical.com/sites_webcomponentsprototype.pattern.tiered_list\",\"prefixed\":\"ds:sites_webcomponentsprototype.pattern.tiered_list\",\"types\":[\"ds:Pattern\"],\"label\":null,\"altNames\":[\"Tiered list\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:specializedBy\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/specializedBy\",\"prefixed\":\"ds:specializedBy\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"specializedBy\",\"box\":\"tbox\",\"description\":\"The UI Blocks that inherit from / specialise this block (inverse of ds:inheritsFrom). E.g. Tooltip is specialised by DataTooltip.\"},{\"name\":\"ds:standalone\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/standalone\",\"prefixed\":\"ds:standalone\",\"types\":[\"owl:FunctionalProperty\",\"owl:DatatypeProperty\"],\"label\":\"standalone\",\"box\":\"tbox\",\"description\":\"Whether this subcomponent can be used independently outside its parent component\"},{\"name\":\"ds:stores\",\"type\":\"ds:Tier\",\"uri\":\"https://ds.canonical.com/stores\",\"prefixed\":\"ds:stores\",\"types\":[\"ds:Tier\"],\"label\":null,\"altNames\":[\"Stores\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:summary\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/summary\",\"prefixed\":\"ds:summary\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"summary\",\"box\":\"tbox\",\"description\":\"A comprehensive paragraph of text that states the singular purpose of the entity.\"},{\"name\":\"ds:tag.allgood\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.allgood\",\"prefixed\":\"ds:tag.allgood\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"all_good\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.beta\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.beta\",\"prefixed\":\"ds:tag.beta\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"beta\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.candidate\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.candidate\",\"prefixed\":\"ds:tag.candidate\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"candidate\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.devbatch1\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.devbatch1\",\"prefixed\":\"ds:tag.devbatch1\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"dev:batch1\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.devbatch2\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.devbatch2\",\"prefixed\":\"ds:tag.devbatch2\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"dev:batch2\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.devexternal\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.devexternal\",\"prefixed\":\"ds:tag.devexternal\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"dev:external\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.devreactapproved\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.devreactapproved\",\"prefixed\":\"ds:tag.devreactapproved\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"dev:react:approved\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.devreactbase\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.devreactbase\",\"prefixed\":\"ds:tag.devreactbase\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"dev:react:base\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.devreactpreapproved\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.devreactpreapproved\",\"prefixed\":\"ds:tag.devreactpreapproved\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"dev:react:pre_approved\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.devspecial\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.devspecial\",\"prefixed\":\"ds:tag.devspecial\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"dev:special\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.devsveltedone\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.devsveltedone\",\"prefixed\":\"ds:tag.devsveltedone\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"dev:svelte:done\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.devsveltein-progress\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.devsveltein-progress\",\"prefixed\":\"ds:tag.devsveltein-progress\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"dev:svelte:in-progress\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.divergent\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.divergent\",\"prefixed\":\"ds:tag.divergent\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"divergent\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.docscomplete\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.docscomplete\",\"prefixed\":\"ds:tag.docscomplete\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"docs:complete\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.draft\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.draft\",\"prefixed\":\"ds:tag.draft\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"draft\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.edge\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.edge\",\"prefixed\":\"ds:tag.edge\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"edge\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.global-docs-missing\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.global-docs-missing\",\"prefixed\":\"ds:tag.global-docs-missing\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"global-docs-missing\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.has-no-global-entry\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.has-no-global-entry\",\"prefixed\":\"ds:tag.has-no-global-entry\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"has-no-global-entry\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.lpto-be-upstreamed\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.lpto-be-upstreamed\",\"prefixed\":\"ds:tag.lpto-be-upstreamed\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"lp:to-be-upstreamed\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.lptriageblocked-reqs-design\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.lptriageblocked-reqs-design\",\"prefixed\":\"ds:tag.lptriageblocked-reqs-design\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"lp:triage:blocked-reqs-design\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.lptriageno-upstream\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.lptriageno-upstream\",\"prefixed\":\"ds:tag.lptriageno-upstream\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"lp:triage:no-upstream\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.lptriagereimplement-and-deprecate\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.lptriagereimplement-and-deprecate\",\"prefixed\":\"ds:tag.lptriagereimplement-and-deprecate\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"lp:triage:reimplement-and-deprecate\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.lptriagereimplement-and-keep\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.lptriagereimplement-and-keep\",\"prefixed\":\"ds:tag.lptriagereimplement-and-keep\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"lp:triage:reimplement-and-keep\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.lptriageupstream-and-deprecate\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.lptriageupstream-and-deprecate\",\"prefixed\":\"ds:tag.lptriageupstream-and-deprecate\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"lp:triage:upstream-and-deprecate\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.minimal\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.minimal\",\"prefixed\":\"ds:tag.minimal\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"minimal\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.needsdefinition\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.needsdefinition\",\"prefixed\":\"ds:tag.needsdefinition\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"needs:definition\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.needsdiscussion\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.needsdiscussion\",\"prefixed\":\"ds:tag.needsdiscussion\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"needs:discussion\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.needsdocumentation\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.needsdocumentation\",\"prefixed\":\"ds:tag.needsdocumentation\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"needs:documentation\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.needsreview\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.needsreview\",\"prefixed\":\"ds:tag.needsreview\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"needs:review\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.needstriage\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.needstriage\",\"prefixed\":\"ds:tag.needstriage\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"needs:triage\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.needsupdate\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.needsupdate\",\"prefixed\":\"ds:tag.needsupdate\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"needs:update\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.notstarted\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.notstarted\",\"prefixed\":\"ds:tag.notstarted\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"not_started\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.specialadoption-docs\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.specialadoption-docs\",\"prefixed\":\"ds:tag.specialadoption-docs\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"special:adoption-docs\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.stable\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.stable\",\"prefixed\":\"ds:tag.stable\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"stable\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.stylesready\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.stylesready\",\"prefixed\":\"ds:tag.stylesready\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"styles:ready\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.triagedbacklog\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.triagedbacklog\",\"prefixed\":\"ds:tag.triagedbacklog\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"triaged:backlog\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.triagedrejected\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.triagedrejected\",\"prefixed\":\"ds:tag.triagedrejected\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"triaged:rejected\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.upstream-candidate\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.upstream-candidate\",\"prefixed\":\"ds:tag.upstream-candidate\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"upstream-candidate\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.upstream-compliant\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.upstream-compliant\",\"prefixed\":\"ds:tag.upstream-compliant\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"upstream-compliant\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.upstreamcandidate\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.upstreamcandidate\",\"prefixed\":\"ds:tag.upstreamcandidate\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"upstream:candidate\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.waiting-for-delta-review\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.waiting-for-delta-review\",\"prefixed\":\"ds:tag.waiting-for-delta-review\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"waiting-for-delta-review\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.wpeinital-implementation\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.wpeinital-implementation\",\"prefixed\":\"ds:tag.wpeinital-implementation\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"wpe:inital-implementation\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tag.wpetriageupstream-and-deprecate\",\"type\":\"ds:Tag\",\"uri\":\"https://ds.canonical.com/tag.wpetriageupstream-and-deprecate\",\"prefixed\":\"ds:tag.wpetriageupstream-and-deprecate\",\"types\":[\"ds:Tag\"],\"label\":null,\"altNames\":[\"wpe:triage:upstream-and-deprecate\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tagcategory.channel\",\"type\":\"ds:TagCategory\",\"uri\":\"https://ds.canonical.com/tagcategory.channel\",\"prefixed\":\"ds:tagcategory.channel\",\"types\":[\"ds:TagCategory\"],\"label\":null,\"altNames\":[\"channel\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tagcategory.concept-status\",\"type\":\"ds:TagCategory\",\"uri\":\"https://ds.canonical.com/tagcategory.concept-status\",\"prefixed\":\"ds:tagcategory.concept-status\",\"types\":[\"ds:TagCategory\"],\"label\":null,\"altNames\":[\"concept status\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tagcategory.concept-type\",\"type\":\"ds:TagCategory\",\"uri\":\"https://ds.canonical.com/tagcategory.concept-type\",\"prefixed\":\"ds:tagcategory.concept-type\",\"types\":[\"ds:TagCategory\"],\"label\":null,\"altNames\":[\"concept type\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tagcategory.documentation-stage\",\"type\":\"ds:TagCategory\",\"uri\":\"https://ds.canonical.com/tagcategory.documentation-stage\",\"prefixed\":\"ds:tagcategory.documentation-stage\",\"types\":[\"ds:TagCategory\"],\"label\":null,\"altNames\":[\"documentation stage\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tagcategory.implementation-status\",\"type\":\"ds:TagCategory\",\"uri\":\"https://ds.canonical.com/tagcategory.implementation-status\",\"prefixed\":\"ds:tagcategory.implementation-status\",\"types\":[\"ds:TagCategory\"],\"label\":null,\"altNames\":[\"implementation status\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tagcategory.lpupstream\",\"type\":\"ds:TagCategory\",\"uri\":\"https://ds.canonical.com/tagcategory.lpupstream\",\"prefixed\":\"ds:tagcategory.lpupstream\",\"types\":[\"ds:TagCategory\"],\"label\":null,\"altNames\":[\"lp:upstream\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tagcategory.review-status\",\"type\":\"ds:TagCategory\",\"uri\":\"https://ds.canonical.com/tagcategory.review-status\",\"prefixed\":\"ds:tagcategory.review-status\",\"types\":[\"ds:TagCategory\"],\"label\":null,\"altNames\":[\"review status\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:tagcategory.tmp\",\"type\":\"ds:TagCategory\",\"uri\":\"https://ds.canonical.com/tagcategory.tmp\",\"prefixed\":\"ds:tagcategory.tmp\",\"types\":[\"ds:TagCategory\"],\"label\":null,\"altNames\":[\"tmp\"],\"box\":\"abox\",\"description\":null},{\"name\":\"ds:targetDevices\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/targetDevices\",\"prefixed\":\"ds:targetDevices\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"targetDevices\",\"box\":\"tbox\",\"description\":\"Device form factors this layout targets\"},{\"name\":\"ds:tier\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/tier\",\"prefixed\":\"ds:tier\",\"types\":[\"owl:FunctionalProperty\",\"owl:ObjectProperty\"],\"label\":\"tier\",\"box\":\"tbox\",\"description\":\"The tier to which the UI block belongs to\"},{\"name\":\"ds:timestamp\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/timestamp\",\"prefixed\":\"ds:timestamp\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"timestamp\",\"box\":\"tbox\",\"description\":\"The date and time at which the change was recorded\"},{\"name\":\"ds:usage\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/usage\",\"prefixed\":\"ds:usage\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"usage\",\"box\":\"tbox\",\"description\":\"Free-text (Markdown) usage documentation for the UI block. Subsumes the former whenToUse/whenNotToUse: a usage entry describes the contexts where the component is most appropriate ('When to use'), the contexts where it is NOT appropriate and what to use instead ('When not to use'), and a general description, typically as Markdown sub-sections.\"},{\"name\":\"ds:variantOf\",\"type\":\"owl:ObjectProperty\",\"uri\":\"https://ds.canonical.com/variantOf\",\"prefixed\":\"ds:variantOf\",\"types\":[\"owl:ObjectProperty\"],\"label\":\"variantOf\",\"box\":\"tbox\",\"description\":\"The base UI Block this block is a variant of, by the '+' naming convention (e.g. Tooltip+Dense is a variant of Tooltip). Distinct from ds:inheritsFrom: a variant is a modifier-style derivative rather than a prefixed specialisation.\"},{\"name\":\"ds:version\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/version\",\"prefixed\":\"ds:version\",\"types\":[\"owl:FunctionalProperty\",\"owl:DatatypeProperty\"],\"label\":\"version\",\"box\":\"tbox\",\"description\":\"Semantic version of the entity following semver specification\"},{\"name\":\"ds:versionedLink\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/versionedLink\",\"prefixed\":\"ds:versionedLink\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"versionedLink\",\"box\":\"tbox\",\"description\":\"URL to a specific tagged version of this implementation in source control\"},{\"name\":\"ds:whenToApply\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/whenToApply\",\"prefixed\":\"ds:whenToApply\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"whenToApply\",\"box\":\"tbox\",\"description\":\"Guidance on the conditions under which this tag should be applied to a UI Block\"},{\"name\":\"ds:whenToRemove\",\"type\":\"owl:DatatypeProperty\",\"uri\":\"https://ds.canonical.com/whenToRemove\",\"prefixed\":\"ds:whenToRemove\",\"types\":[\"owl:DatatypeProperty\"],\"label\":\"whenToRemove\",\"box\":\"tbox\",\"description\":\"Guidance on the conditions under which this tag should be removed from a UI Block\"},{\"name\":\"http://anatomy-dsl.example.org/ontology\",\"type\":\"owl:Ontology\",\"uri\":\"http://anatomy-dsl.example.org/ontology\",\"prefixed\":\"http://anatomy-dsl.example.org/ontology\",\"types\":[\"owl:Ontology\"],\"label\":\"Anatomy DSL Ontology\",\"box\":\"abox\",\"description\":\"Compliant with OWL DL profile\"}],\"instanceCountByType\":{\"https://ds.canonical.com/ImplementationObject\":89,\"https://ds.canonical.com/ImplementationLibrary\":4,\"http://www.w3.org/2002/07/owl#DatatypeProperty\":47,\"http://www.w3.org/2002/07/owl#ObjectProperty\":30,\"http://www.w3.org/2002/07/owl#Class\":31,\"http://www.w3.org/2002/07/owl#Ontology\":3,\"http://pragma.canonical.com/codestandards#CodeStandard\":147,\"http://pragma.canonical.com/codestandards#Category\":21,\"http://www.w3.org/ns/shacl#NodeShape\":8,\"http://www.w3.org/2002/07/owl#FunctionalProperty\":8,\"http://www.w3.org/2000/01/rdf-schema#Datatype\":1,\"http://www.w3.org/2002/07/owl#AnnotationProperty\":2,\"https://ds.canonical.com/TagCategory\":8,\"https://ds.canonical.com/Tag\":43,\"https://ds.canonical.com/Tier\":15,\"https://ds.canonical.com/Pattern\":42,\"https://ds.canonical.com/Layout\":14,\"https://ds.canonical.com/Component\":110,\"https://ds.canonical.com/Group\":9,\"https://ds.canonical.com/View\":2,\"https://ds.canonical.com/Variant\":1,\"https://ds.canonical.com/Subcomponent\":86,\"https://ds.canonical.com/ModifierFamily\":11,\"https://ds.canonical.com/Modifier\":33,\"https://ds.canonical.com/ConceptType\":6,\"https://ds.canonical.com/Concept\":4}}";
4
+ //# sourceMappingURL=pack.index.generated.js.map