kpi_schema.json 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. {
  2. "$schema": "https://json-schema.org/draft/2019-09/schema",
  3. "title": "Joystream KPI schema",
  4. "type": "object",
  5. "properties": {
  6. "overviewSection": {
  7. "type": "object",
  8. "properties": {
  9. "title": "string",
  10. "kpisNumber": "string",
  11. "councilElectedInRound": "number",
  12. "councilMembers": "number",
  13. "termLength": {
  14. "type": "object",
  15. "properties": {
  16. "termLength": "string",
  17. "startBlock": "number",
  18. "endBlock": "number",
  19. "startDate": "date",
  20. "endDate": "date"
  21. },
  22. "termSummariesForumThread": "string",
  23. "deadlineToSubmitSummary": {
  24. "type": "object",
  25. "properties": {
  26. "block": "number",
  27. "date": "date"
  28. }
  29. }
  30. }
  31. }
  32. },
  33. "sections": {
  34. "type": "array",
  35. "items": {
  36. "type": "object",
  37. "properties": {
  38. "sectionTitle": "string",
  39. "sectionDescription": "string",
  40. "kpis": {
  41. "type": "array",
  42. "items": {
  43. "type": "object",
  44. "properties": {
  45. "kpiTitle": "string",
  46. "reward": {
  47. "type": "object",
  48. "properties": {
  49. "rewardLine": "string",
  50. "rewardDescription": "string"
  51. }
  52. },
  53. "rewardStructure": "string",
  54. "gradingProcess": "string",
  55. "active": {
  56. "type": "object",
  57. "properties": {
  58. "active": "string",
  59. "block": "number",
  60. "date": "date"
  61. }
  62. },
  63. "purpose": "string",
  64. "scopeOfWork": {
  65. "type": "array",
  66. "items": {
  67. "type": "object",
  68. "properties": {
  69. "task": "string"
  70. }
  71. }
  72. },
  73. "rewardDistribution": "string",
  74. "note": "string",
  75. "grading": "string",
  76. "reporting": "string",
  77. "weighting": {
  78. "type": "array",
  79. "items": {
  80. "type": "object",
  81. "properties": {
  82. "weight": "string"
  83. }
  84. }
  85. }
  86. }
  87. }
  88. }
  89. }
  90. }
  91. }
  92. }
  93. }