GB/T 17962-2000
基本信息
标准号:
GB/T 17962-2000
中文名称:信息技术 信息资源词典系统(IRDS)服务接口
标准类别:国家标准(GB)
标准状态:现行
发布日期:2000-01-03
实施日期:2000-08-01
出版语种:简体中文
下载格式:.rar.pdf
下载大小:7986777
标准分类号
标准ICS号:信息技术、办公机械设备>>35.060信息技术用语言
中标分类号:电子元器件与信息技术>>信息处理技术>>L79计算机开放与系统互连
关联标准
采标情况:idt ISO/IEC 10728:1993
出版信息
出版社:中国标准出版社
书号:155066.1-16896
页数:136页
标准价格:53.0 元
出版日期:2004-04-16
相关单位信息
首发日期:2000-01-03
复审日期:2004-10-14
起草单位:复旦大学
归口单位:全国信息技术标准化技术委员会
发布部门:中华人民共和国国家质量监督检验检疫总局
主管部门:国家标准化管理委员会
标准简介
IRDS系列标准规定了能用于说明和潜在地控制一个企业信息资源的软件工具产品。它定义了在IRD定义级维护的数据的结构和部分内容,以及在IRD级维护的数据结构。同样也定义了在这两级用于修改和查询数据的服务。关于IRDS系列标准的详细细节见GB/T16647。本标准规定服务接口,这些接口使得任何程序通过程序语言提供的外部调用接口能完全访问所有的IRDS服务。本标准定义了接口语义,叙述与Pascal(GB/T7591)语言的联编。与C语言的联编由附件C提供,与Ada语言(ISO/IEC8265)的联编由附件D提供,与CORBA IDL的联编由附件E提供。与其他标准程序语言的联编在其他标准中提供。本标准没有考虑实现环境以及特定的运行或编译接口。 GB/T 17962-2000 信息技术 信息资源词典系统(IRDS)服务接口 GB/T17962-2000 标准下载解压密码:www.bzxz.net
标准内容
ICS35.060
中华人民共和国国家标准
GB/T17962—2000
idtIS0/1EC10728:1993
信息技术
信息资源词典系统
IRDS)服务接口
Information technologyInformation ResourceDictionary System (IRDS)services interface2000-01-03发布
2000-08-01实施
国家质量技术监督局
GB/T17962—2000
本标准等同采用国际标准ISO/IEC10728:1993《信息技术信息资源词典系统(IRDS)服务接口》、ISO/IEC10728:1993/Amd.1:1995《信息技术信息资源词典系统(IRDS)服务接口补篇1:C语言联编》、ISO/IEC10728:1993/Amd.2:1996《信息技术信息资源词典系统(IRDS)服务接口补篇2:Ada语言联编》和ISO/IEC10728:1993/Amd.3:1996《信息技术信息资源词典系统(IRDS)服务接口补篇3:CORBAIDL联编》。
根据补篇1增加了附录C;根据补篇2增加了附录D;根据补篇3增加了附录E。本标准的附录A、附录C、附录D和附录E是标准的附录。本标准的附录B是提示的附录。
本标准是信息资源词典系统系列标准之一。GB/T16647定义本标准适用的范围。本标准由中华人民共和国信息产业部提出。本标准由中国电子技术标准化研究所归口。本标准起草单位:复旦大学。
本标准主要起草人:楼荣生、孙永玉、郑洪仁。GB/T17962—2000
ISO/IEC前言
ISO(国际标准化组织)和IEC(国际电工委员会)是世界性的标准化专门机构。国家成员体(他们都是ISO或IEC的成员国)通过国际组织建立的各个技术委员会参与制定针对特定技术范围的国际标准。ISO和IEC的各技术委员会在共同感兴趣的领域内进行合作。与ISO和IEC有联系的其他官方和非官方国际组织也可参与国际标准的制定工作。对于信息技术,ISO和IEC建立了一个联合技术委员会,即ISO/IECJTC1。由联合技术委员会提出的国际标准草案需分发给国家成员体进行表决。发布一项国际标准,至少需要75%的参与表决的国家成员体投票赞成。
国际标准ISO/IEC10728是由ISO/IECJTC1\信息技术”联合技术委员会制定的。本标准的附录A、附录C、附录D和附录E是本标准的一部分,附录B仅提供参考信息。GB/T17962—2000
本标准是信息资源词典系统系列标准之一。GB/T16647定义了要应用本标准的作业区。1范围
中华人民共和国国家标准
信息技术信息资源词典系统
(IRDS)服务接口
Information technologyInformation ResourceDictionary System (IRDS) services interfaceGB/T17962—2000
idtIS0/IEC10728:1993
IRDS系列标准规定了能用于说明和潜在地控制一个企业信息资源的软件工具产品。它定义了在IRD定义级维护的数据的结构和部分内容,以及在IRD级维护的数据结构。同样也定义了在这两级用于修改和查询数据的服务。关于IRDS系列标准的详细细节见GB/T16647。本标准规定服务接口,这些接口使得任何程序通过程序语言提供的外部调用接口能完全访问所有的IRDS服务。本标准定义了接口语义,叙述与Pascal(GB/T7591)语言的联编。与C语言的联编由附件C提供,与Ada语言(ISO/IEC8652)的联编由附件D提供,与CORBAIDL的联编由附件E提供。与其他标准程序语言的联编在其他标准中提供。本标准没有考虑实现环境以及特定的运行或编译接口。2引用标准
下列标准所包含的条文,通过在本标准中引用而构成为本标准的条文。本标准出版时,所示版本均为有效。所有标准都会被修订,使用本标准的各方应探讨使用下列标准最新版本的可能性。GB/T2659—1994世界各国和地区名称代码(eqvISO3166:1988)GB/T7591—1987程序设计语言PASCAL(idtISO7185:1982)GB/T12991—1991信息处理系统数据库语言SQL(idtISO/IEC9075:1989)GB/T15272-1994
1程序设计语言C(idtISO/IEC9899:1990)GB/T16647—1996
信息技术信息资源词典系统(IRDS)框架(idtISO/IEC10027:1990)2程序设计语言AdaidtISO8652:1987)GJB1383—1992
9信息技术数据管理参考模型
ISO/IEC100321999
3定义和缩略语
3.1IRDS框架标准(GB/T16647)中定义和引用的以及本标准使用的术语下面是在IRDS框架标准中定义(或引用)和使用的术语。他们同样适用于本标准。3.1.1客户client
3.1.2信息资源词典InformationResourceDictionary(IRD)3.1.3信息资源词典系统InformationResourceDictionarySyetem(IRDS)3.1.4IRD定义IRDdefinition
3.1.5IRD定义级IRDdefinitionlevel3.1.6IRD定义模式IRDdefinitionschema国家质量技术监督局2000-01-03批准2000-08-01实施
3.1.7IRD级IRD level
3.1.8IRD模式IRDschema
3.1.9级对level pait
3.1.10实系统realsystem
3.1.11服务service
3.2本标准定义的术语
GB/T17962—2000
下面列出的术语将在本标准后面各章中引用。3.2.1活动的active
词典内容状态的一类,该类词典可被所有相关IRDS服务访问。当词典状态不是活动的时候,只有重激活IRD服务可以对该词典操作。3.2.2归档archived
词典内容状态的一类,属于该类词典中的数据不再是活动的。3.2.3属性attribute
对象的特征。
3.2.4公共表commontable
在每个IRD定义和IRD中都存在的表。3.2.5内容模块contentmodule
司时引入到IRD定义或IRD中的对象集合,并用模块名标识对象的来源(所属的模块)。3.2.6作业区context
用户请求建立或缺省建立的工作集,IRDS服务是在此工作集中执行的。3.2.7受控的controlled
词典内容状态的一类,属于该类词典的数据是稳定的,不可修改的。3.2.8定义对象definitionobjectIRD定义级记录的对象,它控制IRD级的数据。3.2.9词典dictionary
IRD定义或IRD。
3.2.10环境表environmenttable控制IRD定义和相关IRD提供的服务的一组表,只存在于每个IRD定义中。3.2.11实现定义的implementation-defined不由本标准定义,但应该由认可的实现者定义的行为。3.2.12实现相关的implementation-dependent不由本标准定义,实现也不必定义的行为。进一步说,不同的情况下这种行为可以不一致。3.2.13内部表internaltable
存在于IRD定义和IRD中的一组表,其内容不能被第9章中与对象有关的服务访问。3.2.14IRD专用表IRD-specifictable只存在于IRD定义或特定的IRD中的一组表,其中有些表体现了定义数据模型设施的数据结构规则。
5IRD内容状态IRDcontentstatus3.2.15
工作集用户定义的属性。IRD内容状态的值取自三个预定义的内容状态类。每个对象版本的内容状态从包含它的工作集中得到。3.2.16IRD内容状态类IRDcontentstatusclassRD内容状态集合的预定义的三个类:未受控的,受控的,归档的。3.2.17IRD对象IRDobject
IRD级记录的对象。
GB/T17962—2000
3.2.18IRD模式组IRDSchemaGroup完全定义IRD每一时刻内容的一或多个IRD模式的集合。3.2.19IRDS数据库IRDSdatabase个IRD定义的零个或多个IRD。
3.2.20IRDS环境IRDSenvironment实现IRDS服务接口的一个操作实例,该服务接口管理一个IRDS数据库。3.2.21IRDS名IRDSname
当在IRD中加入对象或在IRD定义中加入定义对象时可选地赋予的名。如果指定名,则IRDS名、变名、工作集名和工作集版本名的组合必须唯一。3.2.22IRDS会话IRDSsession
IRDS用户和IRDS环境建立的临时联系。会话期间,前者请求服务,后者执行服务。3.2.23IRDS用户IRDSuser
被授权使用IRDS的个人或团体。3.2.24级独立服务levelindependentservice同时适用于IRD定义级和IRD级的服务。3.2.25级专用服务levelspecificservice只适用于IRD定义级或IRD级,不能同时用于这两级的服务。3.2.26(工作集的)现实化materialization(ofaworkingset)工作集中游标打开的工作表中对象版本的集合。3.2.27名name
单独或与其他名结合起来区分对象的字符串。3.2.28无版本(对象类型)non-versionable(ofanobjecttype)表示在一个无版本的工作集中,该对象类型的对象只能有一个对象版本存在。或对于工作集来说,该工作集不能以其他工作集为基也不能作为其他工作集的基。3.2.29对象object
企业感兴趣的事物或概念。
3.2.30对象类型object type
属性属于共同的属性类型集的一类对象。3.2.31对象版本objectversion
在信息处理的作业区中对象的某个生存阶段的信息记录。3.2.32引用路径referencepath
一个工作集到另一个工作集的有向联系,允许前一个工作集的对象版本引用后一个工作集的对象版本。引用只允许在指定的方向进行。3.2.33被引用表referencedtable引用路径上被引用的表。
3.2.34引用表referencingtable引用路径中引用其他表的表。
3.2.35子表subtable
假定SUBT和SUPERT是两个表,如果SUBT中每行对应SUPERT中唯一一行,而SUPERT中每行最多对应SUBT中一行,则称SUBT是SUPERT的子表。3.2.36超表supertable
至少存在一个子表的表。
3.2.37未受控的
uncontrolled
GB/T17962—2000
内容状态的一类,属于该类的工作集中的对象是不稳定的,其属性数据可修改。B变名variationname
用于区分具有相同IRDS名的各种对象的一个属性。9多版本(对象类型)versionable(ofanobjecttype)3.2.39
在不同的工作集中,同一时刻可以存在同一对象类型的多个版本。对于工作集来说,该工作集不包含无版本对象类型的对象,它可以以其他工作集为基或作为其他工作集的基。D工作集workingset
IRDS用户为了管理修改、说明内容状态、访问控制的目的而作为一个单元处理的IRD定义对象或IRD对象的对象版本的集合。
3.3数据项名缩略语
下面列出的缩略语用于命名SQL表中的列和相应的Pascal常数、类型和变量:Add -added
Arch -archived
Atr attribute
Cls=class
Cntl -controlled
Col =column
Cur =cursor
Curr -current
Dcs-IRD content status
Def =definition
Dflt -default
Dflts-defaults
Dic=dictionary
Dom-domain
Id-identifier
Imp=implementation
Ind -indicator
Inst-installation
Int-integer
Ird=InformationResourceDictionaryLen-length
Lim=limit
Maint-maintained
Max=maximum
Min-minimum
Mod-modified
Nat=national
Num=number
Obj=object
Ref-reference
Ret-return
附加的
受控的
IRD内容状态
标识符
指示器
信息资源词典
维护的
修改的
本国的
Scm=schema
Sep-separator
Sess=session
Spec-specification
Srv-service
Str-string
Tran-transaction
Txt=text
Ucntl=uncontrolled
Val=value
Var=variation
Ver-version
Wkg-working
Ws=working set
4约定
GB/T17962—2000
分隔符
字符串
未受控的
工作集
本章说明本标准所使用的约定。这些约定本身不是本标准讨论的主题。在其他场合,完全可以使用其他约药定。
4.1概念和设施说明
为了介绍本标准后面要定义的概念和设施,第5章使用带文字说明的图。有两类图:a)4.6用的数据结构图;
b)4.8用的工作集图。
4.2数据结构说明
在第6章,IRDS服务处理器管理的数据结构用数据库语言SQL说明。一般用表表示对象类型,用列表示属性类型,为了控制目的也部分地使用其他数据。本标准用SQL作定义形式,但并不是实现方法。对于IRDS服务接口提供的服务,用户只能使用第8章定义的形式访问数据。
4.3约束说明:概述
作用在IRD中的一或多个值上的约束只是在适当时才作一次性说明,约束说明出现在:a)第6章,在形式数据类型说明内部;b)第6章,在相关表的说明中;c)第9章,在修改数据的服务说明中。约束的详细说明在4.7。
4.4服务数据结构说明
每个服务的数据结构格式在第8章用Pascal(GB/T7591)说明。C语言的数据结构由附件C定义,Ada语言的数据结构由附件D定义,CORBAIDL的数据结构由附件E定义。4.5服务说明下载标准就来标准下载网
IRDS支持的服务在第9章用Pascal(GB/T7591)描述,并结合文字说明。用于服务的C语言联编由附录C定义,用于服务的Ada语言联编由附录D定义,用于服务的CORBAIDL联编由附录E定义。4.6数据结构图
在第5章用的数据结构图表示表间约束。表用矩形表示。表间约束用矩形之间的直线表示。每一条直线分成两半,每一半与其直接连接的矩形相关。4.7约束说明:细述
4.7.1约束类型
GB/T17962—2000
下面的约束类型用于第6章的形式数据说明中:a)主键约束一一标识每个表的主键;b)唯一约束一一标识一个表中的一组列的值不为空时在表内不重复;c)引用约束一一标识一个表对另一个表的引用;d)检测约束一一对一组值的其他约束说明,这些值可能分布在多个表中。除了在第6章中说明约束外,第5章中用图说明各类引用约束。本章其余部分叙述不同引用约束类型的图的约定和表示这些类型的SQL定义语句。4.7.2引用约束概述
在说明引用约束之前,有必要先解释引用约束的类型。如果表B的每行的某个指定列或列的组合的值不为空时,必须等于表A中一行的主键值(列或列的组合,列数和数据类型相同),则表B引用表A。引用约束进一步分为:a)一对一引用约束一一如果表B中只有一行可以引用表A中的一行;b)一对多引用约束一一如果表B中的多行可以引用表A中的同一行;除了上面的约束分类,还可以进行下述分类:c)引用方可选一一如果表B用于引用表A的列的值可以为空,引用列的值为空的行被认为不引用表A;
d)被引用方可选一一如果表A中有些行不被表B引用;e)引用方必备一一如果引用表B的引用列的值不能为空,表B中的每行必须引用表A中的一行;f)被引用方必备一一如果表A中的一行仅在被表B中的相应行引用时才能存在。为阐明约束的数据结构图使用下面的基本结构。在阐明每个表的约束特征时,表示约束的直线的两个部分分别对待。
a)实线一一表的约束是必备的;b)虚线一一表的约束是可选的;c)线端有“鸡爪”一表示一对多的约束;d)线端无“鸡爪”一表示一对一的约束。下面是上述约束类型的图示。每种情况给出一个相应约束,并有SQL语法表示。4.7.3可选的一对多引用约束
图1是一个最简单的约束,可选的一对多引用约束。表1为相应的SQL定义语句。-
图1可选引用约束
表1对应图1的SQL
CREATETABLEA(AIIRDS_KEYPRIMARYKEY)CREATETABLEB
(BIIRDS_KEY PRIMARY KEY,
B2IRDS_KEY
CONSTRAINTconstraint_name
REFERENCESAONDELETEreferential_action)6
GB/T17962—2000
在表1和后面相类似的表中IRDSKEY是一域名,第6章中定义的所有表都将使用该域。这里引用该域是为了这些例子和第6章中的SQL外观相似。在第6章使用的SQL定义语句将正式地包含ONDELETE子句,如表1。该子句是结构图中没有出现的额外信息,当在表A中试图删除被表B引用的一行时应采取的动作。其中referentialaction可以取下面各值:
一(不必显式说明,在没有ONDELETE子句时隐含)禁止删除;a)RESTRICT—
b)CASCADE—
一表示引用行同时被删除;
c) SET NULL-
一表示删除引用,将引用列置为空。但不删引用行。4.7.4单向且必备的一对多引用约束图2是单向且必备的一对多引用约束。和框B相连的直线的实线部分表示从表B到表A的引用约束是必备的。
图2必备引用约束(1:M)
表2是图2中约束的SOL定义语句。引用列B2上插入的NOTNULL子句使得从表B到表A的引用约束是必备的,且referential_action不能是SETNULL。表2对应图2的SQL
CREATETABLEA(AIIRDS_KEYPRIMARYKEY)CREATETABLEB
(BIIRDS_KEYPRIMARYKEY,
B2IRDS_KEYNOTNULL
CONSTRAINT constraint_name
REFERENCESAONDELETE referential_action)4.7.5单向且必备的一对一引用约束图3是一个单向且必备的一对一引用约束。直线中没有鸡爪表示该约束是一对一的。B
图3必备引用约束(1:1)
表3是图3中约束的SQL定义语句。引用列B2上的唯一约束说明B2的唯一性。表3对应图3的SQL
CREATETABLEA(AIIRDS_KEYPRIMARYKEY)CREATETABLEB(BIIRDS_KEYPRIMARYKEY,B2IRDS_KEYNOTNULL
CONSTRAINT constraint_name
REFERENCESAONDELETEreferential_action,UNIQUE(B2))
4.7.6自引用表
GB/T17962—2000
在上面的儿种情形中,表A和表B可以是同一个表。如果这样,表示约束的直线画成同一个框上两点之间的弧线,见图4。两列或一组列之间的引用约束的SQL定义语句见表4。A
图4自引用约束
表4对应图4的SQL
CREATETABLEA
(AIIRDS KEYPRIMARYKEY
A2IRDS_KEY
CONSTRAINT constraint_name
REFERENCESAONDELETEreferential_action)4.7.7双向且必备的引用约束
图5是一个双向且必备的一对多引用约束。H
图5必备双向引用约束
表5给出图3中约束的SQL定义语句。类似表2,多了一检测子句,是被引用表对引用表的约束。由于约束是相互的,对A表插入时先要使这约束失效,到B表至少插入一引用行后才能恢复此约束。表5对应图5的SQL
CREATE TABLE A
(AIIRDS_KEYPRIMARYKEY
CONSTRAINT constraint _name
CHECK(A1IN(SELECTB2FROMB)))CREATETABLEB
(BIIRDSKEYPRIMARYKEY,
B2IRDS_KEYNOTNULL
CONSTRAINT constraintname
REFERENCESAONDELETEreferential_action)双向一对一引用约束表示方法类似,只是去除鸡爪;SQL定义的B表中加入:UNIQUE(B2).
4.7.8互斥的引用约束
有时两个或多个约束可能互相排压:两个约束中只能有一个满足,而不是两个同时满足。用跨越相关直线的弧线表示这种情况,如图6。表B中的每行都应该包含或是到表A中一行的合法引用,或是到表C中一行的合法引用。这是引用方的互斥约束,称为第1类型互斥约束。A
第1类型互斥约束
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。