正在建立化学品目录。以下示例是2,4-D(农药)。
长期目标是将许多RDF文件合并到具有推理功能的OWL“目录”中。
短期目标是一次构建一个RDF文件。
然后,当RDF文件合并到OWL目录中时,将添加新的关系和规则以供推理。
我的短期方法是:
这是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>
我如何改进这种方法?例如:
感谢您的帮助。
答案 0 :(得分:1)
我相信问题#2和#4可以通过考虑从表示中删除模式样式元素的想法来解决。您提供的数据似乎将域概念的定义(即:ChemicalSubstance
是Concept
)与实例信息(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:Ontology
(these examples中的x
)的三元组。这遵循现有约定,但如果组合命名图形可能会分解(因为每个图形的三元组不一定要注释以描述包含它们的本体)。根据偏好设置的一个小变化是将出处信息存储在数据存储的默认图表中,以便将化学元信息与描述分开。