|
接下来,我们要更多的了解OWL、RDF以及它们和XBRL的关系。这是一个系列,你可以在本博客中查看其他相关的文章。
嗯,我觉得我对OWL、RDF以及它们和XBRL的关系越来越感兴趣了。但我却不敢保证对它们的认识是完全正确的。我写这篇博文的目的仅在于进行自由讨论,希望能从比我更了解这些东西的人身上得到反馈,以便提高我对此的认识。所以以后记得再次查看一下有什新的认识。
RDF、OWL和XBRL都是“图表”,或者我应该说,它们都是通过同样的方式,也就是通过图表,来清楚的表达各种类型的信息。之所以选择了这种方式是因为图表在表达信息方面具有灵活性。通过“主-谓-宾”关系,你可以做很多事情。这种“主-谓-宾”关系并不是计算机科学家发明的。似乎亚里斯多德和苏格拉底在很久以前就将这种类型的关系用于哲学了。
RDF是一种表达“主谓宾”关系的“全球化标准方法”。它同时也是一个通用的工具。它可以清楚的表示任何“主谓宾”关系。它非常灵活,非常详细。表达RDF的语法有很多,其中XML格式的RDF似乎比较流行(我还发现另外一个比较有用的入门级语法)。
你可以用RDF来表达任何“主-谓-宾”关系,不管它是否有逻辑性。OWL被用于表达“主-谓-宾”关系的约束(它似乎也是某种创建“通用”关系的捷径,不过我们先不把重点放在这里)。如果你了解XML架构或数据库架构,你就会发现OWL看起来像RDF的一个“架构”。从本质上说,OWL在RDF上表达约束,这样软件就可以确定RDF是否“按照规则”进行表达。这是非常重要的,就像一个数据库架构或者一个XML架构很重要一样。
OWL非常非常的“强大”。它所能表达的内容远远超过一个数据库架构或一个XML架构。OWL可以被用来表达语义含义。似乎OWL能够表达任何语义含义。
XBRL架构使用“图表”来表示一些东西。XBRL需要灵活性,所以XBRL的创造者这么做。通过使用图表,你就能获得灵活性。在XBRL中存在着“主-谓-宾”关系。你要记住,基本上任何东西都能够用这种方式表达,所以很明显,XBRL也可以用这种方式表达。事实上,一些技术人员“使用OWL表达XBRL”(我这么说并不是很准确)。你可以在这里看到这些OWL本体语言,这是只有你父母那一辈才喜欢的东西。实际上,他们就是在XBRL架构上运行一个样式表,然后将它们转换成OWL。他们使用一种语法-XML架构,然后转换成另一种语法-OWL。这对商业用户来说并不是很有用。可能在技术上会有一些用处,还有待观察。
嗯,可以说,XBRL是一个“捷径”。RDF被用表达“所有东西”,XBRL被用来表达“商业信息”。“商业信息”是“所有东西”的一个子集。那么,能用RDF/OWL来表达XBRL语法吗?可以。有用吗?我想,这还是有些用处的。不过OWL除了可以用于表达XBRL语法逻辑模型外,还有更好的用途。
那么,XBRL是一条用于表达商业信息的“捷径”,它所使用的格式是计算机可以使用的。XBRL是一种通用格式,没有人使用“XBRL”。所有的人都使用XBRL的子集,也就是XBRL的某些应用程式配置文件。这就是REP分类标准不能和美国通用会计准则分类标准兼容的原因。每个XBRL分类标准或系统都有不同的应用程式配置文件,因为它使用了不同的架构。
对我来说,OWL的用处之一就是可以“表达”这些不同的应用程式配置文件或将它们“存档”。可以使用UML之类的东西来创建XBRL应用程式配置文件的模型。OWL可以成为一个非常非常有价值的配置文件存档工具。目前的应用程式配置文件要么不被存档,要么就只是被存在Word文档或者PDF文档中,效果非常不好。没有任何计算机能够读取这些文档。程序员必须阅读这些文件,提取信息,然后开发不同的应用软件来使用不同的XBRL程式配置文件。比如,我们有美国通用会计准则分类标准架构、美国证券交易委员会测试套件以及欧洲银行监管委员会架构。
我真的不知道有没有可能使用OWL本体语言,使用软件对XBRL应用程式配置文件进行自动“测试”。可以的话就好了。此外,如果能够用一种同样的方法来对XBRL应用程式配置文件进行存档,也是很好的。可以使用UML,似乎也可以使用OWL。
但是OWL还可以被用于其它方面。我认为所有东西都可以用OWL表达。嗯……几乎所有的东西。不过有一个比较大的限制。你所要表达的东西都必须是有逻辑的。如果是是没有逻辑的,就不能够表达。因此,如果它是逻辑的,它就能够被表达!这更有趣,用途更多。
比如,可以用OWL来明确说明什么时候可以对一个分类标准进行扩展、应该创建什么样的信息模型、什么是允许的、什么是不允许的,等等。OWL还可以记录事物是怎么工作的。比如,你可以使用OWL记录美国证券交易委员会的XBRL文件是怎样“工作”的,这样,你就可以确认这样一些事情:它是按照你希望的方式工作吗?还有没有更好的工作方法?
OWL的另一个用途是可以帮助XBRL添加附加信息。目前,XBRL可以被用来添加附加信息。比如,XBRL定义链接库被用来说明“弧角色”,还有其他一些用于解释意思的东西。比如XBRL维度规格。但是,XBRL真的是用来说明附加信息的最好方法吗?XBRL有利有弊,OWL同样是有利有弊。这真的有什么关系吗?XBRL和OWL都不过是一种语法。只要要表达的东西是有逻辑的,只要尽可能按照标准的方法去做,它们就行得通。
在结束这篇博文之前,我要提的最后一件事情就是,我意识到RDF/OWL似乎“遗忘”了一件非常重要的事情。我不知道我是不是该用“遗忘”这个词。如果你真的要使用RDF/OWL信息,你首先要编写用于特定领域的软件。正如我所说的,RDF/OWL可 以用来表达任何事情。这是它最大的优点,也是它最大的缺点。因为它可以被用来表达任何事情,所以你必须编写可以理解特定主语、特定谓语和特定宾语,并且可 以利用这些关系做些有用事情的软件。我承认我还无法真正理解这方面的东西(至少是这方面,可能还有其他更多方面)。所编写的软件应该能够从这些关系中学 习,然后创建附加的关系。这是很有用的,但是我目前还不能理解。这属于人工智能的领域。这也许行得通,也许行不通。
与之相反,XBRL处理器只需要了解XBRL就可以了。XBRL可以轻易的将XBRL转换为RDF/OWL。要了解RDF/OWL语法,更重要的是要了解语义,以及一个XBRL处理器,你必须将XBRL处理器原有的功能重建到RDF/OWL中。为什么你要这么做?此外,XBRL处理器不能胜任这种高水平的工作,它主要还是处理语法,还不足以处理语义。我现在所说的并不是使用XBRL公式之类的东西来检验语义是否正确,我所说的是通过语义来做一些有用的事情。目前,还没有哪个XBRL工具在这一方面能够达到让商业用户觉得有用的程度。此外,我还要指出,XBRL在语义验证方面领先于RDF/OWL。XBRL有XBRL公式,语义网的工作人员正为此努力(比如,他们已经意识到了这些东西的重要性)。
不管发生什么事情,XBRL似乎都将要被加入语义网中。对于一个XBRL处理器来说,将XBRL加入RDF/OWL没有什么价值。目前,使用RDF/OWL做点有用的事情所花费的资源要比XBRL处理器所能提供的多。RDF/OWL工具能从通过XBRL,或者整个美国证券交易委员会XBRL文件数据库所获得的数据中学到点什么呢?这是挺有趣的一件事情。
这就是我所发现的。我不能保证所有的这些东西都是完全正确的。接下来就是要把这些想法告诉那些比我更了解这方面事情的人,看看他们会怎么说。我之所以有目前的这些想法,就是因为和他们当中的一些人进行了讨论(比如本博客)。但是,我们要做的事情还有很多。
不过我敢肯定的说,如果你是一名生活在当今这个信息时代的商人,但是你不知道什么是元数据,不知道你可以用它来做什么,那你就处于很明显的劣势。
你觉得呢? |