gpt4 book ai didi

xml - OWL2 XML 到 AnyLogic ALP

转载 作者:行者123 更新时间:2023-12-01 15:02:19 27 4
gpt4 key购买 nike

我目前正在开展一个项目,该项目需要将描述现实生活场景的某些 OWL2 XML 文件“翻译”为 AnyLogic 模型的 ALP(XML 类型)格式,以便它们可以在应用程序中打开。这种翻译最终应该通过另一个应用程序自动发生。

这些情景描述了荷兰某些地区的旅游流量。这些场景以 RDF-OWL2 格式在本地 Semantic MediaWiki 中定义并从中导出。在 AnyLogic 中,我们已经设法创建了我们想要的仿真模型和场景。现在,我们希望将这些场景从 MediaWiki 直接“翻译”到 AnyLogic,以便创建仿真模型而无需接触 AnyLogic 应用程序。参数的类型、类、代理等都已经被我们定义好了,所以这只是“语义维基页面A中的旅游区应该变成AnyLogic中的旅游区A”的例子。

例如,部分输入 RDF 文件可能如下所示:

<genericTrainStation>
<name>Station Amsterdam</name>
<size>20km</size>
....
</genericTrainStation>

在 AnyLogic 中,如果我要在应用程序中创建同一个站点,.alp 文件中的输出将类似于...

<EmbeddedObject>
<stuffIrrelevant></stuffIrrelevant>
<stuffIrrelevant2></stuffIrrelevant2>
<name>Station Amsterdam></name>
<size>20km</size>

问题是是否可以通过某种方式使用 RDF 来补充或替换 AnyLogic ALP 文件中的某些值,从而直接在输入和输出之间进行转换。

到目前为止,我有两个想法:

  • 使用 XSLT 尝试执行翻译

  • 以AnyLogic ALP格式为基础,构建执行翻译的编译器环境

我寻找了很长时间有关操作 ALP AnyLogic 格式的资源,但无济于事。我通常会就这两个想法的总体合理性以及我可以在我的任务中使用的最终资源寻求帮助。

最佳答案

您可以使用 XML 文件创建 AnyLogic 模型,但您不想通过直接编辑 alp 文件来完成。相反,找到一个读取 XML 文件的 java 库,并在您的启动代码中使用源 XML 文件。然后,您可以在模型中动态实例化您想要的任何对象 - 墙壁、车站、延迟等。

如果您只是简单地修改了 alp 文件,那将迫使人们不得不打开 AnyLogic,因为 alp 文件是源代码,而不是编译后的模型。如果您在初始化时实例化您的对象,则可以通过命令行或其他应用程序调用编译后的 AnyLogic 模型(阅读有关基于服务器的应用程序上的 AnyLogic 模型的最终用户协议(protocol),并在需要时联系他们进一步讨论)。

此外,alp 文件不是为直接编辑而设计的(尽管我在通过源代码管理合并版本时不时这样做)。鉴于您正在寻找预期用途之外的东西,新版本的 AnyLogic 可能不会向后兼容您正在尝试做的事情。

我发现动态构建空间标记项可能比基本对象更麻烦,所以准备好花一些时间在那里。您还需要准备好投入时间来捕获错误输入的错误。由于您正在跨入构建模型的文件,因此您需要确保该文件不包含会导致模型崩溃或违反基本假设的项目。

关于xml - OWL2 XML 到 AnyLogic ALP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50944509/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com