将 OWL-S 条件投射到 SWRL
Cast OWL-S condition to SWRL
我想将一些 OWL-S 条件转换为 SWRL,转换已完成但结果操作 returns 空指针异常。这里的代码:
final OWLIndividualList<Condition> cs = service.getProfile().getConditions();
final ArrayList<ArrayList<URI>> conditions = new ArrayList<ArrayList<URI>>();
for (final Condition<?> c : cs){
if (c.canCastTo(Condition.SWRL.class)){ // is it a SWRL condition?
final Condition.SWRL sc = c.castTo(Condition.SWRL.class);
for (final Atom a : sc.getBody()){...........
最后一行returns:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
谁能帮我解决这个问题?
此问题与 java 代码无关,而是与 OWLS-S 文件语法相关。
您可以通过替换来解决此问题:
<expr:expressionBody rdf:parseType="Literal">
持有 SWRL 前提条件(或最终结果),作者:
<expr:expressionObject>
我想将一些 OWL-S 条件转换为 SWRL,转换已完成但结果操作 returns 空指针异常。这里的代码:
final OWLIndividualList<Condition> cs = service.getProfile().getConditions();
final ArrayList<ArrayList<URI>> conditions = new ArrayList<ArrayList<URI>>();
for (final Condition<?> c : cs){
if (c.canCastTo(Condition.SWRL.class)){ // is it a SWRL condition?
final Condition.SWRL sc = c.castTo(Condition.SWRL.class);
for (final Atom a : sc.getBody()){...........
最后一行returns:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
谁能帮我解决这个问题?
此问题与 java 代码无关,而是与 OWLS-S 文件语法相关。 您可以通过替换来解决此问题:
<expr:expressionBody rdf:parseType="Literal">
持有 SWRL 前提条件(或最终结果),作者:
<expr:expressionObject>