diff --git a/src/Adapter/SQLite.php b/src/Adapter/SQLite.php
index 30bb402..29d16b7 100644
--- a/src/Adapter/SQLite.php
+++ b/src/Adapter/SQLite.php
@@ -13,7 +13,7 @@ class SQLite implements AdapterInterface, MigrateInterface, SqlAdapterInterface
     use SqlAdapterTrait;
 
     const ALLOWED_ATTRIBUTES = [
-        'default', 'primary_key', 'auto_increment'
+        'default', 'primary_key', 'auto_increment', 'collate nocase', 'collate binary', 'collate rtrim',
     ];
 
     const DSN_PREFIX = "sqlite";
diff --git a/src/Repository.php b/src/Repository.php
index dbebcb1..aa0bb9f 100644
--- a/src/Repository.php
+++ b/src/Repository.php
@@ -1055,9 +1055,10 @@ class Repository implements RepositoryInterface
 
     public function instanciateEntity(? string $entityClass = null) : object
     {
-        $entityClass ??= $this->entityClass;
+        $entity = ( new \ReflectionClass($entityClass ?? $this->entityClass) )->newInstanceWithoutConstructor();
+        $entity->initializeEntity();
 
-        return new $entityClass;
+        return $entity;
     }
 
     public function hasFilters() : bool
diff --git a/src/Repository/MysqlRepository.php b/src/Repository/MysqlRepository.php
index 970d457..0d5f31f 100644
--- a/src/Repository/MysqlRepository.php
+++ b/src/Repository/MysqlRepository.php
@@ -2,9 +2,10 @@
 
 namespace Ulmus\Repository;
 
-use Ulmus\{Common\EntityResolver, ConnectionAdapter, MysqlQueryBuilder, Repository, Query, Ulmus};
+use Ulmus\{  Repository, Query, Ulmus};
 
 class MysqlRepository extends Repository {
+    use JsonConditionTrait;
 
     public function pragma(/*object|Stringable*/ $pragma, $argument = null, bool $callable = false) : self
     {
diff --git a/src/Repository/SqliteRepository.php b/src/Repository/SqliteRepository.php
index 9e08f89..cfca5cc 100644
--- a/src/Repository/SqliteRepository.php
+++ b/src/Repository/SqliteRepository.php
@@ -2,9 +2,10 @@
 
 namespace Ulmus\Repository;
 
-use Ulmus\{ConnectionAdapter, MysqlQueryBuilder, Repository, Query, Ulmus, Entity};
+use Ulmus\{Repository, Entity};
 
 class SqliteRepository extends Repository {
+    use JsonConditionTrait;
 
     public function pragma(\Stringable|string $pragma, $argument = null, bool $callable = false) : self
     {
diff --git a/src/SearchRequest/SearchRequestFromRequestTrait.php b/src/SearchRequest/SearchRequestFromRequestTrait.php
index d55a44e..a4f8f5f 100644
--- a/src/SearchRequest/SearchRequestFromRequestTrait.php
+++ b/src/SearchRequest/SearchRequestFromRequestTrait.php
@@ -90,7 +90,8 @@ trait SearchRequestFromRequestTrait
                                             sprintf("Given value '%s' do not exists within enum '%s'. Try one of those values instead : %s", $value, $enum, $cases)
                                         );
                                     }
-                                } elseif ($type->builtIn) {
+                                }
+                                elseif ($type->builtIn || $value instanceof \Stringable ) {
                                     $this->$propertyName = $value;
                                 }
                             }