如果我需要在系统之间实现业务文档的发送和接收(发票、采购订单、汇款通知等),您会推荐什么标准来实现最佳互操作,为什么?它可以是 XML 或其他。
6 回答
UBL(通用商务语言)是这方面的最新尝试,由 OASIS 管理。问题是商业文档互操作的圣杯确实还有很长的路要走,如果有的话。这就是存在像 Biztalk 这样的产品的原因。Biztalk 的主要目的是将文档采用一个合作伙伴的格式并将其转换为您的格式,反之亦然。
即使像 ANSI X12 和 Edifact 这样的巨大标准也存在问题,因为即使两个合作伙伴使用商定的标准交换文档,通常在文档的使用方式上也存在足够的差异,因此需要自定义编码来处理它们。
我的建议是公开一种简洁且易于理解的 XML 格式,该格式非常符合您的业务需求,并让您的合作伙伴使用他们目前与其他合作伙伴一起使用的任何方法来处理您的文档。尝试遵循行业标准将需要更多的工作,并且可能带来的好处很少。
我会看(按此顺序):
- 行业特定格式。如果您有一个同质的交易群体,永远是您的最佳选择。
- 如果您想要具有既定标准的 XML 解决方案,请使用 cXML 或 XCBL。
- X12 如果您有无限的时间、金钱和愿意合作的伙伴。
- 仅当您有标准之外的要求或要传输的数据量如此之少以至于该标准会使您的文档过于膨胀时,才可以自定义 XML。
当然,这一切都取决于问题域。我会思考这些问题:
- 您所在的行业有特定格式或法规要求吗?例如,是否有您订购的气体的化学成分等详细信息?是否有需要特殊订单或处理的危险材料?
- 您的行业是否已经有特定格式或者您需要通用格式?化学/天然气、零售、大型石油、航空公司、金融服务和许多其他公司已经建立了格式,有时还建立了网络。
- 您是否与有采购申请的企业采购员合作?如果是这样,我会看一下处理 PunchOut 标准的 cXML 或 XCBL,它使采购系统能够从在线目录中订购。
- 您的合作伙伴的成熟度如何?EDI 古老而强大,但真的很难理解。刚接触这个过程的人更喜欢基于 XML 的格式。
- 你在市场上的位置是什么?你能为你的合作伙伴制定一个标准,还是他们会为你规定一个格式?在这种情况下,您是否需要采用多个标准?他们之间谁来翻译?
标准为 X12。差不多就是这样。请参阅 Wikipedia 上的EDI页面。
ebXML标准不仅涵盖文档格式,还涵盖业务实体之间的流程。
有各种标准可以做到这一点,比如 SWIFT - TSU Bolereo Twist
然而,没有一个标准被业界完全采用/接受,因此它们不会是互操作的。另一种方法是使用文档流管理系统,您可以在其中扫描所有文档并将其存储为图像,并围绕发送和接收这些文档构建工作流程。
PDF - 每个人都有它,它的跨平台,它可以处理任何文档类型。但是,如果您想对其进行编辑,那就不好了。