GB T 16975.1-2000 信息技术 远程操作 第1部分 概念、模型和记法.pdf

上传人:twoload295 文档编号:209363 上传时间:2019-07-14 格式:PDF 页数:43 大小:6.14MB
下载 相关 举报
GB T 16975.1-2000 信息技术 远程操作 第1部分 概念、模型和记法.pdf_第1页
第1页 / 共43页
GB T 16975.1-2000 信息技术 远程操作 第1部分 概念、模型和记法.pdf_第2页
第2页 / 共43页
GB T 16975.1-2000 信息技术 远程操作 第1部分 概念、模型和记法.pdf_第3页
第3页 / 共43页
GB T 16975.1-2000 信息技术 远程操作 第1部分 概念、模型和记法.pdf_第4页
第4页 / 共43页
GB T 16975.1-2000 信息技术 远程操作 第1部分 概念、模型和记法.pdf_第5页
第5页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、中华人民共和国国家标准信息技术远程操作第 部分 概念 模型和记法发布 实施国家质量技术监督局 发布前言本标准等同采用国际标准 信息技术远程操作第部分 概念 模型和记法 以及 技术更正在信息技术远程操作总标题下 包括以下 个部分第 部分 即 概念模型和记法第 部分 即 实现远程操作服务元素 服务定义第 部分 即 实现远程操作服务元素 协议规范本标准的附录 是标准的附录附录 附录 和附录 是提示的附录本标准由中华人民共和国信息产业部提出本标准由中国电子技术标准化研究所归口本标准起草单位中国电子技术标准化研究所本标准主要起草人王宝艾过介前言国际标准化组织 和 国际电工委员会 是世界性的标准化专门机构

2、 国家成员体 它们都是 或 的成员国通过国际组织建立的各个技术委员会参与制定针对特定技术范围的国际标准 和 的各技术委员会在共同感兴趣的领域内进行合作 与 和 有联系的其他官方和非官方国际组织也可参与国际标准的制定工作对于信息技术 和 建立了一个联合技术委员会 即 由联合技术委员会提出的国际标准草案需分发给国家成员体进行表决 发布一项国际标准 至少需要 的参与表决的国家成员体投票赞成国际标准 是由信息技术联合技术委员会 开放系统互连数据管理和开放分布式处理与 合作制定的 这个文本也以 公布在信息技术远程操作总标题下 包括以下 个部分第 部分概念 模型和记法第 部分 实现远程操作服务元素 服务定

3、义第 部分 实现远程操作服务元素 协议规范附录 构成 的一部分而附录 附录 和附录 仅提供参考信息引言远程操作 是客体间交互式通信的范例 因此它可用于分布式应用的设计和规范 所涉及的基本交互 作用 是由一个客体调用者 调用某一操作由另一个客体执行者执行该操作可能还跟有返回给调用者的操作效果报告的概念是抽象的可以用多种方法实现它 例如使用 概念进行交互 作用 的客体可以由软件界面或 网络来隔开本标准描述了 概念和模型 它使用 来规定对应于 基本概念的信息客体类 例如操作和差错 这又提供了记法 以便设计者能规定这些类的特殊实例 例如特殊操作和差错本标准提供了一组类属的 这些 可用于相互远离的客体间

4、 概念的实现 这些可用于 的 实现这些 在本系列标准的伙伴标准中规定本标准还对基于 应用的设计者提供了通用实用程序的一些定义中华人民共和国国家标准信息技术远程操作第 部分 概念 模型和记法国家质量技术监督局 批准 实施范围本标准规定了远程操作服务 该服务使用抽象语法记法 来定义与 基本概念相对应的信息客体类 又提供了允许应用设计者规定这些类的特殊实例的记法本标准还提供了一批定义以规定使用 概念进行通信的客体间的类属协议 这些定义用于本系列标准的伙伴标准以提供 的 实现中使用的协议数据单元 服务原语和应用背景定义本标准还对基于 应用的设计者提供了通用实用程序的一些定义本标准没有规定一致性要求引用

5、标准下列标准所包含的条文 通过在本标准中引用而构成为本标准的条文 本标准出版时所示版本均为有效 所有标准都会被修订 使用本标准的各方应探讨使用下列标准最新版本的可能性信息技术 开放系统互连基本参考模型第部分基本模型信息技术远程操作第部分 实现远程操作服务元素服务定义信息技术远程操作第部分 实现远程操作服务元素协议规范信息技术 抽象语法记法一 基本记法规范信息技术 抽象语法记法一 信息客体规范信息技术 抽象语法记法一 约束规范信息技术 抽象语法记法一 规范参数化信息处理系统文本通信远程操作第部分模型 记法和服务定义建议信息处理系统文本通信远程操作第部分协议规范建议建议 消息处理系统 抽象服务定义

6、约定定义参考模型定义本标准采用 中定义的下列术语抽象语法协议数据单元服务质量定义本标准采用 中定义的下列术语数据类型数据值本标准采用 中定义的下列术语字段信息客体信息客体类信息 客体集本标准采用 中定义的下列术语约束异常值本标准采用 中定义的下列术语参数化的定义本标准采用下列定义自变量调用一个操作附带的数据值联系一对客体间的关系对于操作的调用和执行起关联的作用联系约定彼此可能有联系的一对通信客体的作用的规范不对称描述操作包或联系约定 的双方所能执行的操作集是不同的连接包在其间动态地建立和释放联系的过程中一对通信客体的作用的规范约定为了规定共同的行为 对一个或多个客体要求的集合差错操作不成功执行

7、的报告等幂的一种操作特征即在不改变执行者状态的情况下可重复调用该操作链接操作一种操作 该操作在另一个操作的执行期间由后者的执行者调用且又是后者的调用者试图执行的一种操作客体系统也可能是系统中一个独立部分的模型 该模型通过其初始状态及其行为来表征 这些行为是通过严格定义的接口处的外部交互 作用而引起的操作一个客体 调用者 能够向另一个客体执行者 请求的功能操作包用于规定一对通信客体的作用的有关操作的集合其中的每个操作能够被这对客体中的一个或两个调用并且能够被对方执行差错的参数差错报告可附带的数据值结果操作成功执行的报告可附带的数据值客体一种客体 它与其他客体的交互 作用是用 概念来描述的对称描述

8、操作包或联系约定 的双方所能执行的操作集是相同的同步一种操作特征 即该操作一经调用 其调用者就只有在报告了效果之后才能调用另外一个 具有相同的预期执行者的同步操作缩略语本标准采用下列缩略语抽象语法记法一协议数据单元服务质量或 远程操作约定本标准使用 来定义对应于 概念的信息客体类 如此还提供了 应用的设计者能用以规定这些类特殊实例的记法那些类的特定信息客体类属 协议的在这些定义中所需的数据类型这些定义的大部分被参数化了 因此为了完善它们其用户必须给出实际的参数模型远程操作 是客体间交互通信的范例 使用 描述和规定进行交互作用 的客体就是客体 所涉及的基本交互 作用是由一个 客体 调用者调用操作

9、 而由另一个 客体执行者执行其操作操作执行完成后 成功或不成功 可导致执行者对调用者返回一个执行效果的报告 这些如图 所示图 操作的调用执行和返回操作成功完成的报告是结果 操作不成功完成的报告是差错在执行操作期间执行者可以调用旨在由原来操作的调用者执行的链接操作为了正确地互工作必须让调用者和执行者双方都了解操作的某些特点 这些特点包括是否要返回报告 若要则返回哪一种值的类型 如果有的话是随着操作的调用还是操作的返回来运送哪些操作 如果有的话能与它链接为了把该操作与可能被调用的其他操作区分开来而使用的代码值根据称为操作包 的相关操作集来定义某一 客体类 的成对的 客体的互工作能力 包可以是对称的

10、 在这种情况下 用单一操作集来定义它可由这一对 客体中的每一个客体来调用 另一方面包可以是不对称的 在这种情况下用两个操作集来定义 即可由这一对 客体中的某一客体调用的那些操作和可由另一个客体调用的那些操作来定义 为了定义非对称包这两个客体可分别 任意地 标记为消费者和供应者注 通常这些标记是任意的 一般是进行直观的分配在这样一对客体中 一个提供服务 而另一个享用服务为了对操作的调用和执行起上下文的作用 一对 客体间必须存在联系 通过联系约定来管理每一个这样的联系 通过集中地 决定联系可调用的操作的包集合来规定约定 如果约定规范包括一个或多个非对称包则约定本身是不对称的 为了规定不对称联系约定

11、 相互建立联系的两个 客体可被标记为发起者 和响应者可通过 脱机手段来建立和释放联系 另一种办法是动态地建立和释放联系 本标准中描述的选择方案是分别通过调用和执行专用的联结 和断联 操作来动态地建立和释放联系 后一种类型的联系约定包括连接包 其中包括所使用的具体的联结和断联操作注 也可以用其他标准中描述的其他方法进行联系的建立和释放联系需要客体间的关系即对于某一联系约定项目 关系对应于客体的共同协定的实体注 本规范没有涉及建立或终止这些关系的方法在上述内容中在操作中包括的客体才有可能是调用者和执行者 但是一般情况下操作的调用者和执行者并不直接地互相连接而是通过可运送调用和返回的某一媒体来进行连

12、接 展开的视图如图所示图 展开的视图在调用和返回的运送过程中以及在联系的建立释放和维持时媒体可能引起延迟并且引起失败或不准确的可能性 它也可引起联系及其操作的安全受到威胁的可能性 这些内容 与其他因素一起可描述为服务质量联系约定目前能看作有三个部分 第三个部分是媒体 在约定期间媒体的职责是满足 要求注 今后 目标和最低可接受 要求可能形成操作操作包规范的一部分 并且直接形成联系约定本身的一部分实现为了在 客体之间运送调用和返回结果 的实现 包括定义适当的媒体 例如这样的媒体可包含信息传递或过程调用能力以使操作的调用者和执行者能在单个计算机系统中以独立开发的软件模块来实现通信能力以使操作的调用者

13、和执行者能在独立的计算机系统中实现实现可以是通用的在这种情况下 它能用来支持任一联系约定另一些实现是专用的它仅适用于某些特殊约定图 描述了利用通信手段实现 的方法 这种方法可能具有很广泛的用途图 的通信实现方法在这种方法中媒体由若干插块 客体和信息传送客体组成每一个 客体对应一个插块客体 与每个 客体相关的插块客体似乎起着相应 客体的作用 但是它实际上并不调用或执行任何操作 它只不过是相应地将调用和返回转换成 反之亦然 通过信息传送客体在插块间交换这些因此为了调用一个操作调用者调用相关插块的操作它形成一个描述该调用的 插块利用信息传送能力将 传送给另一个插块 后一个插块解释该 然后调用与执行者

14、相关的 客体的适当操作 当操作执行完时执行者向其相关的插块运送任一个返回 该插块形成一个描述返回的然后该插块利用信息传送能力将该 运送给另一个插块 后一个插块解释该 并且把返回报告给调用者第 章定义了一批合适的在这种 实现中利用了各种信息传送能力 尤其重要的是 信息传送能力 本标准的伙伴标准 和 描述了许多这样的实现概念引言本章定义了对应于 基本概念的信息客体类以便规定这些类的客体具有的特性 定义了下列信息客体类描述操作描述差错描述操作包描述连接包描述联系约定描述 客体类使用 来定义信息客体类如此提供的记法可用于 应用的设计者规定这些类的具体事例 鼓励设计者使用该规范方法 但不强制使用 如果使

15、用其他的方法 最终的规范应包括或涉及如何获得有效使用所提供的记法的描述注 许多现有的规范使用 宏记法 它在 标准的先前版本中定义 见 来规定有关信息客体的操作差错和其他类 附录 描述了如何将这些宏的使用转换成本标准所提供的记法 对于新的应用不应使用这些宏操作操作是一个客体 调用者 能向另一个客体 执行者 请求的功能 规定信息客体类所有操作均属于它 如下 各个字段在 中描述字段规定了操作的自变量的数据类型 如果在某一操作中省略该字段 则该操作无自变量值字段规定操作自变量的数据类型是否可被省略 只有当字段出现时 该字段才出现 如果该字段不存在或取值为 在 中不能省略 的值 见字段规定如果该操作执行

16、成功是否返回结果 若返回则取值 否则取值字段规定操作的结果返回值的数据类型 如果省略该值那么该操作就无结果值返回 如果 字段为 应省略该字段字段规定是否可以省略作为执行操作结果的返回值的数据类型 只有当字段出现时 该字段才出现 如果该字段不存在或取值 在中不能省略 的值见字段规定一组差错其中的任何一个都可返回来报告操作执行不成功 如果省略该字段 则不报告操作执行不成功字段规定是否总是返回执行该操作的效果 如果返回则取值 否则取值字段 如果出现 规定一组操作其中的任何一个都可在操作执行期间作为链接操作被调用 如果省略该字段这一操作的调用不链接其他操作字段规定该操作是否同步如果同步则取值 否则取值

17、为 如果字段为 该字段也应取值为 当 字段置为 时 这就意味着在返回该操作之前 没有其他同步操作可由这一侧调用注 字段和 字段的组合代替了 中定义的 操作类的早期概念字段规定能调用该操作的允许优先级见字段规定能返回该操作结果的允许优先级见字段如果出现规定标识该操作所使用的代码值见 例如当该操作要被调用时注 使用 不能调用不具有 的操作见 实际上除打算在某一特定情况中使用外所有的操作应具有分配的 例如作为一个联结操作字段规定操作是否是等幂的 如果是等幂的取值 否则取值差错差错是操作执行不成功的报告 规定信息客体类 所有的差错都属于它 如下 各个字段在 中描述字段规定差错的参数的数据类型 如果在某

18、一差错中省略该字段 则该差错无参数值字段规定作为限定差错参数返回值的数据类型是否可任选地出现只有当 字段出现时该字段才能出现 如果该字段不存在或取值 在中不能省略 的值见字段规定能返回差错的允许优先级 见字段如果出现规定用于标识该差错的代码值 见 例如 当返回差错时注 使用后面定义的 不能返回没有 的差错 实际上除打算在某一特定情况 例如联结差错中使用外 所有的差错都应具有分配的 字段操作包操作包是一对通信客体所起作用的规范 这是从他们能相互调用的观点来说的 若该包是不对称的 则术语 消费者 和 供应者 可用于所涉及的两个客体 规定信息客体类所有这样的包均属于它如下各个字段在 中描述字段规定了

19、两个客体均能执行的操作的集 可以省略该字段字段规定了两客体中的某一客体能够执行的操作的集 该客体称为消费者 可以省略该字段在这种情况下 消费者只能执行由 字段规定的操作字段规定了两客体中的某一客体能够执行的操作集该客体称为供应者 可以省略该字段在这种情况下供应者只能执行由 字段规定的操作注 提供的参数化的操作包 见 通过转换另一客体的作用来获得一个操作包字段 如果出现 规定用于标识该操作包的客体标识符 值 例如如果该包是要被通告或协商的注 没有 的包不能被通告或协商由 和 字段包括的 直接或间接 所有操作应具有不同的值在被包含的所有操作见 的 字段中包括所有差错应具有不同的 值连接包连接包是在

20、动态地建立和释放联系时所涉及的操作和 的规范 仅当联结和断联操作用来分别动态地建立和释放联系时才应规定连接包 规定信息客体类 所有的连接包均属于它如下各种字段在 中描述字段规定了作为建立联系的一部分而被执行的操作 这样的操作必须具有其置为 的 和 字段以及出现在 字段中的单一差错如果成功地建立该联系联结操作返回一个结果 如果建立联系不成功 联结操作报告其差错 如果没有明确包括 字段 连接包应包括 操作见字段规定了作为释放联系的一部分而被执行的操作这样的操作必须具有置为的 和 字段以及由 字段定义的单一差错 如果成功释放联系断联操作返回一个结果 如果释放联系不成功断联操作不返回结果而报告其差错

21、如果没有明确包括 字段连接包应包括 操作见字段表示联系响应者也可以是发起者 是否能调用 操作字段表示在 操作已指明差错后联系是否有可能仍然存在字段 如果出现 规定用于标识该连接包的 值 例如 如果该连接包是要被通告或协商的注 没有 的连接包不能被通告或协商联系约定联系约定是相互建立联系的一对通信客体的作用的规范 规定信息客体类 所有这样的约定均属于它如下 各个字段在 中描述字段的出现表示由该联系约定控制的联系通过相应的联结和断联操作动态地建立和释放这些联结和断联操作为连接包的一部分来规定 该字段的内容规定了所涉及的连接包当联系存在时 并且联系是对称的或联系的发起者起着消费者和供应者的作用时字段

22、如果出现规定一个或多个适用的操作包当联系存在时 并且认为联系的发起者起消费者的作用时 字段 如果出现 规定一个或多个适用的操作包注 提供了参数化的操作包 见 它允许通过转换另一客体的作用产生一个操作包当联系存在 并且认为联系的发起者起供应者的作用时 字段如果出现规定一个或多个适用的操作字段 如果出现 规定用于标识该联系约定的 值例如如果该联系约定是要被通告或协商时所用的值注 无 的联系约定不能被通告或协商客体类客体类定义了一组 客体的能力 这些客体具有共同使用一组特殊的约定与其他客体交互作用的能力 规定信息客体类 如下 各种字段在 中描述字段 如果出现 规定了一组 客体类它是已定义类的超类 已

23、定义类的 客体能够支持每一个被规定超类所有客体含有的全部约定 以及下面 定义的字段中直接出现的那些约定字段规定了一组 对于这组 该类的客体能够作为发起者和响应者 可以省略该字段字段规定了一组 对于这组 该类的 客体能够作为发起者 可以省略该字段在这种情况下 这些 客体只能够启动由 字段规定的联系约定字段规定了一组 对于这组 该类的客体能够作为响应者 可以省略该字段在这种情况下这些客体只能够对由 字段规定的联系约定作出响应字段规定了用于标识该客体类的 值例如如果该客体类是要被通告或协商的代码代码 类型对操作的 字段和差错的 字段提供了值 规定代码类型如下优先级规定 优先级类型如下为了在两个客体间

24、进行交换该参数定义了相对于其他调用 及其返回 指派给相应的调用 操作的或其返回的传送的优先级该值越低 优先级越高类属 协议引言本章提供了一批用来规定实现 概念的协议的定义 主要定义有关于操作的调用和返回的参数化的 集关于联结操作的调用和返回的参数化的关于断联操作的调用和返回的参数化的另外还有一些上述定义所依赖的辅助定义参数化的类型 为包含 的抽象语法的定义提供了一个基础 这些 包括操作调用的 结果和差错返回的 以及拒绝无效的 规定 如下必须与上面的定义一致注 在实际实现中 使用不能自标识和自限定的编码规则时 不允许内部级别和外部级别限制违反有差别为了产生充分定义的类型必须提供的 参数如下类型

25、的值集定义了可用以标识调用以及与以后报告相关的值 如果在某一实现中可用另外的方法实现这些相关功能 就可以设置值集 见注应用设计者可以选择该参数为非限制的 或提供确切的范围或将该参数扩展为某一抽象语法参数见 和对于 和 实现并不支持值 见参数规定了描述可被调用的那些操作的客体集参数规定了描述那些可能需要产生响应的操作的客体集注 给出该参数是为了强调抽象语法的不对称性见 和 从 信息客体集可以导出该参数 在信息客体集中 字段不为 的操作应包括在该参数中如果 的接收者不认识这些已定义 的某一个将产生 其问题成分取异常值调用参数化的类型 提供了操作调用的 规定如下必须是明确的必须标识挂起操作它具有一个

26、或多个链接的操作必须与上面的定义一致必须在联系操作的 字段中注 在实际的实现中使用不能自标识和自限定的编码规则时不允许内部级别和外部级别的限制违反有差别为产生充分定义的类型 必须提供的 参数如下类型 的值集定义了可用以标识调用以及与以后报告相关的值见可被调用的操作所得到的 具有如下四个组成部分这一部分标识具体的调用 它是 参数提供的一个标识符值 该不应是已经使用过的决定它的规则是特定映射的特点 否则应产生一个见 其问题成分取异常值如果出现这一部分则表示以相反的方向将该调用与先前的调用链接 它应是还未报告结果的先前调用的 否则产生一个 其问题成分取异常值先前的调用应具有提供链接操作的操作 否则产

27、生一个 其问题成分取异常值注 对于 实现 不使用不存在的 值这一部分将通过其 来标识 的某一操作否则产生一个其问题成分取异常值 如果出现 部分先前的调用应具有允许具体操作与先前调用链接的操作否则 产生一个 其问题成分取异常值除省略 字段或者省略 字段外 这一部分应该出现并且具有这样的类型它形成由 部分标识的操作的 字段 如果不满足该条件 产生 其问题成分取异常值如果该 的接收者找到了类型错误的 产生 其问题成分取异常值返回结果参数化的类型 提供了报告操作执行成功的 规定其如下必须是对挂起操作的约束返回结果由 标识必须与上面的定义一致注 在实际的实现中使用不能自标识和自限定的编码规则时不允许内部

28、级别和外部级别的限制违反有差别为了产生充分定义的类型必须提供单一 参数即 也就是可返回结果的那些操作所得到的 具有如下三个组成部分这一部分标识正在报告成功执行的特定调用 它应该是还未报告效果的先前调用的 否则产生 其问题成分取异常值 先前的调用应是返回结果的操作否则产生 其问题成分取异常值只有当结果 部分出现时 该部分才出现它通过 来标识的一个操作特别是由 表示的操作否则产生 其问题成分取异常值除省略 字段外这部分应该出现并且具有这样的类型 它产生由部分标识的操作的 字段在省略 字段的情况下应省略这一部分本身 如果不满足该条件产生 其问题 元素取例外值如果该 的接收者找到了类型差错的 产生 其

29、问题成分取异常值返回差错参数化的类型 提供了报告执行操作不成功的 规定其如下必须是对挂起操作的约束返回差错必须在联系操作的 字段内必须与上面的定义一致注 在实际的实现中使用不能自标识和自限定的编码规则时不允许内部级别和外部级别的限制违反有差别为产生充分定义的类型必须提供单一 参数即 差错 也就是可返回差错的那些操作的差错集见所得到的 具有以下三个组成部分这一部分标识正在报告不成功执行的特定调用 它应是还未报告效果的先前调用的 否则产生 其问题成分取异常值 先前的调用应是返回差错的操作否则应产生 其问题成分取异常值这一部分通过其 标识 差错中的一个差错否则产生其问题成分取异常值 该差错应该是出现

30、在操作的 字段中的差错该操作由 标识否则产生 其问题成分取异常值除非省略 字段这一部分应具有产生差错的字段的类型该差错由 部分标识在省略 字段的情况下应省略这一部分本身如果不满足这一条件产生 其问题成分取异常值如果该 的接收者找到了类型差错的 应产生 其问题成分取异常值拒绝类型 提供了报告使用其他 的差错的 规定其如下必须与上面的定义一致注 在实际的实现中使用不能自标识和自限定的编码规则时不允许内部级别和外部级别的限制违反有差别所得到的 具有以下两个组成部分除了当不能确定 而发送值 外这一部分是出现在被拒绝的中的 见这一部分标识被拒绝的 的特殊问题 具有四个类别 在 中规定是具有 形式或结构的

31、基本问题 规定可能性如下并且表示下列内容该 的标记表示它不是 所允许的选择方案之一该 的结构与相应的定义不一致根据期望的抽象语法不能确定该 的结构注 在某些映射中在通信基础设施内标识和处理这些问题表示 的某一组成部分是错误的规定可能性如下并且表示下列内容见见见由于资源限制 期望的执行者不愿执行该操作由于将要释放联系 期望的执行者不愿执行该操作见见见表示 的某一部分是错误的 规定可能性如下并且表示下列内容见见见 和表示 的某一部分是错误的 规定可能性如下并且表示下列内容见见见见见该 的接收者找到类型差错的 不产生新的拒绝问题整型 描述某一类型或违反 定义约束的事件中产生的差错代码值对发送的差错信

32、号的反应就是发送 这里 用 标识符 和的某些串来标注发送的差错 的问题成分取值为调用标识符类型 定义了标识操作的具体调用所使用的值 规定其如下当 出现时它是一个类型为 的值 当 不存在时 在它出现处用代替非调用标识符是当既不需要也不适用 值时所用的 值 规定其如下是类型为 的一组值其中 仅由 值组成 规定其如下差错用 参数给定一组操作参数化的差错集 是这些操作的 字段中所有差错的集合 规定其如下联结用 参数给定单一联结操作 参数化的类型 提供了调用该操作 返回操作的结果和报告差错的 规定如下断联用 参数给定单一断联操作 参数化的类型 提供了调用该操作的调用返回操作的结果和报告差错的 规定如下实

33、用定义引言本章提供了对基于 应用的设计者实用的一批定义 它们包括通常有用的操作 以及与它们相关的差错参数化的定义它可递送包含在某一操作包中的几组操作和一些辅助定义参数化的定义 它可以通过改变操作码 从一个操作导出另一个操作参数化的定义它可以通过转换一个操作包的作用或者通过组合几个操作包来定义另一个操作包参数化的类型 用它来定义相应于操作包的抽象语法空联结操作提供了最简单的联结操作如果没有明确规定某一连接包的联结操作它是联结操作所取的默认状态 该操作无自变量或结果值对应于联系的拒绝 该操作可能具有单一的差错见 该操作是同步的 这意味着在返回该联结的结果前 无同步操作可以调用 规定操作如下空断联操

34、作提供了最简单的断联操作如果没有明确规定某一连接包的断联操作 它是断联操作所取的默认状态 该操作无自变量结果或差错值 该操作是同步的 这意味着在返回任一未完成的同步操作的结果之前 不能调用断联操作 规定 操作如下拒绝差错提供了对某一请求的拒绝且不提供任何理由 规定如下空操作空操作 不进行任何事情 规定如下该操作是等幂的 并且无返回检查检查 操作查询一个先前调用操作的效果 规定如下该操作具有类型为 的单一自变量它标识被查询的调用操作该请求总是返回一个结果它指明该操作调用是否仍在进行 其执行是否完成或者该操作调用是否是未知的注 由于调用从未发生或者执行者忘记了调用都可能使调用成为未知该操作是等幂的

35、除非先前调用的操作是等幂的 结果为完成的检查操作引起的副作用是对所涉及的调用返回的重传注 这里的意思是指如果操作包中包括检查操作非等幂操作的执行者必须保留响应 结果或差错确认确认操作确认收到 非等幂 操作调用的返回 规定如下该操作具有类型为 的单一自变量它标识返回被确认的调用该请求总是返回一个结果它指明该返回认为已被确认或者涉及的操作调用是未知的注由于调用从未发生或执行者忘记了调用 可能使调用成为未知该操作是等幂的包含检查操作的每一个操作包中必须包括该操作检查和确认操作集由操作名称所指出的两个操作组成 通常在一个包中这两个操作经常都是需要的 规定如下取消取消 操作请求过早地终止操作的执行 只能

36、够取消那些把 差错包含在字段中见 的操作 规定如下该操作具有类型为 的单一自变量它标识被取消的调用操作万一该请求失败 返回 差错见该操作是等幂的取消失败差错报告执行 中的问题规定如下各种参数具有 和 中定义的意义下列可能性表示取消中碰到的特定问题该操作调用没有发生或已被忘记该操作已执行 或是在不允许取消的阶段执行的所调用的是不能被取消的操作标识要取消的操作 调用已取消如果某一操作被取消 将报告已取消 差错该差错必须包括在受影响的操作的 字段中 规定如下正向作为 参数给出一 参数化的操作集 是通过添加操作形成的扩展的操作集合这些附加操作是以相同方向间接地与该集中的操作链接的 规定如下假设在第 或

37、较后的链接级别上无操作 操作也不会出现在较早的链接级别上 如果这一假设对于某一 无效要求用其他方法标识所隐含的操作的全集反向作为 参数给出一 参数化的操作集 是由与该集中的操作直接或间接链接的所有操作组成的 这些链接是以相反方向进行的 规定如下假设在第 或较后的链接级别上无操作 操作也不会出现在较早的链接级别上 如果该假设对某一无效 要求使用其他方法来标识所隐含的操作的全集消费者执行作为 参数给出一操作包 参数化的操作集 包含的全部操作必须是消费者能够执行的 规定如下如果关于链接操作的 和 的有关假设是有效的 仅能使用该集供应者执行用 参数给定一操作包 参数化的操作集 包含的全部操作必须是供应

38、者能够执行的 规定如下如果关于链接操作的 和 的有关假设是有效的仅能使用该集全部操作作为 参数给出一操作包 参数化的操作集 包含该操作包涉及的全部操作 规定如下如果关于链接操作的 和 的有关假设是有效的仅能使用该集重编码作为第一个 参数给出一 除 字段具有第二个 参数的值 外 参数化的操作集 在各方面与 是等同的 规定如下转换作为第一个 参数给出一个包 除消费者和供应者的作用被交换且其 字段具有第二个 参数值 外 参数化的包 在各方面与 是等同的 规定如下组合参数化的操作包 将许多操作包组合成一个包 规定如下为了产生充分定义的操作包 必须提供的 参数如下一组操作包 其中所得到的操作包的消费者起

39、消费者的作用一组操作包其中所得到的操作包的消费者起供应者的作用一个操作包 典型的不完整定义 在定义所得到的操作包时使用其 字段注 包通常不具有定义的操作 即使有它们也不出现在所得到的操作包中除非这些操作出现在或 中单一抽象语法参数化的类型 是抽象语法的基础 通过使用来自于 的调用标识符抽象语法允许某一包 中所有操作的调用和报告 规定如下消费者抽象语法参数化的类型 是抽象语法的基础通过使用来自于 的调用标识符 抽象语法允许某一包 中消费者执行的所有操作的调用和供应者执行的所有操作的报告规定如下供应者抽象语法参数化的类型 是抽象语法的基础通过使用来自 的调用标识符抽象语法允许调用某一包 中供应者执

40、行的所有操作和报告消费者执行的所有操作 规定如下附录标准的附录模块输出所有内容接下页接下页信息客体规范结束输出所有内容必须与上面的定义一致必须是明确的必须标识挂起操作具有一个或多个链接的操作接下页必须与上面的定义一致必须是在相关操作的 字段中必须是针对挂起操作返回结果由 标识必须与上面的定义一致必须是针对挂起操作返回差错必须是在相关操作的 字段中必须与上面的定义一致必须与上面的定义一致接下页类属 定义结束输出所有内容接下页接下页实用定义结束附录提示的附录记法使用指南本附录为应用协议设计者提供了关于使用相应于 基本概念的信息客体类以及应用一组参数化的实用定义的示例和指南操作及其差错的示例本章提供

41、了属于 和 类的信息客体示例异步远程操作 它具有类型为 的自变量在操作成功执行的情况下总是响应 与不出现关键字 所隐含的意义一样 返回类型为的结果值或者在操作执行不成功的情况下根据失败情况返回差错 或操作 是与该操作链接的这意味着在完成该操作前的任一时刻 根据该操作可调用 是由其代码整型值 标识异步远程操作 具有自变量 它从不失败 或者如果失败的话也不报告失败 当报告成功执行该操作的结果时 执行者可任意省略类型为 的结果值 操作 是与该操作 链接的这意味着在完成 前的任一时刻 根据可调用 该操作由整型值 标识同步远程操作 由整型值 标识并具有类型为 的自变量它总是报告其效果 如果当该操作成功执

42、行时 返回一个指示但返回的结果无值 如果操作执行失败返回差错注 由于这是一个同步操作因此应用设计者应保证该操作总是返回 特别是对于调用者希望进一步调用的同步操作异步操作 由整型值 标识并且其调用附带有类型为 的自变量该操作无返回信息客体类的事例如下 它用来报告前面刚刚定义的 某些 操作执行不成功用来报告 或 执行不成功 由整型值 标识附带有类型为 的差错特征参数值用来报告 执行不成功附带有类型为 的值 根据执行者的意愿有时可以省略该值 它由整型值 标识由整型值 标识用来报告 执行不成功该差错无参数值 即差错特征返回操作包和使用 的示例在 中定义的操作和差错可组成一个操作包 如下当两个 客体交互

43、作用 时可任意地称其中之一为 消费者 它能调用和 另一个 客体可称为 供应者 它仅可调用 由值全程标识该特定的组合注 术语 消费者 和 供应者可区分两个交互 作用的 客体必须根据远程操作外部的事情来定义它们 最简单的情况就是根据它们在形成联系约定中的作用来定义它们 见同一组操作的不同组合形成了 定义如下在 中 两个客体均可调用 消费者可调用 双方都不能调用使用参数化的定义 可以从 导出第 个操作包使用 可以转换 中由消费者和供应者 所调用的操作并且对该组合分配一个新的客体标识符值 因此详细的 如下所述联结和断联操作示例通过调用联结 操作可以动态地建立联系 其中的一个示例为用同步 来建立两个 客

44、体间的联系 该操作的调用附带有类型为的自变量并且成功建立联结附带有类型为 的结果值 在建立联系不成功的情况下 返回一个差错 并附带有特征参数调用另一个同步操作 释放联系定义如下连接包示例可用示例 和 定义连接包 用它可动态地建立或释放两个 客体间的联系当 动态地建立或通告两个客体间的联系时 由值全程标识它使用操作 和 分别建立和终止该联系 它允许联系建立的响应者断联即使 操作失败也允许保持联系 最简单的连接包默认用操作 和 见 和 分别建立和终止联系给出示例如下对于该联结包只有联系建立的发起者可以调用联结 即使断联企图失败也可以释放联系联系约定示例定义联系约定 如下它表明使用连接包 建立和终止

45、联系并且启动联系建立的 客体起着操作包 中 消费者 的作用 由 值标识该约定客体的示例定义一个 客体由 标识 它是与其他 客体交互 作用的一组客体中的一个客体 它通过启动使用联系约定 的交互来与其他客体进行交互类似地定义 如下它是与其他 客体交互作用的一组 客体中的一个客体 它通过对由联系约定提出的交互作出响应与其他客体进行交互使用 和 的示例从 中定义的 导出的信息客体集 如下所示可以产生 集 该集列出了 消费者 可调用的操作 依次产生 它是以相反 方向调用的操作集即由供应者 调用的操作 而产生 它是与由 产生的操作集间接链接的操作集 并且由消费者调用操作集 包括初始的操作集 以及以相同 方

46、向间接链接的操作 在例子中 就是由消费者调用的操作 因此另一方面操作集 是操作的组合这些操作是由形成的操作集的一部分它们是根据 给出的操作集中的那些操作而由 供应者调用的操作 以及以相同 方向即从消费者到提供者的方向间接与它们链接的操作 也就是可将它明确表示为另一方面 从导出的操作集 如下所示可得出因此可得出和 的示例有了 中示例的帮助 给定操作包 消费者能执行下面集中的所有操作它产生操作集同样地在 中 供应者 能够执行的所有操作为它就是操作集和 结构的好处就是在操作包中的操作之间有许多嵌套链接形成的复杂情况下 可以使得应用设计者弄清楚相同方向 的操作即消费者可以调用的操作和供应者可以调用的操

47、作 而不用考虑它们链接的情况操作集 列出了由 隐式即通过链接和显式涉及的所有操作 可以由使用该包的事例中的任一方来调用它产生操作集附录提示的附录宏的变换在以前 的版本中提供了 宏允许 应用设计者规定其操作差错联结操作 应用服务元素等等 另外与 紧密相连的 建议 提供了更多的宏 设计者可在分布式应用的基于客体的规范中使用这些宏 宏能力正在逐步从 中取消 因此由现行标准提供的 记法使用 宏替换 记法包括信息客体类和参数比导引现有的很多规范使用宏的方法 因此本附录给出如何将使用的这些宏转换成作用替换记法 在很多情况下这种替换记法比被其代替的宏更容易理解 但是这些特点并未在本附录中指出来 它仅与理解现

48、有宏用途有关 新的规范不应再使用宏本附录的每一章对应每个现存的宏 这些章描述了宏的目的给出了它的使用示例以及在新记法中与其等效的使用示例 还论述了示例中并不清楚的内容 在使用宏记法的示例中去掉带有下划线的符号形成新的记法而插入用黑斜体表示的符号使用宏的一个特定方法就是现有的规范中普遍使用的两级定义 在这种方法中 在第二级分配各种信息客体例如操作或差错代码的 标识符 读者解释这样的规范常常要求考虑许多不同符号的相似拼写以及接近的 定义这些不必要的因素 替代记法不容许这样 因此本附录描述的仅仅是第二级的映射或者使用宏定义的那一级的映射操作宏用来规定操作除了联结和断联操作 就本标准而言从定义的 宏称

49、其为 变化为 信息客体类的某一成员在下图中相应地是从左到右 注意左边的宏记法 从老的记法中删除两处带下划线的符号而以黑斜体表示的符号插入到老的记法中 从而形成新的记法如右边所示注在宏记法中省略的 条款 在新记法中的在宏记法中出现的不带数据类型的 在新记法中省略的 条款 关键字是默认值 因此被省略由于上面假设了两级定义单独的差错和链接操作的名字以小写字母开头信息客体类定义所允许的下列操作字段没有随宏来规定如果需要的话必须在文本中规定作为一个用户选项 如果省略了自变量或结果值在新记法中可能相应地使用 和字段来声明差错宏用来规定差错除联结和断联操作的差错外注字段没有随着宏来规定 如果需要 可在文本中规定作为用户选项 如果省略了随着差错的报告而定义的参数值 如果有的话 在新记法中可能使用字段来声明联结宏用来规定联结操作注 在新记法中不出现关键字 时指明这是不能用 调用的特殊操作

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 标准规范 > 国家标准

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1