Enterprise Architect Sparx 系统中的复杂类型排序

Complex Type Ordering in Enterprise Architect Sparx Systems

提问人:Michael Grudgings 提问时间:9/29/2023 更新时间:11/2/2023 访问量:43

问:

我在Enterprise Architect 16.1中遇到了一个问题。我需要能够从非常复杂的伊甸园风格的 UML 模型中输出 xsd,其中复杂类型保持严格的解析顺序,而不是字母顺序。我该怎么做?填充模型/图表的树总是恢复为字母顺序?

我是 Enterprise-Architect (16.1) 和直接从 UML 模型生成工件的新手。我使用的数据治理过程要求这种严格的 xsd 解析有序复杂类型排序直接来自 UML 模型输出,而不是通过脚本、XSLT 或介于 xsd 输出和 UML 模型之间的任何其他进程。有没有人能够直接从UML图中成功地在Enterprise Architect 16.1中强制执行特定的复杂类型排序?

XML 解析 XSD Enterprise-Architect ComplexType

评论

0赞 Geert Bellekens 9/29/2023
“填充模型/图表的树总是恢复为字母顺序?”你这是什么意思?
0赞 qwerty_so 9/29/2023
简单地说,我们编写了自己的 XSD ex-/import,因为 EA 的基础知识太基础了,无法根据我们的需求进行配置。这并不复杂
0赞 Michael Grudgings 9/29/2023
@qwerty_so我们的数据治理策略不允许 XSD ex-/import。xsd 必须按解析顺序直接从模型中推断出来。
0赞 Michael Grudgings 9/29/2023
@Geert Bellekens,显示复杂类型的“浏览器”树只允许它们按字母顺序列出。我们以前的 UML 软件允许将列出复杂类型的树设置为解析顺序而不是字母顺序。然后,当您从模型输出 xsd 时,它将以在浏览器树中唯一配置的唯一顺序输出。由于定价和难以支持较旧的 UML 软件,我们改用 EA,现在看来 EA 无论如何都不会管理分层复杂类型顺序,而是直接从模型中按字母顺序排列。这对我们不起作用。

答:

0赞 Geert Bellekens 9/30/2023 #1

您可以使用以下首选项将 EA 设置为允许在项目浏览器中自由排序:

enter image description here

设置完成后,您可以使用项目浏览器顶部的向上/向下按钮在项目浏览器中移动类:

enter image description here

但是,这似乎不会对 XSD 中生成的元素顺序进行任何更改。看起来唯一的方法是使用某种后处理。

0赞 Michael Grudgings 10/31/2023 #2

显然,我问错了问题。只需在 EA 中关闭字母顺序约束,模式就不会按预期的分层顺序输出。EA Schema Complex Type Ordering

评论

0赞 Geert Bellekens 10/31/2023
您能解释一下如何关闭字母顺序约束吗?您的答案目前没有具体说明。
0赞 Michael Grudgings 11/1/2023 #3

@Geert Bellekens,老实说,我不知道实际设置在UI中的位置。我尝试在“功能”框中移动元素顺序(右键单击特定元素,然后使用“上移”或“下移”选项),然后打开一个提示框,告诉我元素顺序设置为字母顺序。它问我是否要关闭该选项。我单击了“是”,它允许我根据需要移动元素。这个单一选项的更改解决了我所有的“伊甸园”风格的复杂类型排序问题。

enter image description here