理解 ebXML(三)

日期: 2007-12-24 来源:TechTarget中国

  商业过程模式

  UN/CEFACT Modeling Methodology (UMM) 利用了 UML,它可能对建立“ebXML 商业过程”的模型有所帮助。然而,这种建模只是建议,而不是要求。无论如何,既然本文针对 XML 开发人员并且不讨论 OOD(面向对象的设计),所以在符合“商业过程规范 DTD 和 XML 模式”的 XML 文档中查看模型的表示也更为有趣。在这种情况下,DTD(即 "ebXMLProcessSpecification- v1.00.dtd")就成为主要的规则表示。这个 DTD 和(假设)在语义和语法上都兼容的“W3C XML 模式”都可以在 EbXML_BPschema_1.0 建议中找到(请 参阅 参考资料)。

  ebXML 过程规范有一个根元素 ProcessSpecification 。特定的过程规范也许包含了对其它过程规范和文档规范以及其它文档的字节点引用。 ProcessSpecification 的 DTD 声明提供了“商业过程”文档的结构概述:

  清单 1:ProcessSpecification DTD 声明
<!ELEMENT ProcessSpecification
          (Documentation*,
          (Include* | DocumentSpecification* |
            ProcessSpecification* | Package |
            BinaryCollaboration | BusinessTransaction |
            MultiPartyCollaboration)*)>
<!ATTLIST ProcessSpecification
          name    ID    #REQUIRED
          version CDATA #REQUIRED
          uuid    CDATA #REQUIRED >
 

  属性 uuid 是过程规范的全局唯一标识; name 和 version 特定于显示的模型( name 不应该与嵌套的过程规范冲突)。

  在过程规范中, Package 定义一系列协作,它既可以是 MultiPartyCollaboration 元素,也可以是 BinaryCollaboration 元素。协作反过来也包含团体的各种角色。一段从 EbXML_BPschema_1.0 建议中(请 参阅 参考资料)包含的过程规范摘录的代码有助于理解该结构:

  清单 2:协作包
<Package name="Ordering">
  <!– First the overall MultiParty Collaboration –>
  <MultiPartyCollaboration name="DropShip">
    <BusinessPartnerRole name="Customer">
      <Performs authorizedRole="requestor"/>
      <Performs authorizedRole="buyer"/>
      <Transition fromBusinessState="Catalog Request"
                  toBusinessState="Create Order"/>
    </BusinessPartnerRole>
    <BusinessPartnerRole name="Retailer">
      <Performs authorizedRole="provider"/>
      <Performs authorizedRole="seller"/>
      <Performs authorizedRole="Creditor"/>
      <Performs authorizedRole="buyer"/>
      <Performs authorizedRole="Payee"/>
[…]
  <BinaryCollaboration name="Request Catalog">
    <AuthorizedRole name="requestor"/>
    <AuthorizedRole name="provider"/>
    <BusinessTransactionActivity name="Catalog Request"
                                 businessTransaction="Catalog Request"
                                 fromAuthorizedRole="requestor"
                                 toAuthorizedRole="provider"/>
  </BinaryCollaboration>
[…]
 

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 开源SOA中间件平台治理提高

    开源ESB和Web服务的专家WSO2本周宣布,它已增加业务SOA治理功能的产品。WSO2创始人兼CTO Paul Fremantle认为……

  • ebXML是否具有永恒的力量?

    我注意到最近不少支持ebMS如雨后春笋般出现。我猜想它具有连续的SOAP/WSDL通讯方面内置的可靠性功能的优势,但它确实有长期的支撑吗……

  • SOA中的BPM(六)

    端对端包括所有运行时的建模,但是这里的标准还需要经过仔细推敲才行,webMethods’ So“这也就是建模和BPMN以及BPEL之间的二分法。”“这两个标准不能同时起作用。”……

  • UDDI是什么?

    UDDI是什么?随着SOAP和WSDL,UDDI就是Web服务其中的核心技术。UDDI的实施是Web Service的注册表中提供了一个机制,并找到Web服务……