'ICS03.100.60A11圆雪中华人民共和国国家标准GB/T25500.2—2010可扩展商业报告语言(XBRL)技术规范第2部分:维度ExtensibleBusinessReportingLanguage(XBRL)specification--Part2:Dimensions2010—10-18发布2011-01-01实施宰瞀鹳紫瓣警麟瞥星发布中国国家标准化管理委员会口‘1”
目次前言⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯引言⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·1范围···⋯⋯···⋯···⋯⋯··⋯⋯·⋯⋯··⋯····⋯·⋯⋯·⋯····⋯·⋯⋯⋯⋯··2规范性引用文件⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯⋯···⋯⋯⋯⋯··⋯·⋯⋯⋯··3术语和定义⋯⋯⋯··⋯⋯⋯⋯⋯⋯⋯⋯⋯····⋯⋯⋯⋯⋯·⋯⋯·⋯⋯·⋯4命名空间及前缀⋯⋯·⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯⋯⋯⋯⋯······⋯····5维度分类标准⋯⋯⋯·⋯⋯⋯·⋯⋯⋯⋯⋯⋯·⋯⋯⋯⋯⋯⋯⋯⋯·⋯⋯··5.1架构⋯···⋯·⋯⋯⋯⋯⋯⋯⋯⋯⋯···⋯⋯⋯⋯⋯··⋯⋯⋯⋯·⋯⋯··5.2超立方体⋯⋯··⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯⋯⋯⋯·⋯⋯⋯⋯···一5.3基础项声明与超立方体⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯5.4跨越不同基础集的维度关系集合的分割⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯5.5维度⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯-5.6domain-member关系和继承·⋯⋯⋯⋯⋯⋯·⋯⋯·⋯⋯·⋯⋯··⋯·5.7维度的缺省值⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯·⋯···⋯····⋯⋯····6实例文档里的维度⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·6.1概述⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·6.2基础项的校验⋯··⋯⋯⋯⋯⋯·⋯⋯⋯···⋯⋯⋯⋯⋯⋯·⋯⋯⋯⋯⋯6.3维度等价事实的定义⋯···⋯⋯·⋯⋯·⋯·⋯⋯⋯⋯·⋯⋯⋯⋯·⋯⋯一附录A(规范性附录)模式文件⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯·GB/T25500.2—2010·⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯Ⅲ⋯⋯⋯⋯⋯⋯⋯⋯⋯·⋯Ⅳ-⋯-·····⋯··⋯···············1·⋯⋯··⋯··⋯····⋯⋯-··⋯1-⋯···········⋯····⋯·····⋯1-··············⋯···⋯⋯···⋯2-···------··--···········⋯--·一3-····················-···········3-···⋯·····⋯··················4-·····⋯·-·⋯--·⋯···-----·⋯6··-······⋯···-······⋯-·······9·⋯···⋯⋯⋯⋯···⋯⋯⋯12--··············---········---·16·······⋯···············⋯···19⋯·⋯⋯⋯⋯⋯⋯⋯⋯⋯20·⋯⋯···⋯⋯⋯⋯⋯⋯⋯20·⋯·······⋯··⋯··----⋯·--202930
刖胃GB/T25500.2—2010GB/T25500《可扩展商业报告语言(XBRL)技术规范》分为四个部分:——第1部分:基础;——第2部分:维度I——第3部分;公式;——第4部分:版本。本部分为GB/T25500的第2部分。本部分按照GB/T1.1—2009给出的规则起草。本部分技术内容与XBRL国际组织制定的XBRL维度规范1.0版(XBRLDimensionsSpecification1.o)基本一致。本部分由中华人民共和国财政部归口。本部分起草单位:中华人民共和国财政部。本部分主要起草人:应唯、王颖、李红霞、李敏敏、黄敏、覃东、杨海峰、杨诚、丁亮、朱健鹏、童盼盼。Ⅲ
GB/T25500.2—2010引言可扩展商业报告语言(ExtensibleBusinessReportingLanguage,XBRL)是一种基于可扩展置标语言(ExtensibleMarkupLanguage,xML)的开放性业务报告技术标准。它通过给财务会计报告等业务报告中的数据增加特定标记、定义相互关系,使计算机能够“读懂”这些报告,并进行符合业务逻辑的处理。XBRL的构想最早由美国注册会计师查尔斯·霍夫曼在1998年提出。随后,在美国注册会计师协会(AICPA)赞助下提出了第一个XBRL原型。XBRL技术广泛适用于财务会计报告、上市公司年报、金融机构监管报告、税务报告等领域,目前在美国、英国、日本、澳大利亚等很多国家中都已投入实际应用。在我国,XBRL已应用于上市公司信息披露和基金信息披露领域,取得良好效果。XBRL技术的应用,可以避免报告数据的重复性录入、报送、传输、转换、比对等人工操作,减少差错率,提高数据生成、传递、使用效率和信息化水平。因此,推进XBRL在我国的应用,有利于促进财务会计报告等业务报告信息的深度分析利用,提高监管效能。XBRL技术规范,是各项XBRL应用所需共同遵循的底层技术标准。制定XBRL技术规范,是推进XBRL在我国应用的基础性工作。目前,国际上均遵循XBRL国际组织制定的技术规范。本部分是GB/T25500.1《可扩展商业报告语言(XBRI。)技术规范第1部分:基础》的一个扩展规范,提供了一个定义维度元数据并且在XBRL实例文档中对其进行引用的通用机制,以维度化的方式处理分类标准中的元素定义问题,可达到同一元素不同背景环境下的复用。Ⅳ
1范围可扩展商业报告语言(XBRL)技术规范第2部分:维度GB/T25500.2—2010GB/T25500的本部分规定了定义XBRL维度的元数据,以及在可扩展商业报告语言(XBRL)实例文档中对其进行引用的通用机制。本部分适用于XBRL分类标准的制定、实例文档的编制或使用,以及XBRL的相关开发与应用。2规范性引用文件下列文件对于本文件的应用是必不可少的。凡是注13期的引用文件,仅注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/T18793--2002信息技术可扩展置标语言(XML)1.0GB/T25500.1可扩展商业报告语言(XBRL)技术规范第1部分:基础3术语和定义GB/T25500.1中界定的以及下列术语和定义适用于本文件。3.1源及目标[概念]sourceandtarget[c∞cept(s)]在一个扩展链接元素中,定位器元素的href属性值所表示的一对概念。label属性内容和弧的from属性内容相同的是源[概念],label属性内容和弧的to属性内容相同的是目标[概念]。3.2关系relationship用弧(arc)的xlink:arcrole属性以及其他属性来定义的源概念和目标概念之间的联系。3.3维度dimensionxbrldt:dimensionItem替换组中的抽象元素,能表征事实的各个不同的方面。3.4域domain由若干成员组成的集合,可能为空集、有限集或者无限集。注:一个维度可能有多重维度一域关系。3.5有效域effectivedomain所有相关的域的联合集。3.6域成员domain-member维度的域中所有可能的值。注:明确域由域一成员关系来定义。域成员项包含在数据项替换组中。1
GB/T25500.2—20103.7明确维度explicitdimension域为有限集合的维度。注:明确维度的成员可以明确地命名。3.8类型化维度typeddimension域成员不能逐个枚举的维度。3.9类型化维度元素typeddimensionelement在上下文的段或场景中作为维度标识符而使用的非XBRL元素。3.10空维度emptydimension不包含任何域的明确维度。3.11维度分类标准dimensionaltaxonomy包含附录A中描述的弧的分类标准。3.12超立方体hypercube一个维度的集合,是参与到has—hypercube关系和hypercube-dimension关系中的hypercubeltem替换组中的抽象元素。3.13空超立方体emptyhypercube没有维度的超立方体。3.14模板分类标准templatetaxonomy定义超立方体以及超立方体与基础项之间关系的分类标准。3.15维度关系集dimensionalrelationshipset遍历基础集内部及跨基础集的关系所组成的集合。注:维度关系集中可含有不同角色的扩展链接关系和不同弧角色的关系。3.16维度处理器dimensionalprocessor处理XBRL维度实例文档或维度分类标准,并根据本部分中的规则检查输入文档一致性的程序。4命名空间及前缀元素或者属性的命名空间前缀使用如ns:name,其中ns是命名空间的前缀,name是本地名称。关于命名空间前缀到实际命名空间的映射,本部分与表1保持一致。表1中的前缀列是非规范性的,命名空间URI列是规范性的。裹1命名空间和命名空间前缀命名空间前缀命名空间uRIxbrldthttp://xbrl.org/2005/xbrldt
表1(续)GB/T25500.2—2010命名空间前缀命名空问URIxbrldihttp://xbrl.org/2006/xbrldixbrldtehttp://xbrl.org/2005/xbrldt/errorsxbrldiehttp://xbrl.org/2005/xbrldi/errorsxbrlihttp://www.xbrl.org/2003/instancehttp://www.w3.org/200l/XMLSchemaxlinkhttp://www.w3.org/1999/xIinkLinkhttp://www.xbrl.org/2003/llnkbase5维度分类标准5.1架构5.1.1概述在XBRL实例中,本部分所定义的元素按惯例使用前缀“xbrldi”,其命名空间为http://xbrl.org/2006/xbrldi,这些元素仅在scenario元素和segment元素中出现。XBRL实例根据类型化维度和明确维度所对应的语法约束来进行校验。类型化维度对应的语法约束仅要求通过XML模式文件的校验,而明确维度对应的语法约束要求校验每个成员要素的描述以及使用链接库的成员之间的关系。维度分类标准的特点是使用一系列的弧角色(arcrole)。这些弧角色以及它们的属性声明位于XML模式文件的appinfo部分。维度模式文件的命名空间为http://xbrl.org/2005/xbrldt。在文档中使用前缀“xbrldt”,联系到模式文件中定义的元素和属性上去。维度分类标准可以导人xbrldt模式文件,但应通过模式文件校验。根据本部分定义的维度分类标准应符合GB/T25500.1。A.2xbrldi一2006.xsd中所定义元素的XBRL实例应通过XML模式文件的校验。如果XBRL实例的DTS中包含维度分类标准,则应是符合GB/T25500.1规定的有效实例。图1用图解的方式展示了多种不同的关系、元素在源和目标的类型,以及使用这些元素的不同目的。它们或者是基础项,或者是明确域成员,或者是代表整个维度(类型化维度或者明确维度)的根项。这些关系可以不在同一个扩展类型链接元素中。xbrldt:targetRole属性用来在多个扩展类型链接元素之间将从基础项到成员的不同片联系起来。{all,notAll)表示有all和notall两个可能的关系。元素的其他属性(abstract,xbrldt:typedDomainRef)或弧(xbrldt:closed,xbrldt:usable和xbrldt:contextElement)及其类型将通过其可能出现的弧来体现。基础项声明(PrimaryItemDeclaration)是指在XBRL分类标准中所定义、属于xbrli:item替换组,但不属于xbrldt:hypercubeItem或xbrldt:dimensionhem替换组的元素。只有在xbrli:item的替换组中定义的XBRL项才可以作为明确维度的成员使用。连续关系(ConsecutiveRelationship)是指按照5.1.2中定义的规则而连接在一起的两个关系。维度关系集(DimensionalRelationshipSet,DRS)是指连续关系的集合,用于代表基础项声明及其多维元数据之间的关系。3
GB/T25500.2—2010图1关于内容的约束与上下文含义的关系5,1.2连续关系两个关系可以是连续的。一对连续关系包括一个起始关系和一个追随关系,两个关系之间满足以下条件即可构成连续关系:a)弧的用来描述起始关系的xlink:arcrole属性的值和用来描述追随关系的xlink:arcrole属性的值应符合表2中所列弧角色值的组合的某一项;b)由描述起始关系的弧的xlink:to属性所定义的定位器所指向的结点集,和由描述追随关系的弧的xlink:from属性所定义的定位器所指向的结点集,应是同一个集合。表2可能的连续关系的弧角色值起始弧追随弧Allhypercube-dimensionnot-allhypercube-dimensiondimension-domaindomain-member5.2超立方体5.2.1概述超立方体声明(HypercubeDeclaration)是xbrldt:hypercubeItem替换组的一个抽象的数据项声明。超立方体是一个维度的有序列表,由在维度关系集中通过hypercube-dimension关系而与超立方体连接起来的零个或多个维度声明的集合来定义,根据该关系的顺序属性来排序。hypercubeltem元素的XML模式约束如下:4
GB/T25500.2—20105.2.2关于超立方体声明的约束如果一个属于xbrldt:hypercubeItem替换组的元素不是抽象的,则维度处理器应能检查出这个错误并提示这个错误,错误用xhrldte:HypereubeElementIsNotAhatractError表示。5.2.3弧角色http;//xbd.org/int/dim/arcrole/hypercube-dimensionhypercube—dimension关系,将超立方体声明作为源,而将维度声明作为目标。分类标准编辑工具中,用于分类标准表示目的的hypercube-dimension关系的顺序,由定义该关系的弧的顺序属性值来决定。hypereube-dimension关系角色不应含有任何定向的或非定向的环路。hypercube—dimension关系声明如下:以下示例展示了一个含有两种类型化维度(Team和Drink)的超立方体。该例表述的是一个在上下文的segment或scenario元素中对Team和Drink元素赋值的超立方体。关于hypereube-dimension弧的源和目标有如下两条约束:a)hypercube-dimension弧的源应是超立方体声明。如果违反上述规则,维度处理器应通过xbrldte:HypercubeDimensionSourceError报错。b)hypereube—dimension弧的目标应是维度声明。如果违反上述规则,维度处理器应通过xbrldte:HypereubeDimensionTargetErro报错。示倒:古有Team和Drink类型化维度的超立方体
GB/T25500.2—20105.3基础项声明与超立方体5.3.1概述为了约束可能出现于基础项的相关上下文集合,基础项声明可以与零个或多个超立方体相联系。本部分中,未就其基础项声明与任何超立方体相联系的基础项来定义额外的约束。超立方体集合可以通过“all”和“notAll”这两个操作符的组合来构成。操作符与其操作对象之间的关系可以使用XLink弧来描述,不同的操作员可以使用不同的弧角色。下面两个弧角色,合称为has-hypercube关系:a)http://xbrl.org/int/dim/arcrole/all;b)http://xbrl.org/int/dim/arcrole/notAll。这些关系可能在不同的基础集内。当has—hypercube关系在不同的基础集内时,在任何基础集内维度有效的基础项,就是维度有效的。这些关系能接受在扩展分类标准中的禁用、覆盖或增加。5.3.2“all”和“notAll”弧角色http://xbrl.org/int/dim/arcrole/all关系中的维度关系集中的关系和实例校验是相关的。源和目标分别是基础项声明和超立方体声明。“all”关系的否定是“notAll”关系,notAll关系定义在http://xbrl.org/int/dim/arcrole/notAll中。仅当针对所有联接的超立方体均为有效,实例文档中的基础项声明的实例化就超立方体联合而言才是维度有效的。如果同一个超立方体的非反定义是无效的,则反超立方体“notAll”是有效的。单一超立方体的联合就是超立方体本身,见示例1、示例2、示例3。示例1:带单一超立方体的基础项声明示例2:由“all”和“notAll”联合构成的两个超立方体的基础项声明
GB/T25500.2--2010基础项声明p_FluidCapacity与属于同一基础集的两个超立方体的组合相关联。仅当其在segment中引用了City的相关内容时,上下文就基础项而言才是有效的,其中segment是hc—CityHypercubeAl[的成员,且不是hc—CityHyper—cubeExcluded的成员。在http://xbrl.org/int/dim/arcrole/all中的弧角色声明如下(drcroleT]/peid=”all”cyclesAllowed=”undirected”arcroleURI=”http://xbrl.org/int/dim/arcrole/all“)
(/arcroleType)在http://xbrl.org/int/dim/arcrole/notAll中的弧角色声明如下示例3:带有域成员和反超立方体的基础项,通过将m—India从域中移除来限制p—CostOfSales的country维度的值7
GB/T25500.2—2010关于“au”或“notA[1”弧的约束如下:a)如果“all”或“notAll”弧的源不是一个基础项声明,则维度处理器应通过xbrldte:HasHyper—cubeSourceError报错}b)如果“a11”或“notAll”弧的目标不是一个超立方体声明,则维度处理器应通过xbrldte:HasHy—percubeTargetError报错;c)has—hypercube弧应有一个xbrldt:contextElement属性。如果违反上述约束,则维度处理器应通过xbrldte:HasHypercubeMissingContextElementAttributeError报错。5.3.3“has-hypercube”弧中应有的“xbrldt:contextElement”属性每个has—hypereube弧都应有xbrldt:contextEIement属性。根据XML模式文件中关于xbrldt的规定,xbrldt:contextE|ement属性应为segment值或scenario值的其中一项。5.3.4“has-hypercube”弧中可选的“xbrldt:closed”属性可选的布尔类型属性xbrldt:closed可以出现在has—hypercube弧中。如果has—hypercube弧中的xbrldt:closed属性值为true,且xbrldt:contextElement属性值为segment,则超立方体对于基础集内segment元素是封闭的。如果has-hypercube弧中的xbrldt;closed属性值为true,且xbrldt:contextElement属性值为scenario,则超立方体对于基础集内scenario元素是封闭的。作为实例文档中的一个事实,当满足以下条件时,就超立方体而言,基础项声明的实例化过程才是维度有效的:a)基础项存在has-hypercube关系的超立方体的任意维度,满足以下任一条件:1)has-hypercube关系中的xbrldt:contextElement一”segment”,且事实的上下文的segment维度容器对于这个维度有一个维度值;2)has—hypercube关系中的xbrldt:contextElement一”scenario”,且事实的上下文的scenario维度容器对于这个维度有一个维度值;3)维度有缺省值。b)作为实例文档中的一个事实,当满足以下条件时,对封闭超立方体而言,基础项声明的实例化才是维度有效的:8
GB/T25500.2—20101)关于超立方体的事实是维度有效的;2)关于事实的上下文的segment维度容器中的每个维度值,其维度即为封闭超立方体的维度l3)关于事实的上下文的scenario维度容器中的每个维度值,其维度即为封闭超立方体的维度。示倒:两个封闭超立方体根据XML模式文件中关于xbrldt的规定,xbrldt:closed属性一旦出现,则应有一个布尔值。5.4跨越不同基础集的维度关系集合的分割5.4.1概述分类标准的制定者可以利用扩展类型链接元素中的x/ink:role属性将各种关系分割成不同的基础集。对计算链接库中的Summation-Item关系来说,对其进行分割,应保证不存在不相容的维度关系集合。分类标准的制定者可以指定对维度关系的不同基础集分别进行有效性检验。此外,一个基础项声明集可以在多个has—hypercube关系的目标之间有相同的共享超立方体。同样,超立方体声明也可以在多个hypercube—dimension关系的目标之间有相同类型化维度。在后文中,新增的关系将会使关系网更加复杂,一些作为不同关系集的源的项目将用来定义不同的维度。示例1;如果同一维度需要定义不同的域成员,则不同的扩展类型链接元素应进行分割,这里应使用一种能标示扩展链接流的机制。xbrldt:targetRole正是用于此目的。
GB/T25500.2—2010分类标准制定者可以使用弧的可选属性xbrldt:targetRole,将存在于不同角色中的代表连续关系的两个弧连接在一起。xbrldt:targetRole属性可以出现在定义弧中,它含有以下弧角色:all,notAll,hypercube-dimension,dimension-domain和domain-member。xbrldt:targetRole属性有anyURI类型。URI解析与xml:base属性是否出现无关,且其值应是一个绝对URI。源角色(sourcerole)是关系的基础集内xlink:role属性的内容。目标角色(targetrole)是弧本身的targetRole的属性的内容。在不同的扩展型链接元素中存在的、代表连续关系的两个弧,应使用xbrldt:targetRole属性将两者连接在一起。不这样做将使得连接无法建立并导致诸如空的超立方体、维度和域的出现。示例2:基础集link2中的弧在基础集linkl的弧的DRS中
CB/T25500.2—2010|fm_S。uthAmencadomaln.memberm_ArgenilnarffhtID://examplecorn/role/link2.12345</cust)substitutionGroup=”xbrldt:dimension-(pattern</abrldl:typec№ember)Item”value=”[0-9][0-9][0-9][0-9][0-9]”/)type=”xbrli:stringltemType’’(/restriction)(abrldi:typecD4emberabstract=”true”</simpleType>dimension=”tax:dCustomer”)xbrli:periodType=”duration”(/element>idcust”/)(element《phone>type=”xbrli:stringltemType’’,elementname=’’country’’type2(country)7(/country>abstract=”true””integer”/)(city>7(/city>xbrli:periodType=”duration”(elementname2”city”type2(number>5555555(/number)xbrldt:typedDomainRef=”schemaxsd#”integer”/)(/phone)id_phone”(/xbrldi:typec附ember)从在实例中实际出现的元素中分离维度项是必要的,因为GB/T25500.1指明,定义链接库中的关系可能只有一个在xbrli:item或xbrli:tuple替换组中的目标,但对域本身而言,这样的限制既无必要,也不可取。xbrldt:typedDomainRef属性常用于在类型化维度中对在XML模式文件中定义类型化维度的内容的元素进行定位。xbrldt:typedDomainRef属性的值应是一个URI引用。xbrldt:typedDomainRef的值应遵从本部分XPointer框架关于片段标识符的规定。xbrldt:typedDomainRef属性中引用的URI有一个anyURI类型。如果URI引用是相对的,则其绝对版本在使用之前应以XMLBase规范的方法来进行计算。Ii00000000(/tx:GrossProfit>(tx:GrossProfitcontextRef=”etx2”unitRef=”JFY”)50000000</tx:GrossProfit)(tx:TaxescontextRef=”ctxl”unitRef=”JPY”>35000000(/tx:Taxes)(contextid=”ctxl”)(entity)《identifierscheme=”http://nic.net”)例.com</identifier></enti七y)</period)(/context)fcontextid=”ctx2”)(segment>(/entity)(period>(forever/></period></context)在tx分类标准中,只有GrossProfit这个基础概念有一个产品维度,产品维度中的缺省成员为P:TotalProducts。在基础分类标准tx中存在计算网络去表达NetProfit=GrossProfit—Taxes。TotalProducts(contextRef=“ctxl“的那一个)的概念GrossProfit是维度有效的(ProductDim=p:TotalProducts),并和Taxes和NetProflt~起用于sum—mation-item关系中。5.7.2弧角色http://xbrl.org/int/dim/arcrole/dimension-defaultdimension-defauh弧角色从其源识别出维度元素,并从其目标识别出缺省成员。在dimension-defauh弧的目标中标示缺省成员是全局的。如果一个dimension—default弧存在于一个扩展链接中,则其缺省成员被认为定义在维度被使用的所有扩展链接中,并且域中包含弧的目标所表示的域成员。dimension—default关系与xbrldt:targetRole属性无关。dimension—default弧的存在并不在任何源维度域内添加任何目标项。http://xbrl.org/int/dim/arerole/dimension—default弧角色声明如下:19
GB/T25500.2—20105.7.3对dimension-default弧的约束对xbrldt:targetRole属性的约束为:a)如果弧的源不是一个明确维度声明,则维度处理器应报错xbrldte:DimensionDefaultSourceError。b)如果弧的目标不是一个域成员声明,则维度处理器应报错xbrldte;DimensionDefaultTargetError。c)一个维度不应含有超过一个缺省成员。如果违反该规则,则维度处理器应报错xbrldte:TooManyDefaultMembersError。5.7.4有关维度缺省成员的实例文档的约束维度的缺省成员不能出现在上下文中。当缺省成员出现时,维度处理器应报错xbrldie:Default—ValueUsedInInstanceError。6实例文档里的维度6.1概述基础分类标准定义了概念,以用于表示XBRL实例文档中的事实。一个DTS包含依据本部分定义的维度关系的实例文档,应根据本部分定义的规则进行校验。实例文档的校验应逐项进行。维度处理器应找到和文档DTS内的项目有关的超立方体,并且逐一校验。如果其所有维度都是有效的,则超立方体就是有效的。如在上下文中存在域的成员或者该维度包含缺省成员,则维度就是有效的。超立方体校验的结果应为那些使用特定运算符“all”、“notall”而在同一基础集内共存的超立方体而相连接。如果一个基础项不与任何超立方体关联,或者至少存在这样一个扩展链接角色,通过该角色基础项被关联到联合校验结果为有效的超立方体的组合上去,则该基础项是有效的。6.2基础项的校验6.2.1概述每个拥有在实例文档的DTS中的超立方体的基础项,应根据至少一个定义超立方体的基础集而被判定为有效。当基础集包含至少一个源为该基础项声明的has—hypereube关系时,基础项声明就是基础集内维度关系集的根。当基础项声明是一个基础集的根的时候,其同时也是该基础集的维度关系集的根。维度有效的基础项实例化应属于以下两种情况之一,它不是任何维度关系集的根,或者是上下文维度有效的维度关系集的根。20
示例:位于维度关系集的根的基础项GB/T25500.2—2010基础项声明是否在元组中出现,与基础项实例化和上下文是否维度有效无关。6.2.2关于基础项有效性的约束如果超立方体至少在一个基础集被发现是相互有效的,则基础项就是维度有效的。如果在所有基础集内的超立方体组合是无效的,则维度处理器将报错xbrldie:PrimaryItemDimensionallyIn—validError。6.2.3基础集内超立方体的互相有效性如果将所有超立方体联结起来的操作能够被满足,则依据基础集内定义的超立方体来判断,基础项是有效的。表4表示当根据超立方体以及在同一基础集内连接多个超立方体的操作做出判断,基础项为无效时,维度处理器将提出警告。表4多个超立方体的连接和其运算结果立方体数目运算符超立方体评价基础项评价结果警告1a11有效无1notAIl无效有效无all有效2有效无notAll无效1all无效仅有一个超立方体,其all运算无效1notAlI有效无效仅有一个超立方体,其notAll运算有效all有效基础集内已定义多个超立方体,其连接结2无效notAll有效果为无效
GB/T25500.2—20106.2.4超立方体的个体有效性超立方体有效性汇总表如表5所示。衰5超立方体有效性汇总表是否封闭是否为空维度维度值维度有效性结果是不适用无不适用有效否是不适用有效是不适用找到维度值不适用无效是否Diml和Dim2Diml和Dim2的维度值被找到Diml有效.Dim2有效有效Diml、Dim2和Dim3的维度值是否Diml和Dim2不适用无效被找到(见注1)Diml、Dim2和Dim3的维度值Diml有效,Dim2有否Diml和Dim2有效被找到(见注2)效,Dim3不适用是/否否DimlDiml的维度值未被找到不适用无效是/否否DimlDiml的维度值被找到Diml无效无效注1:无效,因为超立方体已封闭并且Dim3并不需要。洼2:超立方体是开放的,所以Dim3是被允许的。超立方体中的所有维度应依据6.2.5中定义的规则来校验。超立方体的个体有效性的约束为:a)一个封闭的超立方体不应包含不期望出现的维度值。如果封闭的超立方体中包含了任何不被期望出现的值,则它为无效。b)由has—hypercube弧的xbrldt:contextElement属性所标示的容器中应存在一个维度值。c)超立方体中定义的所有维度依据6.2.5规则而言是有效的。如果一个维度无效,则整个超立方体无效。6.2.5维度的有效性维度值(dimensionvalue)是指明确维度的明确维度容器的内容值的QName,或是指作为类型化维度的类型化维度容器的第一个子元素的XML片段。维度值的存在是为一个或两个可能的上下文容器——segment或scenario中的其中某个特定容器服务的。其默认值为所有可能的维度值,但它们并不包含在维度容器中。维度容器(dimensioncontainer)是对类型化维度而言就是xbrldi:typedMember元素,对明确维度而言就是xbrldi:explicitMember元素。维度值对其域应是有效的。6.2.6获取维度的维度值维度处理器应能从segmeat或者scenario元素中获取类型化维度或明确维度的值。类型化维度的维度值内容即为xbrldi:typedMember元素的内容,其dimension属性值为在用的维度的QName值。22
GB/T25500.2--2010明确维度的维度值内容即为xbrldi:explicitMember元素的内容,其维度属性为在用的维度的QName值,或者在该值未在实例中通报并且维度拥有缺省成员的情况下,即为缺省成员的QName值。缺省值(defauhvalue)为缺省成员的QName。6.2.7对维度值的约束6.2.7.1概述对维度值的约束为:a)上下文中针对每个维度不应包含超过一个维度值。如果此规则被违反,则校验器应报告错误xbrldie:RepeatedDimensionInInstanceError。b)缺省值不能出现在实例文档中。如果出现缺省值,则应报告错误xbrldie:DdauhValueUsedInlnstanceError。6.2.7.2上下文及其维度有效性的示例示例1:包含对相同维度的两个引用的维度无效的上下文示倒2:关于超立方体为有效的段
GB/T25500.2—2010示倒3关于超立方体为维度无效的两个段。一.一⋯。Il帅⋯。痂叫;茹:煞。剖363‘。“”“。h~⋯h^I⋯t;^n””‘”掣。竺!”一hc一‰kDIm㈣DSI)tI㈣FOUD⋯I1日nsl⋯1日rTl慧等舞黑。。.http://examplecomlrole/link(contextid一”c5”)(entity)(identifierscheme=”http://nic.net”)example.com(/identifier)(segment)《xbrldi:typedMemberdimension一”tax:TeamDim”)缺少对Drink维度的(d:Teflm)Rams《/d:Team)引用(/xbrldi:typedMember)(/segment)(/entity)example.com(/identifier)Product—x_Region的明确“All”弧,(xbrldi:explicitMemberdimension#”P:ProductDim”>但三个事实都违反了该约束P:mRe/Wine(/xbrldi:explicitMember)(xbrldi:explicltMemberdimension=”P:RegionDim”>P:mChina</xbrldi:explicitMember)《/segment)</entity)(period)(forever/)(/period>(/context)50000</p:p_CostOfGoods)(p:p—SalescontextRef=”c19”unitRef=”cny”decimals=”INF”)60000</P:p_Sales)6.2.7.3类型化维度6.2.7.3.1xbrldi:typedMember元素类型化维度的成员是元素的实例化,该等元素符合在类型化维度声明的xbrldt:typedDomainRef属性中被引用的元素。2S
GB/T25500.2—2010xbrldi:typedMember元素是XML元素,其内容应为另一个其模式声明位于xbrldttypedDomainRef属性的元素。xbrldi:typedMember元素的dimension属性的内容应解析为在实例的DTS中的类型化维度声明的QNlime。如果根据在xbrldt:typedDomainRef属性中被引用XML模式文件声明,维度值是有效的,则类型化维度就是有效的。示例1:两个在上下文的段中被引用的维度示倒2:两个在上下文的场景中被引用的维度
GB/T25500.2—2010并非所有出现在segment或者scenario中的元素都是维度元素}请参见本部分中关于“封闭”属性的部分。6.2.7.3.2关于xbrldi:typedMember元素的dimension一性的约束xbrldi:typedMember元素的dimension属性的内容应为在实例文档的DTS的模式文件中定义的类型化维度声明的QName。如果QName出现在xbrldi:typedMember的dimension属性之中的元素被解析为类型化维度声明以外的其他内容,则维度处理器将报错xbrldie:TypedMemberNotTypedDi—mensionError。6.2.7.3.3关于xbrldi:typedMember元素内容的约束关于xbrldi:typedMember元素内容的约束为:a)依照xbrldiXML模式文件,xbrldi:typedMember的每个实例应仅有一个子元素。b)类型化维度值依照在xbrldt:typedDomainRef属性被引用的元素的XML模式文件声明而言应是有效的。c)类型化维度内容应为在xbrldi:typedMember元素的dimension属性中指明的类型化维度的xbrldt:typedDomainRef所指向的元素的实例化。如果该规则被违反,维度处理器将报错xbrldie:IllegalTypedDimensionContentError。6.2.7.4明确维度6.2.7.4.1xbrldi:explicitMember元素明确维度的成员为作为xbrldi:explicitMember元素的内容的QName。它应为明确维度的一个有效成员。xbrldi:explicitMember元素是一个内容应为QName的XML元素。维度值(QName)是dimension属性引用的明确维度域的一个有效成员,则明确维度就是有效的。示例;关于超立方体和两个明确维度的维度有效的上下文
GB/T25500.2—20106.2.7.4.2关于xbrldi:explicitMember元素的dimension属性的约束xbrldi:explicitMember元素的dimension属性的内容应为一个由实例文档的DTS中的模式文件中定义的明确维度元素的QName。如果QName为出现在xbrldi:explieitMember的dimension属性中的元素,且被解析为明确维度声明以外的东西,则维度处理器将报错xbrldie:ExplieitMemberNotEx-plicitDimensionError。6.2.7.4.3关于xbrldi:explieitMember元素的内容的约束xbrldi:explicitMember元素的内容应为一个QName,该QName的全局元素定义可以在被QName的命名空间所引用的分类标准模式文件中找到。如果该规则被违反,则维度处理器将会报错xbrldie:ExplicitMemberUndefinedQNameError。28
GB/T25500.2—20106.3维度等价事实的定义维度等价(d-equaD指如果两个事实针对某个维度有相同的维度值,则这两个事实针对该维度而言就是维度等价的。d-equal相对于在GB/T25500.1中定义的c—equal、u-equal、s—equal而言,是一个独立的运算。d-equal仅针对两个事实和一个维度而定义。如果称两个维度值满足s—equal2,则这两个维度值是相同的。如果两个事实都拥有dimension属性的内容满足s—equal2条件的维度容器,并且两者均引用同一维度声明,则这两个事实拥有相同的维度。这里所说的s—equal2运算和在GB/T25500.1中已经定义的是同一个运算,并在x-equal的运算操作定义中用XPath2.0替代了原来的XPath1.0,并且“XPath1.0兼容模式”属性在静态上下文中被设置为false。为了使GB/T25500.1中定义的summation—item关系能够起作用,所有在上下文中的segment或者scenario容器中出现的维度元素应满足依照GB/T25500.1所定义的s-equal。注:GB/T25500.1是基于XPathl.0来制定的。依照XPathl.0中所规定,属性的内容总是一个string-value而不是QName。XBRL应用程序接口实施维度应该注意这一点,并将出现在维度容器的dimension属性中和出现在实例文档的维度容器的内容中的QNames的前缀规范化。出现在不同实例中的、和不同上下文相关的两个事实,对所有维度而言可以均满足d-equal,而不管元素在segment或者scenario中的出现顺序。示例:多个上下文和d-equal运算的结果d-equal(Salest上下文A的事实Sales上下文B的事实SalesprodDim)《segment>(segment>满足。《ⅪbrlditexplicitMemherdimension=”(xhrldi:explicitMemberdimension=”tax:请注意元素之间的空tax:prodDim”)prodDim”)P:product(/xbrldl:explicitMem—间是不同的P:product</xbrldi:explicitMember)ber>(/s@e-nt>(/segment>(segment>满足。(/xbrldi:ExplicitMember)(xbrll:explicitMember(xbrldi:explicitMember依照本节中的内容,这dimension=”tax:dept—dim”)r:salesdimension。”tax:procDim”)p:product两个上下文应不在同(/xbrldi:ExplicitMember)(/xbrldi:E’币licitMember}一实例中出现(/segment)(/segment>(segment>(scenario>不满足p:productdimension=”tax:prodDim”>p:product器类型来报告(/xbrldi:explicitMember)(/segment)《/scenario>
GB/T25500.2—2010A.1xbrldt-2005.xsd附录A(规范性附录)模式文件(?日1version=“1.0“encoding=”utf_8”?)(xs:schemaxmlns:xs=”http://w.ww3.org/2001/XⅢLSchema”Ⅻlns:xhrli=”http://mxbrlor9/2003/instance”xmlns=1http:?fww.xbrl.org/200S/linkbase”xmlns:xlink=”http://www.w3org/1999/xlink”xmlns:xl=”http://ww.xbrl.OIg/2003/XLink”xmlns:xbrldt≈”http://xbrzOrg/2005/xbrldt”targetNamespace=”httpi//xbrl.org/2005/xbrldt”elementFormDefault=”qualified’’attributeFormDefault=”unqualified’’、(xS:annotation>(definition>源(超立方体)包含目标(维度)(/definition>(usedOn>definitionArc</usedOn>《/arcroleType>源(维度)只有目标(域)作为其域(/definition>(usedOn)definitionArc(/usedOn>《/arcroleType>(arcroleTypeid=”domain-member’’cyclesKllowed=”undirected’’arcroleURl=”http://xbrl.org/int/dim/arcrole/domain-member”)(definition>源(域)包含目标(成员)</definition>(usedOn>definitionArc</usedOn>《/arcroleType>(arcroleTypeid=”all”cyclesAllowed=“undirected”arcroleURl=”http://xbrl.org/int/dim/arcrole/all”>(definition>源(基础项声明)要求目标(超立方体)的维度成员的组合出现在基础项的上下文里《/definition>definitionArc(/usedOn>《/arcroleType>(arcroleTypeid=”notAll”cyclesAllowed=”urldirected”arcroleURl=”http://】【brl.org/int/dim/arcrole/notAli”)(definition>源(基础项声明)要求目标(超立方体)的维度成员的组合不出现在基础项的上下文里</definition>(arcroleTypeid=”dimension-default”cyclesAllowed=”none”arcroleURl=”http:I/xbrl.Ⅱg/int/dim/arcrole/dimensionrdefault”)源(维度)声明,存在一个作为弧(成员)的目标的缺省成员{/definition>(usedOn)ldefinitionArc(’/usedOn>(/arcroleType>(/xs:appinfo)</xs:annotation>《/xs:simpleType>(x8:attributename2”contextElement”type=”xbrldt:contextElementType”/)(/xslschema>A.2xbrldi-2006.xsd(?Ⅻlversion=”1.0”encoding=”utf-8”?)(schemaxmlns=”httpl//㈧w3org/2001/)MLSchema”targetNamespace=”http:llxbrl.org/2006/xbrldi’’elementFormDefault=”qualified’’attributeFormDefault=’’unqualified”、Thisschemaisusedby)【BRLinstancesthatusedimensionstodefinelegalsegmentandscenarioelementcontents.(/documentation)</appibfo></annotation>(elementname2”explicitMember”)(annotation>(documentationxml:lang=”en”)该元素包含某项的QName,而该项是明确维度的成员31
GB/T25500.2--2010《/documentation>(/annotation)(co=91exType>(/simpleContent>《/complexType)(/element>(elementname=”type删ember”)(annotation></annotation)(complexType>(sequence)