建立XML规范的原则是够用即可还是要尽量完整?
通常视主体企业的规模、行业的特殊性、项目的目标、开发的成本与周期以及项目背后的支持,我们可以决定在多大程度和哪个层次上完善将要制定的XML规范。显然,制定XML规范的下限是够用,只要设计的DTD/Schema规范集能保证项目中确定部分信息流的有效性即可,不过这仅是满足了系统基本的功能性要求,在此基础上我们还要求DTD/Schema规范集能具有简洁性、合理性、开放性、兼容性,尤其是最后一项,由于不太可能在项目运行前就制定出一个完美的DTD/Schema规范集,以及XML标记本身具有易于扩展的特点,因此,我们应该在设计之初便为系统将来运行中XML规范的升级留出足够空间。并且这种思路是全程的,比如说我们在设计订单信息流的处理时,就应考虑应用层的业务逻辑是否能具备相当的灵活性,当单据的条款数目发生改变时,进行业务处理的函数仍能正确实现其逻辑及结果,而这就要求处理函数在编程时应充分利用文档类型定义实现对XML实体的逻辑判断、校验、定位等。显然,文档类型定义的向后兼容性很大程度上决定了整个系统未来的可扩展性。
当我们为某企业在定制XML规范时,其中不仅会包含商业系统中相通的各种对象,而且也一定会体现出其行业的特点,这二者的有机融合体现了XML规范的完整性。对于技术人员而言,较为困惑的问题就是,如何使XML规范更贴近企业的行业标准并符合其行业的发展方向。通常,在制定与行业相关的XML规范时程序应更为严谨,一般要有该行业领域的专家顾问、国标/企标专家顾问、工商管理专家顾问、国家相关管理部门、企业管理层、系统分析员等共同参与制定,显然当XML规范在更高层次上实现时,其制定的难度也会直线上升,对企业和开发商的实力都是一个挑战。不过对于一些大型的制造型企业,其产品的市场占有率在行业中领先,处于Vertical Market的上游,而且往往与政府的职权部门有着良好的合作关系,因此在制定XML规范时,就可以有更高更广泛的要求,比如说希望在一定的商业领域内通过XML规范实现基于Internet的标准化供销存模式,包括主体企业与客体企业双方的商业操作规则。由于此类企业在行业中的典范作用,因此一般所制定的规范在很大程度上自然具备了一定的标准性,而对于与它合作的那些下游企业,一般对此类规范只有接收,没有太多异议的余地。
对于国内一般的大中型制造企业,如果决定要引入XML,通常较为合理的还是先建立一套轻量级的XML信息流规范,但整个系统应用环境应为其留有足够的扩展空间,这主要是目前国内还缺少制定广泛XML标准的成功案例,也缺少大型的B2B供应链应用管理经验。因此,避免在项目开发期交过多的学费,而选择先让B2B供应链系统运行磨合到一个比较稳定成熟的阶段,并对XML信息化规范的应用有了一定的经验体会,此时再对系统进行阶段性的升级,不失为一个较为保险的良策。