语义网:最佳实践
我是Semantic Web的新手,在我的应用程序中,我使用的是Protege,RDF,SPARQL,Jena,Virtuaso.我关心的是,在流行的Java Frameworks(比如Hibernate)中,我们有POJO层,在这个语义Web应用程序中我可以拥有相同的东西吗?这是一个好习惯吗?我想知道,Jena为我提供了RDF和Model的连接,但是设计整个应用程序的最佳实践是什么?在前端,我将使用简单的HTML和JS,因此servlet将在那里.另外,我想知道表示在Protege in Java中创建的本体的标准(不使用OntModel,因为我没有使用OWL).
我在Jena中以编程方式生成RDF文件,即当我在rdf(实例)中插入数据时,我需要有一个唯一的URI(它将引用资源),有点像rdbms中的主键.我想知道在Jena中可以做的事情就像我为一个实例创建Resource我可以生成URI吗?
示例:
Resource resAnswer = ModelCreation.md.createResource(RDFResourcesURI.Answer_Resource_URI + answer.getAnswer_id());
Run Code Online (Sandbox Code Playgroud)
- 这里我硬编码(或用户输入)answer_id然后附加到预定义的URI.我可以生成它而不是硬编码(如mysql中的自动增量)?