source: main/trunk/model-sites-dev/multimodal-mdl/collect/selfsim-my-ipod/etc/collectionConfig.xml@ 28470

Last change on this file since 28470 was 28470, checked in by davidb, 11 years ago

Changed mime type to 'text' to allow svn diff to show up changes

  • Property svn:executable set to *
  • Property svn:mime-type set to text/plain
File size: 24.8 KB
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 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="enumeratedName">3. Redefining Boundaries</displayItem>
10 <displayItem assigned="true" lang="en" name="name">Redefining Boundaries</displayItem>
11 <displayItem assigned="true" lang="en" name="description"></displayItem>
12 </displayItemList>
13 <!-- Global format statement -->
14 <format>
15 <gsf:template name="choose-title">
16
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="ex.Title"/>
22 <gsf:metadata name="Title"/>
23 <gsf:default>Untitled</gsf:default>
24 </gsf:choose-metadata>
25
26 <gsf:switch>
27 <gsf:metadata name='dc.Creator'/>
28 <gsf:when test='exists'>
29
30 <gsf:switch>
31 <gsf:metadata name="dc.Creator"/>
32 <gsf:when test="notEquals" test-value="Unknown">
33
34 by <i><gsf:metadata name='dc.Creator'/></i>
35 </gsf:when>
36 </gsf:switch>
37
38 </gsf:when>
39 </gsf:switch>
40 </gsf:template>
41 </format>
42
43 <search type="mgpp">
44 <level name="document">
45 <displayItem lang="en" name="name">document</displayItem>
46 </level>
47 <level name="section">
48 <displayItem lang="en" name="name">section</displayItem>
49 </level>
50 <defaultLevel name="document"/>
51 <index name="text">
52 <displayItem lang="en" name="name">text</displayItem>
53 </index>
54 <index name="dc.Title,ex.dc.Title,Title">
55 <displayItem lang="en" name="name">titles</displayItem>
56 </index>
57 <index name="Source">
58 <displayItem lang="en" name="name">filenames</displayItem>
59 </index>
60 <defaultIndex name="text"/>
61 <searchType name="plain"/>
62 <searchType name="simpleform"/>
63 <searchType name="advancedform"/>
64
65
66 <!-- Search Format Statement -->
67 <format>
68 <gsf:template match="documentNode">
69
70 <gsf:variable name="cgiargFrameLength">
71 <xsl:value-of select="/page/pageRequest/paramList/param[@name='p.frameLength']/@value"/>
72 </gsf:variable>
73
74 <xsl:variable name="cgiargYScaleSimImg"><xsl:choose>
75 <xsl:when test="/page/pageRequest/paramList/param[@name='p.yScaleSimImg']/@value != ''"><xsl:value-of select="/page/pageRequest/paramList/param[@name='p.yScaleSimImg']/@value"/></xsl:when>
76 <xsl:otherwise>0.5</xsl:otherwise>
77 </xsl:choose>
78 </xsl:variable>
79
80 <td valign="top">
81 <gsf:icon type="document"/>
82 </td>
83 <td>
84 <xsl:choose>
85 <xsl:when test="@rank != 'NaN'">
86 (<script>
87 var rank=<xsl:value-of select="@rank"/>;
88 var perc=(rank-0.9)*100*10;
89 document.write(perc.toFixed(1));
90 </script>%)
91 </xsl:when>
92 </xsl:choose>
93
94 <xsl:choose>
95 <xsl:when test="/page/pageResponse/service[@name='AudioQuery']">
96 <a>
97 <xsl:attribute name="href"><xsl:value-of select="$library_name"/>/collection/<xsl:value-of select="/page/pageResponse/collection/@name"/>/document/<xsl:value-of select="@nodeID"/>?p.frameOffset=<xsl:value-of select="@frameOffset"/>&amp;p.frameLength=<xsl:value-of select="/page/pageRequest/paramList/param[@name='s1.length']/@value"/>&amp;p.a=q&amp;p.s=<xsl:value-of select="/page/pageResponse/service/@name"/>&amp;p.yScaleSimImg=<xsl:value-of select="$cgiargYScaleSimImg"/>
98
99 </xsl:attribute>
100
101 <xsl:call-template name="choose-title"/>
102 </a>
103 </xsl:when>
104 <xsl:otherwise>
105 <gsf:link>
106 <xsl:call-template name="choose-title"/>
107 </gsf:link>
108 </xsl:otherwise>
109 </xsl:choose>
110
111 <gsf:switch>
112 <gsf:metadata name="artist"/>
113 <gsf:when test="exists">
114 by <gsf:metadata name="artist"/>
115 </gsf:when>
116 </gsf:switch>
117
118 <gsf:switch>
119 <gsf:metadata name="js.LabelledStructure"/>
120 <gsf:when test="exists">
121 <br/><i style="font-size: 80%">(Labelled structure: <gsf:metadata name="js.LabelledStructure"/>)</i>
122 </gsf:when>
123 </gsf:switch>
124
125 </td>
126 </gsf:template>
127 </format>
128
129 </search>
130
131 <search type="audioDB" orthogonal="true" />
132
133 <infodb type="jdbm"/>
134
135 <import>
136 <pluginList>
137 <plugin name="ZIPPlugin"/>
138 <plugin name="GreenstoneXMLPlugin"/>
139
140<!--
141 <plugin name="EmbeddedMetadataPlugin">
142 <option name="-process_exp" value="(?i)\.mp3$"/>
143 </plugin>
144-->
145
146 <plugin name="AudioDBPlugin">
147 <option name="-compute_fft_features" value="true"/>
148 <option name="-enable_streaming" value="mp3"/>
149 <option name="-compute_mir_features" value="true"/>
150 <option name="-retrieve_mir_metadata" value="true"/>
151 <option name="-enable_cache"/>
152 </plugin>
153
154 <plugin name="TextPlugin"/>
155 <plugin name="HTMLPlugin"/>
156 <plugin name="EmailPlugin"/>
157 <plugin name="PDFPlugin"/>
158 <plugin name="RTFPlugin"/>
159 <plugin name="WordPlugin"/>
160 <plugin name="PostScriptPlugin"/>
161 <plugin name="PowerPointPlugin"/>
162 <plugin name="ExcelPlugin"/>
163 <plugin name="ImagePlugin"/>
164 <plugin name="ISISPlugin"/>
165 <plugin name="NulPlugin"/>
166 <plugin name="OAIPlugin"/>
167 <plugin name="MetadataXMLPlugin"/>
168 <plugin name="ArchivesInfPlugin"/>
169 <plugin name="DirectoryPlugin"/>
170 </pluginList>
171 </import>
172
173 <importOption name="OIDtype" value="incremental"/>
174
175 <browse>
176 <classifier name="AZCompactList">
177 <option name="-metadata" value="dc.Title;ex.dc.Title;Title"/>
178 <option name="-mingroup" value="2"/>
179 <option name="-removeprefix" value="(?i)Le|La|Les|The|A\\s+"/>
180 </classifier>
181
182 <classifier name="AZCompactList">
183 <option name="-metadata" value="dc.Creator"/>
184 <option name="-buttonname" value="Artists"/>
185 <option name="-mingroup" value="1"/>
186 <option name="-minnesting" value="40"/>
187 </classifier>
188
189 <classifier name="AZCompactList">
190 <option name="-metadata" value="dc.Title.albumtitle"/>
191 <option name="-buttonname" value="Albums"/>
192 <option name="-mingroup" value="1"/>
193 <option name="-minnesting" value="40"/>
194 </classifier>
195
196
197 <!--
198
199 <classifier name="List">
200 <option name="-metadata" value="dc.Title;Title"/>
201 <option name="-partition_type_within_level" value="approximate_size"/>
202 </classifier>
203 <classifier name="List">
204 <option name="-metadata" value="dc.Creator"/>
205 <option name="-button_name" value="Artists"/>
206 <option name="-partition_type_within_level" value="approximate_size"/>
207 </classifier>
208
209 -->
210
211 <format>
212 <gsf:template match="documentNode">
213 <td valign="top">
214 <gsf:link type="document">
215 <gsf:icon type="document"/>
216 </gsf:link>
217 </td>
218 <td valign="top">
219 <gsf:link type="source">
220 <gsf:choose-metadata>
221 <gsf:metadata name="thumbicon"/>
222 <gsf:metadata name="srcicon"/>
223 </gsf:choose-metadata>
224 </gsf:link>
225 </td>
226 <td valign="top">
227 <gsf:link type="document">
228 <!-- Defined in the global format statement -->
229 <xsl:call-template name="choose-title"/>
230
231 <gsf:switch>
232 <gsf:metadata name="dc.Title" />
233 <gsf:when test="equals" test-value="Unknown">
234 <br/><i>(<gsf:metadata name="Source"/>)</i>
235 </gsf:when>
236 </gsf:switch>
237
238 </gsf:link>
239 </td>
240 </gsf:template>
241
242 <gsf:template match="classifierNode[@classifierStyle = 'VList']">
243 <td valign="top">
244 <gsf:link type="classifier">
245 <gsf:icon type="classifier"/>
246 </gsf:link>
247 </td>
248 <td valign="top">
249 <gsf:link type="source">
250 <gsf:choose-metadata>
251 <gsf:metadata name="thumbicon"/>
252 <gsf:metadata name="srcicon"/>
253 </gsf:choose-metadata>
254 </gsf:link>
255 </td>
256 <td valign="top">
257 <!-- Defined in the global format statement -->
258 <xsl:call-template name="choose-title"/>
259 <gsf:switch>
260 <gsf:metadata name="Source"/>
261 <gsf:when test="exists"><br/><i>(<gsf:metadata name="Source"/>)</i></gsf:when>
262 </gsf:switch>
263 </td>
264 </gsf:template>
265 <gsf:template match="classifierNode[@classifierStyle = 'HList']">
266 <gsf:link type="classifier">
267 <gsf:metadata name="Title"/>
268 </gsf:link>
269 </gsf:template>
270 </format>
271 </browse>
272
273 <display>
274 <format>
275 <gsf:option name="TOC" value="false"/>
276
277 <!--
278 Overwriting this template allows you to change the heading of the document.
279 -->
280 <gsf:template name="documentHeading">
281
282 <xsl:variable name="httpCollection">
283 <xsl:value-of select="/page/pageResponse/collection/metadataList/metadata[@name='httpPath']"/>
284 </xsl:variable>
285
286 <!-- Metadata derived from finger-printing -->
287
288 <xsl:call-template name="discovery-block">
289 <xsl:with-param name="httpCollection" select="$httpCollection"/>
290 </xsl:call-template>
291
292 </gsf:template>
293
294
295 <!--
296 Overwriting this template can be used to redefine the content of the whole document.
297 This is useful for simple documents, but not recommended for more complex documents
298 (e.g. hierachical and paged documents) as it can prevent any sub-sections from showing.
299 -->
300 <!--
301 <gsf:template name="documentContent">
302 <xsl:call-template name="wrappedSectionImage"/>
303 <xsl:call-template name="wrappedSectionText"/>
304 </gsf:template>
305 -->
306
307 <!--
308 Overwriting this template can be used to change the content of section headings.
309 -->
310 <!--
311 <gsf:template name="sectionHeading">
312 <xsl:call-template name="choose-title"/>
313 </gsf:template>
314 -->
315
316 <!--
317 Overwriting this template can be used to change the content of the top-level section.
318 -->
319 <!--
320 <gsf:template name="topLevelSectionContent">
321 <xsl:call-template name="wrappedSectionImage"/>
322 <xsl:call-template name="wrappedSectionText"/>
323 </gsf:template>
324 -->
325
326 <!--
327 Overwriting this template can be used to change the content of sections.
328 -->
329
330 <!--
331 <gsf:template name="sectionContent">
332 <xsl:call-template name="wrappedSectionImage"/>
333 <xsl:call-template name="wrappedSectionText"/>
334 </gsf:template>
335 -->
336
337 <xsl:template name="additionalHeaderContent">
338
339
340 <xsl:call-template name="soundmanager2-header"/>
341 <xsl:call-template name="js-mad-header"/>
342
343 <!-- Bespoke jquery-ui extension for turnstyle open/close blocks -->
344 <gsf:style src="ext/jquery-ui-extra/turnstyle-block.css"/>
345 <gsf:script src="ext/jquery-ui-extra/turnstyle-block.js"/>
346
347 <!-- The Javascript DSP files for computing chroma features in the browser -->
348 <xsl:call-template name="javascript-dsp-header"/>
349
350
351 <!-- Javascript support for running, sending input into, monitoring, and stopping Meandre flows -->
352 <gsf:script src="ext/meandre/meandre-controller.js"/>
353
354 <gsf:style>
355 .metadata-stripes td { padding: 4px; }
356 .metadata-stripes tr:nth-child(odd) {background: #CCC}
357 .metadata-stripes tr:nth-child(even) {background: #FFF}
358
359 .vis-heading { font-style:italic; }
360
361 #rightSidebar { display: none; }
362 </gsf:style>
363
364 </xsl:template>
365
366
367 <xsl:template name="documentContent">
368
369<!--
370 <xsl:call-template name="init-document-xsl-vars"/>
371-->
372
373 <!-- declare $httpCollection = $httpPath (for better consistency with other places in Greenstone XSL files) -->
374 <xsl:variable name="httpCollection">
375 <xsl:value-of select="/page/pageResponse/collection/metadataList/metadata[@name='httpPath']"/>
376 </xsl:variable>
377
378 <xsl:variable name="assocFilePath"><gsf:metadata name="assocfilepath" select="root"/></xsl:variable>
379 <xsl:variable name="Source"><gsf:metadata name="Source" select="root"/></xsl:variable>
380
381 <gsf:variable name="cgiargFrameOffset">
382 <xsl:value-of select="/page/pageRequest/paramList/param[@name='p.frameOffset']/@value"/>
383 </gsf:variable>
384
385 <gsf:variable name="cgiargFrameLength">
386 <xsl:value-of select="/page/pageRequest/paramList/param[@name='p.frameLength']/@value"/>
387 </gsf:variable>
388
389 <xsl:variable name="cgiargYScaleSimImg"><xsl:choose>
390 <xsl:when test="/page/pageRequest/paramList/param[@name='p.yScaleSimImg']/@value != ''"><xsl:value-of select="/page/pageRequest/paramList/param[@name='p.yScaleSimImg']/@value"/></xsl:when>
391 <xsl:otherwise>0.5</xsl:otherwise>
392 </xsl:choose>
393 </xsl:variable>
394
395 <!-- CAA = Content Analysis Algorithm -->
396 <xsl:variable name="cgiargCAAlgorithm">
397 <xsl:choose>
398 <xsl:when test="/page/pageRequest/paramList/param[@name='p.caAlgorithm']/@value != ''"><xsl:value-of select="/page/pageRequest/paramList/param[@name='p.caAlgorithm']/@value"/></xsl:when>
399 <xsl:otherwise>1</xsl:otherwise>
400 </xsl:choose>
401 </xsl:variable>
402
403 <!-- *** -->
404 <!-- Main Audio Player -->
405 <!-- *** -->
406
407 <div class="documenttext">
408
409 <xsl:call-template name="audio-icon-cache"/>
410
411 <ul class="playlist">
412 <li class="rounded" >
413
414 <gsf:script src="{$httpCollection}/script2/hybrid-audio-player.js"/>
415
416
417 <a id="mysong" style="padding-bottom: 2px;"
418 onclick="togglePlayVisual(document.getElementById('mainPlayButton'))"
419 href="{$httpCollection}/index/assoc/{$assocFilePath}/doc.mp3">
420 <span>
421 <img id="mainPlayButton" src="ext/diy-audio-player/images/play32.png"
422 width="32"
423 height="32"
424 onmouseover="playHighlightOn(this)"
425 onmouseout="playHighlightOff(this)"
426 onclick="var event = arguments[0] || window.event; togglePlay(event,this)"
427 style="vertical-align: middle;"/>
428 Play/Pause
429 <span id="extraPlayText"></span>
430 </span>
431 </a>
432
433 <gsf:script src="ext/diy-audio-player/script/audioDB-play.js"/>
434
435 <xsl:choose>
436 <xsl:when test="($cgiargFrameOffset != '-1') and ($cgiargFrameOffset != '')">
437
438 <div style="background-color: rgb(40%,40%,20%)">
439 <script type="text/javascript">
440 <xsl:text disable-output-escaping="yes">
441
442 var frameOffsetStr=gs.variables.cgiargFrameOffset;
443 var frameLength=gs.variables.cgiargFrameLength;
444
445 </xsl:text>
446 </script>
447
448
449 <svg xmlns="http://www.w3.org/2000/svg"
450 version="1.1"
451 id="svgAudioDBSegments"
452 width="100%" height="24"
453 onLoadXX="svgAudioDBInit()">
454 </svg>
455 </div>
456 </xsl:when>
457 </xsl:choose>
458
459 <xsl:call-template name="structuredAudioPlayerBlock"/>
460
461 <xsl:call-template name="processingPopup"/>
462
463
464 <div style="width: 100%; display: none;" id="doublePlay">
465
466 <script type="text/javascript">
467 <xsl:text disable-output-escaping="yes">
468
469 // At time of writing this code, this needs to be an OGG file to work in Firefox
470 var source = "</xsl:text><gsf:metadata name="Source" select="root"/><xsl:text disable-output-escaping="yes">";
471
472 var self_sim_png = source.replace(/\.(ogg|mp3|wav)$/,".png");
473 var collect = "</xsl:text><xsl:value-of select="/page/pageResponse/collection/@name"/><xsl:text disable-output-escaping="yes">";
474
475 </xsl:text>
476 </script>
477
478 <gsf:script src="ext/diy-audio-player/script/similarity-matrix-play.js"/>
479
480 <audio style="width: 49%;" id="leftsong" controls="controls" >
481 <source src="{$httpCollection}/index/assoc/{$assocFilePath}/doc.ogg" />
482 <source src="{$httpCollection}/index/assoc/{$assocFilePath}/doc.mp3" />
483 <source src="{$httpCollection}/index/assoc/{$assocFilePath}/doc.wav" />
484 </audio>
485 <audio style="width: 49%;" id="rightsong" controls="controls" >
486 <source src="{$httpCollection}/index/assoc/{$assocFilePath}/doc.ogg" />
487 <source src="{$httpCollection}/index/assoc/{$assocFilePath}/doc.mp3" />
488 <source src="{$httpCollection}/index/assoc/{$assocFilePath}/doc.wav" />
489 </audio>
490 </div>
491
492
493 <!-- Real Time Analysis (RTA) audio -->
494 <div style="width: 100%;">
495 <audio id="rta-audio-element" style="width: 100%;">
496 <source src="{$httpCollection}/index/assoc/{$assocFilePath}/doc.ogg"/>
497 <source src="{$httpCollection}/index/assoc/{$assocFilePath}/doc.mp3"/>
498 <source src="{$httpCollection}/index/assoc/{$assocFilePath}/doc.wav"/>
499 </audio>
500 </div>
501
502 <xsl:call-template name="workflow-block"/>
503
504 <div id="controlMarker"/>
505
506 <div id="svg-canvas-overlay" style="position: relative">
507
508 <!-- drawing canvas -->
509 <div style="width: 100%; position: absolute; left: 0px; top: 0px;">
510 <div style="position: relative">
511 <div>
512 <!-- **** better if 100% width, but issue with JS reading these values ??? -->
513 <canvas id="freq-plot"
514 width="941" height="494" style="background-color: #cccccc;"></canvas>
515 </div>
516 </div>
517 </div>
518
519 <div style="width: 100%; position: absolute; left: 0px; top: 0px;">
520 <div style="position: relative">
521 <div>
522 <!-- **** better if 100% width, but issue with JS reading these values ??? -->
523 <canvas id="freq-plot-labels"
524 width="941" height="494" style="background-color: transparent"></canvas>
525 </div>
526 </div>
527 </div>
528
529 <!-- left/right-mix circle cursor -->
530 <div style="background-color: transparent; position: relative; left: 0px; top: 0px;">
531 <svg xmlns="http://www.w3.org/2000/svg"
532 xmlns:xlink="http://www.w3.org/1999/xlink"
533 version="1.1"
534 id="svgSimilarityPlay"
535 width="100%"
536 onLoad="svgInitSimilarityPlay()">
537 <g id="simPlayLineGroup" transform="scale(1.0,{$cgiargYScaleSimImg})">
538 <!-- image loaded here, with yScaleSimImg applied to group -->
539 </g>
540 <g id="playtracker" transform="translate(0,0)"
541 onclick="dualPlay(evt)"
542 onmousemove="playTrackerMove(evt)"
543 onmouseout="playTrackerOff(evt)"
544 style="visibility: hidden">
545 <circle cx="0" cy="0" r="20"
546 stroke="black" stroke-width="1" fill="rgba(100%,100%,50%,0.7)" />
547 <circle cx="0" cy="0" r="1"
548 stroke="black" stroke-width="1" fill="black" />
549 <g transform="translate(-15,-15)" style="visibility: hidden;">
550 <image id="playtrackerBusy"
551 width="30" height="30"
552 xlink:href="ext/diy-audio-player/images/wait30trans.gif" />
553 </g>
554
555 <g>
556 <g transform="rotate(-90)">
557 <g transform="translate(-20,-25)">
558 <text id="rightTime" style="font-size: 80%;">L: secs</text>
559 </g>
560 </g>
561 <g transform="translate(-20,30)">
562 <text id="leftTime" style="font-size: 80%;">R: secs</text>
563 </g>
564 </g>
565
566 </g>
567 </svg>
568 </div>
569
570
571 </div><!-- end of svg-canvas-overly-->
572
573 <xsl:call-template name="visualization-mode-block"/>
574
575 </li>
576 </ul>
577
578 <hr/>
579
580 <xsl:call-template name="settings-form">
581 <xsl:with-param name="cgiargYScaleSimImg" select="$cgiargYScaleSimImg"/>
582 </xsl:call-template>
583
584 <xsl:call-template name="computed-data">
585 <xsl:with-param name="httpCollection" select="$httpCollection"/>
586 <xsl:with-param name="assocFilePath" select="$assocFilePath"/>
587 </xsl:call-template>
588
589
590 <hr/>
591
592<script>
593 <xsl:text disable-output-escaping="yes">
594 useFancyPlayer = 1;
595
596 /* if (window.location.toString().match(/fancyplayer/i)) { */
597 if (useFancyPlayer) {
598 PP_CONFIG.usePeakData = true;
599 PP_CONFIG.useEQData = true;
600 // PP_CONFIG.useFavIcon = true;
601 }
602
603 function onFinishSP()
604 {
605 soundManager._onfinish();
606 togglePlayVisual(mainPlayButton);
607 }
608
609 var mySoundObj;
610
611 function playFromOffset(id,frameOffset)
612 {
613 var msecOffset = 250 * frameOffset;
614 idElem = document.getElementById(id);
615 pagePlayer.handleClick({target:idElem}); /* fake a click */
616 soundManager.stopAll();
617
618 var options = {};
619 options.position = msecOffset;
620
621 soundManager.play(id,options);
622
623 togglePlayMode = "pause";
624 playHighlightOff(document.getElementById("mainPlayButton"),32);
625 }
626
627 function preSubmit(form)
628 {
629 var currentPosElem = document.getElementById("mysongCurrentPos");
630 var offsetInMSecs = currentPosElem.getAttribute("offsetInMSecs");
631 var frameOffset = Math.round(offsetInMSecs/250.0);
632 form.elements["s1.offset"].value = frameOffset;
633
634 //var lengthInSecs = document.getElementById("mysongWindowDuration").innerHTML;
635 var lengthInSecs = form.elements["mysongWindowDuration"].value;
636
637 var frameLength = Math.round(lengthInSecs*1000/250.0);
638 form.elements["s1.length"].value = frameLength;
639
640 return true;
641 }
642
643 function searchSubmit(frameOffset)
644 {
645 var form = document.getElementById("QueryForm");
646
647 form.elements["s1.offset"].value = frameOffset;
648
649 //var lengthInSecs = document.getElementById("mysongWindowDuration").innerHTML;
650 var lengthInSecs = form.elements["mysongWindowDuration"].value;
651
652 var frameLength = Math.round(lengthInSecs*1000/250.0);
653 form.elements["s1.length"].value = frameLength;
654
655 form.submit();
656 }
657
658
659
660 function rescaleImage()
661 {
662 var form = document.getElementById("RescaleForm");
663
664 var rescaleSize = form.elements["ResizeScale"].value;
665
666 var currentURL = document.location.toString();
667 var newURL;
668 if (currentURL.match(/p.yScaleSimImg=(\d+(?:\.\d+))/)) {
669 newURL = currentURL.replace(/p.yScaleSimImg=(\d+(?:\.\d+))/,"p.yScaleSimImg="+rescaleSize);
670 }
671 else {
672 var urlParts = currentURL.split("#");
673 newURL = urlParts.shift();
674 newURL += "&amp;p.yScaleSimImg="+rescaleSize;
675 newURL += "#" + urlParts.join("#");
676 }
677
678 document.location = newURL;
679 }
680
681 function updateCAAlgorithm()
682 {
683
684 var form = document.getElementById("UpdateCAForm");
685
686 var caaMenu = form.elements["caAlgorithm"];
687
688 var caIndexPos = caaMenu.options[caaMenu.selectedIndex].value
689
690 var currentURL = document.location.toString();
691 var newURL;
692 if (currentURL.match(/p.caAlgorithm=(\d+)/)) {
693 newURL = currentURL.replace(/p.caAlgorithm=(\d+)/,"p.caAlgorithm="+caIndexPos);
694 }
695 else {
696 var urlParts = currentURL.split("#");
697 newURL = urlParts.shift();
698 newURL += "&amp;p.caAlgorithm="+caIndexPos;
699 newURL += "#" + urlParts.join("#");
700 }
701
702 document.location = newURL;
703
704 }
705
706
707
708 </xsl:text>
709
710</script>
711
712
713 </div>
714 </xsl:template>
715
716
717
718
719 </format>
720 </display>
721
722 <replaceListRef id="gs2-standard"/>
723 <replaceListRef id="gs2-image" />
724 <serviceRackList>
725 <!-- comment out the following serviceRack if you want to disable OAI for this collection -->
726 <serviceRack name="OAIPMH">
727 <ListMetadataFormats>
728 <!--What metadata sets to support is collection specific. To support other metadata schema, simply add a metadataFormat element here.
729 The support of unqualified Dublin Core metadata set is mandatory in the oai specification.
730 -->
731 <metadataFormat metadataPrefix="oai_dc">
732 <metadataPrefix>oai_dc</metadataPrefix>
733 <schema>http://www.openarchives.org/OAI/2.0/oai_dc.xsd</schema>
734 <metadataNamespace>http://www.openarchives.org/OAI/2.0/oai_dc/</metadataNamespace>
735 <!--<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>-->
736 <mappingList>
737 <!--
738 The mapping is in the form: <publicly supported metadata name>,<mapped metadata name>, short as <A>,<B>
739 The first metadata name is medatory; if there is no mapped name followed, then the first name must be used by the records and
740 searchable in the database, otherwise it is the mapped name stored in the database. The number of mapping elements matches the
741 number of external metadata of the records. If only one name is present, the returned metadata will use this name plus the retrieved value;
742 if both <A>,<B> are present, the returned metadata will use <A>'s name plus <B>'s value retrieved from database.
743
744 **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.
745
746 **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.
747 -->
748 <mapping>dc:title,Title</mapping>
749 <!-- 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. -->
750 </mappingList>
751 </metadataFormat>
752 </ListMetadataFormats>
753 </serviceRack>
754 </serviceRackList>
755</CollectionConfig>
Note: See TracBrowser for help on using the repository browser.