Skip to content
Snippets Groups Projects
FeatureCvTermDbXRef.xml 2.77 KiB
Newer Older
  • Learn to ignore specific revisions
  • tjc's avatar
    tjc committed
    <!DOCTYPE sqlMap 
        PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" 
        "http://ibatis.apache.org/dtd/sql-map-2.dtd"> 
     
    
    <sqlMap namespace="FeatureCvTermDbXRef"> 
    
         <typeAlias alias="FeatureCvTermDbXRef"
            type="org.gmod.schema.sequence.FeatureCvTermDbXRef"/>
            
    
    tjc's avatar
    tjc committed
         <resultMap id="map-featurecvtermdbxref" class="FeatureCvTermDbXRef"
    
    tjc's avatar
    tjc committed
                    groupBy="featureCvTermId">
            <result property="featureCvTerm.featureCvTermId"   column="feature_cvterm_id" />
            <result property="dbXRef.accession"   column="accession"/>
            <result property="dbXRef.version"     column="version"/>
            <result property="dbXRef.description" column="description"/>
            <result property="dbXRef.db.name" column="name"/>
        </resultMap>
       
    
    tjc's avatar
    tjc committed
        <select id="getFeatureCvTermDbXRefByFeature" parameterClass="Feature"
    
    tjc's avatar
    tjc committed
                 resultMap="map-featurecvtermdbxref">
    
    tjc's avatar
    tjc committed
           SELECT fcd.feature_cvterm_id, dbx.*, db.name 
    
    tjc's avatar
    tjc committed
           FROM feature_cvterm_dbxref fcd 
           LEFT JOIN dbxref dbx ON dbx.dbxref_id=fcd.dbxref_id 
           LEFT JOIN db ON db.db_id=dbx.db_id
           <dynamic>
              <isNotNull property="uniqueName">
                LEFT JOIN feature_cvterm fc ON fcd.feature_cvterm_id=fc.feature_cvterm_id
                WHERE
                feature_id=(SELECT feature_id FROM feature WHERE uniquename=#uniqueName#)
              </isNotNull>
           </dynamic>
        </select>
    
    	<select id="getFeatureCvTermDbXRefBySrcFeature" parameterClass="org.gmod.schema.sequence.Feature"
    
    tjc's avatar
    tjc committed
                 resultMap="map-featurecvtermdbxref">
    
           SELECT fcd.feature_cvterm_id, dbx.*, db.name 
           FROM feature_cvterm_dbxref fcd 
           LEFT JOIN dbxref dbx ON dbx.dbxref_id=fcd.dbxref_id 
           LEFT JOIN db ON db.db_id=dbx.db_id
    	   LEFT JOIN feature_cvterm fc ON fcd.feature_cvterm_id=fc.feature_cvterm_id
    
    	   WHERE feature_id IN 
           (SELECT feature_id FROM featureloc fl WHERE srcfeature_id=$featureId$
    	    <isGreaterThan property="featureLoc.fmin" compareValue="0" prepend="AND"> 
               <![CDATA[ fl.fmin > $featureLoc.fmin$ AND fl.fmax < $featureLoc.fmax$ ]]>
            </isGreaterThan>)
    
        </select>
    
    tjc's avatar
    tjc committed
        <select id="getFeatureCvTermDbXRefByFeatureCvTerm" parameterClass="java.lang.Integer"
    
    tjc's avatar
    tjc committed
                 resultMap="map-featurecvtermdbxref">
    
    tjc's avatar
    tjc committed
           SELECT fcd.feature_cvterm_id, dbx.*, db.name 
           FROM feature_cvterm_dbxref fcd 
           LEFT JOIN dbxref dbx ON dbx.dbxref_id=fcd.dbxref_id 
           LEFT JOIN db ON db.db_id=dbx.db_id
           WHERE feature_cvterm_id=$feature_cvterm_id$
        </select>
    
    tjc's avatar
    tjc committed
        
        <!-- INSERT -->
        <insert id="insertFeatureCvTermDbXRef" 
                parameterClass="FeatureCvTermDbXRef">
          INSERT INTO feature_cvterm_dbxref
            ( feature_cvterm_id, dbxref_id )
          VALUES
            ( $featureCvTerm.featureCvTermId$, $dbXRef.dbXRefId$  )
        </insert>
        
    
    tjc's avatar
    tjc committed
    </sqlMap>