如何构建元数据驱动的通用系统

时间:2011-04-17 13:11:49

标签: design-patterns

我正在构建一个元数据驱动的资产管理系统。 该产品具有资产概念。有预定义的资产类型,客户可以通过提供自定义资产类型来扩展系统。

我计划使用元数据层来实现它。

每种资产类型的元数据将存储为xml。 它看起来像这样:

<assetType>
<name></name>
<displayName></displayName>
<primaryKeys></primaryKeys>
</assetType>

我会从这个xml中序列化一个AssetType类。

客户将提供自己的xml,将自定义资产类型插入系统。

我正试图在这里集思广益所有可能的解决方案。 除了xml之外还有其他方法可以编写这个模块吗?

1 个答案:

答案 0 :(得分:0)

您可以自己编写DSL

您可以使用其他格式的结构化文字。

您可以通过无数种方式表示数据。

选择人类和计算机可读的东西 - XML似乎很适合这个法案(并且得到很好的支持,它可以很好地跨越平台)。

编写自己的DSL将会有更多工作,但如果您使用它分发自己的解析器/验证器,则可以确保客户端仅写入有效数据。