Revision 3510
Added by ben leinfelder about 17 years ago
lib/style/skins/first/first.js | ||
---|---|---|
1 |
/* |
|
2 |
* '$RCSfile$' |
|
3 |
* Purpose: Default style sheet for KNB project web pages |
|
4 |
* Using this stylesheet rather than placing styles directly in |
|
5 |
* the KNB web documents allows us to globally change the |
|
6 |
* formatting styles of the entire site in one easy place. |
|
7 |
* Copyright: 2000 Regents of the University of California and the |
|
8 |
* National Center for Ecological Analysis and Synthesis |
|
9 |
* Authors: Matt Jones |
|
10 |
* |
|
11 |
* '$Author$' |
|
12 |
* '$Date$' |
|
13 |
* '$Revision$' |
|
14 |
* |
|
15 |
* This program is free software; you can redistribute it and/or modify |
|
16 |
* it under the terms of the GNU General Public License as published by |
|
17 |
* the Free Software Foundation; either version 2 of the License, or |
|
18 |
* (at your option) any later version. |
|
19 |
* |
|
20 |
* This program is distributed in the hope that it will be useful, |
|
21 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
22 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
23 |
* GNU General Public License for more details. |
|
24 |
* |
|
25 |
* You should have received a copy of the GNU General Public License |
|
26 |
* along with this program; if not, write to the Free Software |
|
27 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
28 |
*/ |
|
29 |
|
|
30 |
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * |
|
31 |
* * * * * * CONFIGURATION SETTINGS - EDIT THESE FOR YOUR ENVIRONMENT * * * * |
|
32 |
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ |
|
33 |
|
|
34 |
|
|
35 |
// These settings allow you to include and display common content (eg a common |
|
36 |
// header) on all your pages, in much the same way as a frameset allows you to |
|
37 |
// do, but through the use of iframes and a table instead. You can include up |
|
38 |
// to 4 external pages, each one within the header, footer, left or right areas |
|
39 |
// |
|
40 |
// looks like this (if you're using a fixed width font to display these notes): |
|
41 |
// ___________________ |
|
42 |
// | header | |
|
43 |
// |-----------------| |
|
44 |
// | | | | |
|
45 |
// | | | | |
|
46 |
// |L| content |R| |
|
47 |
// | | | | |
|
48 |
// | | | | |
|
49 |
// |-----------------| |
|
50 |
// | footer | |
|
51 |
// ------------------- |
|
52 |
// |
|
53 |
// Each area may display another page on the local site, or a page on a |
|
54 |
// different server, or may be set to display nothing (in which case an iframe |
|
55 |
// will not be drawn, although the containing table cell will still need to be |
|
56 |
// resized using the css style - see below) |
|
57 |
// |
|
58 |
// NOTES: |
|
59 |
// |
|
60 |
// 1) if you have any links in the included documents, the target attribute for |
|
61 |
// these *MUST* be set to _top, otherwise the new document will be displayed |
|
62 |
// inside the small iframe areas, instead of replacing the entire page! |
|
63 |
// - example: <a href="index.html" target="_top">HOME</a> |
|
64 |
// |
|
65 |
// 2) you will need to set the correct iframe size, in order to accomodate |
|
66 |
// each of these areas on the page. The default location for these size |
|
67 |
// settings is in the default.css file - see the "IFRAME_XXXXXX_CLASS" |
|
68 |
// variables (below) for the name of the style to edit |
|
69 |
// |
|
70 |
// 3) you will also need to set the correct table cell sizes and/or overall |
|
71 |
// table size for similar reasons. The default location for these size |
|
72 |
// settings is in the default.css file - see the "TEMPLATE_XXXXXX_CLASS" |
|
73 |
// variables (below) for the name of the style to edit |
|
74 |
|
|
75 |
|
|
76 |
|
|
77 |
//////////////////////////////////////////////////////////////////////////////// |
|
78 |
// Edit these variables to define the content that will be loaded into the |
|
79 |
// various iframes. Each may be a relative path to another page on the local |
|
80 |
// site, or a full URL to a page on a remote server, or may be set to the empty |
|
81 |
// string if no content is required at that position on the page (and in which |
|
82 |
// case an iframe will not be drawn, although an empty table cell will still |
|
83 |
// exist unless it is resized smaller) . |
|
84 |
// ( e.g. if you do not want a header to be included, set: HEADER_URL="";) |
|
85 |
//////////////////////////////////////////////////////////////////////////////// |
|
86 |
|
|
87 |
|
|
88 |
// Location of the header that will be displayed at the top of the page |
|
89 |
var HEADER_URL |
|
90 |
= "@systemidserver@/@context@@style-skins-relpath@/first/header.html"; |
|
91 |
|
|
92 |
// Location of the search box that will be displayed above the |
|
93 |
// results on the results page (optional) |
|
94 |
var SEARCHBOX_URL |
|
95 |
= ""; |
|
96 |
//= "@systemidserver@/@context@@style-skins-relpath@/esa/searchform.html"; |
|
97 |
|
|
98 |
// Location of the header that will be displayed at the top of the page |
|
99 |
var LEFTCOL_URL |
|
100 |
= ""; |
|
101 |
|
|
102 |
// Location of the header that will be displayed at the top of the page |
|
103 |
var RIGHTCOL_URL |
|
104 |
= ""; |
|
105 |
|
|
106 |
// Location of the header that will be displayed at the top of the page |
|
107 |
var FOOTER_URL |
|
108 |
= ""; |
|
109 |
|
|
110 |
|
|
111 |
|
|
112 |
|
|
113 |
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ |
|
114 |
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ |
|
115 |
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ |
|
116 |
/* * * * * * * * * MAY CHANGE THE FOLLOWING, BUT SHOULDN'T NEED TO* * * * * */ |
|
117 |
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ |
|
118 |
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ |
|
119 |
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ |
|
120 |
|
|
121 |
|
|
122 |
//////////////////////////////////////////////////////////////////////////////// |
|
123 |
// Edit the default.css file to set the correct iframe sizes to accomodate the |
|
124 |
// header, footer, left and right areas. |
|
125 |
// The following variables set the names of the styles that will be applied to |
|
126 |
// each of the iframes - they can be anythign you wish, provided you use the |
|
127 |
// same names for your classes in the css file |
|
128 |
// NOTE: these styles apply only to each container frame, *NOT* to the document |
|
129 |
// within it! |
|
130 |
//////////////////////////////////////////////////////////////////////////////// |
|
131 |
|
|
132 |
//header iframe class |
|
133 |
var IFRAME_HEADER_CLASS = "iframeheaderclass"; |
|
134 |
|
|
135 |
//(metacat only) search box iframe class |
|
136 |
var IFRAME_SEARCHBOX_CLASS = "iframesearchboxclass"; |
|
137 |
|
|
138 |
//left column iframe class |
|
139 |
var IFRAME_LEFTCOL_CLASS = "iframeleftcolclass"; |
|
140 |
|
|
141 |
//right column iframe class |
|
142 |
var IFRAME_RIGHTCOL_CLASS = "iframerightcolclass"; |
|
143 |
|
|
144 |
//footer iframe class |
|
145 |
var IFRAME_FOOTER_CLASS = "iframefooterclass"; |
|
146 |
|
|
147 |
|
|
148 |
//////////////////////////////////////////////////////////////////////////////// |
|
149 |
// Edit the default.css file to set the correct table sizes to accomodate the |
|
150 |
// header, footer, left and right iframes. |
|
151 |
// The following variables set the names of the styles that will be applied to |
|
152 |
// each of the table cells (or the table itself - see below) - they can be |
|
153 |
// anything you wish, provided you use the same names for your classes in the |
|
154 |
// css file |
|
155 |
// NOTE: these styles apply only to each table cell, *NOT* to the document |
|
156 |
// inside the iframe that is nested within it! (the exception is |
|
157 |
// TEMPLATE_CONTENTAREA_CLASS, since the content probably isn't within an |
|
158 |
// iframe - so style elements in this class will apply to the content istelf) |
|
159 |
//////////////////////////////////////////////////////////////////////////////// |
|
160 |
|
|
161 |
//entire table class |
|
162 |
var TEMPLATE_TABLE_CLASS = "templatetableclass"; |
|
163 |
|
|
164 |
//header table-cell class. Note you should not set css "width" on this, since it |
|
165 |
//includes a colspan |
|
166 |
var TEMPLATE_HEADERROW_CLASS = "templateheaderrowclass"; |
|
167 |
|
|
168 |
//left column table-cell class. Note that restricting css "height" on this may |
|
169 |
//affect visibility of the main content, since it's in the same table row |
|
170 |
var TEMPLATE_LEFTCOL_CLASS = "templateleftcolclass"; |
|
171 |
|
|
172 |
//main central content table-cell class. Note that css attributes set here may |
|
173 |
//apply to the content nested inside this cell |
|
174 |
var TEMPLATE_CONTENTAREA_CLASS = "templatecontentareaclass"; |
|
175 |
|
|
176 |
//rigth column table-cell class. Note that restricting css "height" on this may |
|
177 |
//affect visibility of the main content, since it's in the same table row |
|
178 |
var TEMPLATE_RIGHTCOL_CLASS = "templaterightcolclass"; |
|
179 |
|
|
180 |
//footer table-cell class. Note you should not set "width" on this, since it |
|
181 |
//includes a colspan |
|
182 |
var TEMPLATE_FOOTERROW_CLASS = "templatefooterrowclass"; |
|
183 |
|
|
184 |
|
|
0 | 185 |
lib/style/skins/first/edml-settings.xsl | ||
---|---|---|
1 |
<?xml version="1.0"?> |
|
2 |
<!-- |
|
3 |
* '$RCSfile$' |
|
4 |
* Authors: Matthew Brooke |
|
5 |
* Copyright: 2000 Regents of the University of California and the |
|
6 |
* National Center for Ecological Analysis and Synthesis |
|
7 |
* For Details: http://www.nceas.ucsb.edu/ |
|
8 |
* |
|
9 |
* '$Author$' |
|
10 |
* '$Date$' |
|
11 |
* '$Revision$' |
|
12 |
* |
|
13 |
* This program is free software; you can redistribute it and/or modify |
|
14 |
* it under the terms of the GNU General Public License as published by |
|
15 |
* the Free Software Foundation; either version 2 of the License, or |
|
16 |
* (at your option) any later version. |
|
17 |
* |
|
18 |
* This program is distributed in the hope that it will be useful, |
|
19 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
20 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
21 |
* GNU General Public License for more details. |
|
22 |
* |
|
23 |
* You should have received a copy of the GNU General Public License |
|
24 |
* along with this program; if not, write to the Free Software |
|
25 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
26 |
* |
|
27 |
***************************************************************************** |
|
28 |
* |
|
29 |
* This is an XSLT (http://www.w3.org/TR/xslt) stylesheet that provides a |
|
30 |
* single, central location for setting all installation-specific paths for |
|
31 |
* XSLT stylesheets. It is intended to be imported (using the |
|
32 |
* <xsl:import href="..." /> element) into other XSLT stylesheets used in the |
|
33 |
* transformation of xml files that are valid with respect to the |
|
34 |
* applicable dtd of the Ecological Metadata Language (EML). |
|
35 |
|
|
36 |
* Some of these paths incorporate values of the form: @token-name@; these are |
|
37 |
* intended to allow an Ant (http://jakarta.apache.org/ant/index.html) build |
|
38 |
* script to replace the tokens automatically with the correct values at build/ |
|
39 |
* install time. If Ant is not used, the tokens may simply be edited by hand |
|
40 |
* to point to the correct resources. |
|
41 |
* Note that the values given below may be overridden by passing parameters to |
|
42 |
* the XSLT processor programatically, although the procedure for doing so is |
|
43 |
* vendor-specific. Note also that these parameter definitions will be overridden |
|
44 |
* by any identical parameter names declared within xsl stylesheets that import |
|
45 |
* this stylesheet. |
|
46 |
* |
|
47 |
--> |
|
48 |
|
|
49 |
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> |
|
50 |
|
|
51 |
|
|
52 |
<!-- |
|
53 |
/** |
|
54 |
* The filename of the default css stylesheet to be used |
|
55 |
* (filename only - not the whole path, and no ".css" extension. The |
|
56 |
* example below would look for a file named "default.css" in the same |
|
57 |
* directory as the stylesheets |
|
58 |
*/ |
|
59 |
--> |
|
60 |
|
|
61 |
<xsl:param name="qformat">@default-style@</xsl:param> |
|
62 |
|
|
63 |
|
|
64 |
<!-- |
|
65 |
/** |
|
66 |
* The module which need to be display in eml2 document. The default |
|
67 |
* value is dataset |
|
68 |
*/ |
|
69 |
--> |
|
70 |
<xsl:param name="displaymodule">dataset</xsl:param> |
|
71 |
|
|
72 |
|
|
73 |
<!-- |
|
74 |
/** |
|
75 |
* To show the links for the Entities in the dataset display module. |
|
76 |
*/ |
|
77 |
--> |
|
78 |
<xsl:param name="withEntityLinks">1</xsl:param> |
|
79 |
|
|
80 |
|
|
81 |
<!-- |
|
82 |
/** |
|
83 |
* To show the link for Additional Metadata in the dataset display module. |
|
84 |
*/ |
|
85 |
--> |
|
86 |
<xsl:param name="withAdditionalMetadataLink">1</xsl:param> |
|
87 |
|
|
88 |
|
|
89 |
<!-- |
|
90 |
/** |
|
91 |
* To show the link for the Original XML in the dataset display module. |
|
92 |
*/ |
|
93 |
--> |
|
94 |
<xsl:param name="withOriginalXMLLink">1</xsl:param> |
|
95 |
|
|
96 |
|
|
97 |
<!-- |
|
98 |
/** |
|
99 |
* To show any html links (emails and webpage). |
|
100 |
*/ |
|
101 |
--> |
|
102 |
<xsl:param name="withHTMLLinks">1</xsl:param> |
|
103 |
|
|
104 |
<!-- |
|
105 |
/** |
|
106 |
* To show the Attributes table in the entity display. |
|
107 |
*/ |
|
108 |
--> |
|
109 |
<xsl:param name="withAttributes">1</xsl:param> |
|
110 |
|
|
111 |
<!-- |
|
112 |
/** |
|
113 |
* To insert templates where header and footer are defined. |
|
114 |
*/ |
|
115 |
--> |
|
116 |
<xsl:param name="insertTemplate">1</xsl:param> |
|
117 |
|
|
118 |
|
|
119 |
<!-- |
|
120 |
/** |
|
121 |
* the path of the directory where the XSL and CSS files reside - starts |
|
122 |
* with context name, eg: /myContextRoot/styleDirectory. |
|
123 |
* (As found in "http://hostname:port/myContextRoot/styleDirectory"). |
|
124 |
* Needs leading slash but not trailing slash |
|
125 |
* |
|
126 |
* EXAMPLE: |
|
127 |
* <xsl:param name="stylePath">/brooke/style</xsl:param> |
|
128 |
*/ |
|
129 |
--> |
|
130 |
|
|
131 |
<xsl:param name="stylePath">@style-skins-path@</xsl:param> |
|
132 |
|
|
133 |
|
|
134 |
<!-- |
|
135 |
/* |
|
136 |
* the path of the directory where the common javascript and css files |
|
137 |
* reside - i.e the files that are not skin-specific. Starts |
|
138 |
* with context name, eg: /myContextRoot/styleCommonDirectory. |
|
139 |
* (As found in "http://hostname:port/myContextRoot/styleCommonDirectory"). |
|
140 |
* |
|
141 |
* EXAMPLE |
|
142 |
* <xsl:param name="styleCommonPath">/brooke/style/common</xsl:param> |
|
143 |
*/ |
|
144 |
--> |
|
145 |
|
|
146 |
<xsl:param name="styleCommonPath">@style-common-path@</xsl:param> |
|
147 |
|
|
148 |
|
|
149 |
<!--the docid of xml which is processed--> |
|
150 |
<xsl:param name="docid"/> |
|
151 |
<!-- type of entity, data table or spacial raster or others--> |
|
152 |
<xsl:param name="entitytype"></xsl:param> |
|
153 |
<!-- the index of entity in same entity type --> |
|
154 |
<xsl:param name="entityindex"/> |
|
155 |
<!-- the index of attribute in same entity --> |
|
156 |
<xsl:param name="attributeindex"/> |
|
157 |
<!-- the index of physical part in entity part--> |
|
158 |
<xsl:param name="physicalindex"/> |
|
159 |
<!-- the index of distribution in physical part --> |
|
160 |
<xsl:param name="distributionindex"/> |
|
161 |
<!-- the levle of distribution --> |
|
162 |
<xsl:param name="distributionlevel"/> |
|
163 |
<!-- the index of attribute in attribute list--> |
|
164 |
<xsl:param name="attributeindex"/> |
|
165 |
<!-- the index of additional metadata--> |
|
166 |
<xsl:param name="additionalmetadataindex">1</xsl:param> |
|
167 |
<!-- attribute set to get rid of cell spacing--> |
|
168 |
<xsl:attribute-set name="cellspacing"> |
|
169 |
<xsl:attribute name="cellpadding">0</xsl:attribute> |
|
170 |
<xsl:attribute name="cellspacing">0</xsl:attribute> |
|
171 |
</xsl:attribute-set> |
|
172 |
|
|
173 |
|
|
174 |
|
|
175 |
|
|
176 |
<!-- determines whether to use metacat or LSID identiers--> |
|
177 |
<xsl:param name="lsidauthority"></xsl:param> |
|
178 |
<!-- the url for the data registry of the dataset--> |
|
179 |
<xsl:param name="registryurl"></xsl:param> |
|
180 |
<!-- the name of the data registry of the dataset--> |
|
181 |
<xsl:param name="registryname"></xsl:param> |
|
182 |
|
|
183 |
|
|
184 |
<!-- |
|
185 |
/** |
|
186 |
* The base URI to be used for the href link to each document in a |
|
187 |
* "subject-relationaship-object" triple |
|
188 |
* |
|
189 |
* EXAMPLE: |
|
190 |
* <xsl:param name="tripleURI"> |
|
191 |
* <![CDATA[/brooke/servlet/metacat?action=read&qformat=knb&docid=]]> |
|
192 |
* </xsl:param> |
|
193 |
* |
|
194 |
* (Note in the above case the "qformat=knb" parameter in the url; a system |
|
195 |
* could pass this parameter to the XSLT engine to override the local |
|
196 |
* <xsl:param name="qformat"> tags defined earlier in this document.) |
|
197 |
*/ |
|
198 |
--> |
|
199 |
|
|
200 |
<xsl:param name="tripleURI"><![CDATA[@servlet-path@?action=read&qformat=]]><xsl:value-of select="$qformat" /><![CDATA[&docid=]]></xsl:param> |
|
201 |
|
|
202 |
<!-- URL for xmlformat--> |
|
203 |
<xsl:param name="xmlURI"><![CDATA[@servlet-path@?action=read&qformat=xml&docid=]]></xsl:param> |
|
204 |
|
|
205 |
|
|
206 |
<!-- |
|
207 |
/** |
|
208 |
* Most of the html pages are currently laid out as a 2-column table, with |
|
209 |
* highlights for more-major rows containing subsection titles etc. |
|
210 |
* The following parameters are used within the |
|
211 |
* <td width="whateverWidth" class="whateverClass"> |
|
212 |
* tags to define the column widths and (css) styles. |
|
213 |
* |
|
214 |
* The values of the "xxxColWidth" parameters can be percentages (need to |
|
215 |
* include % sign) or pixels (number only). Note that if a width is defined |
|
216 |
* in the CSS stylesheet (see next paragraph), it will override this local |
|
217 |
* width setting in browsers newer than NN4 |
|
218 |
* |
|
219 |
* The values of the "xxxColStyle" parameters refer to style definitions |
|
220 |
* listed in the *.css stylesheet that is defined in this xsl document, |
|
221 |
* above (in the <xsl:param name="qformat"> tag). |
|
222 |
* |
|
223 |
* (Note that if the "qformat" is changed from the default by passing a |
|
224 |
* value in the url (see notes for <xsl:param name="qformat"> tag, above), |
|
225 |
* then the params below must match style names in the "new" CSS stylesheet |
|
226 |
*/ |
|
227 |
--> |
|
228 |
|
|
229 |
<!-- the style for major rows containing subsection titles etc. --> |
|
230 |
<xsl:param name="subHeaderStyle" select="'tablehead'"/> |
|
231 |
|
|
232 |
<!-- the style for major rows containing links, such as additional metadata, |
|
233 |
original xml file etc. --> |
|
234 |
<xsl:param name="linkedHeaderStyle" select="'linkedHeaderStyle'"/> |
|
235 |
|
|
236 |
<!-- the width for the first column (but see note above) --> |
|
237 |
<xsl:param name="firstColWidth" select="'15%'"/> |
|
238 |
|
|
239 |
<!-- the style for the first column --> |
|
240 |
<xsl:param name="firstColStyle" select="'highlight'"/> |
|
241 |
|
|
242 |
<!-- the width for the second column (but see note above) --> |
|
243 |
<xsl:param name="secondColWidth" select="'85%'"/> |
|
244 |
|
|
245 |
<!-- the style for the second column --> |
|
246 |
<xsl:param name="secondColStyle" select="'secondCol'"/> |
|
247 |
|
|
248 |
<!-- the style for the attribute table --> |
|
249 |
<xsl:param name="tableattributeStyle" select="'tableattribute'"/> |
|
250 |
|
|
251 |
<!-- the style for the border --> |
|
252 |
<xsl:param name="borderStyle" select="'bordered'"/> |
|
253 |
|
|
254 |
<!-- the style for the even col in attributes table --> |
|
255 |
<xsl:param name="colevenStyle" select="'coleven'"/> |
|
256 |
|
|
257 |
<!-- the style for the inner even col in attributes table --> |
|
258 |
<xsl:param name="innercolevenStyle" select="'innercoleven'"/> |
|
259 |
|
|
260 |
<!-- the style for the odd col in attributes table --> |
|
261 |
<xsl:param name="coloddStyle" select="'colodd'"/> |
|
262 |
|
|
263 |
<!-- the style for the inner odd col in attributes table --> |
|
264 |
<xsl:param name="innercoloddStyle" select="'innercolodd'"/> |
|
265 |
|
|
266 |
|
|
267 |
<!-- the default alignment style for the wrapper around the main tables --> |
|
268 |
<xsl:param name="mainTableAligmentStyle" select="'mainTableAligmentStyle'"/> |
|
269 |
|
|
270 |
<!-- the default style for the main container table --> |
|
271 |
<xsl:param name="mainContainerTableStyle" select="'mainContainerTableStyle'"/> |
|
272 |
|
|
273 |
<!-- the default style for all other tables --> |
|
274 |
<xsl:param name="tabledefaultStyle" select="'tabledefault'"/> |
|
275 |
|
|
276 |
<!-- the style for table party --> |
|
277 |
<xsl:param name="tablepartyStyle" select="'tableparty'"/> |
|
278 |
|
|
279 |
<!-- Some html pages use a nested table in the second column. |
|
280 |
Some of these nested tables set their first column to |
|
281 |
the following width: --> |
|
282 |
<xsl:param name="secondColIndent" select="'10%'"/> |
|
283 |
|
|
284 |
<!-- the first column width of attribute table--> |
|
285 |
<xsl:param name="attributefirstColWidth" select="'15%'"/> |
|
286 |
|
|
287 |
</xsl:stylesheet> |
|
0 | 288 |
lib/style/skins/first/first-resultset.xsl | ||
---|---|---|
1 |
<?xml version="1.0"?> |
|
2 |
<!-- |
|
3 |
* '$RCSfile$' |
|
4 |
* Authors: Matt Jones, CHad Berkley |
|
5 |
* Copyright: 2000 Regents of the University of California and the |
|
6 |
* National Center for Ecological Analysis and Synthesis |
|
7 |
* For Details: http://www.nceas.ucsb.edu/ |
|
8 |
* |
|
9 |
* '$Author$' |
|
10 |
* '$Date$' |
|
11 |
* '$Revision$' |
|
12 |
* |
|
13 |
* This program is free software; you can redistribute it and/or modify |
|
14 |
* it under the terms of the GNU General Public License as published by |
|
15 |
* the Free Software Foundation; either version 2 of the License, or |
|
16 |
* (at your option) any later version. |
|
17 |
* |
|
18 |
* This program is distributed in the hope that it will be useful, |
|
19 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
20 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
21 |
* GNU General Public License for more details. |
|
22 |
* |
|
23 |
* You should have received a copy of the GNU General Public License |
|
24 |
* along with this program; if not, write to the Free Software |
|
25 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
26 |
* |
|
27 |
* This is an XSLT (http://www.w3.org/TR/xslt) stylesheet designed to |
|
28 |
* convert an XML file showing the resultset of a query |
|
29 |
* into an HTML format suitable for rendering with modern web browsers. |
|
30 |
--> |
|
31 |
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> |
|
32 |
|
|
33 |
<xsl:output method="html"/> |
|
34 |
<xsl:param name="sessid"/> |
|
35 |
<xsl:param name="qformat">default</xsl:param> |
|
36 |
<xsl:param name="enableediting">false</xsl:param> |
|
37 |
<xsl:template match="/"> |
|
38 |
<html> |
|
39 |
<head> |
|
40 |
<title>Search Results</title> |
|
41 |
<link rel="stylesheet" type="text/css" |
|
42 |
href="/knb/style/skins/{$qformat}/{$qformat}.css" /> |
|
43 |
<script language="Javascript" type="text/JavaScript" |
|
44 |
src="/knb/style/skins/{$qformat}/{$qformat}.js" /> |
|
45 |
<script language="Javascript" type="text/JavaScript" |
|
46 |
src="/knb/style/common/branding.js" /> |
|
47 |
<script language="JavaScript"> |
|
48 |
<![CDATA[ |
|
49 |
function submitform(action,form_ref) { |
|
50 |
form_ref.action.value=action; |
|
51 |
form_ref.sessionid.value="]]><xsl:value-of select="$sessid" /><![CDATA["; |
|
52 |
form_ref.qformat.value="]]><xsl:value-of select="$qformat" /><![CDATA["; |
|
53 |
form_ref.submit(); |
|
54 |
} |
|
55 |
|
|
56 |
]]> |
|
57 |
</script> |
|
58 |
</head> |
|
59 |
|
|
60 |
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"> |
|
61 |
<script language="JavaScript"> |
|
62 |
insertTemplateOpening(); |
|
63 |
insertSearchBox(); |
|
64 |
</script> |
|
65 |
<table width="100%" align="center" border="0" cellpadding="5" cellspacing="0"> |
|
66 |
<tr> |
|
67 |
<td align="left"><br></br><p class="emphasis"><xsl:number value="count(resultset/document)" /> records found</p></td> |
|
68 |
</tr></table> |
|
69 |
<!-- This tests to see if there are returned documents, |
|
70 |
if there are not then don't show the query results --> |
|
71 |
|
|
72 |
<xsl:if test="count(resultset/document) > 0"> |
|
73 |
|
|
74 |
<table width="95%" align="center" border="0" cellpadding="0" cellspacing="0"> |
|
75 |
<tr> |
|
76 |
<th class="tablehead" style="text-align: left">Course Title</th> |
|
77 |
<th class="tablehead" style="text-align: left">Assessment Title</th> |
|
78 |
<th width="15%" class="tablehead" style="text-align: left">Instructor[s]</th> |
|
79 |
<th width="15%" class="tablehead" style="text-align: left">Organization[s]</th> |
|
80 |
<th width="15%" class="tablehead" style="text-align: left">Keywords</th> |
|
81 |
<xsl:if test="$enableediting = 'true'"> |
|
82 |
<th width="10%" class="tablehead" style="text-align: middle">Actions</th> |
|
83 |
</xsl:if> |
|
84 |
</tr> |
|
85 |
|
|
86 |
<xsl:for-each select="resultset/document"> |
|
87 |
<xsl:sort select="./param[@name='dataset/title']"/> |
|
88 |
<tr valign="top" class="subpanel"> |
|
89 |
<xsl:attribute name="class"> |
|
90 |
<xsl:choose> |
|
91 |
<xsl:when test="position() mod 2 = 1">rowodd</xsl:when> |
|
92 |
<xsl:when test="position() mod 2 = 0">roweven</xsl:when> |
|
93 |
</xsl:choose> |
|
94 |
</xsl:attribute> |
|
95 |
|
|
96 |
<td class="text_plain"> |
|
97 |
<form action="/knb/metacat" method="POST"> |
|
98 |
<xsl:attribute name="name"> |
|
99 |
<xsl:value-of select="translate(./docid, '()-.', '____')" /> |
|
100 |
</xsl:attribute> |
|
101 |
|
|
102 |
<input type="hidden" name="qformat" /> |
|
103 |
<input type="hidden" name="sessionid" /> |
|
104 |
<xsl:if test="$enableediting = 'true'"> |
|
105 |
<input type="hidden" name="enableediting" value="{$enableediting}"/> |
|
106 |
</xsl:if> |
|
107 |
<input type="hidden" name="action" value="read"/> |
|
108 |
<input type="hidden" name="docid"> |
|
109 |
<xsl:attribute name="value"> |
|
110 |
<xsl:value-of select="./docid"/> |
|
111 |
</xsl:attribute> |
|
112 |
</input> |
|
113 |
<xsl:for-each select="./relation"> |
|
114 |
<input type="hidden" name="docid"> |
|
115 |
<xsl:attribute name="value" > |
|
116 |
<xsl:value-of select="./relationdoc" /> |
|
117 |
</xsl:attribute> |
|
118 |
</input> |
|
119 |
</xsl:for-each> |
|
120 |
|
|
121 |
<a> |
|
122 |
<xsl:attribute name="href">javascript:submitform('read',document.<xsl:value-of select="translate(./docid, '()-.', '____')"/>)</xsl:attribute> |
|
123 |
<xsl:text>» </xsl:text> |
|
124 |
<xsl:choose> |
|
125 |
<xsl:when test="./param[@name='dataset/title']!=''"> |
|
126 |
<xsl:value-of select="./param[@name='dataset/title']"/> |
|
127 |
</xsl:when> |
|
128 |
<xsl:otherwise> |
|
129 |
<xsl:value-of select="./param[@name='lom/general/title/string']"/> |
|
130 |
<xsl:value-of select="./param[@name='lom/general/description/string']"/> |
|
131 |
</xsl:otherwise> |
|
132 |
</xsl:choose> |
|
133 |
</a><br /> |
|
134 |
<br/> |
|
135 |
<p><pre>ID: <xsl:value-of select="./docid"/></pre></p> |
|
136 |
|
|
137 |
</form> |
|
138 |
</td> |
|
139 |
|
|
140 |
<td class="text_plain"> |
|
141 |
<xsl:for-each select="./param[@name='assessment/@title']" > |
|
142 |
<xsl:value-of select="." /> |
|
143 |
<br/> |
|
144 |
</xsl:for-each> |
|
145 |
</td> |
|
146 |
<td class="text_plain"> |
|
147 |
<xsl:for-each select="./param[@name='individualName/surName']" > |
|
148 |
<xsl:value-of select="." /> |
|
149 |
<br/> |
|
150 |
</xsl:for-each> |
|
151 |
</td> |
|
152 |
<td class="text_plain"> |
|
153 |
<xsl:for-each select="./param[@name='organizationName']" > |
|
154 |
<xsl:value-of select="." /> |
|
155 |
<br/> |
|
156 |
</xsl:for-each> |
|
157 |
</td> |
|
158 |
|
|
159 |
<td class="text_plain"> |
|
160 |
<xsl:for-each |
|
161 |
select="./param[@name='keyword']"> |
|
162 |
<xsl:value-of select="." /> |
|
163 |
<br/> |
|
164 |
</xsl:for-each> |
|
165 |
<xsl:for-each |
|
166 |
select="./param[@name='lom/general/keyword/string']"> |
|
167 |
<xsl:value-of select="." /> |
|
168 |
<br/> |
|
169 |
</xsl:for-each> |
|
170 |
|
|
171 |
</td> |
|
172 |
|
|
173 |
<xsl:if test="$enableediting = 'true'"> |
|
174 |
<td class="text_plain"> |
|
175 |
<form action="/knb/metacat" method="POST"> |
|
176 |
<input type="hidden" name="action" value="read"/> |
|
177 |
<input type="hidden" name="qformat" value="{$qformat}"/> |
|
178 |
<input type="hidden" name="sessionid" value="{$sessid}"/> |
|
179 |
<input type="hidden" name="docid"> |
|
180 |
<xsl:attribute name="value"> |
|
181 |
<xsl:value-of select="./docid"/> |
|
182 |
</xsl:attribute> |
|
183 |
</input> |
|
184 |
<center> |
|
185 |
<input type="SUBMIT" value=" View " name="View"> |
|
186 |
</input> |
|
187 |
</center> |
|
188 |
</form> |
|
189 |
<form action="@cgi-prefix@/cgi-bin/register-dataset.cgi" |
|
190 |
method="POST"> |
|
191 |
<input type="hidden" name="stage" value="modify"/> |
|
192 |
<input type="hidden" name="cfg" value="{$qformat}"/> |
|
193 |
<input type="hidden" name="sessionid" value="{$sessid}"/> |
|
194 |
<input type="hidden" name="docid"> |
|
195 |
<xsl:attribute name="value"> |
|
196 |
<xsl:value-of select="./docid"/> |
|
197 |
</xsl:attribute> |
|
198 |
</input> |
|
199 |
<center> |
|
200 |
<input type="SUBMIT" value=" Edit " name="Edit"> |
|
201 |
</input> |
|
202 |
</center> |
|
203 |
</form> |
|
204 |
<form action="@cgi-prefix@/cgi-bin/register-dataset.cgi" |
|
205 |
method="POST"> |
|
206 |
<input type="hidden" name="stage" value="delete"/> |
|
207 |
<input type="hidden" name="cfg" value="{$qformat}"/> |
|
208 |
<input type="hidden" name="sessionid" value="{$sessid}"/> |
|
209 |
<input type="hidden" name="docid"> |
|
210 |
<xsl:attribute name="value"> |
|
211 |
<xsl:value-of select="./docid"/> |
|
212 |
</xsl:attribute> |
|
213 |
</input> |
|
214 |
<center> |
|
215 |
<input type="SUBMIT" value="Delete" name="Delete"> |
|
216 |
</input> |
|
217 |
</center> |
|
218 |
</form> |
|
219 |
</td> |
|
220 |
</xsl:if> |
|
221 |
</tr> |
|
222 |
<tr class="searchresultsdivider"> |
|
223 |
<td colspan="5"><img src="/knb/style/skins/default/images/transparent1x1.gif" width="1" height="1" /></td> |
|
224 |
</tr> |
|
225 |
|
|
226 |
</xsl:for-each> |
|
227 |
</table> |
|
228 |
|
|
229 |
</xsl:if> |
|
230 |
<script language="JavaScript"> |
|
231 |
insertTemplateClosing(); |
|
232 |
</script> |
|
233 |
</body> |
|
234 |
</html> |
|
235 |
</xsl:template> |
|
236 |
|
|
237 |
</xsl:stylesheet> |
|
0 | 238 |
lib/style/skins/first/first.cfg | ||
---|---|---|
1 |
# |
|
2 |
# General configuration parameters |
|
3 |
# |
|
4 |
metacatUrl = http://@server@@servlet-path@ |
|
5 |
username = uid=knbadmin,o=NCEAS,dc=ecoinformatics,dc=org |
|
6 |
password = your-pw-goes-here |
|
7 |
ldapUrl=@ldapUrl@ |
|
8 |
defaultScope = knb |
|
9 |
organization = Knowledge Network for Biocomplexity |
|
10 |
orgabbrev = KNB |
|
11 |
orgurl = http://knb.ecoinformatics.org/ |
|
12 |
responseTemplate = @responseForm@ |
|
13 |
entryFormTemplate = @entryForm@ |
|
14 |
guideTemplate = @guide@ |
|
15 |
confirmDataTemplate = @confirmData@ |
|
16 |
deleteDataTemplate = @deleteData@ |
|
17 |
accesspubid = -//ecoinformatics.org//eml-access-2.0.0beta6//EN |
|
18 |
accesssysid = eml-access.dtd |
|
19 |
datasetpubid = eml://ecoinformatics.org/eml-dataset-2.0.0 |
|
20 |
datasetsysid = eml-dataset.dtd |
|
21 |
mailhost = @mailhost@ |
|
22 |
sender = KNB Data Registry <help@nceas.ucsb.edu> |
|
23 |
recipient = help@nceas.ucsb.edu |
|
24 |
adminname = the repository administrator |
|
25 |
debug = 1 |
|
26 |
lsite = 'station' |
|
27 |
usite = 'Station' |
|
28 |
showSiteList = 'false' |
|
29 |
showWgList = 'false' |
|
30 |
showOrganization = 'true' |
|
31 |
hasTaxonomic = 'true' |
|
32 |
hasMethod = 'true' |
|
33 |
hasSpatial = 'true' |
|
34 |
hasKeyword = 'true' |
|
35 |
hasTemporal = 'true' |
|
36 |
nceas_db = somedb |
|
37 |
nceas_db_user = someuser |
|
38 |
nceas_db_password = your-pw-goes-here |
|
0 | 39 |
lib/style/skins/first/edml.xsl | ||
---|---|---|
1 |
<?xml version="1.0"?> |
|
2 |
<!-- |
|
3 |
* '$RCSfile$' |
|
4 |
* Authors: leinfelder |
|
5 |
* Copyright: 2000 Regents of the University of California and the |
|
6 |
* National Center for Ecological Analysis and Synthesis |
|
7 |
* For Details: http://www.nceas.ucsb.edu/ |
|
8 |
* |
|
9 |
* '$Author$' |
|
10 |
* '$Date$' |
|
11 |
* '$Revision$' |
|
12 |
* |
|
13 |
* This program is free software; you can redistribute it and/or modify |
|
14 |
* it under the terms of the GNU General Public License as published by |
|
15 |
* the Free Software Foundation; either version 2 of the License, or |
|
16 |
* (at your option) any later version. |
|
17 |
* |
|
18 |
* This program is distributed in the hope that it will be useful, |
|
19 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
20 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
21 |
* GNU General Public License for more details. |
|
22 |
* |
|
23 |
* You should have received a copy of the GNU General Public License |
|
24 |
* along with this program; if not, write to the Free Software |
|
25 |
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
|
26 |
* |
|
27 |
* This is an XSLT (http://www.w3.org/TR/xslt) stylesheet designed to |
|
28 |
* convert an XML file that is valid with respect to the edml.xsd |
|
29 |
* module of the Educational Metadata Language (EdML) into an HTML format |
|
30 |
* suitable for rendering with modern web browsers. |
|
31 |
--> |
|
32 |
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" |
|
33 |
xmlns:fn="http://www.w3.org/2005/02/xpath-function" |
|
34 |
xmlns:edml="edml://ecoinformatics.org/edml" |
|
35 |
xmlns:rp="eml://ecoinformatics.org/party-2.0.1" |
|
36 |
xmlns:res="eml://ecoinformatics.org/resource-2.0.1" |
|
37 |
xmlns:lom="http://ltsc.ieee.org/xsd/LOM" |
|
38 |
xmlns:qti="http://www.imsglobal.org/xsd/ims_qtiasiv1p2" |
|
39 |
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0"> |
|
40 |
|
|
41 |
|
|
42 |
<xsl:import href="edml-settings.xsl" /> |
|
43 |
<!-- |
|
44 |
<xsl:import href="eml-additionalmetadata.xsl"/> |
|
45 |
<xsl:import href="eml-coverage.xsl"/> |
|
46 |
<xsl:import href="eml-party.xsl"/> |
|
47 |
<xsl:import href="eml-text.xsl"/> |
|
48 |
<xsl:import href="eml-view.xsl"/> |
|
49 |
--> |
|
50 |
<xsl:output method="html" encoding="iso-8859-1" |
|
51 |
doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" |
|
52 |
doctype-system="http://www.w3.org/TR/html4/loose.dtd" indent="yes" /> |
|
53 |
<!-- global variables to store id node set in case to be referenced--> |
|
54 |
<xsl:variable name="ids" select="//*[@id!='']" /> |
|
55 |
|
|
56 |
<xsl:template match="/"> |
|
57 |
<html> |
|
58 |
<head> |
|
59 |
<title>Assessment Metadata</title> |
|
60 |
<link rel="stylesheet" type="text/css" |
|
61 |
href="{$stylePath}/{$qformat}/{$qformat}.css"> |
|
62 |
</link> |
|
63 |
<script language="Javascript" type="text/JavaScript" |
|
64 |
src="{$stylePath}/{$qformat}/{$qformat}.js"> |
|
65 |
</script> |
|
66 |
<script language="Javascript" type="text/JavaScript" |
|
67 |
src="{$styleCommonPath}/branding.js"> |
|
68 |
</script> |
|
69 |
</head> |
|
70 |
<body> |
|
71 |
|
|
72 |
<div id="{$mainTableAligmentStyle}"> |
|
73 |
<script language="JavaScript" |
|
74 |
type="text/JavaScript"> |
|
75 |
<xsl:if test="$insertTemplate='0'"> |
|
76 |
<xsl:comment> |
|
77 |
insertTemplateOpening();// |
|
78 |
</xsl:comment> |
|
79 |
</xsl:if> |
|
80 |
<xsl:if test="$insertTemplate='1'"> |
|
81 |
insertTemplateOpening(); |
|
82 |
</xsl:if> |
|
83 |
</script> |
|
84 |
|
|
85 |
|
|
86 |
<table xsl:use-attribute-sets="cellspacing" class="{$mainContainerTableStyle}"> |
|
87 |
<xsl:apply-templates select="*[local-name()='edml']" /> |
|
88 |
</table> |
|
89 |
<script language="JavaScript" |
|
90 |
type="text/JavaScript"> |
|
91 |
<xsl:if test="$insertTemplate='0'"> |
|
92 |
<xsl:comment> |
|
93 |
insertTemplateClosing();// |
|
94 |
</xsl:comment> |
|
95 |
</xsl:if> |
|
96 |
<xsl:if test="$insertTemplate='1'"> |
|
97 |
insertTemplateClosing(); |
|
98 |
</xsl:if> |
|
99 |
</script> |
|
100 |
</div> |
|
101 |
</body> |
|
102 |
</html> |
|
103 |
</xsl:template> |
|
104 |
|
|
105 |
<xsl:template match="*[local-name()='edml']"> |
|
106 |
<tr valign="top"> |
|
107 |
<td colspan="2"> </td> |
|
108 |
</tr> |
|
109 |
<tr valign="top"> |
|
110 |
<th colspan="2" class="tablehead">Contact Information</th> |
|
111 |
</tr> |
|
112 |
<tr valign="top"> |
|
113 |
<td> |
|
114 |
<xsl:for-each select="institution"> |
|
115 |
<xsl:call-template name="institution" /> |
|
116 |
</xsl:for-each> |
|
117 |
</td> |
|
118 |
<td> |
|
119 |
<xsl:for-each select="instructor"> |
|
120 |
<xsl:call-template name="instructor" /> |
|
121 |
</xsl:for-each> |
|
122 |
</td> |
|
123 |
</tr> |
|
124 |
<tr valign="top"> |
|
125 |
<td colspan="2"> </td> |
|
126 |
</tr> |
|
127 |
<tr valign="top"> |
|
128 |
<td colspan="2"> |
|
129 |
<xsl:for-each select="compositeCourse"> |
|
130 |
<xsl:call-template name="course" /> |
|
131 |
</xsl:for-each> |
|
132 |
</td> |
|
133 |
</tr> |
|
134 |
<tr valign="top"> |
|
135 |
<td colspan="2"> </td> |
|
136 |
</tr> |
|
137 |
<tr valign="top"> |
|
138 |
<td colspan="2"> |
|
139 |
<xsl:for-each select="compositeQTI"> |
|
140 |
<xsl:call-template name="compositeQTI" /> |
|
141 |
</xsl:for-each> |
|
142 |
</td> |
|
143 |
</tr> |
|
144 |
</xsl:template> |
|
145 |
|
|
146 |
<!--******************************************************** |
|
147 |
institution part |
|
148 |
********************************************************--> |
|
149 |
<xsl:template name="institution"> |
|
150 |
<table xsl:use-attribute-sets="cellspacing"> |
|
151 |
<tr> |
|
152 |
<th colspan="2"> |
|
153 |
Institution Information |
|
154 |
</th> |
|
155 |
</tr> |
|
156 |
<tr> |
|
157 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Name:</td> |
|
158 |
<td><xsl:value-of select="organizationName" /></td> |
|
159 |
</tr> |
|
160 |
<tr> |
|
161 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Address:</td> |
|
162 |
<td> |
|
163 |
<xsl:value-of select="address/deliveryPoint" /> |
|
164 |
<br/> |
|
165 |
<xsl:value-of select="address/city" />, |
|
166 |
<xsl:value-of select="address/administrativeArea" />  |
|
167 |
<xsl:value-of select="address/postalCode" /> |
|
168 |
</td> |
|
169 |
</tr> |
|
170 |
<tr> |
|
171 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Phone:</td> |
|
172 |
<td> |
|
173 |
<xsl:for-each select="phone"> |
|
174 |
<xsl:value-of select="@phonetype" />: <xsl:value-of select="." /> |
|
175 |
<br/> |
|
176 |
</xsl:for-each> |
|
177 |
</td> |
|
178 |
</tr> |
|
179 |
<tr> |
|
180 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Email:</td> |
|
181 |
<td> |
|
182 |
<xsl:for-each select="electronicMailAddress"> |
|
183 |
<xsl:value-of select="." /> |
|
184 |
<br/> |
|
185 |
</xsl:for-each> |
|
186 |
</td> |
|
187 |
</tr> |
|
188 |
</table> |
|
189 |
</xsl:template> |
|
190 |
|
|
191 |
<!--******************************************************** |
|
192 |
instructor part |
|
193 |
********************************************************--> |
|
194 |
<xsl:template name="instructor"> |
|
195 |
<table xsl:use-attribute-sets="cellspacing"> |
|
196 |
<tr> |
|
197 |
<th colspan="2"> |
|
198 |
Instructor Information |
|
199 |
</th> |
|
200 |
</tr> |
|
201 |
<tr> |
|
202 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Name:</td> |
|
203 |
<td> |
|
204 |
<xsl:for-each select="individualName"> |
|
205 |
<xsl:value-of select="surName" />,  |
|
206 |
<xsl:value-of select="givenName" /> |
|
207 |
<br/> |
|
208 |
</xsl:for-each> |
|
209 |
</td> |
|
210 |
</tr> |
|
211 |
<tr> |
|
212 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Organization:</td> |
|
213 |
<td><xsl:value-of select="organizationName" /></td> |
|
214 |
</tr> |
|
215 |
<tr> |
|
216 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Address:</td> |
|
217 |
<td> |
|
218 |
<xsl:value-of select="address/deliveryPoint" /> |
|
219 |
<br/> |
|
220 |
<xsl:value-of select="address/city" />, |
|
221 |
<xsl:value-of select="address/administrativeArea" />  |
|
222 |
<xsl:value-of select="address/postalCode" /> |
|
223 |
</td> |
|
224 |
</tr> |
|
225 |
<tr> |
|
226 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Phone:</td> |
|
227 |
<td> |
|
228 |
<xsl:for-each select="phone"> |
|
229 |
<xsl:value-of select="@phonetype" />: <xsl:value-of select="." /> |
|
230 |
<br/> |
|
231 |
</xsl:for-each> |
|
232 |
</td> |
|
233 |
</tr> |
|
234 |
<tr> |
|
235 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Email:</td> |
|
236 |
<td> |
|
237 |
<xsl:for-each select="electronicMailAddress"> |
|
238 |
<xsl:value-of select="." /> |
|
239 |
<br/> |
|
240 |
</xsl:for-each> |
|
241 |
</td> |
|
242 |
</tr> |
|
243 |
|
|
244 |
</table> |
|
245 |
</xsl:template> |
|
246 |
|
|
247 |
<!--******************************************************** |
|
248 |
Assessment part |
|
249 |
********************************************************--> |
|
250 |
<xsl:template name="compositeQTI"> |
|
251 |
<table xsl:use-attribute-sets="cellspacing" class="{$tabledefaultStyle}" width="100%"> |
|
252 |
<tr> |
|
253 |
<th colspan="2" class="tablehead"> |
|
254 |
Assessment Information |
|
255 |
</th> |
|
256 |
</tr> |
|
257 |
<xsl:for-each select="questestinterop/qti:assessment"> |
|
258 |
<tr> |
|
259 |
<th colspan="2"> |
|
260 |
General |
|
261 |
</th> |
|
262 |
</tr> |
|
263 |
<tr> |
|
264 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Title:</td> |
|
265 |
<td><xsl:value-of select="@title" /></td> |
|
266 |
</tr> |
|
267 |
<tr> |
|
268 |
<td width="{$firstColWidth}" class="{$firstColStyle}">ID:</td> |
|
269 |
<td><xsl:value-of select="@ident" /></td> |
|
270 |
</tr> |
|
271 |
<tr> |
|
272 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Duration:</td> |
|
273 |
<td><xsl:value-of select="qti:duration" /></td> |
|
274 |
</tr> |
|
275 |
</xsl:for-each> |
|
276 |
|
|
277 |
<!-- additional assessment info --> |
|
278 |
<xsl:for-each select="."> |
|
279 |
<tr> |
|
280 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Timing:</td> |
|
281 |
<td> |
|
282 |
Material introduced: <xsl:value-of select="timing/rangeOfDates/beginDate/calendarDate" /> |
|
283 |
<br/> |
|
284 |
Material tested: <xsl:value-of select="timing/rangeOfDates/endDate/calendarDate" /> |
|
285 |
</td> |
|
286 |
</tr> |
|
287 |
<tr> |
|
288 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Instructional Strategy:</td> |
|
289 |
<td> |
|
290 |
<xsl:for-each select="instructionalStrategy" > |
|
291 |
<xsl:value-of select="." /> |
|
292 |
<br/> |
|
293 |
</xsl:for-each> |
|
294 |
</td> |
|
295 |
</tr> |
|
296 |
<tr> |
|
297 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Incentive[s]:</td> |
|
298 |
<td> |
|
299 |
<xsl:for-each select="incentive" > |
|
300 |
<xsl:value-of select="." /> |
|
301 |
<br/> |
|
302 |
</xsl:for-each> |
|
303 |
</td> |
|
304 |
</tr> |
|
305 |
<tr> |
|
306 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Group Size:</td> |
|
307 |
<td><xsl:value-of select="groupSize" /></td> |
|
308 |
</tr> |
|
309 |
<tr> |
|
310 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Assessment File:</td> |
|
311 |
<td> |
|
312 |
<xsl:value-of select="assessmentFile/objectName" /> |
|
313 |
(<xsl:value-of select="assessmentFile/dataFormat/externallyDefinedFormat/formatName" />) |
|
314 |
</td> |
|
315 |
</tr> |
|
316 |
<tr> |
|
317 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Response File:</td> |
|
318 |
<td> |
|
319 |
<xsl:value-of select="responseFile/objectName" /> |
|
320 |
(<xsl:value-of select="responseFile/dataFormat/externallyDefinedFormat/formatName" />) |
|
321 |
</td> |
|
322 |
</tr> |
|
323 |
|
|
324 |
<!-- access information --> |
|
325 |
<tr valign="top"> |
|
326 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Access Control:</td> |
|
327 |
<td> |
|
328 |
<table> |
|
329 |
<tr> |
|
330 |
<td colspan="2"> |
|
331 |
<xsl:value-of select="access/@authSystem" /> |
|
332 |
</td> |
|
333 |
</tr> |
|
334 |
<tr> |
|
335 |
<td colspan="2">Allow</td> |
|
336 |
</tr> |
|
337 |
|
|
338 |
<xsl:for-each select="access/allow"> |
|
339 |
<tr> |
|
340 |
<td width="{$firstColWidth}" class="{$firstColStyle}"> |
|
341 |
<xsl:for-each select="permission"> |
|
342 |
<xsl:value-of select="."/> |
|
343 |
<br/> |
|
344 |
</xsl:for-each> |
|
345 |
</td> |
|
346 |
<td> |
|
347 |
<xsl:for-each select="principal"> |
|
348 |
<xsl:value-of select="."/> |
|
349 |
<br/> |
|
350 |
</xsl:for-each> |
|
351 |
</td> |
|
352 |
</tr> |
|
353 |
</xsl:for-each> |
|
354 |
</table> |
|
355 |
</td> |
|
356 |
</tr> |
|
357 |
|
|
358 |
</xsl:for-each> |
|
359 |
|
|
360 |
<!-- Questions below --> |
|
361 |
<xsl:for-each select="questestinterop/qti:assessment"> |
|
362 |
<tr> |
|
363 |
<th colspan="2">Questions</th> |
|
364 |
</tr> |
|
365 |
<tr valign="top"> |
|
366 |
<!-- <td width="{$firstColWidth}" class="{$firstColStyle}"></td> |
|
367 |
<td> |
|
368 |
--> |
|
369 |
<td colspan="2"> |
|
370 |
<ol> |
|
371 |
<xsl:for-each select="qti:section/qti:item"> |
|
372 |
<xsl:call-template name="question"/> |
|
373 |
</xsl:for-each> |
|
374 |
</ol> |
|
375 |
</td> |
|
376 |
</tr> |
|
377 |
|
|
378 |
</xsl:for-each> |
|
379 |
</table> |
|
380 |
|
|
381 |
</xsl:template> |
|
382 |
|
|
383 |
<!--******************************************************** |
|
384 |
Question item part |
|
385 |
********************************************************--> |
|
386 |
<xsl:template name="question"> |
|
387 |
<li> |
|
388 |
<xsl:value-of select="@title" /> (<xsl:value-of select="@ident" />) |
|
389 |
<table> |
|
390 |
<tr> |
|
391 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Prompt:</td> |
|
392 |
<td><xsl:value-of select="qti:presentation/qti:flow/qti:material/qti:mattext" /></td> |
|
393 |
</tr> |
|
394 |
|
|
395 |
<tr> |
|
396 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Choices:</td> |
|
397 |
<td> |
|
398 |
<xsl:for-each select="qti:presentation/qti:flow/qti:response_lid/qti:render_choice/qti:response_label"> |
|
399 |
<xsl:value-of select="@ident"/>) <xsl:value-of select="qti:flow_mat/qti:material/qti:mattext"/> |
|
400 |
<br/> |
|
401 |
</xsl:for-each> |
|
402 |
</td> |
|
403 |
</tr> |
|
404 |
|
|
405 |
<tr> |
|
406 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Answer:</td> |
|
407 |
<td> |
|
408 |
<xsl:for-each select="qti:resprocessing/qti:respcondition/qti:conditionvar"> |
|
409 |
<xsl:if test="qti:varequal != ''" > |
|
410 |
<xsl:value-of select="qti:varequal" /> |
|
411 |
</xsl:if> |
|
412 |
<xsl:if test="qti:vargte != ''" > |
|
413 |
gte: <xsl:value-of select="qti:vargte" /> |
|
414 |
<br/> |
|
415 |
</xsl:if> |
|
416 |
<xsl:if test="qti:varlte != ''" > |
|
417 |
lte: <xsl:value-of select="qti:varlte" /> |
|
418 |
<br/> |
|
419 |
</xsl:if> |
|
420 |
|
|
421 |
</xsl:for-each> |
|
422 |
</td> |
|
423 |
</tr> |
|
424 |
|
|
425 |
<tr valign="top"> |
|
426 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Objectives:</td> |
|
427 |
<td> |
|
428 |
<xsl:for-each select="qti:objectives/qti:material"> |
|
429 |
<xsl:value-of select="qti:mattext"/> |
|
430 |
<br /> |
|
431 |
</xsl:for-each> |
|
432 |
</td> |
|
433 |
</tr> |
|
434 |
|
|
435 |
<tr valign="top"> |
|
436 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Metadata:</td> |
|
437 |
<td> |
|
438 |
<xsl:for-each select="qti:itemmetadata/qti:qtimetadata"> |
|
439 |
<xsl:call-template name="qtiMetadata" /> |
|
440 |
</xsl:for-each> |
|
441 |
</td> |
|
442 |
</tr> |
|
443 |
</table> |
|
444 |
</li> |
|
445 |
</xsl:template> |
|
446 |
|
|
447 |
|
|
448 |
<!--******************************************************** |
|
449 |
Asssessment - QTI metadata part |
|
450 |
********************************************************--> |
|
451 |
<xsl:template name="qtiMetadata"> |
|
452 |
<table xsl:use-attribute-sets="cellspacing" class="{$tabledefaultStyle}" width="100%"> |
|
453 |
<tr valign="top"> |
|
454 |
<td> |
|
455 |
<xsl:value-of select="qti:vocabulary" /> |
|
456 |
(<xsl:value-of select="qti:vocabulary/@uri" />) |
|
457 |
</td> |
|
458 |
</tr> |
|
459 |
<tr> |
|
460 |
<td> |
|
461 |
<xsl:for-each select="."> |
|
462 |
<table> |
|
463 |
<xsl:for-each select="qti:qtimetadatafield"> |
|
464 |
<tr> |
|
465 |
<td width="{$firstColWidth}" class="{$firstColStyle}"> |
|
466 |
<xsl:value-of |
|
467 |
select="qti:fieldlabel" />: |
|
468 |
</td> |
|
469 |
<td> |
|
470 |
<xsl:value-of |
|
471 |
select="qti:fieldentry" /> |
|
472 |
</td> |
|
473 |
</tr> |
|
474 |
</xsl:for-each> |
|
475 |
</table> |
|
476 |
</xsl:for-each> |
|
477 |
</td> |
|
478 |
</tr> |
|
479 |
</table> |
|
480 |
</xsl:template> |
|
481 |
|
|
482 |
<!--******************************************************** |
|
483 |
Course part |
|
484 |
********************************************************--> |
|
485 |
<xsl:template name="course"> |
|
486 |
<table xsl:use-attribute-sets="cellspacing" class="{$tabledefaultStyle}" width="100%"> |
|
487 |
<tr> |
|
488 |
<th colspan="2" class="tablehead"> |
|
489 |
Course Information |
|
490 |
</th> |
|
491 |
</tr> |
|
492 |
<tr valign="top"> |
|
493 |
<td> |
|
494 |
<!-- general info --> |
|
495 |
<xsl:for-each select="lom/lom:general"> |
|
496 |
<xsl:call-template name="lomGeneral"/> |
|
497 |
</xsl:for-each> |
|
498 |
</td> |
|
499 |
|
|
500 |
<td> |
|
501 |
<!-- education info --> |
|
502 |
<xsl:for-each select="lom/lom:educational"> |
|
503 |
<xsl:call-template name="lomEducational"/> |
|
504 |
</xsl:for-each> |
|
505 |
</td> |
|
506 |
</tr> |
|
507 |
|
|
508 |
<tr valign="top"> |
|
509 |
<td> |
|
510 |
<!-- relation info --> |
|
511 |
<xsl:for-each select="lom/lom:relation"> |
|
512 |
<xsl:call-template name="lomRelation"/> |
|
513 |
</xsl:for-each> |
|
514 |
</td> |
|
515 |
|
|
516 |
<td> |
|
517 |
<!-- classification info --> |
|
518 |
<xsl:for-each select="lom/lom:classification"> |
|
519 |
<xsl:call-template name="lomClassification"/> |
|
520 |
</xsl:for-each> |
|
521 |
</td> |
|
522 |
|
|
523 |
</tr> |
|
524 |
|
|
525 |
</table> |
|
526 |
|
|
527 |
</xsl:template> |
|
528 |
|
|
529 |
<!--******************************************************** |
|
530 |
lomGeneral part |
|
531 |
********************************************************--> |
|
532 |
<xsl:template name="lomGeneral"> |
|
533 |
<xsl:for-each select="."> |
|
534 |
<table> |
|
535 |
<tr> |
|
536 |
<th colspan="2"> |
|
537 |
General |
|
538 |
</th> |
|
539 |
</tr> |
|
540 |
<tr> |
|
541 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Title:</td> |
|
542 |
<td> |
|
543 |
<xsl:value-of |
|
544 |
select="lom:title/lom:string" /> |
|
545 |
</td> |
|
546 |
</tr> |
|
547 |
<tr> |
|
548 |
<td width="{$firstColWidth}" class="{$firstColStyle}">ID:</td> |
|
549 |
<td> |
|
550 |
<xsl:value-of |
|
551 |
select="lom:identifier/lom:catalog" /> |
|
552 |
/ |
|
553 |
<xsl:value-of |
|
554 |
select="lom:identifier/lom:entry" /> |
|
555 |
</td> |
|
556 |
</tr> |
|
557 |
<tr> |
|
558 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Description:</td> |
|
559 |
<td> |
|
560 |
<xsl:value-of |
|
561 |
select="lom:description/lom:string" /> |
|
562 |
</td> |
|
563 |
</tr> |
|
564 |
<tr> |
|
565 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Year:</td> |
|
566 |
<td><xsl:value-of select="../../year"/></td> |
|
567 |
</tr> |
|
568 |
<tr> |
|
569 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Term:</td> |
|
570 |
<td><xsl:value-of select="../../term"/></td> |
|
571 |
</tr> |
|
572 |
<tr> |
|
573 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Dates:</td> |
|
574 |
<td> |
|
575 |
<xsl:value-of select="../../coverage/rangeOfDates/beginDate"/> |
|
576 |
to |
|
577 |
<xsl:value-of select="../../coverage/rangeOfDates/endDate"/> |
|
578 |
</td> |
|
579 |
</tr> |
|
580 |
<tr> |
|
581 |
<td width="{$firstColWidth}" class="{$firstColStyle}"><xsl:value-of select="../../credit/@measurementUnit"/>:</td> |
|
582 |
<td> |
|
583 |
<xsl:value-of select="../../credit"/> |
|
584 |
</td> |
|
585 |
</tr> |
|
586 |
<tr valign="top"> |
|
587 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Student Count:</td> |
|
588 |
<td> |
|
589 |
<table> |
|
590 |
<xsl:for-each select="../../studentCount[@level!='']"> |
|
591 |
<tr> |
|
592 |
<td width="{$firstColWidth}" class="{$firstColStyle}"> |
|
593 |
Level <xsl:value-of select="@level"/>: |
|
594 |
</td> |
|
595 |
<td> |
|
596 |
<xsl:value-of select="."/> |
|
597 |
</td> |
|
598 |
</tr> |
|
599 |
</xsl:for-each> |
|
600 |
</table> |
|
601 |
</td> |
|
602 |
</tr> |
|
603 |
<tr valign="top"> |
|
604 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Class Time:</td> |
|
605 |
<td> |
|
606 |
<table> |
|
607 |
<xsl:for-each select="../../classTime[@type!='']"> |
|
608 |
<tr> |
|
609 |
<td width="{$firstColWidth}" class="{$firstColStyle}"> |
|
610 |
<xsl:value-of select="@type"/>: |
|
611 |
</td> |
|
612 |
<td> |
|
613 |
<xsl:value-of select="."/> (<xsl:value-of select="@measurementUnit"/>) |
|
614 |
</td> |
|
615 |
</tr> |
|
616 |
</xsl:for-each> |
|
617 |
</table> |
|
618 |
</td> |
|
619 |
</tr> |
|
620 |
</table> |
|
621 |
</xsl:for-each> |
|
622 |
</xsl:template> |
|
623 |
|
|
624 |
<!--******************************************************** |
|
625 |
lomEducational part |
|
626 |
********************************************************--> |
|
627 |
<xsl:template name="lomEducational"> |
|
628 |
<table> |
|
629 |
<tr> |
|
630 |
<th colspan="2"> |
|
631 |
Educational |
|
632 |
</th> |
|
633 |
</tr> |
|
634 |
<tr> |
|
635 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Context:</td> |
|
636 |
<td> |
|
637 |
<ul> |
|
638 |
<xsl:for-each select="lom:context"> |
|
639 |
<li> |
|
640 |
<xsl:value-of select="lom:value" /> (<xsl:value-of select="lom:source" />) |
|
641 |
</li> |
|
642 |
</xsl:for-each> |
|
643 |
</ul> |
|
644 |
</td> |
|
645 |
</tr> |
|
646 |
<tr> |
|
647 |
<td width="{$firstColWidth}" class="{$firstColStyle}">Intended End-User Role:</td> |
|
648 |
<td> |
|
649 |
<ul> |
|
650 |
<xsl:for-each select="lom:intendedEndUserRole"> |
|
651 |
<li> |
|
652 |
<xsl:value-of select="lom:value" /> (<xsl:value-of select="lom:source" />) |
|
653 |
</li> |
Also available in: Unified diff
initial skin draft for FIRST project as metacat deployment.
will require [much] more customization to be fully useful for project, but this is a start.