# HL7TestV3 **Repository Path**: LiuCabbage/HL7TestV3 ## Basic Information - **Project Name**: HL7TestV3 - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-03-20 - **Last Updated**: 2025-07-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # HL7TestV3 测试HL7 V3消息结构生成 xml转json json转xml 医院信息平台交互标准 http://www.nhc.gov.cn/wjw/wsbzxx/wsbz.shtml https://wjw.fujian.gov.cn/jggk/csxx/jhsyjtfzczcfgc/gzdt_37901/202412/t20241206_6588920.htm 安装Oxygen XML Editor 使用邮箱注册 免费用30天 https://www.oxygenxml.com/ ### 第一步:创建XML并调整 中间有个空格 xmlns="https://www.chiss.org.cn"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://www.chiss.org.cn" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 删掉 xsi:schemaLocation="urn:hl7-org:v3 ../multicacheschemas/PRPM_IN401030UV01.xsd"> 去除复制文档参考xml里的 文档页码和WS/T 846.8-2024 会影响xsd生成准确性 去除xml 所有的 xsi: 属性 影响到XSD生成C#实体 接受xml再把xsi: 属性 \s*xsi:\w+=""[^""]*"" 截取掉后再转为C#对象->json 查询 新增 修改 原接口入参出参全放拓展字段里面 ``` 1 1 1 1 1 ``` xml校验 不用管 没有与文档关联的架构或DTD。 可以使用关联架构操作创建关联,也可以在“首选项/文档类型关联”列表的选项中进行配置,或者通过创建验证方案来创建关联。 ### 第二步:根据xml生成xsd文件 改好的xml 生成/转换架构 XML文档->W3C XML Scheme XML文档 下面的复选框只能有一项 不然会多项xml生成一个xsd xsd校验 不成功生成不了C#实体类 生成的xsd文件验证成功后 ### 第三步:根据xsd生成C#实体类 步骤1:打开开发者命令行 在Windows搜索栏输入 Developer Command Prompt for VS 2022(根据你的VS版本选择)。 步骤2:在开发者命令行中执行命令 D: cd D:\XSDFile 生成C#实体类 默认命名空间 更具项目所在文件夹来 不要和xsd文件夹放一起 命名空间会冲突 YLW.Plat.Jhfw.HL7V3.XSDModels PRPM_IN401030UV01 为当前要生成的实例 xsd /c /namespace:YLW.Plat.Jhfw.HL7V3.XSDModels.MCCI_IN000002UV01 MCCI_IN000002UV01.xsd xsd /c /namespace:YLW.Plat.Jhfw.HL7V3.XSDModels.PRPM_IN401030UV01 PRPM_IN401030UV01.xsd xsd /c /namespace:YLW.Plat.Jhfw.HL7V3.XSDModels.PRPM_IN403010UV01 PRPM_IN403010UV01.xsd xsd /c /namespace:YLW.Plat.Jhfw.HL7V3.XSDModels.PRPM_IN406010UV01 PRPM_IN406010UV01.xsd xsd /c /namespace:YLW.Plat.Jhfw.HL7V3.XSDModels.PRPM_IN406110UV01 PRPM_IN406110UV01.xsd ### 第四步:复制xml xsd 实体类 其实只要实体类就行 xml xsd可以同一个文件夹 实体类放另一个文件夹 如果项目要存xsd 复制完后 项目里xsd下面有实体类要删掉 实体类放另一个文件夹 ### 医疗卫生机构(科室)信息查询服务-请求消息 ``` 1 2 QJ00101 042800 测试科室_002 ``` ### 医疗卫生机构(科室)信息查询服务-响应消息(成功) ``` HIS 99 QJ00101 042800 测试科室_002 CSKS_002 O 30 10 PB08 102 1 10351 2024-07-05 08:42:56 10351 2024-07-05 08:42:56 HIS 99 QJ00101 0805-2 测试0805 CS0805 I 1162 PB07 0805-2 1 100592 2024-08-05 16:49:45 100592 2024-08-05 16:50:33 ``` ### 医疗卫生机构(科室)信息查询服务-响应消息(异常) ``` ```