分类法层次表示格式

时间:2011-08-15 15:00:51

标签: java xml rdf

我们计划在我们的软件解决方案中集成分层分类法。 (基于Java)

是否有标准化(易于使用)的格式来表示分层分类法?不同分类编辑使用的通用交换格式的格式?

我一直在关注OWL(RDF),PMML ......但这些要么非常复杂,要么看起来不适合这个目的。

举一个简单的例子。我们想代表一个概念树。附在每个概念上会有某种数据对象(括号内)

Vehicles (category := 'V')
 |-> Car (code := 1)
 |    |-> Petrol (code := 2 && car_code := 'petrol')
 |    |-> Electical (code := 2 && car_code := 'electrical')
 |-> Plane (code := 1)

我们可以使用像Xstream这样的序列化库来开发我们自己的XML格式。但是如果有一个很好的标准 - 这得到了Java的良好支持,我宁愿使用它。

3 个答案:

答案 0 :(得分:3)

您正在寻找SKOS - Simple Knowledge Organization System Namespace Document

SKOS是一种表示分类法,层次结构和词库的本体论。它基于更广泛和更狭窄的属性的概念来陈述术语之间的关系。例如:

ex:animals rdf:type skos:Concept;
  skos:prefLabel "animals"@en;
  skos:narrower ex:mammals.
ex:mammals rdf:type skos:Concept;
  skos:prefLabel "mammals"@en;
  skos:broader ex:animals.

您可以使用SKOS表示分类,在RDF中序列化并在RDF数据库中断言。要查询它并检索层次结构树,请使用SPARQL语言。

答案 1 :(得分:1)

[使用回复表示对该问题的评论的道歉。这只是评论格式不适合这种“问题重定向”]

虽然问题似乎是关于表示taxonomy层次结构的格式,但对OWL,RDF和PMML的引用指向ontology解决方案。此外,这些本体格式的复杂性也许可以说明一种更简单的方法是有必要的。

简而言之,如果确实需要本体框架而不是分类框架,则需要断言。很容易混淆这两个相关的概念,但似乎在许多情况下,只需要一个更灵活的DBMS甚至是简单的基于XML的模式描述符。

例如,要通过异构项目目录进行引导式搜索,具有相对简单的分层模式模型的EAV数据库后端可以“适合账单”。
或者,支持/验证一些实体提取逻辑,一个简单的分类,其中叶节点包含已接受的文本

另一方面,如果需要基于模式的某些推理,或者,例如,本体驱动数据收集机器人的奇特数据挖掘工作,那么您可能实际上在谈论语义Web /本体应用。

答案 2 :(得分:0)

生物信息学家使用OBO文件格式(http://www.geneontology.org/GO.format.obo-1_2.shtml)来存储一些众所周知的本体,例如GeneOntology(有向图本体)。它附带一个java解析器:http://www.geneontology.org/GO.java.obo.parser.shtml