diff --git a/module/finc/src/finc/RecordDriver/SolrDico.php b/module/finc/src/finc/RecordDriver/SolrDico.php
index c18b6323c5f9d13acae3e22426ed6bc5b51dda0b..f534a67a14fc65bfef7d66058de4f478a8e9d589 100644
--- a/module/finc/src/finc/RecordDriver/SolrDico.php
+++ b/module/finc/src/finc/RecordDriver/SolrDico.php
@@ -124,7 +124,7 @@ class SolrDico extends SolrDefault
      * Returns the object'S licence information from the full record
      * @return array
      */
-    public function getLicenceInfo()
+    public function getLicense()
     {
         $prefix = "object_rights_statement_";
         $fields = [
diff --git a/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php b/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php
index c17bd5e99f6029bf368c46cdf01dccda9e2e53d8..c5ca36fcf7ea41d05ac033bde79e118a30388583 100644
--- a/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php
+++ b/module/finc/src/finc/RecordDriver/SolrMarcFincTrait.php
@@ -2476,16 +2476,20 @@ trait SolrMarcFincTrait
      * @return array|null
      */
     public function getLicense() {
-        if ($field = $this->getMarcRecord()->getField('540')) {
+        $retval = null;
+        if ($licenses = $this->getMarcRecord()->getFields('540')) {
             $retval = [];
-            foreach (['name' => 'a', 'url' => 'u'] as $key => $sub_name) {
-                if ($line = $field->getSubfield($sub_name)) {
-                    $retval[$key] = $line->getData();
+            $i = 0;
+            foreach ($licenses as $license) {
+                foreach (['code' => 'a', 'url' => 'u', 'text' => 'f'] as $key => $sub_name) {
+                    if ($line = $license->getSubfield($sub_name)) {
+                        $retval[$i][$key] = $line->getData();
+                    }
                 }
+                $i++;
             }
-            return $retval;
         }
-        return null;
+        return $retval;
     }
 
     /**
diff --git a/themes/finc/templates/RecordDriver/DefaultRecord/data-license.phtml b/themes/finc/templates/RecordDriver/DefaultRecord/data-license.phtml
deleted file mode 100644
index d8230b72f63ddea10fbed660a4fd7003156f60a2..0000000000000000000000000000000000000000
--- a/themes/finc/templates/RecordDriver/DefaultRecord/data-license.phtml
+++ /dev/null
@@ -1,5 +0,0 @@
-<!-- finc: RecordDriver - DefaultRecord - data-license -->
-<?php if (!empty($data) && is_array($data)): ?>
-  <?= $data['name'] ?> (<a href="<?= $data['url'] ?>"><?= $data['url'] ?></a>)
-<?php endif; ?>
-<!-- finc: RecordDriver - DefaultRecord - data-license - END -->
\ No newline at end of file
diff --git a/themes/finc/templates/RecordDriver/SolrDico/data-license.phtml b/themes/finc/templates/RecordDriver/SolrDico/data-license.phtml
new file mode 100644
index 0000000000000000000000000000000000000000..5cef1f3ac0db8b0faed390010fe4c9c930e2d2de
--- /dev/null
+++ b/themes/finc/templates/RecordDriver/SolrDico/data-license.phtml
@@ -0,0 +1,17 @@
+<!-- finc: RecordDriver - SolrDico - data-license -->
+<!-- in contrast to SolrMarc data-license.phtml, $data is an one-dimensional array and has an optional icon -->
+<?php $label = $this->escapeHtml($data['code']) . "&nbsp;(" . $this->escapeHtml($data['text']) . ")"; ?>
+<?php ob_start() ?>
+<?=$label ?>
+<?php if (isset($data['icon'])): ?>
+  <img class="collection-data collection-licence-image" src="<?=$data['icon']?>"/>
+<?php endif; ?>
+<?php $label = ob_get_contents();
+  ob_end_clean();
+?>
+<?php if (isset($data['url'])): ?>
+  <?= $this->externalLink($data['url'], $label) ?>
+<?php else: ?>
+  <?= $label ?>
+<?php endif;?>
+<!-- finc: RecordDriver - SolrDico - data-license - END -->
\ No newline at end of file
diff --git a/themes/finc/templates/RecordDriver/SolrMarc/data-license.phtml b/themes/finc/templates/RecordDriver/SolrMarc/data-license.phtml
new file mode 100644
index 0000000000000000000000000000000000000000..7407ecf961246ea38be15eece3b0f5bb2323dfd0
--- /dev/null
+++ b/themes/finc/templates/RecordDriver/SolrMarc/data-license.phtml
@@ -0,0 +1,14 @@
+<!-- finc: RecordDriver - SolrMarc - data-licence -->
+<?php if (is_array($data) && count($data)): ?>
+  <?php foreach ($data as $license) : ?>
+    <div>
+      <?php $text = ($license['code'] ?? '') . (isset($license['text']) ? " ({$license['text']})" : '') ?>
+      <?php if (isset($license['url'])): ?>
+          <?= $this->externalLink($license['url'], $text ?? $license['url']) ?>
+      <?php else: ?>
+          <?= $text ?>
+      <?php endif;?>
+    </div>
+  <?php endforeach; ?>
+<?php endif; ?>
+<!-- finc: RecordDriver - SolrMarc - data-licence - END -->
\ No newline at end of file