分类

XLSX Sheet 转 JSON Schema

根据 Excel 表头与样例行推断 JSON Schema(类型/枚举/约束)

支持可选必填阈值、枚举阈值与样本行数量控制。

示例结果

1 个示例

从 Sheet 样例推断 JSON Schema

基于表头和样例行推断字段类型、枚举与约束

xlsx-sheet-to-json-schema-example1.json 查看文件
查看输入参数
{ "excelFile": "/public/samples/xlsx/workbook-sales.xlsx", "sheetName": "Sheet1", "headerRow": 1, "sampleSize": 100, "enumMaxDistinct": 10 }

Click to upload file or drag and drop file here

Maximum file size: 100MB Supported formats: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel

0 0.98 1

关键信息

分类
Format Conversion
输入类型
file, text, number, range
输出类型
file
样本覆盖
4
支持 API
Yes

概览

XLSX Sheet 转 JSON Schema 工具旨在帮助开发者快速将 Excel 数据结构转化为标准化的 JSON Schema。通过分析表头与采样数据,该工具能自动推断字段类型、枚举值及必填约束,极大简化了数据建模与验证流程。

适用场景

  • 需要为现有的 Excel 数据集快速生成后端数据校验规则时。
  • 在进行数据迁移或 API 对接时,需要将非结构化的表格定义转化为标准 Schema 时。
  • 希望通过采样数据自动识别字段枚举范围与必填项,减少手动编写 Schema 的工作量时。

工作原理

  • 上传 Excel 文件并指定需要转换的工作表名称及表头所在行。
  • 设置采样行数、枚举去重阈值及必填项判定比例等参数。
  • 系统自动分析数据特征,生成包含类型、枚举约束及必填定义的 JSON Schema 文件。

使用场景

快速构建 API 接口的数据校验模型。
将遗留的 Excel 业务报表转化为结构化的数据库定义。
自动化生成前端表单验证规则。

用户案例

1. 电商销售记录 Schema 推断

后端开发工程师
背景原因
团队需要将一份包含数万条销售记录的 Excel 报表导入系统,并建立严格的数据校验机制。
解决问题
手动编写包含几十个字段的 JSON Schema 效率极低且容易出错。
如何使用
上传销售报表,设置表头为第 1 行,采样 500 行数据,并将枚举最大去重数设为 10。
示例配置
sheetName: 'Sheet1', headerRow: 1, sampleSize: 500, enumMaxDistinct: 10
效果
成功生成了包含字段类型、枚举约束(如支付方式)及必填项的 JSON Schema,直接用于后端数据入库校验。

用 Samples 测试

json, xml, xlsx

相关专题

常见问题

该工具支持哪些 Excel 格式?

支持标准的 .xlsx 和 .xls 格式的 Excel 文件。

如何调整必填项的判定标准?

通过调整“必填阈值”参数,系统会根据非空单元格占比来决定该字段是否在 Schema 中标记为必填。

枚举值是如何生成的?

系统会统计字段内的唯一值,当唯一值数量小于“枚举最大去重数”时,会自动将其识别为枚举类型。

采样行数对结果有什么影响?

采样行数越多,对字段类型和枚举值的推断越准确,但处理时间也会相应增加。

生成的 Schema 是否符合标准?

生成的 Schema 遵循标准的 JSON Schema 规范,可直接用于各类数据校验库。

API 文档

请求端点

POST /zh/api/tools/xlsx-sheet-to-json-schema

请求参数

参数名 类型 必填 描述
excelFile file (需要先上传) -
sheetName text -
headerRow number -
sampleSize number -
enumMaxDistinct number -
requiredThreshold range -
schemaTitle text -

文件类型参数需要先通过 POST /upload/xlsx-sheet-to-json-schema 上传获取 filePath,然后将 filePath 传递给对应的文件字段。

响应格式

{
  "filePath": "/public/processing/randomid.ext",
  "fileName": "output.ext",
  "contentType": "application/octet-stream",
  "size": 1024,
  "metadata": {
    "key": "value"
  },
  "error": "Error message (optional)",
  "message": "Notification message (optional)"
}
文件: 文件

AI MCP 文档

将此工具添加到您的 MCP 服务器配置中:

{
  "mcpServers": {
    "elysiatools-xlsx-sheet-to-json-schema": {
      "name": "xlsx-sheet-to-json-schema",
      "description": "根据 Excel 表头与样例行推断 JSON Schema(类型/枚举/约束)",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=xlsx-sheet-to-json-schema",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

你可以串联多个工具,比如:`https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`,最多20个。

支持 URL 文件链接或 Base64 编码作为文件参数。

如果遇见问题,请联系我们:[email protected]