差分発生行の前後
無視リスト:
更新日時:
2014/07/07 00:27:23 (12 年 前)
更新者:
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