收藏本站 收藏本站
积木网首页 - 软件测试 - 常用手册 - 站长工具 - 技术社区
积木学院 > 网页设计 > XML > 正文

XBRL-XML时代的商业报告语言

来源:互联摘选 日期:2008-05-09 05:47
 

  XBRL(可扩展商业报告语言,eXtensible Business Reporting Language),是 XML(可扩展标记语言,eXtensible Markup Language)技术于财务报告信息交换的一种应用。

  XBRL 是由 XBRL 国际指导委员会倡导并推动其发展。目前世界各国共有 250 多个机构参加了该组织。XBRL 国际指导委员会由美国注册会计师协会,德勤、安永和毕马威国际会计公司,微软、IBM、J.D.Edwards、SAP 以及其它技术与金融公司资助。自从 1998 年 XBRL 诞生时起,XBRL 就获得了迅速的发展,尤其作为财务信息处理的最新标准和技术,XBRL 增加了公司财务报告披露的透明度,同时极大的提高了财务报告信息处理的效率和能力。以金融行业为例,目前国际上许多交易所、会计师事务所和金融服务与信息供应商等机构已采用或准备采用该项标准和技术,如东京交易所的 TD net 系统采用了 XBRL 技术报送财务数据,澳洲交易所正在研究并准备使用 XBRL,德国德意志银行将 XBRL 用于处理贷款信息并使其信用分析过程更加流畅。在中国 XBRL 也开始得到应用。上海证券交易所和深圳证券交易所都开始了 XBRL 技术的研究和试验。目前已有几十家上市公司参加了使用 XBRL 技术提交公司年报摘要的试点工作。当然以国内目前的现状来说,XBRL 的应用还处于起步阶段,还有很多的问题。以下就 XBRL 语言,进行介绍。

  XBRL 基础

  XBRL 源于 XML,所以要理解 XBRL 技术,首先需要了解 XML。对于 XML,这里不再做更多的介绍,有需要的读者请自行参考相关的资料。最新的标准是 XBRL 国际指导委员会前不久通过的 XBRL Specification 2.1。XBRL 信息模型主要是由两部分组成的,XBRL 实例(XBRL instance)及 XBRL 分类集(XBRL Taxonomy)。XBRL 实例包含了报表中的具体事实(concrete facts),而分类集则是对具体事实的定义,包括它的语法,它的形式以及属性。

  在 XBRL 技术中使用了 XML Schema 和 XLink。

  XBRL实例

  XBRL 实例中封装了具体的商业事实。其中最基本的单位是事实(facts)。例如,最近一个季度的销售额("sales in the most recent quarter")就是一个事实。没有复杂信息结构的简单事实叫条目(item)。为了表达较复杂的信息单元,可以把一组相关联的事实放到一起,用相对复杂的结构比如元组(tuple)等来表示。元组中既可以包含条目,也可以包含其他的元组。条目对应于商业概念,而这些商业概念的具体业务含义和定义描述则是由分类集(taxonomy set)完成的。

  具体的实例可以参考微软公司的部分XBRL财务报表,其内容可以从微软公司的主页上下载。

  XBRL 分类集

  对于报表中的具体事实,是由实例来表现的。但是这些具体事实应该遵守怎样的语言规范,他们的形式以及属性如何,则是由分类集来定义的。

  不同的国家,不同的行业都使用不同的会计准则。作为一个国际通行的标准,XBRL 要适应各种不同的情况,其中的关键就是建立符合各国会计准则的具体的分类集。这一工作由各国的 XBRL 组织负责建立符合本国会计准则的 XBRL 分类集。分类集首先要定义财务报表中将要使用的各项财务报表元素,同时还要附加上相关的其他信息,比如各个元素之间的关联性,以及各个元素在报表中的名称,位置,还要反映出制作财务报表所依据的会计准则。

  XBRL 分类集通过 XML 模式(schema)定义词汇条目(term of vocabulary)的语法来描述词汇(vocabulary);用 Xlink 描述元数据,这些元数据可以用来刻画条目(item)以及条目之间的关系。每个XBRL实例通过引用一个模式(schema)来关联到对应的分类(taxonomy)上去;而每一个模式又可以引用其他的模式。为验证一个XBRL实例的语法需要的所有模式(schema)构成的集合(collection)组成该实例的可发现分类集(Discoverable Taxonomy Set(DTS))的一部分。通过引用Xlink链接集(linkbases),XBRL实例还可以表达商业概念更多的信息。XBRL采用Xlink作为定义商业概念与相应元数据之间关系的机制。除XBRL实例之外,DTS中的模式(schema)还可以包含对链接集(linkbases)的引用。所有这些schemas和linkbases合起来构成所谓的DTS,这样我们便能够描述整个报表中的商业概念。

  XBRL分类集由多个文件组成。主要文件包括一个Taxonomy Schema(.xsd文件),和计算、定义、标签、展示、引用这五个linkbase文件。对于XBRL实例中的所有元组、条目和事实都要在分类集中定义"名称(name)"和"数据类型(type)"。Taxonomy中主要使用的数据类型有表示日期的xbrli:dateTimeItemType、表示字符串的xbrli:stringItemType、表示金额的xbrli:moneytaryItemType,还有decimalItemType、shareItemType、uriItemType等等。原则上,所有的元素都应该包括在xbrli:item或者xbrli:tuple这两个可替代组(substitutionGroup)中,换句话说,这两个组中所没有的元素原则上都不能写进实例文档(Instance Documents)。

  如果是从头为某行业或组织机构定义一个特定的分类集的话,应该针对该行业或机构的商业概念定义包含了条目和元组(items and tuples)的模式(schema)。然而更多的情形是所需的业界分类已经存在,只需要对它稍作改动以适应用户的需要,比如再添加一些商业概念,然后把它们和标准概念联系起来等等。这时,可以先把业界分类集模式(industry taxonomy schema)引进(import)来,然后添加一些新的模式组件(schema components)以反映用户的商业概念。

  在Taxonomy Schema(.xsd文件)中还定义了链接元素,即link:linkbaseRef,其属性分别定义了各linkbase的作用和连接的文件。除了type属性外,还包括了arcrole属性、actuate属性、role属性、href属性等等。

  标签链接(label links)和引用链接(reference links)把商业概念(business concepts)和元数据(metadata)联系起来。举例来说:我们知道一个文本串(text strings)可以用来标记(label)或文档化(document)一个报表中的概念,而标签链接(label links)则可以把这个文本串和相应的概念关系起来,比如,可以用标签链接把文本串"最近一季度总收入"( Revenues in most recent quarter")和分类中定义的"revenueMRQ"条目联系起来。单个儿的商业概念可以用多个标签多种语言来标记。具体XBRL实例的创建者(author)来决定该实例各个标签的取舍。

  图1中阐明了定义一个关联链接(label link)关联一个商业概念和标签所要做的三件事:用label element标记商业概念,用loc element 为该概念定义一个定位器(locator),用一个labelArc element 定义一个'弧'(arc)把此商业概念联到指定的label上。引用链接也是通过类似的方式把引用链接到商业领域(domain)的权威文献上去,所使用的机制类似于标签链接:定义一个引用链接和一个定位商业概念及相关文档引用的定位器,最后再建一个referenceArc element 将前面定义的定位器和引用关联起来。

  标签型链接和引用型链接是用来关联商业概念和元数据的。其他三种类型的链接恰恰与之相反,是用来建立不同商业概念之间的关联的。例如:计算链接就是用来定义相关商业概念的计算关系的。举个例子:"税后利润"("profitAfterTax")的概念和以由"税前利润"("profitBeforeTax")的概念减去"所得税"("taxPaid")概念得到。

  profitAfterTax = weight(1) * profitBeforeTax + weight(-1)*taxPaid

  图2是示例怎样将这三个商业概念联系起来。

  定义链接描述了几种商业概念间的关系,如泛型和具化关系(generalization-specialization relationships),如:"postalCode"是"zipCode"的泛化等。展示链接(presentation links),正如名字的含义一样,从展示的角度(presentation perspective)定义不同商业概念之间的关系,例如:在展示报表中,父子关系应该显示为"销售"sales和"打印机销售"printerSales。

  XBRL的处理器

  XBRL处理器(XBRL processors)不仅要按分类模式(taxonomy schemas)来校验实例文档(instance documents)的语法,也要按分类链接集(taxonomy linkbases)来验证实例的语义。当对实例文档进行处理时,处理器要能根据实例的分类提取出应用所需的元数据。这个过程和XML模式(Schema)验证(validate)以生成PSVI类似。XBRL验证应当拿分类(taxonomy)来验证实例并将验证过程所得的元数据(metadata)送给应用(application),比如处理器应能在报表实例中检测到一个条目(item)的元数据label。除了验证之外,XBRL工具(XBRL tools)还包括:分类编辑器(taxonomy editors)、 XBRL实例生成(XBRL instance creation),XBRL储备器(XBRL repositories)及查询报告引擎(query and reporting engines)等等。

  XBRL的应用

  XBRL为我们提供了商业报表框架。商业报表涵盖范围很广,从事业单位的规范化(regulatory compliance)到企业的智能化(business intelligence)都有应用。如图4所示,在报告链中的不同环节,XBRL都能创造价值。报告链上商业信息流程的标准化为许多应用提供了机会。封装好(canned)的应用可以用来编写(composition)、分析(analysis)、展示(presentation)信息。

  总结

  当前国际上有多种基于XML技术的报表语言,而XBRL越来越成为商业报表语言的主流。通过XML技术,XBRL提供了真正可扩展的框架(framework),企业可以用之报告重要的商业信息。在商业报表链中,从信息的准备(preparation)、 分析(analysis), 直到应用(consumption),XBRL为每个环节都提供了优势。经过两轮的修订――公众审核(public review)和实施者反馈信息(implementer feedback)后,现在XBRL已经日益成熟并开始得到了广泛的应用。

推荐阅读

 

热点信息

 
强悍的草根IT技术社区,这里应该有您想要的!
Copyright © 2010 Gimoo.Net. All Rights Rreserved  京ICP备05050695号