Format
Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> themeDisplay.getThemeSetting("news-vocabulary-id")  [in template "51632#51678#43587" at line 22, column 20]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: vocabularyId = themeDisplay.getThemeS...  [in template "51632#51678#43587" at line 22, column 5]
----
1<#--sella social macro --> 
2<#include "${templatesPath}/SOCIAL-SHARE-MACRO" /> 
3 
4<#assign originalLocale = locale> 
5<#setting locale = 'en_US'> 
6<#assign date = .vars['reserved-article-display-date'].data/> 
7<#assign date = date?datetime("EEE, d MMM yyyy HH:mm:ss Z") /> 
8<#setting locale = originalLocale> 
9<#assign dateTimeFormat = languageUtil.get(locale, "HH:mm, dd MMM yyyy")> 
10 
11 
12<#assign 
13    articleId = .vars['reserved-article-id'].data 
14    journalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") 
15    assetEntryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") 
16    ja = journalService.fetchLatestArticle(themeDisplay.getScopeGroupId(), articleId, 0) 
17    ae = assetEntryService.fetchEntry("com.liferay.journal.model.JournalArticle", ja.getResourcePrimKey()) 
18    title = .vars['reserved-article-title'].data 
19    jaAbstract = .vars['reserved-article-description'].data 
20    absoluteURL = themeDisplay.getPortalURL() + themeDisplay.getURLCurrent() 
21    altBigDetailImage = "" 
22    vocabularyId = themeDisplay.getThemeSetting("news-vocabulary-id")?number 
23    category = sella_tool.getCategoryFromVocabularyId(ae.getCategories(), vocabularyId, locale) 
24/> 
25 
26<#if !vocabularyIdLive?? && !themeDisplay.getThemeSetting("news-vocabulary-id-live")?? > 
27    <#assign vocabularyIdLive = 52307 /> 
28<#else> 
29    <#assign vocabularyIdLive = themeDisplay.getThemeSetting("news-vocabulary-id-live")?number /> 
30</#if> 
31 
32<#if category==""> 
33    <#assign category = sella_tool.getCategoryFromVocabularyId(ae.getCategories(), vocabularyIdLive , locale)  /> 
34</#if> 
35 
36<#-- ja title --> 
37<#if titleShown?? && titleShown.getData()?has_content> 
38    <#assign title = titleShown.getData() /> 
39</#if> 
40 
41<#if HeroImage.getAttribute("fileEntryId")?? > 
42    <#assign socialImg = themeDisplay.getPortalURL() + sella_tool.getAdaptiveMediaSrc("800-x-533-px",HeroImage.getAttribute("fileEntryId")?number,HeroImage.name) /> 
43<#else> 
44    <#assign socialImg = ""> 
45</#if> 
46 
47<@shareContent title="${title}" summary="${jaAbstract}" detailURL="${absoluteURL}" imageURL="${socialImg}"/> 
48 
49 
50 
51<article class="article-detail article-detail--has-img"> 
52  <#-- Info + Social --> 
53  <div class="container"> 
54    <div class="row"> 
55      <div class="col-md-10 offset-md-1"> 
56        <div class="article-detail__intro"> 
57          <div class="row"> 
58            <div class="col-lg-8"> 
59              <#-- Categoria e data --> 
60              <div class="d-flex"> 
61                <#if category?? && category?has_content> 
62                  <div class="article-detail__category">${category}</div> 
63                </#if> 
64                <div class="article-detail__date">${date?string(dateTimeFormat)}</div> 
65              </div> 
66              <#-- Titolo --> 
67              <h1 class="article-detail__title">${title}</h1> 
68              <#-- Sottotitolo --> 
69              <#if jaAbstract?has_content> 
70                <h2 class="article-detail__subject">${jaAbstract}</h2> 
71              </#if> 
72 
73            </div> 
74          </div> 
75          <div class="row"> 
76            <div class="col-12"> 
77              <div class="article-detail__button d-flex"> 
78                <#-- Share button --> 
79                <div class="sella-share clearfix"> 
80                  <div class="sella-share__icon sella-share__icon--share"> 
81                    <svg class="ico-svg"> 
82                      <use xlink:href="${themeDisplay.getPathThemeImages()}/assets/images/icons.svg#share-alt"></use> 
83                    </svg> 
84                  </div> 
85                  <div class="sella-share__text">Condividi</div> 
86                  <ul> 
87                    <li> 
88                      <a href="http://www.facebook.com/sharer.php?u=${absoluteURL}" title="Facebook" class="sella-share__icon sella-share__icon--fb"> 
89                        <svg class="ico-svg"> 
90                          <use xlink:href="${themeDisplay.getPathThemeImages()}/assets/images/icons.svg#facebook-f"></use> 
91                        </svg> 
92                      </a> 
93                    </li> 
94                    <li> 
95                      <a href="https://twitter.com/home?status=${absoluteURL}" title="Twitter" class="sella-share__icon sella-share__icon--twitter"> 
96                        <svg class="ico-svg"> 
97                          <use xlink:href="${themeDisplay.getPathThemeImages()}/assets/images/icons.svg#twitter"></use> 
98                        </svg> 
99                      </a> 
100                    </li> 
101                    <li> 
102						<#assign escapedTitle = htmlUtil.escape(htmlParserUtil.extractText(title)) /> 
103						<#assign escapedAbstract = htmlUtil.escape(htmlParserUtil.extractText(jaAbstract)) /> 
104 
105                      	<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=${absoluteURL}&amp;title=${escapedTitle}&amp;summary=${escapedAbstract}&amp;source=" title="LinkedIn" class="sella-share__icon sella-share__icon--linkedin"> 
106                        	<svg class="ico-svg"> 
107                          		<use xlink:href="${themeDisplay.getPathThemeImages()}/assets/images/icons.svg#linkedin-in"></use> 
108                        	</svg> 
109                      	</a> 
110                    </li> 
111                     <li> 
112                      <a href="https://api.whatsapp.com/send?text=${urlCodec.encodeURL(absoluteURL)}" title="WahtsApp" class="sella-share__icon sella-share__icon--whatsapp"> 
113                        <svg class="ico-svg"> 
114                          <use xlink:href="${themeDisplay.getPathThemeImages()}/assets/images/icons.svg#whatsapp"></use> 
115                        </svg> 
116                      </a> 
117                    </li> 
118                  </ul> 
119                </div> 
120              </div> 
121            </div> 
122          </div> 
123        </div> 
124      </div> 
125    </div> 
126  </div> 
127 
128 
129<#if HeroImage?? && HeroImage.getData() != ""> 
130    <#assign altBigDetailImage = HeroImage.getAttribute("alt") /> 
131    <#assign urlBigDetailImage = HeroImage.getData() /> 
132</#if> 
133<#if urlBigDetailImage?? && urlBigDetailImage?has_content> 
134    <div class="sella-container sella-container--only-img"> 
135        <div class="container-fluid"> 
136 
137        <#-- VIDEO --> 
138            <div class="row"> 
139                <div class="col-lg-10 offset-lg-1"> 
140                    <#if Video?? && Video?has_content > 
141                        <#if Video.getData()?? && Video.getData() != ""> 
142                            <#if Video.getData()?contains("vimeo")> 
143                                <#if HeroImage.getAttribute("fileEntryId")?? > 
144                                    <#assign HeroImage800x533 = sella_tool.getAdaptiveMediaSrc("800-x-533-px",HeroImage.getAttribute("fileEntryId")?number,HeroImage.name) /> 
145                                <#else> 
146                                    <#assign HeroImage800x533 = ""> 
147                                </#if> 
148                                <video width="100%" controls="" poster="${HeroImage800x533}"> 
149                                    <source src ="${Video.getData()}" type="video/mp4"> 
150                                </video> 
151                            <#else> 
152                                <iframe width="100%" height="350px" src="${Video.getData()}?controls=0" ></iframe> 
153                            </#if> 
154                        <#else> 
155                            <#if HeroImage?? && HeroImage?has_content > 
156                                <#if HeroImage.getData()?? && HeroImage.getData() != ""> 
157                                    <#if HeroImage.getAttribute("fileEntryId")?? > 
158                                        <#assign HeroImage800x533 = sella_tool.getAdaptiveMediaSrc("800-x-533-px",HeroImage.getAttribute("fileEntryId")?number,HeroImage.name) /> 
159                                        <figure class="article-detail__fig"> 
160                                        <img class="article-detail__img w-100" src="${HeroImage800x533}" alt="${HeroImage.getAttribute("alt")}"> 
161                                            <#if ImageOwner.getData()?? && ImageOwner.getData()!="" && HeroImage.getAttribute("alt") != "" > 
162                                                <figcaption class="article-detail__figcaption">${HeroImage.getAttribute("alt")} - <strong>${ImageOwner.getData()}</strong></figcaption> 
163                                            <#else> 
164                                                <figcaption class="article-detail__figcaption">${HeroImage.getAttribute("alt")} - <strong>${ImageOwner.getData()}</strong></figcaption> 
165                                            </#if> 
166                                        </figure> 
167                                    </#if> 
168                                </#if> 
169                            </#if> 
170                        </#if> 
171                    </#if> 
172                </div> 
173            </div> 
174        </div> 
175    </div> 
176</#if> 
177 
178<#-- testo --> 
179<#if Body?? && Body.getData()?has_content> 
180    <div class="container"> 
181        <div class="row"> 
182            <div class="col-md-8 offset-md-2 col-xl-6 offset-xl-3"> 
183                <div class="article-detail__text"> 
184                    ${Body.getData()} 
185                </div> 
186            </div> 
187        </div> 
188    </div> 
189</#if> 
190 
191<div class="article-detail__slider"> 
192    <div class="container"> 
193        <div class="row"> 
194            <div class="col-12"> 
195                <div class="slider slider-detail"> 
196                    <#if GalleryImage?has_content && GalleryImage??> 
197                        <#if GalleryImage.getData()?? && GalleryImage.getData() != ""  > 
198                            <#list GalleryImage.getSiblings() as curImage> 
199                                <#if curImage.getAttribute("fileEntryId")?? > 
200                                    <#assign curGalleryImage800x533 = sella_tool.getAdaptiveMediaSrc("800-x-533-px",curImage.getAttribute("fileEntryId")?number,curImage.name) /> 
201                                    <div> 
202                                            <div class="article-detail__gallery"> 
203                                            <a href="${curGalleryImage800x533}" title="${curImage.getAttribute("alt")}"> 
204                                                <img src="${curGalleryImage800x533}" alt="${curImage.getAttribute("alt")}" class="w-100"> 
205                                            </a> 
206                                            <#if curImage.GalleryImageOwner.getData()?? && curImage.GalleryImageOwner.getData()!="" && curImage.getAttribute("alt") != ""  > 
207                                                <div class="article-detail__gallery-caption">${curImage.getAttribute("alt")} - <strong>${curImage.GalleryImageOwner.getData()}</strong></div> 
208                                            </#if> 
209                                        </div> 
210                                    </div> 
211                                </#if> 
212                            </#list> 
213                        </#if> 
214                    </#if> 
215                </div> 
216            </div> 
217        </div> 
218    </div> 
219</div> 
Si è verificato un errore nell'elaborarazione del modello.
No compatible overloaded variation was found; wrong number of arguments.
The FTL type of the argument values were: extended_hash+string (com.liferay.portal.model.impl.LayoutSetImpl wrapped into f.e.b.StringModel), extended_hash+string (com.liferay.portal.kernel.theme.ThemeDisplay wrapped into f.e.b.StringModel).
The matching overload was searched among these members:
    com.liferay.portal.util.PortalImpl.getGroupFriendlyURL(com.liferay.portal.kernel.model.LayoutSet, com.liferay.portal.kernel.theme.ThemeDisplay, boolean, boolean),
    com.liferay.portal.util.PortalImpl.getGroupFriendlyURL(com.liferay.portal.kernel.model.LayoutSet, com.liferay.portal.kernel.theme.ThemeDisplay, Locale)

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign groupPrependURL = portalUtil...  [in template "51632#51678#66308" at line 12, column 1]
----
1<#assign articleId = .vars['reserved-article-id'].data /> 
2<#assign articleGroupId = .vars['articleGroupId'] /> 
3 
4<#assign journalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
5<#assign groupService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService") /> 
6<#assign layoutSetService = serviceLocator.findService("com.liferay.portal.kernel.service.LayoutSetLocalService") /> 
7 
8<#assign journalArticle = journalService.getLatestArticle(articleGroupId?number,articleId?string,0) /> 
9<#assign urlTitle = journalArticle.getUrlTitle() /> 
10<#assign group = groupService.getGroup(groupId?number) /> 
11<#assign groupFriendlyURL = group.getFriendlyURL() /> 
12<#assign groupPrependURL =  portalUtil.getGroupFriendlyURL(layoutSetService.getLayoutSet(groupId?number, false), themeDisplay) /> 
13 
14<#assign maxSize = 4 /> 
15<#assign radiocorIndex = radiocor_news_tool.getNewsIndex(-1) /> 
16<#assign dateTimeFormat = languageUtil.get(locale, "dd/MM/yyyy HH:mm:ss")> 
17 
18<section class="radiocor-ultime-wrapper"> 
19    <#-- 
20    <h2 class="sella-underlined-title ml-0 mr-0"> 
21        <span>Ultim'ora</span> 
22    </h2> 
23     --> 
24    <div class="radiocor-ultime-content"> 
25		<#--As of avoiding index-out-of-bounds error, in FreeMarker 2.3.21 you can issue listVar[0..*4], 
26		which will slice out 4 items, or less if there's less available.    --> 
27 
28        <#list radiocorIndex[0..*maxSize] as r> 
29				<div class="lx-latest-news-item"> 
30					<div class="lx-latest-news-item-text"> 
31						<h3><a href="${groupPrependURL}/radiocor/notizia/?nid=${r.id}">${r.headLine}</a></h3> 
32						<span>${r.date?string(dateTimeFormat)!""}</span> 
33					</div> 
34					<div class="lx-clear-fix"></div> 
35				</div> 
36        </#list> 
37    </div> 
38 
39    <p> 
40        <a href="${groupPrependURL}/radiocor/" class="radiocor-read-more font-weight-bold">${languageUtil.get(locale,"radiocor-read-more")}</a> 
41    </p> 
42 
43</section> 
Si è verificato un errore nell'elaborarazione del modello.
The following has evaluated to null or missing:
==> httpUtil.getParameter  [in template "51632#51678#52245" at line 6, column 38]

----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign debug = validator.isNotNull(h...  [in template "51632#51678#52245" at line 6, column 1]
----
1<#--Inclusione delle MACRO  --> 
2<#include "${templatesPath}/SELLA-MACRO" /> 
3<#include "${templatesPath}/ADAPTIVE-IMAGE-MACRO" /> 
4 
5<#-- ##################################### DEBUG ################################### --> 
6<#assign debug = validator.isNotNull(httpUtil.getParameter(current_url,"sellaDebug",false)) /> 
7<#if debug > 
8    <div class="debug-content right"> 
9        TPL: REVIEW ADT 
10    </div> 
11</#if> 
12 
13<section class="review-adt-wrapper"> 
14    <div class="container"> 
15        <div class="review-adt-container"> 
16 
17            <#if entries?has_content> 
18 
19                <div class="review-adt-container-content"> 
20 
21                    <#list entries as curEntry> 
22 
23                        <#assign assetRenderer = curEntry.getAssetRenderer() /> 
24                        <#assign classPK = curEntry.getClassPK() /> 
25                        <#assign review = adt_tool.getFreemarkerMap(classPK, locale) /> 
26                        <#assign journalArticle = curEntry.getAssetRenderer().getAssetObject() /> 
27 
28                        <#assign customTitle = ""/> 
29                        <#if review.CustomTitle??> 
30                                <#assign customTitle = review.CustomTitle.value /> 
31                            </#if> 
32 
33                        <@getEditIcon /> 
34 
35                        <#if review.Cover??> 
36                            <#assign cover = review.Cover.value /> 
37                        </#if> 
38                        <#assign reviewTitle = curEntry.getTitle(locale) /> 
39                        <#assign abstract = curEntry.getSummary(locale) /> 
40 
41                        <div class="row"> 
42                          <div class="review-adt-img col-sm-5 pr-md-0"> 
43                            <a data-senna-off="true" href="${getDisplayPageURL(classPK, groupId)}"> 
44                                <div class="mb-2"> 
45                                    <img class="w-100" src="${cover.url}" > 
46                                </div> 
47                            </a> 
48                          </div> 
49                          <div class="review-adt-text col-sm-7"> 
50                            <h3> 
51                              <a data-senna-off="true" href="${getDisplayPageURL(classPK,groupId)}"> 
52                                <#if customTitle?? && customTitle?has_content> 
53                                        ${customTitle} 
54                                    <#else> 
55                                        ${reviewTitle} 
56                                    </#if> 
57                              </a> 
58                            </h3> 
59                            <div class="review-adt-abstract">${abstract}</div> 
60                          </div> 
61                        </div> 
62 
63                    </#list> 
64 
65                </div> 
66            </#if> 
67 
68        </div> 
69    </div> 
70</section> 
71 
72 
73<#macro getEditIcon> 
74    <#if assetRenderer.hasEditPermission(themeDisplay.getPermissionChecker())> 
75        <#assign redirectURL = renderResponse.createRenderURL() /> 
76 
77        ${redirectURL.setParameter("mvcPath", "/add_asset_redirect.jsp")} 
78        ${redirectURL.setWindowState("pop_up")} 
79 
80        <#assign editPortletURL = assetRenderer.getURLEdit(renderRequest, renderResponse, windowStateFactory.getWindowState("pop_up"), redirectURL)!"" /> 
81 
82        <#if validator.isNotNull(editPortletURL)> 
83            <#assign title = languageUtil.format(locale, "edit-x", entryTitle, false) /> 
84 
85            <@liferay_ui["icon"] 
86                cssClass="icon-monospaced visible-interaction" 
87                icon="pencil" 
88                markupView="lexicon" 
89                message=title 
90                url="javascript:Liferay.Util.openWindow({id:'" + renderResponse.getNamespace() + "editAsset', title: '" + title + "', uri:'" + htmlUtil.escapeURL(editPortletURL.toString()) + "'});" 
91            /> 
92        </#if> 
93    </#if> 
94</#macro> 

Indietro Nuovi studi storici e diagnostici per scoprire il dipinto leonardesco San Giovanni Battista

Update
Impatto

Nuovi studi storici e diagnostici per scoprire il dipinto leonardesco San Giovanni Battista

La Direzione Artistica di Banca Patrimoni Sella & C., in collaborazione con la Veneranda Biblioteca Ambrosiana, presenta i risultati del progetto condotto con le più recenti tecnologie di diagnostica scientifica per l’arte a 40 anni dagli ultimi studi dell’opera
Nuovi studi storici e diagnostici per scoprire il dipinto leonardesco San Giovanni Battista
Il dipinto San Giovanni Battista
20 Nov 24
#arte

Banca Patrimoni Sella & C., la banca del gruppo Sella specializzata nella gestione ed amministrazione dei patrimoni della clientela privata ed istituzionale, attraverso la sua Direzione Artistica, ha realizzato in collaborazione con la Veneranda Biblioteca Ambrosiana nuovi studi storico-critici e diagnostici del dipinto San Giovanni Battista da cui sono emerse nuovi dettagli sulla tecnica esecutiva, i materiali e il suo stato di conservazione.

 

Share and participate to the discussion

L’opera, a quasi 40 anni dagli ultimi studi che l’hanno vista protagonista, è stata analizzata con le più recenti tecnologie di diagnostica scientifica per l’arte che offrono grandi opportunità di studio in chiave comparativa e contribuiscono a dare valore alla stima del dipinto. 

Immagine 0
Immagine 1
Immagine 2
Immagine 3
Immagine 4

Il dipinto, da tempo al centro delle attenzioni degli studiosi per la complessa problematica attributiva che interessa gran parte dei dipinti riferibili alla cerchia di Leonardo, è stato esaminato con tecniche non invasive, che non richiedono alcun tipo di prelievo e non alterano in nessun modo il materiale analizzato. Inoltre, la strumentazione utilizzata consente di effettuare le analisi in situ, evitando la movimentazione dell’opera fuori dalla sala espositiva con i rischi che spesso comporta. In particolare, il dipinto è stato sottoposto alla fluorescenza ultravioletta (UV), analisi del pigmento tramite fluorescenza a raggi X (XRF) e infrarosso in falso colore (IRFC), macrofotografia e microscopio digitale, riflettografia infrarossa multispettrale (IR) e alla radiografia digitale (RX).

“Banca Patrimoni Sella & C. considera da sempre la cultura come una delle chiavi per lo sviluppo dei territori e delle comunità, e ritiene la diagnostica scientifica per l’arte uno dei suoi interessi principali. Per questo motivo, collabora con rinomati studiosi e istituzioni nazionali e internazionali, come nel recente progetto con la Veneranda Biblioteca Ambrosiana” dichiara Daniela Magnetti, Direttrice Artistica di Banca Patrimoni Sella & C.

“La doverosa gratitudine della Pinacoteca Ambrosiana nei confronti di Banca Patrimoni Sella & C. si estende a tutti coloro che hanno firmato i singoli contributi di questa pubblicazione. Ma con la gratitudine è altrettanto doveroso dare testimonianza e ricordare che è proprio grazie a iniziative di mecenatismo come questa che le istituzioni museali possono trovare il necessario arricchimento culturale per la promozione del loro patrimonio” afferma Mons. Marco Navoni prefetto della Veneranda Biblioteca Ambrosiana.

Il lavoro è stato eseguito da una squadra di storici dell’arte, esperti di diagnostica, conservatori e restauratori - Edoardo Villata e Thierry Radelet, insieme ai professionisti dell’Ambrosiana e della Direzione Artistica di Banca Patrimoni Sella & C. – e si è articolato in diverse fasi: dalla revisione sugli studi precedenti, alla verifica delle ricerche e confronti critici e diagnostici, fino all’analisi del dipinto a cura del professor Thierry Radelet con gli esperti del progetto.

I risultati ottenuti sulla tecnica esecutiva, i materiali e lo stato di conservazione dell’opera offrono nuove opportunità di studio anche in chiave comparativa: il progetto ha trovato, infatti, il suo naturale completamento nel sottoporre alle medesime analisi anche l’opera Testa di Cristo Redentore, olio su tavola, acquistata dall’imprenditore e collezionista Bernardo Caprotti - omonimo del celebre allievo di Leonardo, Gian Giacomo Caprotti, detto “il Salaino” - in un'asta di Sotheby’s e donata alla Pinacoteca. Il dipinto, firmato "Salai", è l'unica opera conosciuta che reca chiaramente questa firma, un tempo attribuita anche al San Giovanni Battista, mentre, oggi, la critica non si sbilancia e parla di un generico pittore leonardesco del primo quarto del Cinquecento.

Immagine 0
Immagine 1
Immagine 2
Immagine 3

Le prime evidenze dello studio comparativo hanno fatto emergere che la mano dell’artista del San Giovanni non corrisponde a quella del Cristo Redentore, confermando la complessità di questa vicenda attributiva. Uno degli aspetti di maggior interesse per gli esperti coinvolti riguarda la qualità dei materiali usati nel dipinto della Pinacoteca Ambrosiana: attraverso l’analisi del pigmento, infatti, si è scoperto che il fondo del dipinto è stato realizzato con lapislazzuli, materiale pregiato e costoso, solitamente riservato a opere commissionate da mecenati di alto livello.

Successivamente, è stato avviato uno studio sugli esiti delle analisi effettuate, che non si sono limitate ad una semplice valutazione tecnica dell'opera, ma hanno incluso anche una riflessione critica più ampia, che ha messo in evidenza la necessità di andare oltre l’analisi scientifica per interpretare i dati considerando la storia dell'arte. Questo approccio ha permesso di sviluppare nuove prospettive e intuizioni, grazie al contributo dei diversi professionisti che hanno partecipato alla campagna di studi.

Gli esiti delle ricerche preliminari sullo stato di fatto del dipinto, delle analisi diagnostiche e dei nuovi studi che ne conseguono, sono pubblicati in un volume unico nel suo genere, completo delle nuove immagini oggetto di ricerca, aperto da testi istituzionali a cura del Monsignor Navoni, Prefetto Veneranda Biblioteca Ambrosiana, e di Federico Sella, Amministratore Delegato e Direttore Generale di Banca Patrimoni Sella & C., e contenente i contributi di ricerca di Edoardo Villata (Università Cattolica del Sacro Cuore, Milano e Northeastern University, Cina), Daniela Magnetti e Filippo Timo (Direzione Artistica di Banca Patrimoni Sella & C.), Roberto Giustetto (Università degli Studi di Torino), Antonio Forcellino (Accademia Nazionale del Lincei). Il libro sarà destinato sia alla comunità scientifica e accademica, sia a un pubblico di appassionati, curiosi e collezionisti, e distribuito da parte di Banca Patrimoni Sella & C. alle principali biblioteche d’arte nazionali e internazionali.