diff --git a/artemis_sqlmap/Analysis.xml b/artemis_sqlmap/Analysis.xml
new file mode 100644
index 0000000000000000000000000000000000000000..666f393d2806c150dfa9fd519c93294d9b29465e
--- /dev/null
+++ b/artemis_sqlmap/Analysis.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8" ?> 
+ 
+<!DOCTYPE sqlMap 
+    PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" 
+    "http://ibatis.apache.org/dtd/sql-map-2.dtd"> 
+ 
+
+<sqlMap namespace="Analysis"> 
+
+  <typeAlias alias="Analysis"
+        type="org.gmod.schema.analysis.Analysis"/>
+   
+    <select id="selectAnalysis" resultClass="Analysis">
+       SELECT name, description, program, programversion, algorithm, 
+              sourcename, sourceversion,sourceuri, timeexecuted
+       FROM analysis
+       WHERE analysis_id=#analysis_id#
+    </select>
+
+</sqlMap>
\ No newline at end of file
diff --git a/artemis_sqlmap/AnalysisFeature.xml b/artemis_sqlmap/AnalysisFeature.xml
new file mode 100644
index 0000000000000000000000000000000000000000..6853ea3b062d93748fd923f2d4f4961f923aed72
--- /dev/null
+++ b/artemis_sqlmap/AnalysisFeature.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8" ?> 
+ 
+<!DOCTYPE sqlMap 
+    PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" 
+    "http://ibatis.apache.org/dtd/sql-map-2.dtd"> 
+ 
+
+<sqlMap namespace="AnalysisFeature"> 
+
+  <typeAlias alias="AnalysisFeature"
+        type="org.gmod.schema.analysis.AnalysisFeature"/>
+   
+    <resultMap id="select-analysisfeature" 
+                class="AnalysisFeature">
+        <result property="rawScore" column="rawscore" />
+        <result property="normScore" column="normscore" />
+        <result property="significance" column="significance" />
+        <result property="analysis" column="analysis_id" select="selectAnalysis" />
+     </resultMap>  
+        
+    <select id="selectAnalysisFeatures" resultMap="select-analysisfeature">
+       SELECT rawscore, normscore, significance, analysis_id
+       FROM analysisfeature
+       WHERE feature_id=#feature_id#
+    </select>
+     
+     
+    <!--  INSERT  -->
+    <insert id="insertAnalysisFeature" 
+            parameterClass="AnalysisFeature">
+      INSERT INTO feature 
+        ( feature_id, analysis_id, rawscore, normscore, significance, identity )
+      VALUES
+        ( (SELECT feature_id FROM feature WHERE uniquename=#feature.uniqueName#),
+          $analysis.analysisId$,
+          $rawscore$,
+          $normscore$,
+          $significance$,
+          $identity$ )
+    </insert>
+
+</sqlMap>
\ No newline at end of file
diff --git a/artemis_sqlmap/Feature.xml b/artemis_sqlmap/Feature.xml
index f709c40a908806c1a52a0051fe617f4eba2286a2..60ea64a49591a69e0734cc31af177b01c874cc4b 100644
--- a/artemis_sqlmap/Feature.xml
+++ b/artemis_sqlmap/Feature.xml
@@ -68,6 +68,22 @@
                                     select="getOrganism" />
      </resultMap>
      
+     
+     <resultMap id="select-similaritymatch" 
+               class="Feature" groupBy="featureId">       
+        <result property="timeLastModified" column="timelastmodified"/>
+   	    <result property="featureId" column="id"/>
+        <result property="uniqueName" column="uniquename"/>
+        <result property="name" column="name"/>
+        <result property="seqLen" column="length" nullValue="-999" />
+        <result property="residues" column="residues" />
+        <result property="cvTerm" column="type_id" select="selectCvterm" />
+        <result property="featureLocsForFeatureId" resultMap="FeatureLoc.select-location" />
+        <result property="featureProps" column="{feature_id=id}" 
+                                           select="selectFeatureProp" />
+        <result property="analysisFeatures" column="{feature_id=id}" 
+                                           select="selectAnalysisFeatures" />                                                
+     </resultMap>
     
      <resultMap id="select-feature-with-residues-result" 
                 class="Feature">
@@ -158,6 +174,40 @@
          f.feature_id > 0 
     </select>
 
+    <select id="getLazyFeatureById" resultMap ="select-feature-lazy" >
+	 SELECT
+	    timelastmodified,
+	 	f.feature_id AS id,
+	 	uniquename,
+	 	organism_id AS organismId,
+		f.name,
+	 	f.type_id,
+		seqlen AS length,
+		residues
+	 FROM feature f
+	 WHERE f.feature_id=$featureId$
+    </select>
+    
+     <select id="getLazySimilarityMatches" parameterClass="java.lang.Integer" 
+                             resultMap="select-similaritymatch">
+        SELECT 
+         timelastmodified, 
+         f.feature_id AS id, 
+         f.uniquename, 
+         f.type_id,
+         f.name,
+	 	 f.seqlen AS length,
+	 	 f.residues,
+         srcfeature_id, fmin, fmax, strand, phase, residue_info, locgroup, rank
+       FROM feature f 
+       LEFT JOIN featureloc fl ON f.feature_id=fl.feature_id 
+       WHERE  f.feature_id IN 
+         (   SELECT feature_id FROM featureloc WHERE srcfeature_id IN 
+           ( SELECT feature_id  FROM featureloc WHERE srcfeature_id=$value$) ) 
+       ORDER BY f.feature_id
+     </select>
+
+
     <select id="getSchema" resultClass="java.lang.String">
        SELECT schema_name FROM information_schema.schemata WHERE schema_name=schema_owner
          ORDER BY schema_name
diff --git a/artemis_sqlmap/FeatureLoc.xml b/artemis_sqlmap/FeatureLoc.xml
index ef40585daa5bc136c715b68014ab8dc267b3dceb..646464ac442b609101bd6d1341d01c86018209a0 100644
--- a/artemis_sqlmap/FeatureLoc.xml
+++ b/artemis_sqlmap/FeatureLoc.xml
@@ -14,7 +14,9 @@
         
      <resultMap id="select-location"
                 class="FeatureLoc">
-        <result property="featureBySrcFeatureId.featureId" column="srcfeature_id" nullValue="-999" />
+        <result property="srcFeatureId" column="srcfeature_id" nullValue="-999" />
+        <result property="featureBySrcFeatureId" column="{featureId=srcfeature_id}" 
+                                                 select="getLazyFeatureById" />
         <result property="fmin"   column="fmin"   nullValue="-999" />
         <result property="fmax"   column="fmax"   nullValue="-999" />
         <result property="strand" column="strand" nullValue="0" />
diff --git a/artemis_sqlmap/chado_iBatis_config.xml b/artemis_sqlmap/chado_iBatis_config.xml
index 83f1502df81545ec2092f904191c8e299f0e2913..6ea7f5097cfc8e93142818dfa55f980c5df6763e 100644
--- a/artemis_sqlmap/chado_iBatis_config.xml
+++ b/artemis_sqlmap/chado_iBatis_config.xml
@@ -63,6 +63,8 @@
   <sqlMap resource="artemis_sqlmap/Db.xml" />
   <sqlMap resource="artemis_sqlmap/DbXRef.xml" />
   <sqlMap resource="artemis_sqlmap/Synonym.xml" />
+  <sqlMap resource="artemis_sqlmap/AnalysisFeature.xml" />
+  <sqlMap resource="artemis_sqlmap/Analysis.xml" />
   
 </sqlMapConfig>