チェンジセット 112 : BH13SPARQLBuilder/src

差分発生行の前後
無視リスト:
更新日時:
2014/07/07 00:27:23 (10 年 前)
更新者:
nori
ログメッセージ:

support Literals

パス:
BH13SPARQLBuilder/src/org/biohackathon/SPARQLBuilder/OWL
ファイル:
2 変更

凡例:

変更なし
追加
削除
  • BH13SPARQLBuilder/src/org/biohackathon/SPARQLBuilder/OWL/AcquiredStructureAnalyzer.java

    r108 r112  
    175175 
    176176                // SELECT 
    177                 queryStr.append("SELECT DISTINCT ?indPropCat ?c ?d ?p ?numLnkInsStart ?numLnkInsEnd ?numInsDom ?numInsRan ?numTriples ?isStartClsLim ?isEndClsLim\n"); 
     177                queryStr.append("SELECT DISTINCT ?indPropCat ?c ?dat ?d ?p ?numLnkInsStart ?numLnkInsEnd ?numInsDom ?numInsRan ?numTriples ?isStartClsLim ?isEndClsLim\n"); 
    178178 
    179179//              if (targetGraphURIs != null) { 
     
    191191                queryStr.append(" ?cr <http://sparqlbuilder.org/startClass> <" + originClass + ">. \n"); 
    192192                queryStr.append(" ?cr <http://sparqlbuilder.org/endClass> ?c. \n"); 
     193                queryStr.append(" ?cr <http://sparqlbuilder.org/property> ?p. \n"); 
     194                queryStr.append(" ?cr <http://sparqlbuilder.org/numberOfTriples> ?numTriples. \n"); 
     195                queryStr.append(" ?cr <http://sparqlbuilder.org/numberOfInstancesOfStartClass> ?numLnkInsStart. \n"); 
     196                queryStr.append(" ?cr <http://sparqlbuilder.org/numberOfInstancesOfEndClass> ?numLnkInsEnd. \n"); 
     197                queryStr.append(" ?cr <http://sparqlbuilder.org/startClassLimitedQ> ?isStartClsLim. \n"); 
     198                queryStr.append(" ?cr <http://sparqlbuilder.org/endClassLimitedQ> ?isEndClsLim. \n"); 
     199                queryStr.append("}\n"); 
     200                queryStr.append(" UNION\n"); 
     201                queryStr.append(" {"); 
     202                queryStr.append(" ?cr <http://sparqlbuilder.org/startClass> <" + originClass + ">. \n"); 
     203                queryStr.append(" ?cr <http://sparqlbuilder.org/endDatatype> ?dat. \n"); 
    193204                queryStr.append(" ?cr <http://sparqlbuilder.org/property> ?p. \n"); 
    194205                queryStr.append(" ?cr <http://sparqlbuilder.org/numberOfTriples> ?numTriples. \n"); 
     
    247258                        Resource pro = sol.getResource("p"); 
    248259                        String clsURI = null; 
     260                        String datURI = null; 
    249261                        if (pro != null) { 
    250262                                int indPropCat = 4; 
     
    257269                                Resource ccls = sol.getResource("c"); 
    258270                                Resource dcls = sol.getResource("d"); 
     271                                Resource dat = sol.getResource("dat"); 
    259272                                Direction direction = null; 
    260273                                if(ccls != null && dcls == null ){ 
     
    266279                                                direction = Direction.reverse; 
    267280                                                clsURI = dcls.getURI(); 
     281                                        }else{ 
     282                                                if( ccls == null && dat != null && dcls == null ){ 
     283                                                        clsURI = null; 
     284                                                        direction = Direction.forward; 
     285                                                        datURI = dat.getURI(); 
     286                                                } 
    268287                                        } 
    269288                                } 
     
    309328                                } 
    310329                                 
    311                                 ClassLink cl = new ClassLink(proURI, clsURI, direction, 
     330                                ClassLink cl = new ClassLink(proURI, clsURI, datURI, direction, 
    312331                                                numTriples, numInsDom, numInsRan,  numLnkInsStart, numLnkInsEnd, isStartClsLim, isEndClsLim); 
    313332                                solCLs.add(cl); 
  • BH13SPARQLBuilder/src/org/biohackathon/SPARQLBuilder/OWL/ClassLink.java

    r94 r112  
    1414        private String propertyURI = null; 
    1515        private String linkedClassURI = null; 
     16        private String linkedLiteralDatatypeURI = null; 
    1617        private Direction direction = null; 
    1718        private int numOfLinks = 0; 
     
    3435         * @since 28.01.2014 
    3536         */ 
    36         public ClassLink(String propertyURI, String linkedClassURI, Direction direction,  
     37        public ClassLink(String propertyURI, String linkedClassURI, String linkedLiteralDatatypeURI, Direction direction,  
    3738                                int numLinks, int numOfOriginInstances, int numOfLinkedInstances, 
    3839                                int numOfOriginClassInstances, int numofLinkedClassInstances, 
     
    4041                this.propertyURI = propertyURI; 
    4142                this.linkedClassURI = linkedClassURI; 
     43                this.linkedLiteralDatatypeURI = linkedLiteralDatatypeURI; 
    4244                this.direction = direction; 
    4345                this.numOfLinks = numLinks; 
     
    5961                        obj.put("linkedClassURI", linkedClassURI); 
    6062                } 
     63                if( linkedLiteralDatatypeURI != null ){ 
     64                        obj.put("linkedLiteralDatatypeURI", linkedLiteralDatatypeURI); 
     65                } 
    6166                obj.put("numOfLinks", numOfLinks); 
    6267                obj.put("numOfLinkedInstances", numOfLinkedInstances); 
     
    8186                else{ 
    8287                        json_str+="\"linkedClassURI\":"+"\"linkedClassURI\"";                    
     88                } 
     89                if( linkedLiteralDatatypeURI != null ){ 
     90                        json_str+="\"linkedLiteralDatatypeURI\":"+"\""+linkedLiteralDatatypeURI+"\""; 
     91                } 
     92                else{ 
     93                        json_str+="\"linkedLiteralDatatypeURI\":"+"\"linkedLiteralDatatypeURI\"";                        
    8394                } 
    8495                 
     
    214225                this.numOfLinkedClassInstances = numOfLinkedClassInstances; 
    215226        } 
     227 
     228 
     229        public final String getLinkedLiteralDatatypeURI() { 
     230                return linkedLiteralDatatypeURI; 
     231        } 
     232 
     233 
     234        public final void setLinkedLiteralDatatypeURI(String linkedLiteralDatatypeURI) { 
     235                this.linkedLiteralDatatypeURI = linkedLiteralDatatypeURI; 
     236        } 
     237 
     238 
     239        public final void setDomainClassLimitedQ(boolean domainClassLimitedQ) { 
     240                this.domainClassLimitedQ = domainClassLimitedQ; 
     241        } 
     242 
     243 
     244        public final void setRangeClassLimitedQ(boolean rangeClassLimitedQ) { 
     245                this.rangeClassLimitedQ = rangeClassLimitedQ; 
     246        } 
    216247                 
    217248