root/BH13SPARQLBuilder/src/org/biohackathon/SPARQLBuilder/OWL/InstanceLink.java @ 209

リビジョン 2, 3.6 KB (コミッタ: nori, 11 年 前)

Initial

  • 属性 svn:mime-type の設定値 text/plain
行番号 
1package org.biohackathon.SPARQLBuilder.OWL;
2
3import java.util.HashSet;
4
5/**
6 * 繧、繝ウ繧ケ繧ソ繝ウ繧ケ縺ク縲√≠繧九>縺ッ繧、繝ウ繧ケ繧ソ繝ウ繧ケ縺九i縺ョ1繧ケ繝�ャ繝励Μ繝ウ繧ッ繧定ィ倩ソー縺吶k
7 * @author Norio KOBAYASHI
8 * @since 28.01.2014
9 * @version 29.01.2014
10 */
11public class InstanceLink {
12
13        private String propertyURI = null;
14        private String[] linkedClassURIs = null;
15        private String linkedInstanceURI = null;
16        private Direction direction = null;
17
18
19        /**
20         * 繝励Ο繝代ユ繧」URI縲√Μ繝ウ繧ッ蜈茨シ亥��峨う繝ウ繧ケ繧ソ繝ウ繧ケ縲√Μ繝ウ繧ッ縺ョ蜷代″繧剃ク弱∴繧区ァ区�蟄�
21         * <BR>
22         * 繝ェ繝ウ繧ッ蜈�(蜈� 繧、繝ウ繧ケ繧ソ繝ウ繧ケ縺ォ縺、縺�※縺ッ縲√◎繧後′螻槭@縺ヲ縺�k縺吶∋縺ヲ縺ョ繧ッ繝ゥ繧ケ繧ゆク弱∴繧�
23         *
24         * @param propertyURI縲€繝励Ο繝代ユ繧」縺ョURI
25         * @param linkedInstanceURI縲€繝ェ繝ウ繧ッ縺ョ荳サ隱槭€√€√≠繧九>縺ッ繝ェ繝ウ繧ッ縺ョ逶ョ逧�ェ槭→縺ェ縺」縺ヲ縺�k繧、繝ウ繧ケ繧ソ繝ウ繧ケ縺ョURI
26         * @param linkedClassURIs縲€linkedInstanceURI縺ョ繧、繝ウ繧ケ繧ソ繝ウ繧ケ縺悟ア槭@縺ヲ縺�k縺吶∋縺ヲ縺ョ繧ッ繝ゥ繧ケ縺ョURI縺ョ驟榊�
27         * @param direction 繝励Ο繝代ユ繧」縺ョ蜷代″縲〕inkedClassURI縺ョ繧ッ繝ゥ繧ケ縺後Μ繝ウ繧ッ蜈医↓縺ェ縺」縺ヲ縺�k縺ィ縺阪�Direction.forward,繝ェ繝ウ繧ッ蜈�↓縺ェ縺」縺ヲ縺�k縺ィ縺阪�Direction.reverse, 縺昴l繧我ク。譁ケ縺ョ譎ゅ�Direction.both繧呈欠螳壹☆繧�
28         * @throws Exception
29         * @since 28.01.2014
30         */
31        public InstanceLink(String propertyURI, String linkedInstanceURI, String[] linkedClassURIs, Direction direction){
32                this.propertyURI = propertyURI;
33                this.linkedInstanceURI = linkedInstanceURI;
34                this.linkedClassURIs = linkedClassURIs;
35                this.direction = direction;
36        }
37       
38
39        /**
40         * linkedInstanceURI縺ョ繧、繝ウ繧ケ繧ソ繝ウ繧ケ縺悟ア槭@縺ヲ縺�k繧ッ繝ゥ繧ケ繧剃ク€縺、霑ス蜉縺吶k
41         *
42         * @param classURI縲€霑ス蜉縺吶klinkedInstanceURI縺ョ繧、繝ウ繧ケ繧ソ繝ウ繧ケ縺悟ア槭@縺ヲ縺�k繧ッ繝ゥ繧ケ縺ョURI
43         * @throws Exception
44         * @since 28.01.2014
45         */
46        public void addLinkedClassURI(String classURI){
47                if( linkedClassURIs == null || linkedClassURIs.length == 0 ){
48                        linkedClassURIs = new String[]{classURI};
49                }else{
50                        HashSet<String> hSet = new HashSet<String>();
51                        for(String clsURI: linkedClassURIs){
52                                hSet.add(clsURI);
53                        }
54                        hSet.add(classURI);
55                        linkedClassURIs = hSet.toArray(new String[0]);
56                }
57        }
58       
59        /**
60         * 譁�ュ怜�陦ィ險倥r蜿門セ励☆繧�
61         *
62         * @since 28.01.2014
63         */
64        public String toString(){
65                StringBuffer sb = new StringBuffer();
66                sb.append(propertyURI);
67                if( direction == Direction.forward ){
68                        sb.append(" --> ");
69                }else{
70                        if( direction == Direction.reverse ){
71                        sb.append(" <-- ");
72                        }else{
73                                sb.append(" <-> ");
74                        }
75                }
76                sb.append(linkedInstanceURI);
77                sb.append(" rdf:type [");
78                if( linkedClassURIs != null ){
79                        for( int i = 0; i < linkedClassURIs.length; i++ ) {
80                                if( i != 0 ) {
81                                        sb.append(", ");
82                                }
83                                sb.append(linkedClassURIs[i]);
84                        }
85                }
86                sb.append("]");
87                return sb.toString();
88        }
89       
90        public String getPropertyURI() {
91                return propertyURI;
92        }
93        public void setPropertyURI(String propertyURI) {
94                this.propertyURI = propertyURI;
95        }
96        public String[] getLinkedClassURIs() {
97                return linkedClassURIs;
98        }
99        public void setLinkedClassURIs(String[] linkedClassURIs) {
100                this.linkedClassURIs = linkedClassURIs;
101        }
102        public Direction getDirection() {
103                return direction;
104        }
105        public void setDirection(Direction direction) {
106                this.direction = direction;
107        }
108
109        public String getLinkedInstanceURI() {
110                return linkedInstanceURI;
111        }
112
113        public void setLinkedInstanceURI(String linkedInstanceURI) {
114                this.linkedInstanceURI = linkedInstanceURI;
115        }
116               
117        // private String[] propertyDomainClassURIs = null;
118        // private String[] propertyRangeClassURIs = null;
119
120               
121
122}
Note: リポジトリブラウザについてのヘルプは TracBrowser を参照してください。