case_detailed.schema.json 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. {
  2. "$schema": "http://json-schema.org/draft-07/schema#",
  3. "title": "case_detailed.json 输出格式",
  4. "type": "object",
  5. "required": ["total-ref", "success-ref", "failed-ref", "cases-boundary"],
  6. "properties": {
  7. "total-ref": { "type": "integer", "minimum": 0 },
  8. "success-ref": { "type": "integer", "minimum": 0 },
  9. "failed-ref": { "type": "integer", "minimum": 0 },
  10. "cases-boundary": {
  11. "type": "array",
  12. "minItems": 1,
  13. "items": {
  14. "type": "object",
  15. "required": ["platform-ref", "channel_content_id-ref", "source_url-ref", "title", "workflow-boundary"],
  16. "properties": {
  17. "case_id-ref": { "type": "string", "pattern": "^[a-z]+_[A-Za-z0-9_-]+$" },
  18. "case_file": { "type": "string" },
  19. "platform-ref": { "type": "string", "minLength": 1 },
  20. "channel_content_id-ref": { "type": ["string", "integer"] },
  21. "source_url-ref": { "type": "string", "minLength": 1 },
  22. "title": { "type": "string", "minLength": 1 },
  23. "workflow-boundary": {
  24. "oneOf": [
  25. { "type": "null" },
  26. {
  27. "type": "object",
  28. "required": ["id-ref", "name-ref", "description", "modality", "steps-boundary"],
  29. "properties": {
  30. "id-ref": { "type": "string", "pattern": "^strategy-[A-Za-z0-9_-]+$" },
  31. "name-ref": { "type": "string", "minLength": 1 },
  32. "description": { "type": "string", "minLength": 1 },
  33. "modality": { "type": "string", "enum": ["图文", "视频"] },
  34. "inputs": { "type": ["object", "null"] },
  35. "outputs": { "type": ["object", "null"] },
  36. "why": { "type": ["string", "null"] },
  37. "boundaries": { "type": ["string", "null"] },
  38. "steps-boundary": {
  39. "type": "array",
  40. "minItems": 1,
  41. "items": {
  42. "type": "object",
  43. "required": ["order-ref", "type-ref", "description-ref"],
  44. "properties": {
  45. "order-ref": { "type": "integer", "minimum": 1 },
  46. "type-ref": { "type": "string", "enum": ["capability", "sub_strategy", "human_review", "conditional"] },
  47. "description-ref": { "type": "string", "minLength": 1 },
  48. "why": { "type": ["string", "null"] },
  49. "body": { "type": ["string", "null"] },
  50. "inputs": { "type": ["object", "null"] },
  51. "outputs": { "type": ["object", "null"] },
  52. "optional": { "type": "boolean" }
  53. }
  54. }
  55. }
  56. }
  57. }
  58. ]
  59. }
  60. }
  61. }
  62. }
  63. }
  64. }