我正在尝试验证我从用户那里获得的xml。我提出了一个参数列表(可能会不时地改变)以xml格式显示空值。用户应填写值并上传。然后我应该验证上传的xml并将值保存在db(Mongodb)中。
我尝试使用trang从xml文件生成xsd。它可以工作,但我不知道如何指定用户可以在没有值的情况下保留其中一些参数。
我读过有关nsble = true或minoccurs = 0的内容,这是在xsd中使用的,但是,我不想手动修改生成的xsd。有更好的解决方案吗?如果使用trang是不可能的,你建议使用哪个转换器?(我使用的是java)
答案 0 :(得分:0)
使用trang设置xml元素可选:
你没有。为了使这项工作正常,你需要“阅读我的思想”指示。
trang允许您设置xsd的批量内容。您应该调整生成的xsd以正确编码您的业务逻辑。那是;使用trang完成批量样板。编辑以获取trang不可能知道的详细信息到xsd中。
你说:
我建议使用空值的xml格式的参数列表(可能会不时改变)。
xsd更好地匹配参数列表。如果更新参数,请更新xsd。
我自己用过trang。我推荐的步骤:
在模板和用户输出上使用trang。
手动或使用“XML Copy editor”等编辑器编辑生成的xsd。
验证它是否适用于用户输入的主体,根据需要进行编辑。 (创建单元测试。)
如果参数更改,请根据需要编辑xsd。如果大参数更改,请使用trang输出的子集来修改xsd。
如果您的参数没有改变 - xsd不会改变。如果你要为每个用户输入更改xsd ......你做错了。