apply_to_grounding_capability.schema.json 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. {
  2. "$schema": "http://json-schema.org/draft-07/schema#",
  3. "title": "apply_to_grounding_capability_output",
  4. "type": "object",
  5. "required": ["capability"],
  6. "additionalProperties": false,
  7. "definitions": {
  8. "apply_to_item": {
  9. "type": "object",
  10. "required": [
  11. "category_id",
  12. "category_path",
  13. "rationale",
  14. "body_excerpt",
  15. "body_excerpt_note"
  16. ],
  17. "additionalProperties": false,
  18. "properties": {
  19. "category_id": { "type": "integer" },
  20. "category_path": { "type": "string", "minLength": 1 },
  21. "element": { "type": ["string", "null"] },
  22. "rationale": { "type": "string", "minLength": 1 },
  23. "body_excerpt": { "type": "string" },
  24. "body_excerpt_note": { "type": "string" }
  25. }
  26. },
  27. "suggest_apply_to_item": {
  28. "type": "object",
  29. "required": [
  30. "source_type",
  31. "path",
  32. "rationale",
  33. "body_excerpt",
  34. "body_excerpt_note"
  35. ],
  36. "additionalProperties": false,
  37. "properties": {
  38. "source_type": { "type": "string", "enum": ["实质", "形式"] },
  39. "path": { "type": "string", "minLength": 1 },
  40. "rationale": { "type": "string", "minLength": 1 },
  41. "body_excerpt": { "type": "string" },
  42. "body_excerpt_note": { "type": "string" }
  43. }
  44. }
  45. },
  46. "properties": {
  47. "capability": {
  48. "type": "array",
  49. "items": {
  50. "type": "object",
  51. "required": ["capability_id", "apply_to", "suggest_apply_to"],
  52. "additionalProperties": false,
  53. "properties": {
  54. "capability_id": {
  55. "type": "string",
  56. "pattern": "^c_w[0-9]+_(s[0-9]+_[0-9]+|standalone_[0-9]+)$"
  57. },
  58. "suggest_apply_to": {
  59. "type": "array",
  60. "maxItems": 3,
  61. "items": { "$ref": "#/definitions/suggest_apply_to_item" }
  62. },
  63. "apply_to": {
  64. "type": "object",
  65. "required": ["实质", "形式"],
  66. "additionalProperties": false,
  67. "properties": {
  68. "实质": {
  69. "type": "array",
  70. "maxItems": 3,
  71. "items": { "$ref": "#/definitions/apply_to_item" }
  72. },
  73. "形式": {
  74. "type": "array",
  75. "maxItems": 3,
  76. "items": { "$ref": "#/definitions/apply_to_item" }
  77. }
  78. }
  79. }
  80. }
  81. }
  82. }
  83. }
  84. }