如何改进RDF文件?

时间:2014-02-06 14:44:34

标签: rdf semantic-web owl

正在建立化学品目录。以下示例是2,4-D(农药)。

长期目标是将许多RDF文件合并到具有推理功能的OWL“目录”中。

短期目标是一次构建一个RDF文件。

然后,当RDF文件合并到OWL目录中时,将添加新的关系和规则以供推理。

我的短期方法是:

  1. 宣布本体。
  2. 使用SKOS设置概念。
  3. 使用DBpedia设置广义术语。
  4. 使用DBpedia设置确切的术语。
  5. 识别确切的和类似的项目。
  6. 定义资源地图和聚合。
  7. 逐项聚合。
  8. 这是RDF:

    <?xml version="1.0" encoding="utf-8"?>
    <rdf:RDF
      xmlns:dcterms="http://purl.org/dc/terms/"
      xmlns:agrontology="http://aims.fao.org/aos/agrontology#"
      xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
      xmlns:cheminf="http://semantiscience.org/resource/"
      xmlns:dbp="http://dbpedia.org/resource/"
      xmlns:ore="http://www.openarchives.org/ore/terms/"
      xmlns:skos="http://www.w3.org/2004/02/skos/core#"
      xmlns:schema="http://schema.org/">
      <skos:Concept rdf:about="http://dbpedia.org/resource/Chemical_substance">
        <ore:aggregatedBy rdf:resource="http://dbpedia.org/resource/Chemical_substance#Aggregation" />
      </skos:Concept>
      <ore:aggregates rdf:about="http://dbpedia.org/resource/Chemical_substance">
        <cheminf:CHEMINF_000266>chemical substance</cheminf:CHEMINF_000266>
      </ore:aggregates>
      <ore:ResourceMap rdf:about="http://dbpedia.org/resource/Chemical_substance#ResourceMap">
        <ore:describes rdf:resource="http://dbpedia.org/resource/Chemical_substance#Aggregation" />
      </ore:ResourceMap>
      <dbp:Chemical rdf:about="http://dbpedia.org/resource/2,4-Dichlorophenoxyacetic_acid">
        <schema:name>2,4-Dichlorophenoxyacetic acid</schema:name>
      </dbp:Chemical>
      <cheminf:CHEMINF_000140 rdf:about="http://pubchem.ncbi.nlm.nih.gov/rest/rdf/compound/CID1486">
        <schema:name>PubChem CID:1486</schema:name>
        <rdf:type rdf:resource="http://dbpedia.org/resource/Chemical"/>
      </cheminf:CHEMINF_000140>
      <dbp:Chemical rdf:about="http://id.loc.gov/authorities/subjects/sh85037669">
        <schema:name>LCSH:85037669</schema:name>
        <skos:closeMatch>
          <cheminf:CHEMINF_000140 rdf:about="http://pubchem.ncbi.nlm.nih.gov/rest/rdf/compound/CID1486">
            <schema:name>PubChem CID:1486</schema:name>
            <rdf:type rdf:resource="http://dbpedia.org/resource/Chemical"/>
          </cheminf:CHEMINF_000140>
        </skos:closeMatch>
      </dbp:Chemical>
      <dbp:Chemical rdf:about="http://lod.nal.usda.gov/nalt/1353">
        <schema:name>NALT:1353</schema:name>
        <schema:sameAs rdf:resource="http://pubchem.ncbi.nlm.nih.gov/rest/rdf/compound/CID1486"/>
      </dbp:Chemical>
      <dbp:Chemical rdf:about="http://aims.fao.org/aos/agrovoc/c_8543">
        <schema:name>Agrovoc:8543</schema:name>
        <schema:sameAs rdf:resource="http://pubchem.ncbi.nlm.nih.gov/rest/rdf/compound/CID1486"/>
        <rdf:type rdf:resource="http://aims.fao.org/aos/agrontology#hasCodeAgrovoc"/>
      </dbp:Chemical>
      <ore:Aggregation rdf:about="http://dbpedia.org/resource/Chemical_substance#Aggregation">
        <ore:describedBy rdf:resource="http://dbpedia.org/resource/Chemical_substance#ResourceMap" />
        <ore:aggregates rdf:resource="http://pubchem.ncbi.nlm.nih.gov/rest/rdf/compound/CID1486" />
        <ore:aggregates rdf:resource="http://aims.fao.org/aos/agrovoc/c_8543" />
        <ore:aggregates rdf:resource="http://dbpedia.org/resource/2,4-Dichlorophenoxyacetic_acid" />
        <ore:aggregates rdf:resource="http://id.loc.gov/authorities/subjects/sh85037669" />
        <ore:aggregates rdf:resource="http://lod.nal.usda.gov/nalt/1353" />
      </ore:Aggregation>
    </rdf:RDF>
    

    我如何改进这种方法?例如:

    1. 添加更多富有表现力的关系。
    2. 让它更紧凑。
    3. 为Ontology建立起源(使用http://www.w3.org/TR/prov-o/);一个 权威;一件物品?
    4. 更好地组织文件以与其他RDF文件合并到OWL环境中?
    5. 感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

我相信问题#2和#4可以通过考虑从表示中删除模式样式元素的想法来解决。您提供的数据似乎将域概念的定义(即:ChemicalSubstanceConcept)与实例信息(http://dbpedia.org/resource/2,4-Dichlorophenoxyacetic_acid http://schema.org/name "2,4-Dichlorophenoxyacetic acid")混合在一起。这里的最佳实践是保留单个词汇表/本体,用于描述您将用于表示单个化学品的实例数据的主干结构。

我还想在肤浅的层面上注意,似乎您可能不会一直使用rdf:type来定义班级成员资格。此外,您可能正在使用rdf:type,而您可能更愿意拥有rdfs:subClassOf

我建议将这些不同的文档存储在RDF dataset的命名图中。使用一致的约定为每个化学图创建有意义的IRI。

#3(出处信息)最简单的方法可能是存储描述每个文档(命名图)存储的owl:Ontologythese examples中的x)的三元组。这遵循现有约定,但如果组合命名图形可能会分解(因为每个图形的三元组不一定要注释以描述包含它们的本体)。根据偏好设置的一个小变化是将出处信息存储在数据存储的默认图表中,以便将化学元信息与描述分开。