root/main/trunk/model-sites-dev/mars/collect/amc-essentia/etc/collectionConfig.xml @ 34364

Revision 34364, 13.6 KB (checked in by davidb, 6 weeks ago)

Changes reflecting new locatin of collection within a new Greenstone3 install

Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<CollectionConfig xmlns:gsf="http://www.greenstone.org/greenstone3/schema/ConfigFormat" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3  <metadataList>
4    <metadata lang="en" name="creator"></metadata>
5    <metadata lang="en" name="maintainer"></metadata>
6    <metadata lang="en" name="public">true</metadata>
7  </metadataList>
8  <displayItemList>
9    <displayItem assigned="true" lang="en" name="name">AMC-Essentia</displayItem>
10    <displayItem assigned="true" lang="en" name="description">
11      &lt;p&gt;
12        This collection shows the capabilities of the
13        &lt;a href="https://essentia.upf.edu/documentation/"&gt;Essentia&lt;/a&gt; DSP library
14        in combination with Greenstone3, based on the
15        253 MP3 files from
16        &lt;a href="https://www.australianmusiccentre.com.au/"&gt;AMC&lt;/a&gt;
17      &lt;/p&gt;
18
19      &lt;p&gt;
20        When the digital library collection is built, Essentia is used to compute
21    a range of audio fetures commonly use in Music Information Retrieval (MIR) for
22    content analysis based techniques.  These features are bound to
23    the document in the digital library correspondig to the source MP3 file.
24      &lt;/p&gt;
25
26    </displayItem>
27  </displayItemList>
28  <search type="lucene">
29    <level name="document">
30      <displayItem lang="en" name="name">document</displayItem>
31    </level>
32<!--
33    <level name="section">
34      <displayItem lang="en" name="name">section</displayItem>
35    </level>
36-->
37    <defaultLevel name="document"/>
38    <index name="dc.Title,dc.Creator,LastFM.LastFMArtistWikiSummary">
39      <displayItem lang="en" name="name">all fields</displayItem>
40    </index>
41    <index name="dc.Title">
42      <displayItem lang="en" name="name">titles</displayItem>
43    </index>
44    <index name="dc.Creator">
45      <displayItem lang="en" name="name">artists</displayItem>
46    </index>
47    <defaultIndex name="dc.Title,dc.Creator,LastFM.LastFMArtistWikiSummary"/>
48    <searchType name="plain"/>
49    <searchType name="simpleform"/>
50    <searchType name="advancedform"/>
51    <format>
52      <gsf:template match="documentNode">
53    <td valign="top">
54      <gsf:link type="document">
55        <gsf:icon type="document"/>
56      </gsf:link>
57    </td>
58    <td>
59      <gsf:switch>
60        <gsf:metadata name="Title" select="ancestors" separator=": "/>
61        <gsf:when test="exists">
62          <gsf:metadata name="Title" select="ancestors" separator=": "/>:
63        </gsf:when>
64      </gsf:switch>
65      <gsf:link type="document">
66        <gsf:metadata name="Title"/>
67      </gsf:link>
68    </td>
69      </gsf:template>
70    </format>
71  </search>
72  <infodb type="jdbm"/>
73  <import>
74    <pluginList>
75      <plugin name="ZIPPlugin"/>
76      <plugin name="GreenstoneXMLPlugin"/>
77
78      <plugin name="EmbeddedMetadataPlugin"/>
79      <plugin name="AMCMetadataJSONPlugin"/>
80     
81      <plugin name="EssentiaPlugin">
82    <!--
83            <option name="-compute_mir_features" value="true"/>
84    -->
85   
86    <option name="-compute_essentia_features" value="true"/>
87    <!--
88            <option name="-retrieve_mir_metadata" value="true"/>
89    -->
90          <option name="-enable_cache"/>
91      </plugin>
92
93      <plugin name="TextPlugin"/>
94      <plugin name="HTMLPlugin"/>
95      <plugin name="EmailPlugin"/>
96      <plugin name="PDFPlugin"/>
97      <plugin name="RTFPlugin"/>
98      <plugin name="WordPlugin"/>
99      <plugin name="PostScriptPlugin"/>
100      <plugin name="PowerPointPlugin"/>
101      <plugin name="ExcelPlugin"/>
102      <plugin name="ImagePlugin"/>
103      <plugin name="ISISPlugin"/>
104      <plugin name="NulPlugin"/>
105      <plugin name="MetadataXMLPlugin"/>
106      <plugin name="ArchivesInfPlugin"/>
107      <plugin name="DirectoryPlugin"/>
108    </pluginList>
109  </import>
110  <browse>
111
112        <classifier name="AZCompactList">
113            <option name="-metadata" value="dc.Title;amc.title;ex.amc.title;Title"/>
114            <option name="-mingroup" value="2"/>
115        </classifier>
116        <classifier name="AZCompactList">
117            <option name="-metadata" value="dc.Creator,amc.artist,ex.amc.artist"/>
118            <option name="-buttonname" value="Artists"/>
119            <option name="-mingroup" value="1"/>
120            <option name="-minnesting" value="40"/>
121        </classifier>
122        <format>
123            <gsf:template match="documentNode">
124                <td valign="top">
125                    <gsf:link type="document">
126                        <gsf:icon type="document"/>
127                    </gsf:link>
128                </td>
129                <td valign="top">
130                    <gsf:link type="source">
131                        <gsf:choose-metadata>
132                            <gsf:metadata name="thumbicon"/>
133                            <gsf:metadata name="srcicon"/>
134                        </gsf:choose-metadata>
135                    </gsf:link>
136                </td>
137                <td valign="top">
138                    <gsf:link type="document">
139                        <gsf:choose-metadata>
140                            <gsf:metadata name="dc.Title"/>
141                            <gsf:metadata name="amc.title"/>
142                            <gsf:metadata name="exp.Title"/>
143                            <gsf:metadata name="Title"/>
144                            <gsf:default>Untitled</gsf:default>
145                        </gsf:choose-metadata>
146                    </gsf:link>
147                </td>
148            </gsf:template>
149            <gsf:template match="classifierNode">
150                <td valign="top">
151                    <gsf:link type="classifier">
152                        <gsf:icon type="classifier"/>
153                    </gsf:link>
154                </td>
155                <td valign="top">(<gsf:metadata name="numleafdocs"/>)</td>
156                <td valign="top">
157                    <gsf:link type="source">
158                        <gsf:choose-metadata>
159                            <gsf:metadata name="thumbicon"/>
160                            <gsf:metadata name="srcicon"/>
161                        </gsf:choose-metadata>
162                    </gsf:link>
163                </td>
164                <td valign="top">
165                    <gsf:link type="classifier">
166                        <gsf:choose-metadata>
167                            <gsf:metadata name="dc.Title"/>
168                            <gsf:metadata name="amc.title"/>
169                            <gsf:metadata name="exp.Title"/>
170                            <gsf:metadata name="Title"/>
171                            <gsf:default>Untitled</gsf:default>
172                        </gsf:choose-metadata>
173                    </gsf:link>
174                    <gsf:switch>
175                        <gsf:metadata name="Source"/>
176                        <gsf:when test="exists">
177                            <br/>
178                            <i>(<gsf:metadata name="Source"/>)</i>
179                        </gsf:when>
180                    </gsf:switch>
181                </td>
182            </gsf:template>
183            <gsf:template match="classifierNode" mode="horizontal">
184                <gsf:link type="horizontal">
185                    <gsf:metadata name="Title"/>
186                </gsf:link>
187            </gsf:template>
188        </format>
189<!--
190   
191    <classifier name="List">
192      <option name="-metadata" value="dc.Title;Title"/>
193      <option name="-partition_type_within_level" value="approximate_size"/>
194      <option name="-removeprefix" value="&quot;"/>
195    </classifier>
196    <classifier name="AZCompactList">
197      <option name="-metadata" value="dc.Type.genre"/>
198      <option name="-buttonname" value="Genre"/>
199    </classifier>
200    <format>
201      <gsf:template match="documentNode">
202    <td valign="top">
203      <gsf:link type="document">
204        <gsf:icon type="document"/>
205      </gsf:link>
206    </td>
207    <td valign="top">
208      <gsf:metadata name="srclink"/>
209      <gsf:choose-metadata>
210        <gsf:metadata name="thumbicon"/>
211        <gsf:metadata name="srcicon"/>
212      </gsf:choose-metadata>
213      <gsf:metadata name="/srclink"/>
214    </td>
215    <td valign="top">
216      <gsf:choose-metadata>
217        <gsf:metadata name="dc.Title"/>
218        <gsf:metadata name="exp.Title"/>
219        <gsf:metadata name="Title"/>
220        <gsf:default>Untitled</gsf:default>
221      </gsf:choose-metadata>
222      <gsf:switch>
223        <gsf:metadata name="Source"/>
224        <gsf:when test="exists">
225          <br/>
226          <i>(<gsf:metadata name="Source"/>)</i>
227        </gsf:when>
228      </gsf:switch>
229    </td>
230      </gsf:template>
231      <gsf:template match="classifierNode">
232    <td valign="top">
233      <gsf:link type="classifier">
234        <gsf:icon type="classifier"/>
235      </gsf:link>
236    </td>
237    <td valign="top">
238      <gsf:metadata name="srclink"/>
239      <gsf:choose-metadata>
240        <gsf:metadata name="thumbicon"/>
241        <gsf:metadata name="srcicon"/>
242      </gsf:choose-metadata>
243      <gsf:metadata name="/srclink"/>
244    </td>
245    <td valign="top">
246      <gsf:choose-metadata>
247        <gsf:metadata name="dc.Title"/>
248        <gsf:metadata name="exp.Title"/>
249        <gsf:metadata name="Title"/>
250        <gsf:default>Untitled</gsf:default>
251      </gsf:choose-metadata>
252      <gsf:switch>
253        <gsf:metadata name="Source"/>
254        <gsf:when test="exists">
255          <br/><i>(<gsf:metadata name="Source"/>)</i>
256        </gsf:when>
257      </gsf:switch>
258    </td>
259      </gsf:template>
260      <gsf:template match="classifierNode" mode="horizontal">
261    <gsf:link type="horizontal">
262      <gsf:metadata name="Title"/>
263    </gsf:link>
264      </gsf:template>
265      </format>
266      -->
267</browse>
268
269
270    <display>
271        <format>
272            <gsf:option name="TOC" value="false"/>
273            <gsf:template name="documentHeading">
274              <!-- title will be dsiplayed in playbar at top of page, so supress showing title here -->
275              <gsf:script src="interfaces/{$interface_name}/js/direct-edit-source.js"/>
276              <xsl:call-template name="init-direct-edit"/>
277            </gsf:template>
278           
279            <gsf:template name="documentContentXXX">
280                <xsl:param name="collName"/>
281                <xsl:variable name="docID" select="@docID"/>
282            </gsf:template>
283
284<!--
285    <xsl:variable name="httpCollection"><xsl:value-of select="/page/pageResponse/collection/metadataList/metadata[@name='httpPath']"/></xsl:variable>
286-->
287
288
289
290
291           
292            <xsl:template name="documentContent">
293              <xsl:variable name="httpCollection">library/sites/<xsl:value-of select="$site_name"/>/collect/<xsl:value-of select="/page/pageResponse/collection/@name"/></xsl:variable>
294              <xsl:variable name="assocFilePath"><gsf:metadata name="assocfilepath" select="root"/></xsl:variable>
295             
296              <xsl:variable name="cgiargFrameOffset">
297                <xsl:value-of select="/page/pageRequest/paramList/param[@name='p.frameOffset']/@value"/>
298              </xsl:variable>
299              <xsl:variable name="lastfmtrackurl">
300                <gsf:metadata name="dc.Identifier.lastfmtrackurl"/>
301              </xsl:variable>
302              <xsl:variable name="imageUrls">
303                <gsf:metadata multiple="true" name="EchoNest.Artist-RelatedImage" separator="&amp;quot;, &amp;quot;"/>
304              </xsl:variable>
305              <xsl:variable name="echonestid">
306                <gsf:metadata name="dc.Identifier"/>
307              </xsl:variable>
308
309              <!--
310              <xsl:variable name="assocFilePath"><gsf:metadata name="assocfilepath" select="root"/></xsl:variable>
311              -->
312             
313              <div class="documenttext" style="padding-bottom: 20px; width:100%;">
314                <style>
315                  .doc-metadata td { padding: 7px; }
316                </style>
317                <table class="doc-metadata">
318                  <tbody>
319                <tr style="background-color:#eee">
320                  <td>
321                    Title
322                  </td>
323                  <td>
324                    <gsf:metadata name="amc.title"/>
325                  </td>
326                </tr>
327               
328                <tr style="background-color:#fff">
329                  <td>Artist</td>
330                  <td><gsf:metadata name="amc.artist"/></td>
331                </tr>
332               
333                <tr style="background-color:#eee">
334                  <td>Essentia MFCC Features:</td><td><a href="{$httpCollection}/index/assoc/{$assocFilePath}/pessentia.json">Download</a></td>
335                </tr>
336                  </tbody>
337                </table>
338              </div>
339
340             
341              <div class="documenttext">
342
343
344        <div id="demo">
345            <div id="waveform">
346                <!-- Here be the waveform -->
347        <xsl:text> </xsl:text>
348            </div>
349        <div id="wave-timeline"><xsl:text> </xsl:text></div>
350
351        <div>
352              <div class="controls">
353        <button class="btn btn-primary" data-action="play">
354                  <i class="glyphicon glyphicon-play"></i>
355                  Play /
356                  <i class="glyphicon glyphicon-pause"></i>
357                  Pause
358        </button>
359              </div>
360        </div>
361        </div>
362                       
363    <gsf:variable name="mp3url"><xsl:value-of select="$httpCollection"/>/index/assoc/<xsl:value-of select="$assocFilePath"/>/audio.mp3</gsf:variable>
364
365    <script src="ext/audio/wavesurfer-player.js">
366      <xsl:text>  </xsl:text>
367    </script>
368    <gsf:script>
369      document.addEventListener('DOMContentLoaded', function() {
370        // Load audio from URL
371        wavesurfer.load(gs.variables.mp3url);
372      });
373    </gsf:script>
374              </div>
375            </xsl:template>
376
377        </format>
378    </display>
379
380  <replaceListRef id="gs2-standard"/>
381  <serviceRackList>
382    <!-- comment out the following serviceRack if you want to disable OAI for this collection -->
383    <serviceRack name="OAIPMH">
384      <ListMetadataFormats>
385    <!--What metadata sets to support is collection specific. To support other metadata schema, simply add a metadataFormat element here.
386    The support of unqualified Dublin Core metadata set is mandatory in the oai specification.
387    -->
388    <metadataFormat metadataPrefix="oai_dc">
389      <metadataPrefix>oai_dc</metadataPrefix>
390      <schema>http://www.openarchives.org/OAI/2.0/oai_dc.xsd</schema>
391      <metadataNamespace>http://www.openarchives.org/OAI/2.0/oai_dc/</metadataNamespace>
392      <!--<metadataElements>dc.Title,dc.Creator,dc.Subject,dc.Description,dc.Publisher,dc.Contributor,dc.Date,dc.Type,dc.Format,dc.Identifier,dc.Source,dc.Language,dc.Relation,dc.Coverage,dc.Rights</metadataElements>             
393      -->
394      <mappingList>
395        <!--
396        The mapping is in the form: <publicly supported metadata name>,<mapped metadata name>, short as <A>,<B>
397        The first metadata name is medatory; if there is no mapped name followed, then the first name must be used by the records and
398        searchable in the database, otherwise it is the mapped name stored in the database. The number of mapping elements matches the
399        number of external metadata of the records. If only one name is present, the returned metadata will use this name plus the retrieved value;
400        if both <A>,<B> are present, the returned metadata will use <A>'s name plus <B>'s value retrieved from database.
401       
402        **Bear in mind: if this mapping list is not present, the standard dc. metadata names (15 in total) will be used to retrieve metadata in the database.
403       
404        **The only case when this mapping is not present is that: 1. this metadata format is oai_dc; 2. the metadata is also stored in the database by Dublin Core's names.
405        -->
406        <mapping>dc.Title,Title</mapping>
407        <!-- This mapping example means that the dc.Title is requested and the value of the metadata Title, which is used in this repository, is returned as response. -->
408      </mappingList>
409    </metadataFormat>
410      </ListMetadataFormats>
411    </serviceRack>
412  </serviceRackList>
413</CollectionConfig>
Note: See TracBrowser for help on using the browser.