Changeset 34401


Ignore:
Timestamp:
2020-09-17T16:36:39+12:00 (4 years ago)
Author:
davidb
Message:

Updated to work with DEAM metadata

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/model-sites-dev/mars/collect/deam/etc/collectionConfig.xml

    r34395 r34401  
    11<?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" xmlns:gslib="http://www.greenstone.org/skinning">
    3     <metadataList>
    4         <metadata name="creator"></metadata>
    5         <metadata name="maintainer"></metadata>
    6         <metadata name="public">true</metadata>
    7     </metadataList>
    8     <displayItemList>
    9         <displayItem assigned="true" lang="en" name="name">deam</displayItem>
    10         <displayItem assigned="true" lang="en" name="description"></displayItem>
    11                 <!-- shortDescription is used as a tooltip for collection icon on home page-->
    12                 <displayItem assigned="true" lang="en" name="shortDescription">deam</displayItem>
    13     </displayItemList>
    14     <!-- Global format statement -->
    15     <format>
    16       <gsf:template name="choose-title">
    17         <gsf:choose-metadata>
    18           <gsf:metadata name="dc.Title"/>
    19           <gsf:metadata name="exp.Title"/>
    20           <gsf:metadata name="ex.dc.Title"/>
    21           <gsf:metadata name="Title"/>
    22           <gsf:default>Untitled</gsf:default>
    23         </gsf:choose-metadata>
    24       </gsf:template>
    25       <!-- modify the collection description template to output the "this collection contains X documents and was last built Y days ago" message -->
    26       <xsl:template name="coll-description">
    27         <p><gslib:collectionDescriptionTextAndServicesLinks/></p>
    28         <xsl:variable name="raw_date"><gslib:collectionMeta name="buildDate"/></xsl:variable>
    29         <xsl:variable name="formatted_date"><xsl:value-of select="util:formatTimeStamp($raw_date, 0, 3, /page/@lang)"/></xsl:variable>
    30         <xsl:variable name="numdocs"><gslib:collectionMeta name="numDocs"/></xsl:variable>
    31         <p><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'about.standarddescriptiondays', concat($numdocs, ';', $formatted_date))"/></p>
    32       </xsl:template>   
    33     </format>
    34     <search type="lucene">
    35         <level name="document">
    36             <displayItem lang="en" name="name">document</displayItem>
    37         </level>
    38         <level name="section">
    39             <displayItem lang="en" name="name">section</displayItem>
    40         </level>
    41         <defaultLevel name="document"/>
    42         <index name="text">
    43             <displayItem lang="en" name="name">text</displayItem>
    44         </index>
    45         <index name="dc.Title,ex.dc.Title,Title">
    46             <displayItem lang="en" name="name">titles</displayItem>
    47         </index>
    48         <index name="Source">
    49             <displayItem lang="en" name="name">filenames</displayItem>
    50         </index>
    51         <defaultIndex name="text"/>
    52         <sort name="rank">
    53           <displayItem lang="en" name="name">rank</displayItem>
    54                 </sort>
    55                 <sort name="none">
    56           <displayItem lang="en" name="name">natural (build) order</displayItem>
    57         </sort>
    58         <searchType name="plain"/>
    59         <searchType name="simpleform"/>
    60         <searchType name="advancedform"/>
    61         <format>
    62             <gsf:template match="documentNode">
    63                 <td valign="top">
    64                     <gsf:link type="document">
    65                         <gsf:icon type="document"/>
    66                     </gsf:link>
    67                 </td>
    68                 <td>
    69                     <gsf:link type="document">
    70                         <xsl:call-template name="choose-title"/>
    71                     </gsf:link>
    72                 </td>
    73             </gsf:template>
    74         </format>
    75     </search>
    76 
    77     <infodb type="jdbm"/>
    78 
    79     <import>
    80         <pluginList>
    81             <plugin name="ZIPPlugin"/>
    82             <plugin name="GreenstoneXMLPlugin"/>
    83             <plugin name="TextPlugin"/>
    84             <plugin name="HTMLPlugin"/>
    85             <plugin name="EmailPlugin"/>
    86             <plugin name="PDFv2Plugin"/>
    87             <!-- Configuring an UnknownConverterPlugin for docx processing with Tika -->
    88             <plugin name="UnknownConverterPlugin">
    89               <option name="-exec_cmd" value="java -jar $GSDLHOME/ext/tika/tika-app-*.jar --html --pretty-print --encoding=UTF-8 %%INPUT_FILE &gt; %%OUTPUT"/>
    90               <option name="-convert_to" value="html"/>
    91               <option name="-mime_type" value="application/vnd.openxmlformats-officedocument.wordprocessingml.document"/>
    92               <option name="-srcicon" value="icondocx"/>
    93               <option name="-process_extension" value="docx"/>
    94             </plugin>
    95             <!-- If you have Tesseract installed (for linux 64 bit machines, there's a tesseract tarball available
    96                  for download from http://trac.greenstone.org/browser/gs2-extensions/tesseract/trunk/tesseract-linux-x64.tar.gz
    97                  Untested: for windows, you can try installing Tesseract from Win binaries at https://github.com/UB-Mannheim/tesseract/wiki
    98                  For Windows and Mac, be sure to add tesseract's bin folder to your PATH and also set the TESSDATA_PREFIX environment variable to
    99                  the folder "tessdata" wherein you also need to have the "<3-letter-langcode>.traineddata" files for the languages you want
    100                  to OCR.) The Linux 64 bit tesseract extension tarball already does all this for you.
    101                  Once you have Tesseract installed, you can activate the following UnknownConverterPlugin to use Tika with Tesseract to OCR PDFs
    102                  that contain images by removing the XML comment symbols.
    103             -->
    104             <!--
    105             <plugin name="UnknownConverterPlugin">
    106                 <option name="-exec_cmd" value="java -jar $GSDLHOME/ext/tika/tika-app-*.jar &#45;&#45;config=$GSDLHOME/ext/tika/ocr-pdfs-config.xml &#45;&#45;html %%INPUT_FILE > %%OUTPUT"/>
    107                 <option name="-convert_to" value="html"/>
    108                 <option name="-mime_type" value="application/pdf"/>
    109                 <option name="-srcicon" value="iconpdf"/>
    110                 <option name="-process_extension" value="pdf"/>
    111             </plugin>
    112             -->
    113             <plugin name="RTFPlugin"/>
    114             <plugin name="WordPlugin"/>
    115             <plugin name="PostScriptPlugin"/>
    116             <plugin name="PowerPointPlugin"/>
    117             <plugin name="ExcelPlugin"/>
    118             <plugin name="ImagePlugin"/>
    119             <plugin name="ISISPlugin"/>
    120             <plugin name="NulPlugin"/>
    121             <plugin name="OAIPlugin"/>
    122             <plugin name="MetadataXMLPlugin"/>
    123             <plugin name="ArchivesInfPlugin"/>
    124             <plugin name="DirectoryPlugin"/>
    125         </pluginList>
    126     </import>
    127     <browse>
    128         <classifier name="List">
    129             <option name="-metadata" value="dc.Title,Title"/>
    130             <option name="-partition_type_within_level" value="approximate_size"/>
    131             <option name="-numeric_partition_type_within_level" value="approximate_size"/>
    132             <!-- only use one dc.Title/Title value. change to allvalues to use all of them.-->
    133             <option name="-metadata_selection_mode_within_level" value="firstvalue"/>
    134             <!--
    135                 If you are classifying by multiple title values for each document, then
    136                 (1) edit above line to: <option name="-metadata_selection_mode_within_level" value="allvalues"/>
    137                 (2) create a custom <format> statement immediately below this <option> element,
    138                 and copy the existing browse <format>'s <gsf:template match="documentNode"> into it
    139                 (3) then change its choose-title line (<xsl:call-template name="choose-title"/>)
    140                 to the following (note pos=classifiedBy) preceded by the XML comment:
    141                 Instead of using choose-title here, we want to display the title that the document was classified on
    142                 <gsf:metadata name="dc.Title,Title" pos="classifiedBy"/>
    143             -->
    144             <!--<format>
    145               <gsf:template match="documentNode">
    146                 <td valign="top">
    147                   <gsf:link type="document">
    148                 <gsf:icon type="document"/>
    149                   </gsf:link>
    150                 </td>
    151                 <td valign="top">
    152                   <gsf:link type="source">
    153                 <gsf:choose-metadata>
    154                   <gsf:metadata name="thumbicon"/>
    155                   <gsf:metadata name="srcicon"/>
    156                 </gsf:choose-metadata>
    157                   </gsf:link>
    158                 </td>
    159                 <td valign="top">
    160                   <gsf:link type="document">
    161                 Instead of using choose-title here, we want to display the title that the document was classified on
    162                 <gsf:metadata name="dc.Title,Title" pos="classifiedBy"/>
    163                 <gsf:switch>
    164                   <gsf:metadata name="Source"/>
    165                   <gsf:when test="exists"><br/><i>(<gsf:metadata name="Source"/>)</i></gsf:when>
    166                 </gsf:switch>
    167                   </gsf:link>
    168                 </td>
    169               </gsf:template>
    170             </format>
    171             -->
    172         </classifier>
    173         <classifier name="List">
    174             <option name="-metadata" value="Source"/>
    175             <option name="-partition_type_within_level" value="approximate_size"/>
    176             <option name="-numeric_partition_type_within_level" value="approximate_size"/>
     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">DEAM dataset</displayItem>
     10    <displayItem assigned="true" lang="en" name="description">
     11      <p>
     12    This colletion is sourced from the
     13        <a href="http://cvml.unige.ch/databases/DEAM/">media-eval Database for Emotional Analysis of Music (DEAM)</a> dataset.
     14        It provides a way to explore the developing music-content enrichment capabilities of Greenstone3.
     15      </p>
     16
     17    </displayItem>
     18  </displayItemList>
     19  <search type="lucene">
     20    <level name="document">
     21      <displayItem lang="en" name="name">document</displayItem>
     22    </level>
     23<!--
     24    <level name="section">
     25      <displayItem lang="en" name="name">section</displayItem>
     26    </level>
     27-->
     28    <defaultLevel name="document"/>
     29    <index name="Songtitle,Track,title,Artist,artist,Genre,genre,Album,album">
     30      <displayItem lang="en" name="name">all fields</displayItem>
     31    </index>
     32    <index name="Songtitle,Track,title">
     33      <displayItem lang="en" name="name">titles</displayItem>
     34    </index>
     35    <index name="Artist,artist">
     36      <displayItem lang="en" name="name">artists</displayItem>
     37    </index>
     38    <index name="Genre,genre">
     39      <displayItem lang="en" name="name">genre</displayItem>
     40    </index>
     41    <index name="Album,album">
     42      <displayItem lang="en" name="name">album</displayItem>
     43    </index>
     44    <defaultIndex name="Songtitle,Track,title,Artist,artist,Genre,genre,Album,album"/>
     45    <searchType name="plain"/>
     46    <searchType name="simpleform"/>
     47    <searchType name="advancedform"/>
     48    <format>
     49      <gsf:template match="documentNode">
     50    <td valign="top">
     51      <gsf:link type="document">
     52        <gsf:icon type="document"/>
     53      </gsf:link>
     54    </td>
     55    <td>
     56      <gsf:switch>
     57        <gsf:metadata name="Title" select="ancestors" separator=": "/>
     58        <gsf:when test="exists">
     59          <gsf:metadata name="Title" select="ancestors" separator=": "/>:
     60        </gsf:when>
     61      </gsf:switch>
     62      <gsf:link type="document">
     63        <gsf:metadata name="Title"/>
     64      </gsf:link>
     65    </td>
     66      </gsf:template>
     67    </format>
     68  </search>
     69  <infodb type="jdbm"/>
     70  <import>
     71    <pluginList>
     72      <plugin name="ZIPPlugin"/>
     73      <plugin name="GreenstoneXMLPlugin"/>
     74
     75      <plugin name="EmbeddedMetadataPlugin"/>
     76      <plugin name="MetadataCSVPlugin"/>
     77
     78      <plugin name="EssentiaPlugin">
     79    <option name="-compute_essentia_features" value="true"/>
     80        <option name="-enable_cache"/>
     81      </plugin>
     82
     83      <plugin name="TextPlugin"/>
     84      <plugin name="HTMLPlugin"/>
     85      <plugin name="EmailPlugin"/>
     86      <plugin name="PDFv2Plugin"/>
     87      <plugin name="RTFPlugin"/>
     88      <plugin name="WordPlugin"/>
     89      <plugin name="PostScriptPlugin"/>
     90      <plugin name="PowerPointPlugin"/>
     91      <plugin name="ExcelPlugin"/>
     92      <plugin name="ImagePlugin"/>
     93      <plugin name="ISISPlugin"/>
     94      <plugin name="NulPlugin"/>
     95      <plugin name="MetadataXMLPlugin"/>
     96      <plugin name="ArchivesInfPlugin"/>
     97      <plugin name="DirectoryPlugin"/>
     98    </pluginList>
     99  </import>
     100  <importOption name="OIDtype" value="assigned"/>
     101  <importOption name="OIDmetadata" value="Identifier"/>
     102
     103  <browse>
     104
     105        <classifier name="AZCompactList">
     106            <option name="-metadata" value="ex.Songtitle;ex.Track;ex.title"/>
     107            <option name="-buttonname" value="Titles"/>
     108            <option name="-mingroup" value="2"/>
     109        </classifier>
     110        <classifier name="AZCompactList">
     111            <option name="-metadata" value="ex.Artist;ex.artist"/>
     112            <option name="-buttonname" value="Artists"/>
     113            <option name="-mingroup" value="1"/>
     114            <option name="-minnesting" value="40"/>
     115        </classifier>
     116        <classifier name="AZCompactList">
     117            <option name="-metadata" value="ex.Genre;ex.genre"/>
     118            <option name="-buttonname" value="Genre"/>
     119            <option name="-mingroup" value="1"/>
     120            <option name="-minnesting" value="40"/>
     121        </classifier>
     122        <classifier name="AZCompactList">
     123            <option name="-metadata" value="ex.Album;ex.album"/>
     124            <option name="-buttonname" value="Albums"/>
     125            <option name="-mingroup" value="1"/>
     126            <option name="-minnesting" value="40"/>
     127        </classifier>
     128        <classifier name="AZCompactList">
     129            <option name="-metadata" value="deam.Year"/>
     130            <option name="-buttonname" value="Dataset Year"/>
     131            <option name="-mingroup" value="1"/>
     132            <option name="-minnesting" value="40"/>
    177133        </classifier>
    178134        <format>
     
    193149                <td valign="top">
    194150                    <gsf:link type="document">
    195                         <!-- Defined in the global format statement -->
    196                         <xsl:call-template name="choose-title"/>
    197                         <gsf:switch>
    198                             <gsf:metadata name="Source"/>
    199                             <gsf:when test="exists"><br/><i>(<gsf:metadata name="Source"/>)</i></gsf:when>
    200                         </gsf:switch>
    201                     </gsf:link>
    202                 </td>
    203             </gsf:template>
    204             <gsf:template match="classifierNode[@classifierStyle = 'VList']">
    205                 <td valign="top">
    206                     <gsf:link type="classifier" style="static">
     151                        <gsf:choose-metadata>
     152                            <gsf:metadata name="Songtitle"/>
     153                            <gsf:metadata name="Track"/>
     154                            <gsf:metadata name="title"/>
     155                            <gsf:default>Untitled</gsf:default>
     156                        </gsf:choose-metadata>
     157                    </gsf:link>
     158                </td>
     159            </gsf:template>
     160            <gsf:template match="classifierNode">
     161                <td valign="top">
     162                    <gsf:link type="classifier">
    207163                        <gsf:icon type="classifier"/>
    208164                    </gsf:link>
    209165                </td>
    210                 <td valign="top">
    211                   <gsf:link type="classifier">
    212                                 <gsf:metadata name="Title"/>
    213                   </gsf:link>
    214                 </td>
    215             </gsf:template>
    216             <gsf:template match="classifierNode[@classifierStyle = 'HList']">
    217                 <gsf:link type="classifier" style="static">
     166                <td valign="top">(<gsf:metadata name="numleafdocs"/>)</td>
     167                <td valign="top">
     168                    <gsf:link type="source">
     169                        <gsf:choose-metadata>
     170                            <gsf:metadata name="thumbicon"/>
     171                            <gsf:metadata name="srcicon"/>
     172                        </gsf:choose-metadata>
     173                    </gsf:link>
     174                </td>
     175                <td valign="top">
     176                    <gsf:link type="classifier">
     177                      <gsf:metadata name="Title"/>
     178                    </gsf:link>
     179<!--
     180                    <gsf:switch>
     181                        <gsf:metadata name="Source"/>
     182                        <gsf:when test="exists">
     183                            <br/>
     184                            <i>(<gsf:metadata name="Source"/>)</i>
     185                        </gsf:when>
     186                    </gsf:switch>
     187-->
     188                </td>
     189            </gsf:template>
     190            <gsf:template match="classifierNode" mode="horizontal">
     191                <gsf:link type="horizontal">
    218192                    <gsf:metadata name="Title"/>
    219193                </gsf:link>
    220194            </gsf:template>
    221195        </format>
    222     </browse>
     196</browse>
     197
     198
    223199    <display>
    224200        <format>
    225             <gsf:option name="TOC" value="true"/>
    226             <gsf:option name="allowUserComments" value="false"/>
    227             <gsf:option name="allowDocumentEditing" value="true"/>
    228             <gsf:option name="allowMapGPSEditing" value="true"/>
    229             <!--
    230                 Overwriting this template allows you to change the heading of the document.
    231             -->
    232             <!--
     201            <gsf:option name="TOC" value="false"/>
    233202            <gsf:template name="documentHeading">
    234                 <span style="font-weight:bold; font-size: 120%;">
    235                     <xsl:call-template name="choose-title"/>
    236                 </span>
    237             </gsf:template>
    238             -->
     203              <!-- title will be dsiplayed in playbar at top of page, so supress showing title here -->
     204              <gsf:script src="interfaces/{$interface_name}/js/direct-edit-source.js"/>
     205              <xsl:call-template name="init-direct-edit"/>
     206            </gsf:template>
    239207           
    240             <!--
    241                 Overwriting this template can be used to redefine the content of the whole document.
    242                 This is useful for simple documents, but not recommended for more complex documents
    243                 (e.g. hierachical and paged documents) as it can prevent any sub-sections from showing.
    244             -->
    245             <!--
    246             <gsf:template name="documentContent">
    247               <div id="gs-document">
    248                 <xsl:call-template name="documentPre"/>
    249                 <xsl:call-template name="wrappedSectionImage"/>
    250                 <div id="gs-document-text">
    251                 <xsl:call-template name="documentNodeText"/>
    252                 </div>
    253                   </div>           
    254             </gsf:template>
    255             -->
    256 
    257             <!--
    258                 Overwriting this template can be used to change the content of section headings.
    259             -->
    260             <!--
    261             <gsf:template name="sectionHeading">
    262                 <xsl:call-template name="choose-title"/>
    263             </gsf:template>
    264             -->
     208            <gsf:template name="documentContentXXX">
     209                <xsl:param name="collName"/>
     210                <xsl:variable name="docID" select="@docID"/>
     211            </gsf:template>
     212
     213<!--
     214    <xsl:variable name="httpCollection"><xsl:value-of select="/page/pageResponse/collection/metadataList/metadata[@name='httpPath']"/></xsl:variable>
     215-->
     216
     217
     218
     219
    265220           
    266             <!--
    267                 Overwriting this template can be used to change the content of the top-level section.
    268             -->
    269             <!--
    270             <gsf:template name="topLevelSectionContent">
    271                 <xsl:call-template name="wrappedSectionImage"/>
    272                 <xsl:call-template name="wrappedSectionText"/>
    273             </gsf:template>
    274             -->
    275            
    276             <!--
    277                 Overwriting this template can be used to change the content of sections.
    278             -->
    279             <!--
    280             <gsf:template name="sectionContent">
    281                 <xsl:call-template name="wrappedSectionImage"/>
    282                 <xsl:call-template name="wrappedSectionText"/>
    283             </gsf:template>
    284             -->
     221            <xsl:template name="documentContent">
     222              <xsl:variable name="httpCollection">library/sites/<xsl:value-of select="$site_name"/>/collect/<xsl:value-of select="/page/pageResponse/collection/@name"/></xsl:variable>
     223              <xsl:variable name="assocFilePath"><gsf:metadata name="assocfilepath" select="root"/></xsl:variable>
     224             
     225              <xsl:variable name="cgiargFrameOffset">
     226                <xsl:value-of select="/page/pageRequest/paramList/param[@name='p.frameOffset']/@value"/>
     227              </xsl:variable>
     228              <xsl:variable name="lastfmtrackurl">
     229                <gsf:metadata name="dc.Identifier.lastfmtrackurl"/>
     230              </xsl:variable>
     231              <xsl:variable name="imageUrls">
     232                <gsf:metadata multiple="true" name="EchoNest.Artist-RelatedImage" separator="&amp;quot;, &amp;quot;"/>
     233              </xsl:variable>
     234              <xsl:variable name="echonestid">
     235                <gsf:metadata name="dc.Identifier"/>
     236              </xsl:variable>
     237
     238              <!--
     239              <xsl:variable name="assocFilePath"><gsf:metadata name="assocfilepath" select="root"/></xsl:variable>
     240              -->
     241             
     242              <div class="documenttext" style="padding-bottom: 20px; width:100%;">
     243                <style>
     244                  .doc-metadata td { padding: 7px; }
     245                </style>
     246                <table class="doc-metadata">
     247                  <tbody>
     248                <tr style="background-color:#eee">
     249                  <td>
     250                    Title
     251                  </td>
     252                  <td>
     253                    <gsf:choose-metadata>
     254                      <gsf:metadata name="Songtitle"/>
     255                      <gsf:metadata name="Track"/>
     256                      <gsf:metadata name="title"/>
     257                      <gsf:default>Untitled</gsf:default>
     258                    </gsf:choose-metadata>
     259                  </td>
     260                </tr>
     261               
     262                <tr style="background-color:#fff">
     263                  <td>Artist</td>
     264                  <td>
     265                    <gsf:choose-metadata>
     266                      <gsf:metadata name="Artist"/>
     267                      <gsf:metadata name="artist"/>
     268                      <gsf:default>Unknown</gsf:default>
     269                    </gsf:choose-metadata>
     270                  </td>
     271                </tr>
     272
     273                <tr style="background-color:#eee">
     274                  <td>
     275                    Genre
     276                  </td>
     277                  <td>
     278                    <gsf:choose-metadata>
     279                      <gsf:metadata name="Genre"/>
     280                      <gsf:metadata name="genre"/>
     281                      <gsf:default>Unknown</gsf:default>
     282                    </gsf:choose-metadata>
     283                  </td>
     284                </tr>
     285               
     286                <tr style="background-color:#fff">
     287                  <td>Album</td>
     288                  <td>
     289                    <gsf:choose-metadata>
     290                      <gsf:metadata name="Album"/>
     291                      <gsf:metadata name="album"/>
     292                      <gsf:default>Unknown</gsf:default>
     293                    </gsf:choose-metadata>
     294                  </td>
     295                </tr>
     296               
     297                <tr style="background-color:#eee">
     298                  <td>Essentia MFCC Features:</td><td><a href="{$httpCollection}/index/assoc/{$assocFilePath}/pessentia.json">Download</a></td>
     299                </tr>
     300                  </tbody>
     301                </table>
     302              </div>
     303
     304             
     305              <div class="documenttext">
     306
     307
     308        <div id="demo">
     309            <div id="waveform">
     310                <!-- Here be the waveform -->
     311        <xsl:text> </xsl:text>
     312            </div>
     313        <div id="wave-timeline"><xsl:text> </xsl:text></div>
     314        <div id="wave-spectrogram"><xsl:text> </xsl:text></div>
     315        <div id="wave-harmonic-pitch-class-profile"><xsl:text> </xsl:text></div>
     316
     317        <div>
     318              <div class="controls">
     319        <button class="btn btn-primary" data-action="play">
     320                  <i class="glyphicon glyphicon-play"></i>
     321                  Play /
     322                  <i class="glyphicon glyphicon-pause"></i>
     323                  Pause
     324        </button>
     325              </div>
     326        </div>
     327        </div>
     328                       
     329    <gsf:variable name="mp3url"><xsl:value-of select="$httpCollection"/>/index/assoc/<xsl:value-of select="$assocFilePath"/>/audio.mp3</gsf:variable>
     330
     331    <script src="ext/audio/wavesurfer-player.js">
     332      <xsl:text>  </xsl:text>
     333    </script>
     334    <gsf:script>
     335      document.addEventListener('DOMContentLoaded', function() {
     336        // Load audio from URL
     337        wavesurfer.load(gs.variables.mp3url);
     338      });
     339    </gsf:script>
     340              </div>
     341            </xsl:template>
     342
    285343        </format>
    286344    </display>
    287     <replaceListRef id="gs2-standard"/>
    288     <replaceListRef id="gs2-image" />
    289     <serviceRackList>
    290         <!-- comment out the following serviceRack if you want to disable RSS for this collection -->     
    291             <serviceRack name="RSSRetrieve"/>
    292         <!-- comment out the following serviceRack if you want to disable OAI for this collection -->
    293         <serviceRack name="OAIPMH">
    294           <setName>deam</setName>
    295           <setDescription></setDescription>
    296           <!-- uncomment the following and set the name attribute if
    297                you want this collection to be part of a super set. -->
    298           <!--<oaiSuperSet name="xxx"/>-->       
    299             <ListMetadataFormats>
    300               <!--What metadata sets to support for this collection. You can select any set that is specified in OAIConfig.xml. To use a new set, you need to add a set definition in OAIConfig.xml, then reference it here, like:
    301                    <metadataFormat metadataPrefix="prefix"/> -->
    302              
    303               <metadataFormat metadataPrefix="oai_dc">
    304                 <!-- you can customize the mappings by adding elements in here. See resources/oai/OAIConfig.xml for the format-->
    305               </metadataFormat>
    306             </ListMetadataFormats>
    307         </serviceRack>
    308     </serviceRackList>
     345
     346  <replaceListRef id="gs2-standard"/>
     347  <serviceRackList>
     348    <!-- comment out the following serviceRack if you want to disable OAI for this collection -->
     349    <serviceRack name="OAIPMH">
     350      <ListMetadataFormats>
     351    <!--What metadata sets to support is collection specific. To support other metadata schema, simply add a metadataFormat element here.
     352    The support of unqualified Dublin Core metadata set is mandatory in the oai specification.
     353    -->
     354    <metadataFormat metadataPrefix="oai_dc">
     355      <metadataPrefix>oai_dc</metadataPrefix>
     356      <schema>http://www.openarchives.org/OAI/2.0/oai_dc.xsd</schema>
     357      <metadataNamespace>http://www.openarchives.org/OAI/2.0/oai_dc/</metadataNamespace>
     358      <!--<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>             
     359      -->
     360      <mappingList>
     361        <!--
     362        The mapping is in the form: <publicly supported metadata name>,<mapped metadata name>, short as <A>,<B>
     363        The first metadata name is medatory; if there is no mapped name followed, then the first name must be used by the records and
     364        searchable in the database, otherwise it is the mapped name stored in the database. The number of mapping elements matches the
     365        number of external metadata of the records. If only one name is present, the returned metadata will use this name plus the retrieved value;
     366        if both <A>,<B> are present, the returned metadata will use <A>'s name plus <B>'s value retrieved from database.
     367       
     368        **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.
     369       
     370        **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.
     371        -->
     372        <mapping>Songtitle,Track,title</mapping>
     373        <!-- 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. -->
     374      </mappingList>
     375    </metadataFormat>
     376      </ListMetadataFormats>
     377    </serviceRack>
     378  </serviceRackList>
    309379</CollectionConfig>
Note: See TracChangeset for help on using the changeset viewer.