• R/O
  • SSH
  • HTTPS

swlms: 提交


Commit MetaInfo

修订版394 (tree)
时间2010-05-21 15:39:49
作者ksaito0717

Log Message

fix.

更改概述

差异

--- JenaCheck/src/jp/ac/do_johodai/j314/sw/jc/JenaFrame.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/jc/JenaFrame.java (revision 394)
@@ -173,6 +173,7 @@
173173 engine.registerBuiltin(new SMailBuiltin());
174174 engine.registerBuiltin(new Long2DateTimeBuiltin());
175175 engine.registerBuiltin(new DateTime2LongBuiltin());
176+ engine.registerBuiltin(new UriTailBuiltin());
176177 // Axis2に依存するビルトイン
177178 engine.registerBuiltin(new SendN3Builtin());
178179 engine.registerBuiltin(new SendN3RESTBuiltin());
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/jc/JenaCheck.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/jc/JenaCheck.java (revision 394)
@@ -54,7 +54,7 @@
5454 // Exceptionを出すので、とりあえずnullに
5555 // しておく。
5656 System.setSecurityManager(null);
57- final String argsCopy[] = args;
57+ //final String argsCopy[] = args;
5858 java.awt.EventQueue.invokeLater(new Runnable() {
5959 public void run() {
6060 JenaCheck jc = new JenaCheck();
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/KeitaisoBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/KeitaisoBuiltin.java (revision 394)
@@ -26,8 +26,7 @@
2626 public boolean bodyCall(Node[] args, int length, RuleContext context) {
2727 if (length != 2)
2828 return false;
29- doKeitaiso(args,length,context);
30- return true;
29+ return doKeitaiso(args,length,context);
3130 }
3231
3332 public void headAction(Node[] args, int length, RuleContext context) {
@@ -34,15 +33,15 @@
3433 doKeitaiso(args,length,context);
3534 }
3635
37- void doKeitaiso(Node[] args,int length,RuleContext context) {
36+ boolean doKeitaiso(Node[] args,int length,RuleContext context) {
3837 try {
3938 String inStr = ((Node_Literal) args[0]).getLiteralLexicalForm();
4039 StringTagger tagger = StringTagger.getInstance();
4140 Token[] token = tagger.analyze(inStr);
4241
43- Node first = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
44- Node rest = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
45- Node list = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
42+ Node first = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
43+ Node rest = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
44+ Node list = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
4645 for (int i=(token.length-1);i>=0;i--) {
4746 Node t = Node.createLiteral(token[i].getBasicString());
4847 Node tail = list;
@@ -51,9 +50,10 @@
5150 context.add(new Triple(list,rest,tail));
5251 }
5352 BindingEnvironment env = context.getEnv();
54- env.bind(args[1],list);
53+ return env.bind(args[1],list);
5554 } catch(Exception e) {
5655 e.printStackTrace();
56+ return false;
5757 }
5858 }
5959 }
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/A3ChangeBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/A3ChangeBuiltin.java (revision 394)
@@ -33,6 +33,8 @@
3333
3434 boolean change(Node args[]) {
3535 A3NewBuiltin.MyFrame f = A3NewBuiltin.hash.get(args[0]);
36+ if (f==null)
37+ return false;
3638 String v = ((Node_Literal) args[1]).getLiteralLexicalForm();
3739 v.trim();
3840 try {
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/ListBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/ListBuiltin.java (revision 394)
@@ -24,8 +24,7 @@
2424 public boolean bodyCall(Node[] args, int length, RuleContext context) {
2525 if (length == 0)
2626 return false;
27- makeListAndBind(args,length,context);
28- return true;
27+ return makeListAndBind(args,length,context);
2928 }
3029
3130 public void headAction(Node[] args, int length, RuleContext context) {
@@ -32,10 +31,10 @@
3231 makeListAndBind(args,length,context);
3332 }
3433
35- void makeListAndBind(Node[] args,int length,RuleContext context) {
36- Node first = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
37- Node rest = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
38- Node list = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
34+ boolean makeListAndBind(Node[] args,int length,RuleContext context) {
35+ Node first = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
36+ Node rest = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
37+ Node list = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
3938 for (int i=(length-1);i>0;i--) {
4039 Node tail = list;
4140 list = Node.createAnon();
@@ -43,6 +42,6 @@
4342 context.add(new Triple(list,rest,tail));
4443 }
4544 BindingEnvironment env = context.getEnv();
46- env.bind(args[0],list);
45+ return env.bind(args[0],list);
4746 }
4847 }
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/List2StringBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/List2StringBuiltin.java (revision 394)
@@ -25,8 +25,7 @@
2525 public boolean bodyCall(Node[] args, int length, RuleContext context) {
2626 if (length != 2)
2727 return false;
28- list2string(args,length,context);
29- return true;
28+ return list2string(args,length,context);
3029 }
3130
3231 public void headAction(Node[] args, int length, RuleContext context) {
@@ -33,16 +32,16 @@
3332 list2string(args,length,context);
3433 }
3534
36- void list2string(Node[] args,int length,RuleContext context) {
35+ boolean list2string(Node[] args,int length,RuleContext context) {
3736 String ret = list2stringR(args[0],context);
3837 BindingEnvironment env = context.getEnv();
39- env.bind(args[1],Node.createLiteral(ret));
38+ return env.bind(args[1],Node.createLiteral(ret));
4039 }
4140 String list2stringR(Node n,RuleContext context) {
4241 String ret = "";
43- Node first = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
44- Node rest = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
45- Node nil = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
42+ Node first = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
43+ Node rest = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
44+ Node nil = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
4645 ArrayList<Node> al = new ArrayList<Node>();
4746 Node tmpN = n;
4847 while (!tmpN.equals(nil)) {
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/PrintListBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/PrintListBuiltin.java (revision 394)
@@ -36,9 +36,9 @@
3636 System.out.println();
3737 }
3838 void printListR(Node n,RuleContext context) {
39- Node first = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
40- Node rest = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
41- Node nil = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
39+ Node first = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
40+ Node rest = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
41+ Node nil = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
4242 ArrayList<Node> al = new ArrayList<Node>();
4343 Node tmpN = n;
4444 while (!tmpN.equals(nil)) {
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/DateTime2LongBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/DateTime2LongBuiltin.java (revision 394)
@@ -4,6 +4,8 @@
44 import com.hp.hpl.jena.reasoner.rulesys.builtins.BaseBuiltin;
55 import com.hp.hpl.jena.reasoner.rulesys.RuleContext;
66 import com.hp.hpl.jena.reasoner.rulesys.BindingEnvironment;
7+import com.hp.hpl.jena.reasoner.rulesys.Util;
8+
79 import java.text.SimpleDateFormat;
810 import java.util.Date;
911
@@ -24,14 +26,13 @@
2426 public boolean bodyCall(Node[] args, int length, RuleContext context) {
2527 if (length != 2)
2628 return false;
27- datetime2long(args,length,context);
28- return true;
29+ return datetime2long(args,length,context);
2930 }
3031
3132 public void headAction(Node[] args, int length, RuleContext context) {
3233 datetime2long(args,length,context);
3334 }
34- void datetime2long(Node[] args, int length, RuleContext context) {
35+ boolean datetime2long(Node[] args, int length, RuleContext context) {
3536 String s = ((Node_Literal)args[0]).getLiteralLexicalForm();
3637 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
3738 Date date = null;
@@ -42,8 +43,8 @@
4243 date = new Date(0l);
4344 }
4445 long l = date.getTime();
45- Node n = Node.create(""+l);
46+ Node n = Util.makeLongNode(l);
4647 BindingEnvironment env = context.getEnv();
47- env.bind(args[1],n);
48+ return env.bind(args[1],n);
4849 }
4950 }
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/Int2StringBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/Int2StringBuiltin.java (revision 394)
@@ -22,17 +22,16 @@
2222 public boolean bodyCall(Node[] args, int length, RuleContext context) {
2323 if (length != 2)
2424 return false;
25- int2string(args,length,context);
26- return true;
25+ return int2string(args,length,context);
2726 }
2827
2928 public void headAction(Node[] args, int length, RuleContext context) {
3029 int2string(args,length,context);
3130 }
32- void int2string(Node[] args, int length, RuleContext context) {
31+ boolean int2string(Node[] args, int length, RuleContext context) {
3332 String s = ((Node_Literal)args[0]).getLiteralLexicalForm();
3433 Node n = Node.createLiteral(s);
3534 BindingEnvironment env = context.getEnv();
36- env.bind(args[1],n);
35+ return env.bind(args[1],n);
3736 }
3837 }
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/SMailBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/SMailBuiltin.java (revision 394)
@@ -5,7 +5,6 @@
55 import com.hp.hpl.jena.graph.*;
66 import com.hp.hpl.jena.reasoner.rulesys.builtins.BaseBuiltin;
77 import com.hp.hpl.jena.reasoner.rulesys.RuleContext;
8-import com.hp.hpl.jena.reasoner.rulesys.BindingEnvironment;
98
109 /**
1110 * SMTPでメールを出すためのビルトイン。ビルトインの名前は'smail'。
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/KeitaisokaisekiBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/KeitaisokaisekiBuiltin.java (revision 394)
@@ -38,8 +38,7 @@
3838 public boolean bodyCall(Node[] args, int length, RuleContext context) {
3939 if (length != 2)
4040 return false;
41- doKeitaisokaiseki(args,length,context);
42- return true;
41+ return doKeitaisokaiseki(args,length,context);
4342 }
4443
4544 public void headAction(Node[] args, int length, RuleContext context) {
@@ -46,7 +45,7 @@
4645 doKeitaisokaiseki(args,length,context);
4746 }
4847
49- void doKeitaisokaiseki(Node[] args,int length,RuleContext context) {
48+ boolean doKeitaisokaiseki(Node[] args,int length,RuleContext context) {
5049 try {
5150 String inStr = ((Node_Literal) args[0]).getLiteralLexicalForm();
5251 StringTagger tagger = StringTagger.getInstance();
@@ -61,9 +60,10 @@
6160 Node list = makeList(nodes,context);
6261
6362 BindingEnvironment env = context.getEnv();
64- env.bind(args[1],list);
63+ return env.bind(args[1],list);
6564 } catch(Exception e) {
6665 e.printStackTrace();
66+ return false;
6767 }
6868 }
6969 Node doKeitaisokaiseki2(Token t,RuleContext context) {
@@ -77,9 +77,9 @@
7777 return makeList(nodes,context);
7878 }
7979 Node makeList(Node nodes[],RuleContext context) {
80- Node first = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
81- Node rest = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
82- Node list = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
80+ Node first = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
81+ Node rest = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
82+ Node list = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
8383 for (int i=(nodes.length-1);i>=0;i--) {
8484 Node tail = list;
8585 list = Node.createAnon();
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/UriTailBuiltin.java (nonexistent)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/UriTailBuiltin.java (revision 394)
@@ -0,0 +1,47 @@
1+package jp.ac.do_johodai.j314.sw.je;
2+
3+import com.hp.hpl.jena.graph.*;
4+import com.hp.hpl.jena.reasoner.rulesys.builtins.BaseBuiltin;
5+import com.hp.hpl.jena.reasoner.rulesys.RuleContext;
6+import com.hp.hpl.jena.reasoner.rulesys.BindingEnvironment;
7+
8+/**
9+ * 第1引数(URI)の最後のスラッシュ以降の文字列を取り出して
10+ * 第2引数の変数に代入する。
11+ * ビルトインの名前は'uri_tail'。
12+ */
13+public class UriTailBuiltin extends BaseBuiltin {
14+ public String getName() {
15+ return "uri_tail";
16+ }
17+
18+ public int getArgLength() {
19+ return 2;
20+ }
21+
22+ public boolean bodyCall(Node[] args, int length, RuleContext context) {
23+ if (length != 2)
24+ return false;
25+ return uri_tail(args,length,context);
26+ }
27+
28+ public void headAction(Node[] args, int length, RuleContext context) {
29+ uri_tail(args,length,context);
30+ }
31+ boolean uri_tail(Node[] args, int length, RuleContext context) {
32+ try {
33+ String s = args[0].getURI();
34+ BindingEnvironment env = context.getEnv();
35+ if (s.lastIndexOf('/')==-1) {
36+ Node n = Node.createLiteral(s);
37+ return env.bind(args[1],n);
38+ } else {
39+ Node n = Node.createLiteral(s.substring(s.lastIndexOf('/')+1));
40+ return env.bind(args[1],n);
41+ }
42+ } catch(Exception e) {
43+ System.out.println("uri_tail error! "+e.getClass().getName());
44+ return false;
45+ }
46+ }
47+}
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/ReadBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/ReadBuiltin.java (revision 394)
@@ -29,8 +29,7 @@
2929 String s = br.readLine();
3030 Node n = Node.createLiteral(s);
3131 BindingEnvironment env = context.getEnv();
32- env.bind(args[0], n);
33- return true;
32+ return env.bind(args[0], n);
3433 } catch (IOException e) {
3534 e.printStackTrace();
3635 return false;
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/JenaEngine.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/JenaEngine.java (revision 394)
@@ -13,7 +13,6 @@
1313 import com.hp.hpl.jena.reasoner.rulesys.GenericRuleReasoner;
1414 import com.hp.hpl.jena.reasoner.rulesys.Rule;
1515 import com.hp.hpl.jena.reasoner.rulesys.BuiltinRegistry;
16-import com.hp.hpl.jena.reasoner.rulesys.RuleReasoner;
1716 import com.hp.hpl.jena.query.*;
1817 import com.hp.hpl.jena.graph.*;
1918 import com.hp.hpl.jena.reasoner.InfGraph;
@@ -28,7 +27,7 @@
2827 ArrayList<JEMessage> requestQueue;
2928 Timer timer = new Timer();
3029
31- List rules = new ArrayList();
30+ List<Rule> rules = new ArrayList<Rule>();
3231 boolean enableOWLDL = false;
3332 boolean trace = false;
3433 String reasonerMode = "hybrid";
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/StringFormatBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/StringFormatBuiltin.java (revision 394)
@@ -37,7 +37,6 @@
3737 String s = String.format(f,ss);
3838 Node n = Node.createLiteral(s);
3939 BindingEnvironment env = context.getEnv();
40- env.bind(args[1],n);
41- return true;
40+ return env.bind(args[1],n);
4241 }
4342 }
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/A3PrintBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/A3PrintBuiltin.java (revision 394)
@@ -36,6 +36,8 @@
3636
3737 boolean print(Node args[]) {
3838 A3NewBuiltin.MyFrame f = A3NewBuiltin.hash.get(args[0]);
39+ if (f==null)
40+ return false;
3941 String v = "";
4042 for (int i=1;i<args.length;i++) {
4143 v = v + ((Node_Literal) args[i]).getLiteralLexicalForm();
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/StateGetBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/StateGetBuiltin.java (revision 394)
@@ -11,13 +11,7 @@
1111 * ビルトインの名前は'state_get'。
1212 * 状態を保存しておくための特別の変数領域を確保するビルトイン。
1313 * 論理学的には禁断のビルトインになるかもしれない。
14- *
15- * 第1引数は、代入された変数を指定しても良い。でも、たぶん、
16- * bindビルトインやlistEntryビルトインなどで代入された変数では
17- * だめで、ルールの条件部で当てはめられた変数でないとだめっぽい。
18- * それと、第二引数の変数もbindと同じ方法で代入しているので、
19- * state_getにより代入された変数も危険。
20- * このへんはJenaの実装依存みたいで、ちょっと気持わるい。
14+ * 第1引数は、代入された変数を指定しても良い。
2115 */
2216 public class StateGetBuiltin extends BaseBuiltin {
2317
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/A3YesNoBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/A3YesNoBuiltin.java (revision 394)
@@ -36,6 +36,8 @@
3636
3737 boolean yesNo(Node args[], RuleContext context) {
3838 A3NewBuiltin.MyFrame f = A3NewBuiltin.hash.get(args[0]);
39+ if (f==null)
40+ return false;
3941 String v = f.yesNo();
4042 Node n = Node.createLiteral(v);
4143 BindingEnvironment env = context.getEnv();
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/StateSetBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/StateSetBuiltin.java (revision 394)
@@ -10,11 +10,7 @@
1010 * ビルトインの名前は'state_set'。
1111 * 状態を保存しておくための特別の変数領域を確保するビルトイン。
1212 * 論理学的には禁断のビルトインになるかもしれない。
13- *
14- * 第1、第2引数とも、代入された変数を指定しても良い。でも、たぶん、
15- * bindビルトインやlistEntryビルトインなどで代入された変数では
16- * だめで、ルールの条件部で当てはめられた変数でないとだめっぽい。
17- * このへんはJenaの実装依存みたいで、ちょっと気持わるい。
13+ * 第1、第2引数とも、代入された変数を指定しても良い。
1814 */
1915 public class StateSetBuiltin extends BaseBuiltin {
2016 static HashMap<Node,Node> map = new HashMap<Node,Node>();
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/A3SetVisibleBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/A3SetVisibleBuiltin.java (revision 394)
@@ -34,6 +34,8 @@
3434
3535 boolean setVisible(Node[] args) {
3636 A3NewBuiltin.MyFrame f = A3NewBuiltin.hash.get(args[0]);
37+ if (f==null)
38+ return false;
3739 String v = ((Node_Literal) args[1]).getLiteralLexicalForm();
3840 v.trim();
3941 int i = Integer.parseInt(v);
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/StringConcatBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/StringConcatBuiltin.java (revision 394)
@@ -32,7 +32,6 @@
3232 }
3333 Node n = Node.createLiteral(s);
3434 BindingEnvironment env = context.getEnv();
35- env.bind(args[0],n);
36- return true;
35+ return env.bind(args[0],n);
3736 }
3837 }
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/Long2DateTimeBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/Long2DateTimeBuiltin.java (revision 394)
@@ -25,14 +25,13 @@
2525 public boolean bodyCall(Node[] args, int length, RuleContext context) {
2626 if (length != 2)
2727 return false;
28- long2datetime(args,length,context);
29- return true;
28+ return long2datetime(args,length,context);
3029 }
3130
3231 public void headAction(Node[] args, int length, RuleContext context) {
3332 long2datetime(args,length,context);
3433 }
35- void long2datetime(Node[] args, int length, RuleContext context) {
34+ boolean long2datetime(Node[] args, int length, RuleContext context) {
3635 String s = ((Node_Literal)args[0]).getLiteralLexicalForm();
3736 long l = Long.parseLong(s);
3837 Date date = new Date(l);
@@ -40,6 +39,6 @@
4039 String d = sdf.format(date);
4140 Node n = Node.createLiteral(d,null,XSDDatatype.XSDdateTime);
4241 BindingEnvironment env = context.getEnv();
43- env.bind(args[1],n);
42+ return env.bind(args[1],n);
4443 }
4544 }
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/ConsBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/ConsBuiltin.java (revision 394)
@@ -23,8 +23,7 @@
2323 public boolean bodyCall(Node[] args, int length, RuleContext context) {
2424 if (length != 3)
2525 return false;
26- makeListAndBind(args,length,context);
27- return true;
26+ return makeListAndBind(args,length,context);
2827 }
2928
3029 public void headAction(Node[] args, int length, RuleContext context) {
@@ -31,13 +30,13 @@
3130 makeListAndBind(args,length,context);
3231 }
3332
34- void makeListAndBind(Node[] args,int length,RuleContext context) {
35- Node first = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
36- Node rest = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
33+ boolean makeListAndBind(Node[] args,int length,RuleContext context) {
34+ Node first = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
35+ Node rest = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
3736 Node bNode = Node.createAnon();
3837 context.add(new Triple(bNode,first,args[0]));
3938 context.add(new Triple(bNode,rest,args[1]));
4039 BindingEnvironment env = context.getEnv();
41- env.bind(args[2],bNode);
40+ return env.bind(args[2],bNode);
4241 }
4342 }
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/ListAppendBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/ListAppendBuiltin.java (revision 394)
@@ -24,8 +24,7 @@
2424 public boolean bodyCall(Node[] args, int length, RuleContext context) {
2525 if (length != 3)
2626 return false;
27- listAppend(args,length,context);
28- return true;
27+ return listAppend(args,length,context);
2928 }
3029
3130 public void headAction(Node[] args, int length, RuleContext context) {
@@ -32,10 +31,10 @@
3231 listAppend(args,length,context);
3332 }
3433
35- void listAppend(Node[] args,int length,RuleContext context) {
36- Node first = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
37- Node rest = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
38- Node nil = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
34+ boolean listAppend(Node[] args,int length,RuleContext context) {
35+ Node first = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#first");
36+ Node rest = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#rest");
37+ Node nil = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
3938 ArrayList<Node> al = new ArrayList<Node>();
4039 Node n = args[0];
4140 while (!n.equals(nil)) {
@@ -54,7 +53,7 @@
5453 n = ((Triple)ci.next()).getObject();
5554 }
5655 Node nn[] = al.toArray(new Node[0]);
57- Node list = Node.create("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
56+ Node list = Node.createURI("http://www.w3.org/1999/02/22-rdf-syntax-ns#nil");
5857 for (int i=nn.length-1;i>=0;i--) {
5958 Node tail = list;
6059 list = Node.createAnon();
@@ -62,6 +61,6 @@
6261 context.add(new Triple(list,rest,tail));
6362 }
6463 BindingEnvironment env = context.getEnv();
65- env.bind(args[2],list);
64+ return env.bind(args[2],list);
6665 }
6766 }
--- JenaCheck/src/jp/ac/do_johodai/j314/sw/je/String2IntBuiltin.java (revision 393)
+++ JenaCheck/src/jp/ac/do_johodai/j314/sw/je/String2IntBuiltin.java (revision 394)
@@ -4,6 +4,7 @@
44 import com.hp.hpl.jena.reasoner.rulesys.builtins.BaseBuiltin;
55 import com.hp.hpl.jena.reasoner.rulesys.RuleContext;
66 import com.hp.hpl.jena.reasoner.rulesys.BindingEnvironment;
7+import com.hp.hpl.jena.reasoner.rulesys.Util;
78
89 /**
910 * 第1引数(文字列)を整数に変換して第2引数(整数)の変数に
@@ -22,18 +23,17 @@
2223 public boolean bodyCall(Node[] args, int length, RuleContext context) {
2324 if (length != 2)
2425 return false;
25- string2int(args,length,context);
26- return true;
26+ return string2int(args,length,context);
2727 }
2828
2929 public void headAction(Node[] args, int length, RuleContext context) {
3030 string2int(args,length,context);
3131 }
32- void string2int(Node[] args, int length, RuleContext context) {
32+ boolean string2int(Node[] args, int length, RuleContext context) {
3333 String s = ((Node_Literal)args[0]).getLiteralLexicalForm();
3434 long l = Long.parseLong(s);
35- Node n = Node.create(""+l);
35+ Node n = Util.makeLongNode(l);
3636 BindingEnvironment env = context.getEnv();
37- env.bind(args[1],n);
37+ return env.bind(args[1],n);
3838 }
3939 }
Show on old repository browser