diff --git a/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/ExtendedGermplasm.java b/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/ExtendedGermplasm.java
index ca05f14c537c5d99efbd7e5e9120a17f2cca18b2..254e0c333d87a67d87be9286a7dac189411321a4 100644
--- a/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/ExtendedGermplasm.java
+++ b/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/ExtendedGermplasm.java
@@ -20,6 +20,9 @@ public interface ExtendedGermplasm extends BrapiGermplasm, GnpISInternal {
     @JsonView(JSONView.GnpISFields.class)
     List<String> getTaxonCommonNames();
 
+    @JsonView(JSONView.GnpISFields.class)
+    String getTaxonComment();
+
     @JsonView(JSONView.GnpISFields.class)
     String getGeneticNature();
 
diff --git a/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/GermplasmVO.java b/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/GermplasmVO.java
index 2621dd58fbc6085afc7378a61a3441079444f097..10c8779f8b44f5991f645cbb79da8d36d8750a8d 100644
--- a/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/GermplasmVO.java
+++ b/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/GermplasmVO.java
@@ -55,6 +55,7 @@ public class GermplasmVO
 
     private List<String> taxonSynonyms;
     private List<String> taxonCommonNames;
+    private String taxonComment;
     private String geneticNature;
     private String comment;
     private PhotoVO photo;
@@ -354,6 +355,15 @@ public class GermplasmVO
         this.taxonCommonNames = taxonCommonNames;
     }
 
+    @Override
+    public String getTaxonComment() {
+        return taxonComment;
+    }
+
+    public void setTaxonComment(String taxonComment) {
+        this.taxonComment = taxonComment;
+    }
+
     @Override
     public String getGeneticNature() {
         return geneticNature;
diff --git a/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/Photo.java b/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/Photo.java
index 957c76cff52949204d61ecf29770bcd2e829961e..4f5c6327b9929c7e48da8fa9bfab7e6b1de3d8a7 100644
--- a/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/Photo.java
+++ b/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/Photo.java
@@ -8,10 +8,10 @@ import fr.inra.urgi.gpds.domain.JSONView;
  */
 public interface Photo {
     @JsonView(JSONView.GnpISFields.class)
-    String getFileName();
+    String getFile();
 
     @JsonView(JSONView.GnpISFields.class)
-    String getThumbnailFileName();
+    String getThumbnailFile();
 
     @JsonView(JSONView.GnpISFields.class)
     String getPhotoName();
diff --git a/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/PhotoVO.java b/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/PhotoVO.java
index 2ee3cea1a703e3e703da3dfb5ee1dcccaea5572d..748db321ec9d8f291070677db2d8ac7ab8e56cfd 100644
--- a/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/PhotoVO.java
+++ b/backend/src/main/java/fr/inra/urgi/gpds/domain/data/germplasm/PhotoVO.java
@@ -6,28 +6,28 @@ public class PhotoVO implements Serializable, Photo {
 
     private static final long serialVersionUID = -4993890419772211643L;
 
-    private String fileName;
-    private String thumbnailFileName;
+    private String file;
+    private String thumbnailFile;
     private String photoName;
     private String description;
     private String copyright;
 
     @Override
-    public String getFileName() {
-        return fileName;
+    public String getFile() {
+        return file;
     }
 
-    public void setFileName(String fileName) {
-        this.fileName = fileName;
+    public void setFile(String file) {
+        this.file = file;
     }
 
     @Override
-    public String getThumbnailFileName() {
-        return thumbnailFileName;
+    public String getThumbnailFile() {
+        return thumbnailFile;
     }
 
-    public void setThumbnailFileName(String thumbnailFileName) {
-        this.thumbnailFileName = thumbnailFileName;
+    public void setThumbnailFile(String thumbnailFile) {
+        this.thumbnailFile = thumbnailFile;
     }
 
     @Override
diff --git a/frontend/package-lock.json b/frontend/package-lock.json
index 362fd3605dad3122e12b3c7a254afdf3b5fa9efe..50513b5580d696ec3a7e99e670549ab90fd9b0b2 100644
--- a/frontend/package-lock.json
+++ b/frontend/package-lock.json
@@ -103,7 +103,7 @@
       "dependencies": {
         "source-map": {
           "version": "0.5.6",
-          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz",
+          "resolved": "http://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz",
           "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=",
           "dev": true
         }
@@ -353,7 +353,7 @@
         },
         "load-json-file": {
           "version": "2.0.0",
-          "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
+          "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz",
           "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=",
           "dev": true,
           "requires": {
@@ -400,7 +400,7 @@
         },
         "pify": {
           "version": "2.3.0",
-          "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+          "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
           "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
           "dev": true
         },
@@ -859,13 +859,13 @@
     },
     "@types/node": {
       "version": "8.9.5",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-8.9.5.tgz",
+      "resolved": "http://registry.npmjs.org/@types/node/-/node-8.9.5.tgz",
       "integrity": "sha512-jRHfWsvyMtXdbhnz5CVHxaBgnV6duZnPlQuRSo/dm/GnmikNcmZhxIES4E9OZjUmQ8C+HCl4KJux+cXN/ErGDQ==",
       "dev": true
     },
     "@types/q": {
       "version": "0.0.32",
-      "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz",
+      "resolved": "http://registry.npmjs.org/@types/q/-/q-0.0.32.tgz",
       "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=",
       "dev": true
     },
@@ -1268,7 +1268,6 @@
       "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz",
       "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==",
       "dev": true,
-      "optional": true,
       "requires": {
         "delegates": "^1.0.0",
         "readable-stream": "^2.0.6"
@@ -1391,7 +1390,7 @@
         },
         "util": {
           "version": "0.10.3",
-          "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
+          "resolved": "http://registry.npmjs.org/util/-/util-0.10.3.tgz",
           "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
           "dev": true,
           "requires": {
@@ -1497,7 +1496,7 @@
         },
         "chalk": {
           "version": "1.1.3",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+          "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
           "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
           "dev": true,
           "requires": {
@@ -1849,7 +1848,7 @@
     },
     "browserify-aes": {
       "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
+      "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
       "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
       "dev": true,
       "requires": {
@@ -1886,7 +1885,7 @@
     },
     "browserify-rsa": {
       "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
+      "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz",
       "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=",
       "dev": true,
       "requires": {
@@ -1940,7 +1939,7 @@
     },
     "buffer": {
       "version": "4.9.1",
-      "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
+      "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz",
       "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=",
       "dev": true,
       "requires": {
@@ -2015,7 +2014,7 @@
     },
     "cacache": {
       "version": "10.0.4",
-      "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz",
+      "resolved": "http://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz",
       "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==",
       "dev": true,
       "requires": {
@@ -2066,7 +2065,7 @@
     },
     "camelcase-keys": {
       "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
+      "resolved": "http://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
       "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
       "dev": true,
       "optional": true,
@@ -2324,7 +2323,7 @@
     },
     "colors": {
       "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
+      "resolved": "http://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
       "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=",
       "dev": true
     },
@@ -2469,8 +2468,7 @@
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
       "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
-      "dev": true,
-      "optional": true
+      "dev": true
     },
     "constants-browserify": {
       "version": "1.0.0",
@@ -2594,7 +2592,7 @@
     },
     "create-hash": {
       "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
+      "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
       "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
       "dev": true,
       "requires": {
@@ -2607,7 +2605,7 @@
     },
     "create-hmac": {
       "version": "1.1.7",
-      "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
+      "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
       "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
       "dev": true,
       "requires": {
@@ -2835,7 +2833,7 @@
       "dependencies": {
         "globby": {
           "version": "6.1.0",
-          "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
+          "resolved": "http://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
           "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
           "dev": true,
           "requires": {
@@ -2848,7 +2846,7 @@
           "dependencies": {
             "pify": {
               "version": "2.3.0",
-              "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+              "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
               "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
               "dev": true
             }
@@ -2866,8 +2864,7 @@
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
       "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
-      "dev": true,
-      "optional": true
+      "dev": true
     },
     "depd": {
       "version": "1.1.2",
@@ -2926,7 +2923,7 @@
     },
     "diffie-hellman": {
       "version": "5.0.3",
-      "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
+      "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
       "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
       "dev": true,
       "requires": {
@@ -2971,7 +2968,7 @@
     },
     "doctrine": {
       "version": "0.7.2",
-      "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-0.7.2.tgz",
+      "resolved": "http://registry.npmjs.org/doctrine/-/doctrine-0.7.2.tgz",
       "integrity": "sha1-fLhgNZujvpDgQLJrcpzkv6ZUxSM=",
       "dev": true,
       "requires": {
@@ -3117,7 +3114,7 @@
     },
     "engine.io-client": {
       "version": "3.2.1",
-      "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
+      "resolved": "http://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz",
       "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==",
       "dev": true,
       "requires": {
@@ -3207,7 +3204,7 @@
     },
     "es6-promisify": {
       "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
+      "resolved": "http://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
       "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=",
       "dev": true,
       "requires": {
@@ -3624,7 +3621,7 @@
     },
     "finalhandler": {
       "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
+      "resolved": "http://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz",
       "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==",
       "dev": true,
       "requires": {
@@ -3769,7 +3766,7 @@
     },
     "fs-access": {
       "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz",
+      "resolved": "http://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz",
       "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=",
       "dev": true,
       "requires": {
@@ -3834,8 +3831,7 @@
         "ansi-regex": {
           "version": "2.1.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "aproba": {
           "version": "1.2.0",
@@ -3856,14 +3852,12 @@
         "balanced-match": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "brace-expansion": {
           "version": "1.1.11",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "balanced-match": "^1.0.0",
             "concat-map": "0.0.1"
@@ -3878,20 +3872,17 @@
         "code-point-at": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "concat-map": {
           "version": "0.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "console-control-strings": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "core-util-is": {
           "version": "1.0.2",
@@ -4008,8 +3999,7 @@
         "inherits": {
           "version": "2.0.3",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "ini": {
           "version": "1.3.5",
@@ -4021,7 +4011,6 @@
           "version": "1.0.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "number-is-nan": "^1.0.0"
           }
@@ -4036,7 +4025,6 @@
           "version": "3.0.4",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "brace-expansion": "^1.1.7"
           }
@@ -4044,14 +4032,12 @@
         "minimist": {
           "version": "0.0.8",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "minipass": {
           "version": "2.3.5",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "safe-buffer": "^5.1.2",
             "yallist": "^3.0.0"
@@ -4070,7 +4056,6 @@
           "version": "0.5.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "minimist": "0.0.8"
           }
@@ -4151,8 +4136,7 @@
         "number-is-nan": {
           "version": "1.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "object-assign": {
           "version": "4.1.1",
@@ -4164,7 +4148,6 @@
           "version": "1.4.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "wrappy": "1"
           }
@@ -4250,8 +4233,7 @@
         "safe-buffer": {
           "version": "5.1.2",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "safer-buffer": {
           "version": "2.1.2",
@@ -4287,7 +4269,6 @@
           "version": "1.0.2",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "code-point-at": "^1.0.0",
             "is-fullwidth-code-point": "^1.0.0",
@@ -4307,7 +4288,6 @@
           "version": "3.0.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "ansi-regex": "^2.0.0"
           }
@@ -4351,14 +4331,12 @@
         "wrappy": {
           "version": "1.0.2",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "yallist": {
           "version": "3.0.3",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         }
       }
     },
@@ -4367,7 +4345,6 @@
       "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
       "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
       "dev": true,
-      "optional": true,
       "requires": {
         "graceful-fs": "^4.1.2",
         "inherits": "~2.0.0",
@@ -4380,7 +4357,6 @@
       "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
       "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
       "dev": true,
-      "optional": true,
       "requires": {
         "aproba": "^1.0.3",
         "console-control-strings": "^1.0.0",
@@ -4418,12 +4394,11 @@
       "version": "4.0.1",
       "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
       "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
-      "dev": true,
-      "optional": true
+      "dev": true
     },
     "get-stream": {
       "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
+      "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
       "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
       "dev": true
     },
@@ -4599,8 +4574,7 @@
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
       "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
-      "dev": true,
-      "optional": true
+      "dev": true
     },
     "has-value": {
       "version": "1.0.0",
@@ -4703,7 +4677,7 @@
     },
     "http-errors": {
       "version": "1.6.3",
-      "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
+      "resolved": "http://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
       "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
       "dev": true,
       "requires": {
@@ -4753,7 +4727,7 @@
     },
     "http-proxy-middleware": {
       "version": "0.18.0",
-      "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz",
+      "resolved": "http://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz",
       "integrity": "sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==",
       "dev": true,
       "requires": {
@@ -5320,8 +5294,7 @@
       "version": "0.2.1",
       "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
       "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
-      "dev": true,
-      "optional": true
+      "dev": true
     },
     "is-windows": {
       "version": "1.0.2",
@@ -5438,7 +5411,7 @@
         },
         "fast-deep-equal": {
           "version": "1.1.0",
-          "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
+          "resolved": "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
           "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=",
           "dev": true
         },
@@ -5635,7 +5608,7 @@
     },
     "jsesc": {
       "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
+      "resolved": "http://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
       "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=",
       "dev": true
     },
@@ -5728,13 +5701,13 @@
       "dependencies": {
         "core-js": {
           "version": "2.3.0",
-          "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz",
+          "resolved": "http://registry.npmjs.org/core-js/-/core-js-2.3.0.tgz",
           "integrity": "sha1-+rg/uwstjchfpjbEudNMdUIMbWU=",
           "dev": true
         },
         "es6-promise": {
           "version": "3.0.2",
-          "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.0.2.tgz",
+          "resolved": "http://registry.npmjs.org/es6-promise/-/es6-promise-3.0.2.tgz",
           "integrity": "sha1-AQ1YWEI6XxGJeWZfRkhqlcbuK7Y=",
           "dev": true
         },
@@ -5746,7 +5719,7 @@
         },
         "readable-stream": {
           "version": "2.0.6",
-          "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
+          "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz",
           "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=",
           "dev": true,
           "requires": {
@@ -5961,10 +5934,9 @@
     },
     "load-json-file": {
       "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
+      "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
       "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
       "dev": true,
-      "optional": true,
       "requires": {
         "graceful-fs": "^4.1.2",
         "parse-json": "^2.2.0",
@@ -5975,10 +5947,9 @@
       "dependencies": {
         "pify": {
           "version": "2.3.0",
-          "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+          "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
           "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
-          "dev": true,
-          "optional": true
+          "dev": true
         }
       }
     },
@@ -6253,8 +6224,7 @@
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
       "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
-      "dev": true,
-      "optional": true
+      "dev": true
     },
     "map-visit": {
       "version": "1.0.0",
@@ -6278,7 +6248,7 @@
     },
     "media-typer": {
       "version": "0.3.0",
-      "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
+      "resolved": "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
       "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
       "dev": true
     },
@@ -6305,7 +6275,7 @@
     },
     "meow": {
       "version": "3.7.0",
-      "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
+      "resolved": "http://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
       "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
       "dev": true,
       "optional": true,
@@ -6517,7 +6487,7 @@
     },
     "mkdirp": {
       "version": "0.5.1",
-      "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
+      "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
       "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
       "dev": true,
       "requires": {
@@ -6685,7 +6655,7 @@
       "dependencies": {
         "semver": {
           "version": "5.3.0",
-          "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
+          "resolved": "http://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
           "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
           "dev": true,
           "optional": true
@@ -6777,7 +6747,7 @@
         },
         "chalk": {
           "version": "1.1.3",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+          "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
           "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
           "dev": true,
           "optional": true,
@@ -6902,7 +6872,6 @@
       "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
       "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
       "dev": true,
-      "optional": true,
       "requires": {
         "are-we-there-yet": "~1.1.2",
         "console-control-strings": "~1.1.0",
@@ -7078,13 +7047,13 @@
     },
     "os-homedir": {
       "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
+      "resolved": "http://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
       "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
       "dev": true
     },
     "os-locale": {
       "version": "1.4.0",
-      "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
+      "resolved": "http://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
       "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=",
       "dev": true,
       "optional": true,
@@ -7094,7 +7063,7 @@
     },
     "os-tmpdir": {
       "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
+      "resolved": "http://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
       "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
       "dev": true
     },
@@ -7387,7 +7356,7 @@
     },
     "path-is-absolute": {
       "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+      "resolved": "http://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
       "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
       "dev": true
     },
@@ -7647,7 +7616,7 @@
         },
         "chalk": {
           "version": "1.1.3",
-          "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+          "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
           "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
           "dev": true,
           "requires": {
@@ -7675,7 +7644,7 @@
         },
         "globby": {
           "version": "5.0.0",
-          "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
+          "resolved": "http://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
           "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
           "dev": true,
           "requires": {
@@ -7689,7 +7658,7 @@
         },
         "pify": {
           "version": "2.3.0",
-          "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+          "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
           "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
           "dev": true
         },
@@ -7898,7 +7867,7 @@
       "dependencies": {
         "pify": {
           "version": "2.3.0",
-          "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+          "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
           "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
           "dev": true
         }
@@ -7909,7 +7878,6 @@
       "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
       "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
       "dev": true,
-      "optional": true,
       "requires": {
         "load-json-file": "^1.0.0",
         "normalize-package-data": "^2.3.2",
@@ -7921,7 +7889,6 @@
           "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
           "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
           "dev": true,
-          "optional": true,
           "requires": {
             "graceful-fs": "^4.1.2",
             "pify": "^2.0.0",
@@ -7930,10 +7897,9 @@
         },
         "pify": {
           "version": "2.3.0",
-          "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+          "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
           "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
-          "dev": true,
-          "optional": true
+          "dev": true
         }
       }
     },
@@ -7942,7 +7908,6 @@
       "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
       "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
       "dev": true,
-      "optional": true,
       "requires": {
         "find-up": "^1.0.0",
         "read-pkg": "^1.0.0"
@@ -7953,7 +7918,6 @@
           "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
           "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
           "dev": true,
-          "optional": true,
           "requires": {
             "path-exists": "^2.0.0",
             "pinkie-promise": "^2.0.0"
@@ -7964,7 +7928,6 @@
           "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
           "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
           "dev": true,
-          "optional": true,
           "requires": {
             "pinkie-promise": "^2.0.0"
           }
@@ -7973,7 +7936,7 @@
     },
     "readable-stream": {
       "version": "2.3.6",
-      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
+      "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
       "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
       "dev": true,
       "requires": {
@@ -8058,7 +8021,7 @@
     },
     "regjsgen": {
       "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
+      "resolved": "http://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
       "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=",
       "dev": true
     },
@@ -8073,7 +8036,7 @@
       "dependencies": {
         "jsesc": {
           "version": "0.5.0",
-          "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
+          "resolved": "http://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
           "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
           "dev": true
         }
@@ -8269,7 +8232,7 @@
     },
     "safe-regex": {
       "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
+      "resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
       "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
       "dev": true,
       "requires": {
@@ -8320,7 +8283,7 @@
     },
     "sax": {
       "version": "0.5.8",
-      "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz",
+      "resolved": "http://registry.npmjs.org/sax/-/sax-0.5.8.tgz",
       "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=",
       "dev": true
     },
@@ -8348,7 +8311,7 @@
       "dependencies": {
         "source-map": {
           "version": "0.4.4",
-          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+          "resolved": "http://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
           "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
           "dev": true,
           "optional": true,
@@ -8525,7 +8488,7 @@
     },
     "sha.js": {
       "version": "2.4.11",
-      "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
+      "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
       "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
       "dev": true,
       "requires": {
@@ -8775,7 +8738,7 @@
     },
     "socket.io-parser": {
       "version": "3.2.0",
-      "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
+      "resolved": "http://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz",
       "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==",
       "dev": true,
       "requires": {
@@ -9227,7 +9190,7 @@
     },
     "strip-ansi": {
       "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
+      "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
       "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
       "dev": true,
       "requires": {
@@ -9239,14 +9202,13 @@
       "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
       "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
       "dev": true,
-      "optional": true,
       "requires": {
         "is-utf8": "^0.2.0"
       }
     },
     "strip-eof": {
       "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
+      "resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
       "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
       "dev": true
     },
@@ -9300,7 +9262,7 @@
         },
         "source-map": {
           "version": "0.1.43",
-          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz",
+          "resolved": "http://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz",
           "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=",
           "dev": true,
           "requires": {
@@ -9343,7 +9305,7 @@
     },
     "tar": {
       "version": "2.2.1",
-      "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
+      "resolved": "http://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
       "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
       "dev": true,
       "optional": true,
@@ -9535,7 +9497,7 @@
     },
     "through": {
       "version": "2.3.8",
-      "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+      "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz",
       "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
       "dev": true
     },
@@ -10175,7 +10137,7 @@
         },
         "source-map": {
           "version": "0.4.4",
-          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
+          "resolved": "http://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
           "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
           "dev": true,
           "requires": {
@@ -10596,7 +10558,6 @@
       "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
       "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
       "dev": true,
-      "optional": true,
       "requires": {
         "string-width": "^1.0.2 || 2"
       }
@@ -10618,7 +10579,7 @@
     },
     "wrap-ansi": {
       "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
+      "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
       "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=",
       "dev": true,
       "requires": {
@@ -10661,7 +10622,7 @@
         },
         "xmlbuilder": {
           "version": "9.0.7",
-          "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz",
+          "resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz",
           "integrity": "sha1-Ey7mPS7FVlxVfiD0wi35rKaGsQ0=",
           "dev": true
         }
@@ -10669,7 +10630,7 @@
     },
     "xmlbuilder": {
       "version": "8.2.2",
-      "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz",
+      "resolved": "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-8.2.2.tgz",
       "integrity": "sha1-aSSGc0ELS6QuGmE2VR0pIjNap3M=",
       "dev": true
     },
diff --git a/frontend/src/app/brapi.service.spec.ts b/frontend/src/app/brapi.service.spec.ts
index a83f8ef65fad2c060aa12c80739ee6b109e59f07..8dd3d1c7fd9b98039fb8db76f9831370384e3f3f 100644
--- a/frontend/src/app/brapi.service.spec.ts
+++ b/frontend/src/app/brapi.service.spec.ts
@@ -291,6 +291,7 @@ describe('BrapiService', () => {
         genusSpeciesSubtaxa: null,
         taxonSynonyms: ['pomme', 'api'],
         taxonCommonNames: ['pomme', 'api'],
+        taxonComment: null,
         geneticNature: null,
         comment: null,
         photo: null,
diff --git a/frontend/src/app/germplasm-card/germplasm-card.component.html b/frontend/src/app/germplasm-card/germplasm-card.component.html
index 7e3129e8ff3e41d6d0e74c53fb638fda16df5253..45d8adb7825386544951ae4cbd2997dfa7120d7d 100644
--- a/frontend/src/app/germplasm-card/germplasm-card.component.html
+++ b/frontend/src/app/germplasm-card/germplasm-card.component.html
@@ -3,7 +3,7 @@
 <ng-container *ngIf="germplasmGnpis">
   <h3 class="mb-4">
     <img *ngIf="germplasmGnpis.holdingGenbank && germplasmGnpis.holdingGenbank.instituteName"
-         [src]="IMAGES_BRC_URL"
+         [src]="germplasmGnpis.holdingGenbank.logo"
          align="right"/>
     Germplasm: {{ germplasmGnpis.germplasmName }}
   </h3>
@@ -14,153 +14,168 @@
   <div class="row align-items-center">
 
     <!--Templates for gerplasm card-->
-    <ng-template #holdingInstituteTemplate>
 
+    <ng-template #taxonTemplate>
       <gpds-card-row
-        label=""
-        [test]="germplasmGnpis.holdingInstitute && germplasmGnpis.holdingInstitute.logo">
+        label="Genus"
+        [test]="germplasmGnpis.genus">
         <ng-template>
-          <img
-            [src]="IMAGES_INSTITUTION_URL + germplasmGnpis.holdingInstitute.logo"/>
+          <i>{{ germplasmGnpis.genus }}</i>
         </ng-template>
       </gpds-card-row>
 
       <gpds-card-row
-        label="Code"
-        [value]="germplasmGnpis.holdingInstitute.instituteCode">
-      </gpds-card-row>
-
-      <gpds-card-row
-        label="Acronym"
-        [value]="germplasmGnpis.holdingInstitute.acronym">
-      </gpds-card-row>
-
-      <gpds-card-row
-        label="Organisation"
-        [value]="germplasmGnpis.holdingInstitute.organisation">
-      </gpds-card-row>
-
-      <gpds-card-row
-        label="Type"
-        [value]="germplasmGnpis.holdingInstitute.instituteType">
-      </gpds-card-row>
-
-      <gpds-card-row
-        label="Address"
-        [value]="germplasmGnpis.holdingInstitute.address">
+        label="Species"
+        [test]="germplasmGnpis.species">
+        <ng-template>
+          <i>{{ germplasmGnpis.species }}</i>
+          {{ germplasmGnpis.speciesAuthority ? '(' + germplasmGnpis.speciesAuthority + ')' : '' }}
+        </ng-template>
       </gpds-card-row>
 
       <gpds-card-row
-        label="Website"
-        [test]="germplasmGnpis.holdingInstitute.webSite">
+        label="Subtaxa"
+        [test]="germplasmGnpis.subtaxa">
         <ng-template>
-          <a [href]="germplasmGnpis.breeder.institute.webSite" target="_blank">
-            {{ germplasmGnpis.holdingInstitute.webSite }}
-          </a>
+          <i>{{ germplasmGnpis.subtaxa }}</i>
+          {{ germplasmGnpis.subtaxaAuthority ? '(' + germplasmGnpis.subtaxaAuthority + ')' : '' }}
         </ng-template>
       </gpds-card-row>
 
-    </ng-template>
-
-
-    <ng-template #BreederInstituteTemplate>
-
       <gpds-card-row
-        label=""
-        [test]="germplasmGnpis.breeder && germplasmGnpis.breeder.institute && germplasmGnpis.breeder.institute.logo">
+        label="Authority"
+        [test]="germplasmTaxonAuthor">
         <ng-template>
-          <img
-            [src]="IMAGES_INSTITUTION_URL + germplasmGnpis.breeder.institute.logo"/>
+          {{ germplasmTaxonAuthor }}
         </ng-template>
       </gpds-card-row>
 
       <gpds-card-row
-        label="Code"
-        [value]="germplasmGnpis.breeder.institute.instituteCode">
-      </gpds-card-row>
+        label="Taxon ID"
+        [test]="taxonIdsWithURL && taxonIdsWithURL.length > 0">
+        <ng-template>
+          <ng-container *ngFor="let taxonRef of taxonIdsWithURL">
 
-      <gpds-card-row
-        label="Acronym"
-        [value]="germplasmGnpis.breeder.institute.acronym">
-      </gpds-card-row>
+            <gpds-card-row
+              [label]="taxonRef.sourceName"
+              [test]="taxonRef.url">
+              <ng-template>
+                <a [href]="taxonRef.url" target="_blank">
+                  {{ taxonRef.taxonId }}
+                </a>
+              </ng-template>
+            </gpds-card-row>
 
-      <gpds-card-row
-        label="Organisation"
-        [value]="germplasmGnpis.breeder.institute.organisation">
+            <gpds-card-row
+              [label]="taxonRef.sourceName"
+              [test]="!taxonRef.url">
+              <ng-template>
+                {{ taxonRef.taxonId }}
+              </ng-template>
+            </gpds-card-row>
+
+          </ng-container>
+        </ng-template>
       </gpds-card-row>
 
       <gpds-card-row
-        label="Type"
-        [value]="germplasmGnpis.breeder.institute.instituteType">
+        label="Comment"
+        [test]="germplasmGnpis.taxonComment">
+        <ng-template>
+          {{ germplasmGnpis.taxonComment }}
+        </ng-template>
       </gpds-card-row>
 
       <gpds-card-row
-        label="Address"
-        [value]="germplasmGnpis.breeder.institute.address">
+        label="Taxon common names"
+        [test]="germplasmGnpis.taxonCommonNames && germplasmGnpis.taxonCommonNames.length > 0">
+        <ng-template>
+          <div class="content-overflow">
+            {{ germplasmGnpis.taxonCommonNames.join(', ') }}
+          </div>
+        </ng-template>
       </gpds-card-row>
 
       <gpds-card-row
-        label="Website"
-        [test]="germplasmGnpis.breeder.institute.webSite">
+        label="Taxon synonyms"
+        [test]="germplasmGnpis.taxonSynonyms && germplasmGnpis.taxonSynonyms.length > 0">
         <ng-template>
-          <a [href]="germplasmGnpis.breeder.institute.webSite" target="_blank">
-            {{ germplasmGnpis.breeder.institute.webSite }}
-          </a>
+          <div class="content-overflow">
+            <i>{{ germplasmGnpis.taxonSynonyms.join(', ') }}</i>
+          </div>
         </ng-template>
       </gpds-card-row>
-
     </ng-template>
 
-    <ng-template #CollectorInstituteTemplate>
-
+    <ng-template #instituteTemplate let-logo="logo" let-code="instituteCode" let-acronym="acronym" let-organisation="organisation" let-type="instituteType" let-webSite="webSite" let-address="address">
       <gpds-card-row
         label=""
-        [test]="germplasmGnpis.collector && germplasmGnpis.collector.institute && germplasmGnpis.collector.institute.logo">
+        [test]="logo">
         <ng-template>
           <img
-            [src]="IMAGES_INSTITUTION_URL + germplasmGnpis.collector.institute.logo"/>
+            [src]="logo"/>
         </ng-template>
       </gpds-card-row>
 
       <gpds-card-row
         label="Code"
-        [value]="germplasmGnpis.collector.institute.instituteCode">
+        [value]="code">
       </gpds-card-row>
 
       <gpds-card-row
         label="Acronym"
-        [value]="germplasmGnpis.collector.institute.acronym">
+        [value]="acronym">
       </gpds-card-row>
 
       <gpds-card-row
         label="Organisation"
-        [value]="germplasmGnpis.collector.institute.organisation">
+        [value]="organisation">
+      </gpds-card-row>
+
+      <gpds-card-row
+        label="Type"
+        [value]="type">
       </gpds-card-row>
 
       <gpds-card-row
         label="Address"
-        [value]="germplasmGnpis.collector.institute.address">
+        [value]="address">
       </gpds-card-row>
 
       <gpds-card-row
         label="Website"
-        [test]="germplasmGnpis.collector.institute.webSite">
+        [test]="webSite">
         <ng-template>
-          <a [href]="germplasmGnpis.collector.institute.webSite" target="_blank">
-            {{ germplasmGnpis.collector.institute.webSite }}
+          <a [href]="webSite" target="_blank">
+            {{ webSite }}
           </a>
         </ng-template>
       </gpds-card-row>
+    </ng-template>
+
+    <ng-template #holdingInstituteTemplate>
+      <ng-container *ngTemplateOutlet="instituteTemplate;context:germplasmGnpis.holdingInstitute">
+      </ng-container>
+    </ng-template>
 
+    <ng-template #collectorInstituteTemplate>
+      <ng-container *ngTemplateOutlet="instituteTemplate;context:germplasmGnpis.collector.institute">
+      </ng-container>
     </ng-template>
 
+    <ng-template #breederInstituteTemplate>
+      <ng-container *ngTemplateOutlet="instituteTemplate;context:germplasmGnpis.breeder.institute">
+      </ng-container>
+    </ng-template>
 
     <!--Section for the image representing the germplasm and the details about this image-->
-    <div class="col-auto field" *ngIf="germplasmGnpis.photo && germplasmGnpis.photo.thumbnailFileName">
-      <a class="btn popovers" data-boundary="window" placement="right" [ngbPopover]="imageTemplate"
+    <div class="col-auto field" *ngIf="germplasmGnpis.photo && germplasmGnpis.photo.thumbnailFile">
+      <a class="btn popovers" data-boundary="window" placement="auto"
+         [autoClose]="'outside'"
+         [ngbPopover]="imageTemplate"
          [popoverTitle]="germplasmGnpis.photo.photoName" container="body">
         <img
-          [src]="IMAGES_ACCESSION_URL + germplasmGnpis.holdingGenbank.instituteCode + '/' + germplasmGnpis.photo.thumbnailFileName"
+          [src]="germplasmGnpis.photo.thumbnailFile"
           class="img-fluid">
         <figcaption class="figure-caption">
           Click to see more details
@@ -170,7 +185,7 @@
       <ng-template #imageTemplate>
         <div class="card ngb-popover-window ">
           <img class="card-img-top"
-               [src]="IMAGES_ACCESSION_URL + germplasmGnpis.holdingGenbank.instituteCode + '/' + germplasmGnpis.photo.fileName"
+               [src]="germplasmGnpis.photo.file"
                alt="" width="250px">
           <div class="card-body">
 
@@ -241,7 +256,6 @@
             </ng-template>
           </gpds-card-row>
 
-
           <gpds-card-row
             label="Accession synonyms"
             [test]="germplasmGnpis.synonyms && germplasmGnpis.synonyms.length > 0">
@@ -254,30 +268,16 @@
 
           <gpds-card-row
             label="Taxon"
-            [test]="germplasmGnpis.genus || germplasmGnpis.species || germplasmGnpis.subtaxa">
-            <ng-template>
-              <i>{{ germplasmGnpis.genus }} {{ germplasmGnpis.species }} {{ germplasmGnpis.subtaxa }}</i>
-              {{ germplasmGnpis.speciesAuthority ? '(' + germplasmGnpis.speciesAuthority + ')' : '' }}
-            </ng-template>
-          </gpds-card-row>
-
-          <gpds-card-row
-            label="Taxon common names"
-            [test]="germplasmGnpis.taxonCommonNames && germplasmGnpis.taxonCommonNames.length > 0">
-            <ng-template>
-              <div class="content-overflow">
-                {{ germplasmGnpis.taxonCommonNames.join(', ') }}
-              </div>
-            </ng-template>
-          </gpds-card-row>
-
-          <gpds-card-row
-            label="Taxon synonyms"
-            [test]="germplasmGnpis.taxonSynonyms && germplasmGnpis.taxonSynonyms.length > 0">
+            [test]="germplasmTaxon">
             <ng-template>
-              <div class="content-overflow">
-                <i>{{ germplasmGnpis.taxonSynonyms.join(', ') }}</i>
-              </div>
+              <a class="popover-underline" data-boundary="window" placement="auto"
+                 [autoClose]="'outside'"
+                 [ngbPopover]="taxonTemplate"
+                 [popoverTitle]="germplasmTaxon"
+                 container="body">
+                <i>{{ germplasmTaxon }}</i>
+                {{ germplasmTaxonAuthor ? '(' + germplasmTaxonAuthor + ')' : '' }}
+              </a>
             </ng-template>
           </gpds-card-row>
 
@@ -306,6 +306,16 @@
             [value]="germplasmGnpis.comment">
           </gpds-card-row>
 
+          <gpds-card-row
+            label="Origin site"
+            [test]="germplasmGnpis.originSite && germplasmGnpis.originSite.siteName">
+            <ng-template>
+              <a [routerLink]="['/sites/', germplasmGnpis.originSite.siteId]">
+                {{ germplasmGnpis.originSite.siteName }}
+              </a>
+            </ng-template>
+          </gpds-card-row>
+
         </div>
       </ng-template>
     </gpds-card-section>
@@ -321,14 +331,15 @@
         <gpds-card-row
           label="Institution">
           <ng-template>
-            <a class="popover-underline" data-boundary="window" placement="top"
+            <a class="popover-underline" data-boundary="window" placement="auto"
+               [autoClose]="'outside'"
                [ngbPopover]="holdingInstituteTemplate"
                [popoverTitle]="germplasmGnpis.holdingInstitute.instituteName"
                container="body">
               {{ germplasmGnpis.holdingInstitute.instituteName }}</a>
           </ng-template>
         </gpds-card-row>
-
+  
         <gpds-card-row
           label="Stock center name"
           [test]="germplasmGnpis.holdingGenbank.instituteName && germplasmGnpis.holdingGenbank.webSite">
@@ -356,23 +367,13 @@
     </ng-template>
   </gpds-card-section>
 
-
+  <!--Section for the information about the collector of the germplasm-->
   <gpds-card-section
     header="Collecting"
-    [test]="checkOriginCollecting()">
+    [test]="checkCollecting()">
     <ng-template>
       <div class="card-body card-section-body">
 
-        <gpds-card-row
-          label="Origin site"
-          [test]="germplasmGnpis.originSite && germplasmGnpis.originSite.siteName">
-          <ng-template>
-            <a [routerLink]="['/sites/', germplasmGnpis.originSite.siteId]">
-              {{ germplasmGnpis.originSite.siteName }}
-            </a>
-          </ng-template>
-        </gpds-card-row>
-
         <gpds-card-row
           label="Collecting site"
           [test]="germplasmGnpis.collectingSite && germplasmGnpis.collectingSite.siteName">
@@ -419,8 +420,9 @@
           label="Institution"
           [test]="germplasmGnpis.collector.institute && germplasmGnpis.collector.institute.instituteName">
           <ng-template>
-            <a class="popovers" placement="top"
-               [ngbPopover]="CollectorInstituteTemplate"
+            <a class="popover-underline" data-boundary="window" placement="auto"
+               [autoClose]="'outside'"
+               [ngbPopover]="collectorInstituteTemplate"
                [popoverTitle]="germplasmGnpis.collector.institute.instituteName">
               {{ germplasmGnpis.collector.institute.instituteName }}
             </a>
@@ -434,10 +436,12 @@
             {{ germplasmGnpis.collector.accessionNumber }}
           </ng-template>
         </gpds-card-row>
+
       </div>
     </ng-template>
   </gpds-card-section>
 
+  <!--Section for the information about the breeder of the germplasm-->
   <gpds-card-section
     header="Breeder"
     [test]="checkBreeder()">
@@ -448,8 +452,9 @@
           label="Institute"
           [test]="germplasmGnpis.breeder.institute && germplasmGnpis.breeder.institute.instituteName">
           <ng-template>
-            <a class="popovers" placement="top"
-               [ngbPopover]="BreederInstituteTemplate"
+            <a class="popover-underline" data-boundary="window" placement="auto"
+               [autoClose]="'outside'"
+               [ngbPopover]="breederInstituteTemplate"
                [popoverTitle]="germplasmGnpis.breeder.institute.instituteName">
               {{ germplasmGnpis.breeder.institute.instituteName }}
             </a>
@@ -475,14 +480,17 @@
           label="Catalog deregistration year"
           [value]="germplasmGnpis.breeder.deregistrationYear">
         </gpds-card-row>
+
       </div>
     </ng-template>
   </gpds-card-section>
 
+  <!--Section for the information about the donor of the germplasm-->
   <gpds-card-section
     header="Donor"
     [test]="germplasmGnpis.donors && germplasmGnpis.donors.length > 0">
     <ng-template>
+
       <gpds-card-table
         [headers]="[
                 'Institute name',
@@ -494,56 +502,15 @@
         [rows]="germplasmGnpis.donors">
         <ng-template let-row>
           <tr>
-            <ng-template #InstituteTemplate>
-
-              <gpds-card-row
-                label=""
-                [test]="row.donorInstitute && row.donorInstitute.logo">
-                <ng-template>
-                  <img
-                    [src]="IMAGES_INSTITUTION_URL + row.donorInstitute.logo"/>
-                </ng-template>
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Code"
-                [value]="row.donorInstitute.instituteCode">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Acronym"
-                [value]="row.donorInstitute.acronym">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Organisation"
-                [value]="row.donorInstitute.organisation">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Type"
-                [value]="row.donorInstitute.instituteType">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Address"
-                [value]="row.donorInstitute.address">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Website"
-                [test]="row.donorInstitute.webSite">
-                <ng-template>
-                  <a [href]=" row.donorInstitute.webSite " target="_blank">
-                    {{ row.donorInstitute.webSite }}
-                  </a>
-                </ng-template>
-              </gpds-card-row>
+            <ng-template #donorInstituteTemplate>
+              <ng-container *ngTemplateOutlet="instituteTemplate;context:row.donorInstitute">
+              </ng-container>
             </ng-template>
 
             <td>
-              <a class="popovers" placement="top"
-                 [ngbPopover]="InstituteTemplate"
+              <a class="popovers" placement="auto"
+                 [autoClose]="'outside'"
+                 [ngbPopover]="donorInstituteTemplate"
                  [popoverTitle]="row.donorInstitute.instituteName">
                 {{ row.donorInstitute.instituteName }}
               </a>
@@ -552,13 +519,14 @@
             <td>{{ row.donationDate }}</td>
             <td>{{ row.donorAccessionNumber }}</td>
             <td>{{ row.donorGermplasmPUI }}</td>
-          </tr>
+            </tr>
         </ng-template>
-
       </gpds-card-table>
+
     </ng-template>
   </gpds-card-section>
 
+  <!--Section for the information about the distributor of the germplasm-->
   <gpds-card-section
     header="Distributor"
     [test]="germplasmGnpis.distributors && germplasmGnpis.distributors.length>0">
@@ -570,61 +538,19 @@
         'Institute',
         'Accession number',
         'Distribution status'
-
         ]"
         [rows]="germplasmGnpis.distributors">
         <ng-template let-row>
           <tr>
-            <ng-template #InstituteTemplate>
-
-              <gpds-card-row
-                label=""
-                [test]="row.institute && row.institute.logo">
-                <ng-template>
-                  <img
-                    [src]="IMAGES_INSTITUTION_URL + row.institute.logo"/>
-                </ng-template>
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Code"
-                [value]="row.institute.instituteCode">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Acronym"
-                [value]="row.institute.acronym">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Organisation"
-                [value]="row.institute.organisation">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Type"
-                [value]="row.institute.instituteType">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Address"
-                [value]="row.institute.address">
-              </gpds-card-row>
-
-              <gpds-card-row
-                label="Website"
-                [test]="row.institute.webSite">
-                <ng-template>
-                  <a [href]="row.institute.webSite" target="_blank">
-                    {{ row.institute.webSite }}
-                  </a>
-                </ng-template>
-              </gpds-card-row>
+            <ng-template #distributorInstituteTemplate>
+              <ng-container *ngTemplateOutlet="instituteTemplate;context:row.institute">
+              </ng-container>
             </ng-template>
 
             <td>
-              <a class="popovers" placement="top"
-                 [ngbPopover]="InstituteTemplate"
+              <a class="popovers" placement="auto"
+                 [autoClose]="'outside'"
+                 [ngbPopover]="instituteTemplate"
                  [popoverTitle]="row.institute.instituteName">
                 {{ row.institute.instituteName }}
               </a>
@@ -633,12 +559,12 @@
             <td>{{ row.distributionStatus }}</td>
           </tr>
         </ng-template>
-
       </gpds-card-table>
 
     </ng-template>
   </gpds-card-section>
 
+  <!--Section for the information about the primary descriptors of the germplasm-->
   <gpds-card-section
     header="Evaluation Data"
     [test]="germplasmAttributes && germplasmAttributes.length > 0">
@@ -656,6 +582,7 @@
     </ng-template>
   </gpds-card-section>
 
+  <!--Section for the information about the genealoggy of the germplasm-->
   <gpds-card-section
     header="Genealogy"
     [test]="checkPedigree() || checkProgeny()">
@@ -717,7 +644,7 @@
         </gpds-card-row>
 
         <gpds-card-row
-          label="Sibling accessions"
+          label="Sibling accession"
           [test]="germplasmPedigree && (germplasmPedigree.siblings && germplasmPedigree.siblings.length > 0)">
           <ng-template>
 
@@ -725,7 +652,7 @@
               <ng-container *ngFor="let sibling of germplasmPedigree.siblings">
                 <a [routerLink]="['/germplasm']" [queryParams]="{id:sibling.germplasmDbId }">
                   {{ sibling.defaultDisplayName }}
-                </a>,
+                </a>
               </ng-container>
             </div>
 
@@ -733,7 +660,7 @@
         </gpds-card-row>
 
         <gpds-card-row
-          label="Descendant :"
+          label="Descendant"
           [test]="checkProgeny()">
         </gpds-card-row>
 
@@ -748,7 +675,7 @@
                 <ng-container *ngFor="let sibling of child.sibblings">
                   <a [routerLink]="['/germplasm']" [queryParams]="{id:sibling.pui}">
                     {{ sibling.name }}
-                  </a>,
+                  </a>
                 </ng-container>
 
               </ng-template>
@@ -760,12 +687,12 @@
     </ng-template>
   </gpds-card-section>
 
+  <!--Section for the information about the population, collection and panel of the germplasm-->
   <gpds-card-section
     header="Population"
     [test]="germplasmGnpis.population && germplasmGnpis.population.length > 0">
     <ng-template>
-      <div class="card-body card-section-body card-section-body">
-
+       <div class="card-body card-section-body card-section-body">
         <ng-container *ngFor="let population of germplasmGnpis.population">
 
           <gpds-card-row
@@ -782,6 +709,7 @@
             </a>
             </ng-template>
           </gpds-card-row>
+
           <gpds-card-row
             [label]="population.type ? population.name + ' (' + population.type + ')' : population.name"
             [test]="population.germplasmRef && population.germplasmRef.pui && population.germplasmRef.pui == germplasmGnpis.germplasmDbId">
@@ -793,6 +721,7 @@
             </a>
             </ng-template>
           </gpds-card-row>
+
           <gpds-card-row
             [label]="population.type ? population.name + ' (' + population.type + ')' : population.name"
             [test]="population.germplasmRef && !population.germplasmRef.pui">
@@ -803,8 +732,8 @@
               </a>
             </ng-template>
           </gpds-card-row>
-        </ng-container>
 
+        </ng-container>
       </div>
     </ng-template>
   </gpds-card-section>
@@ -814,8 +743,8 @@
     [test]="germplasmGnpis.collection && germplasmGnpis.collection.length > 0">
     <ng-template>
       <div class="card-body card-section-body">
-
         <ng-container *ngFor="let collection of germplasmGnpis.collection">
+
           <gpds-card-row
             [label]="collection.type ? collection.name + ' (' + collection.type + ')' : collection.name">
             <ng-template>
@@ -825,20 +754,19 @@
               </a>
             </ng-template>
           </gpds-card-row>
-        </ng-container>
 
+        </ng-container>
       </div>
     </ng-template>
   </gpds-card-section>
 
-
   <gpds-card-section
     header="Panel"
     [test]="germplasmGnpis.panel && germplasmGnpis.panel.length > 0">
     <ng-template>
       <div class="card-body card-section-body">
-
         <ng-container *ngFor="let panel of germplasmGnpis.panel">
+
           <gpds-card-row
             [label]="panel.type ? panel.name + ' (' + panel.type + ')' : panel.name">
             <ng-template>
@@ -848,13 +776,13 @@
               </a>
             </ng-template>
           </gpds-card-row>
-        </ng-container>
 
+        </ng-container>
       </div>
     </ng-template>
   </gpds-card-section>
 
-  <!--XRefs part -->
+  <!-- XRefs part -->
   <gpds-xrefs [xrefId]="germplasmGnpis.germplasmPUI"></gpds-xrefs>
 </ng-container>
 
diff --git a/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts b/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts
index 5b06816851414af4a438f298ac119d78a2b51931..2ca7f83f5335b6bb3bf54e581ace18b1caf405ba 100644
--- a/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts
+++ b/frontend/src/app/germplasm-card/germplasm-card.component.spec.ts
@@ -177,6 +177,7 @@ describe('GermplasmCardComponent', () => {
         genusSpeciesSubtaxa: null,
         taxonSynonyms: ['pomme', 'api'],
         taxonCommonNames: ['pomme', 'api'],
+        taxonComment: null,
         geneticNature: null,
         comment: null,
         photo: null,
diff --git a/frontend/src/app/germplasm-card/germplasm-card.component.ts b/frontend/src/app/germplasm-card/germplasm-card.component.ts
index fa665b58aea9b42828f310cafb6dfa2972da71cd..b1aaf9f658b29aae12832fdd3e0f33c57ceca47d 100644
--- a/frontend/src/app/germplasm-card/germplasm-card.component.ts
+++ b/frontend/src/app/germplasm-card/germplasm-card.component.ts
@@ -2,7 +2,7 @@ import { Component, OnInit } from '@angular/core';
 import { ActivatedRoute, NavigationEnd, Router } from '@angular/router';
 import { BrapiService } from '../brapi.service';
 import { GnpisService } from '../gnpis.service';
-import { BrapiAttributeData, BrapiGermplasmPedigree, BrapiLocation } from '../models/brapi.model';
+import { BrapiAttributeData, BrapiGermplasmPedigree, BrapiLocation, BrapiTaxonIds } from '../models/brapi.model';
 import { Children, Germplasm, Site } from '../models/gnpis.model';
 import { DataDiscoverySource } from '../models/data-discovery.model';
 
@@ -29,6 +29,12 @@ export class GermplasmCardComponent implements OnInit {
         });
     }
 
+    NCBI_URL = 'https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id=';
+    THEPLANTLIST_URL = 'http://www.theplantlist.org/tpl1.1/record/';
+    TAXREF_URL = 'https://inpn.mnhn.fr/espece/cd_nom/';
+    CATALOGUEOFLIFE_URL = 'http://www.catalogueoflife.org/col/details/species/id/';
+    taxonIdsWithURL: BrapiTaxonIds[] = [];
+
     germplasmGnpis: Germplasm;
     germplasmPedigree: BrapiGermplasmPedigree;
     germplasmProgeny: Children[];
@@ -36,20 +42,14 @@ export class GermplasmCardComponent implements OnInit {
     germplasmLocations: BrapiLocation[] = [];
     germplasmId: string;
     germplasmPuid: string;
+    germplasmTaxon: string;
+    germplasmTaxonAuthor: string;
     germplasmSource: DataDiscoverySource;
 
-    // TODO extract those url in a configuration file.
-    IMAGES_ACCESSION_URL = 'https://urgi.versailles.inra.fr/files/siregal/images/accession/';
-    IMAGES_INSTITUTION_URL = 'https://urgi.versailles.inra.fr/files/siregal/images//institution/';
-    IMAGES_BRC_URL = 'https://urgi.versailles.inra.fr/files/siregal/images/grc/inra_brc_en.png';
-
-
     loaded: Promise<any>;
     loading = true;
 
-
     ngOnInit() {
-
         this.germplasmId = this.route.snapshot.queryParams.id;
         this.germplasmPuid = this.route.snapshot.queryParams.pui;
 
@@ -101,6 +101,7 @@ export class GermplasmCardComponent implements OnInit {
                 // Get germplasm source
                 const sourceURI = germplasmGnpis['schema:includedInDataCatalog'];
                 this.getGermplasmSource(sourceURI);
+                this.getTaxon(germplasmGnpis);
                 this.reformatData(germplasmGnpis);
             });
         return germplasm$;
@@ -124,6 +125,24 @@ export class GermplasmCardComponent implements OnInit {
         }
     }
 
+    getTaxon(germplasmGnpis) {
+        if (germplasmGnpis.genusSpeciesSubtaxa) {
+            this.germplasmTaxon = germplasmGnpis.genusSpeciesSubtaxa;
+            this.germplasmTaxonAuthor = germplasmGnpis.subtaxaAuthority;
+        } else if (germplasmGnpis.genusSpecies) {
+            this.germplasmTaxon = germplasmGnpis.genusSpecies;
+            this.germplasmTaxonAuthor = germplasmGnpis.speciesAuthority;
+        } else if (germplasmGnpis.subtaxa) {
+            this.germplasmTaxon = germplasmGnpis.genus + ' ' + germplasmGnpis.species + ' ' + germplasmGnpis.subtaxa;
+            this.germplasmTaxonAuthor = germplasmGnpis.subtaxaAuthority;
+        } else if (germplasmGnpis.species) {
+            this.germplasmTaxon = germplasmGnpis.genus + ' ' + germplasmGnpis.species;
+            this.germplasmTaxonAuthor = germplasmGnpis.speciesAuthority;
+        } else {
+            this.germplasmTaxon = germplasmGnpis.genus;
+            this.germplasmTaxonAuthor = '';
+        }
+    }
 
     reformatData(germplasmGnpis) {
         if (germplasmGnpis.children) {
@@ -133,10 +152,13 @@ export class GermplasmCardComponent implements OnInit {
             this.germplasmGnpis.donors.sort(this.compareDonorInstitutes);
         }
         if (germplasmGnpis.collection) {
-            this.germplasmGnpis.collection.sort(this.compareCollectionPanel);
+            this.germplasmGnpis.collection.sort(this.compareCollectionPopulationPanel);
+        }
+        if (germplasmGnpis.population) {
+            this.germplasmGnpis.population.sort(this.compareCollectionPopulationPanel);
         }
         if (this.germplasmGnpis.panel) {
-            this.germplasmGnpis.panel.sort(this.compareCollectionPanel);
+            this.germplasmGnpis.panel.sort(this.compareCollectionPopulationPanel);
         }
         if (this.germplasmGnpis.collectingSite) {
             this.siteToBrapiLocation(this.germplasmGnpis.collectingSite);
@@ -149,9 +171,11 @@ export class GermplasmCardComponent implements OnInit {
                 this.siteToBrapiLocation(site);
             }
         }
+        if (this.germplasmGnpis.taxonIds && this.germplasmGnpis.taxonIds.length > 0) {
+            this.addRefURL(this.germplasmGnpis.taxonIds);
+        }
     }
 
-
     siteToBrapiLocation(site: Site) {
         if (site && site.siteId && site.latitude && site.longitude) {
             this.germplasmLocations.push({
@@ -164,6 +188,23 @@ export class GermplasmCardComponent implements OnInit {
         }
     }
 
+    addRefURL(taxonIds: BrapiTaxonIds[]) {
+        for (const taxonId of taxonIds) {
+            if (taxonId.sourceName === 'NCBI') {
+                taxonId.url = this.NCBI_URL + taxonId.taxonId;
+            } else if (taxonId.sourceName === 'ThePlantList') {
+                taxonId.url = this.THEPLANTLIST_URL + taxonId.taxonId;
+            } else if (taxonId.sourceName === 'TAXREF') {
+                taxonId.url = this.TAXREF_URL + taxonId.taxonId;
+            } else if (taxonId.sourceName === 'CatalogueOfLife') {
+                taxonId.url = this.CATALOGUEOFLIFE_URL + taxonId.taxonId;
+            } else {
+                taxonId.url = null;
+            }
+            this.taxonIdsWithURL.push(taxonId);
+        }
+    }
+
     // TODO: use a generic function to get path in object (or null if non-existent)
     checkProgeny() {
         return (this.germplasmProgeny
@@ -189,7 +230,6 @@ export class GermplasmCardComponent implements OnInit {
         );
     }
 
-
     checkCollectorInstituteObject() {
         return (
             this.germplasmGnpis.collector
@@ -209,10 +249,8 @@ export class GermplasmCardComponent implements OnInit {
             );
     }
 
-    checkOriginCollecting() {
-
-        return (this.germplasmGnpis.originSite && this.germplasmGnpis.originSite.siteName)
-            || (this.germplasmGnpis.collectingSite && this.germplasmGnpis.collectingSite.siteName)
+    checkCollecting() {
+        return (this.germplasmGnpis.collectingSite && this.germplasmGnpis.collectingSite.siteName)
             || (this.checkCollectorInstituteObject() || this.checkCollectorInstituteFields());
     }
 
@@ -236,7 +274,7 @@ export class GermplasmCardComponent implements OnInit {
         return 0;
     }
 
-    compareCollectionPanel(a, b) {
+    compareCollectionPopulationPanel(a, b) {
         if (a.name < b.name) {
             return -1;
         }
diff --git a/frontend/src/app/gnpis.service.spec.ts b/frontend/src/app/gnpis.service.spec.ts
index 04deb8ddc41c26ba9a63cdf36b4240ca99b0f7e4..458d559da7e1e111bce13a675b1ef7c7e516eb76 100644
--- a/frontend/src/app/gnpis.service.spec.ts
+++ b/frontend/src/app/gnpis.service.spec.ts
@@ -98,6 +98,7 @@ describe('GnpisService', () => {
         genusSpeciesSubtaxa: null,
         taxonSynonyms: ['pomme', 'api'],
         taxonCommonNames: ['pomme', 'api'],
+        taxonComment: null,
         geneticNature: null,
         comment: null,
         photo: null,
diff --git a/frontend/src/app/models/brapi.model.ts b/frontend/src/app/models/brapi.model.ts
index fa9963801a1053877cf35102541478c6b81081c4..3469d2a6fe587e3fc4e0fdb3fb0b3ec8ae7ea380 100644
--- a/frontend/src/app/models/brapi.model.ts
+++ b/frontend/src/app/models/brapi.model.ts
@@ -139,6 +139,7 @@ export interface BrapiGermplasm extends BrapiHasDocumentationURL {
 export interface BrapiTaxonIds {
     sourceName: string;
     taxonId: string;
+    url: string;
 }
 
 export interface BrapiDonor {
diff --git a/frontend/src/app/models/gnpis.model.ts b/frontend/src/app/models/gnpis.model.ts
index 061c0d2a4b6429c78cbbad30589b13f67ac8c2cd..edee6ddf7211609bc3009ecf1f15df4f404590da 100644
--- a/frontend/src/app/models/gnpis.model.ts
+++ b/frontend/src/app/models/gnpis.model.ts
@@ -5,6 +5,7 @@ export interface Germplasm extends BrapiGermplasm {
     genusSpeciesSubtaxa: string;
     taxonSynonyms: string[];
     taxonCommonNames: string[];
+    taxonComment: string;
     geneticNature: string;
     comment: string;
     photo: Photo;
@@ -57,9 +58,9 @@ export interface GermplasmInstitute extends Institute {
 export interface Photo {
     copyright: string;
     description: string;
-    fileName: string;
+    file: string;
     photoName: string;
-    thumbnailFileName: string;
+    thumbnailFile: string;
 
 }
 
diff --git a/frontend/src/app/study-card/study-card.component.html b/frontend/src/app/study-card/study-card.component.html
index 358fd637efc795793496c6a048e7f1d572167550..4f02436ca99e4ecc359ab9e939c145134f9dc613 100644
--- a/frontend/src/app/study-card/study-card.component.html
+++ b/frontend/src/app/study-card/study-card.component.html
@@ -248,7 +248,6 @@
     </ng-template>
   </gpds-card-section>
 
-
   <!--XRefs part -->
   <gpds-xrefs [xrefId]="study.studyDbId"></gpds-xrefs>
 </ng-container>
diff --git a/frontend/src/tslint.json b/frontend/src/tslint.json
index 7e545ab7d80894dd3456be1fee601237e43b7bff..87a3bff4867cfc072c8a420d4b28b74563592090 100644
--- a/frontend/src/tslint.json
+++ b/frontend/src/tslint.json
@@ -15,7 +15,7 @@
     ],
     "template-cyclomatic-complexity": [
       true,
-      10
+      11
     ]
   }
 }
diff --git a/frontend/tslint.json b/frontend/tslint.json
index 91316b889f8228b33194822ac20020a6d2f2a674..f6e323348ffc55fb409b8f94a9e38a2042788e03 100644
--- a/frontend/tslint.json
+++ b/frontend/tslint.json
@@ -159,7 +159,7 @@
     "template-conditional-complexity": true,
     "template-cyclomatic-complexity": [
       true,
-      10
+      11
     ],
     "templates-no-negated-async": true,
     "use-host-property-decorator": true,