以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 Semantic Web(语义Web)/描述逻辑/本体 』  (http://bbs.xml.org.cn/list.asp?boardid=2)
----  对本体内容的添加、修改和删除操作[求助]  (http://bbs.xml.org.cn/dispbbs.asp?boardid=2&rootid=&id=69790)


--  作者:cqh
--  发布时间:11/24/2008 4:15:00 PM

--  对本体内容的添加、修改和删除操作[求助]
如何将protege导出的本体文件进行添加、修改和删除操作。
      我用model.write的方法将某三元组添加到该本体文件后,该本体原来的内容被新添加的三元组覆盖,以前生成的内容都没了,如果要对本体文件进行正确的添加,修改和删除操作应该怎么实现?

--  作者:fanyi
--  发布时间:11/24/2008 4:51:00 PM

--  
你是用jena吧? 用jena对修改过的本体好象不能以owl形式存储。
--  作者:cqh
--  发布时间:11/24/2008 7:19:00 PM

--  
我是用下面的代码添加三元组的,这样能够把这些三元组添加到.owl文件中,但是是覆盖上去的,每运行一次,以前的内容都没了!
                               String nsA = "http://somewhere/else#";
   String nsB = "http://nowhere/else#";
   Resource root = model.createResource( nsA + "root" );
   Property P = model.createProperty( nsA + "P" );
   Property Q = model.createProperty( nsB + "Q" );
   Resource x = model.createResource( nsA + "x" );
   Resource y = model.createResource( nsA + "y" );
   Resource z = model.createResource( nsA + "z" );
   model.add( root, P, y ).add( y, Q, z ).add(root,P,z).add(root,P,y);
   System.out.println( "# -- no special prefixes defined" );
   model.write( System.out,"N-TRIPLE" );
   System.out.println( "# -- nsA defined" );
   model.setNsPrefix( "nsA", nsA );
   model.write( System.out ,"N-TRIPLE");
   System.out.println( "# -- nsA and cat defined" );
   model.setNsPrefix( "cat", nsB );
   model.write( System.out ,"N-TRIPLE");
                                loadModel();
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms