Project

General

Profile

Bug #602 » eml-physical.xsd

Owen Eddins, 10/01/2002 01:49 PM

 
1
<?xml version="1.0"?>
2
<xs:schema targetNamespace="eml://ecoinformatics.org/physical-2.0.0rc1" xmlns="eml://ecoinformatics.org/physical-2.0.0rc1" xmlns:doc="eml://ecoinformatics.org/documentation-2.0.0rc1" xmlns:lit="eml://ecoinformatics.org/literature-2.0.0rc1" xmlns:res="eml://ecoinformatics.org/resource-2.0.0rc1" xmlns:xs="http://www.w3.org/2001/XMLSchema">
3
  <xs:import namespace="eml://ecoinformatics.org/documentation-2.0.0rc1" schemaLocation="eml-documentation.xsd"/>
4
  <xs:import namespace="eml://ecoinformatics.org/literature-2.0.0rc1" schemaLocation="eml-literature.xsd"/>
5
  <xs:import namespace="eml://ecoinformatics.org/resource-2.0.0rc1" schemaLocation="eml-resource.xsd"/>
6
  <xs:annotation>
7
    <xs:documentation>
8
       '$RCSfile: eml-physical.xsd,v $'
9
       Copyright: 1997-2002 Regents of the University of California,
10
                            University of New Mexico, and
11
                            Arizona State University
12
        Sponsors: National Center for Ecological Analysis and Synthesis and
13
                  Partnership for Interdisciplinary Studies of Coastal Oceans,
14
                     University of California Santa Barbara
15
                  Long-Term Ecological Research Network Office,
16
                     University of New Mexico
17
                  Center for Environmental Studies, Arizona State University
18
   Other funding: National Science Foundation (see README for details)
19
                  The David and Lucile Packard Foundation
20

    
21
     For Details: http://knb.ecoinformatics.org/
22
        '$Author: cjones $'
23
          '$Date: 2002/09/16 23:40:58 $'
24
      '$Revision: 1.43 $'
25

    
26
    This program is free software; you can redistribute it and/or modify
27
    it under the terms of the GNU General Public License as published by
28
    the Free Software Foundation; either version 2 of the License, or
29
    (at your option) any later version.
30

    
31
    This program is distributed in the hope that it will be useful,
32
    but WITHOUT ANY WARRANTY; without even the implied warranty of
33
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
34
    GNU General Public License for more details.
35

    
36
    You should have received a copy of the GNU General Public License
37
    along with this program; if not, write to the Free Software
38
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
39
    </xs:documentation>
40
    <xs:appinfo>
41
      <doc:moduleDocs>
42
        <doc:moduleName>eml-physical</doc:moduleName>
43
        <doc:moduleDescription>The eml-physical module describes the external 
44
	and internal physical characteristics of a data object as well as the
45
	information required for its distribution. Examples of the external 
46
	physical characteristics of a data object would be the filename, size,
47
	compression, encoding methods, and authentication of a file (or byte 
48
	stream) that resides on a filesystem or the name of a database table 
49
	if the data object resides in a relational database.  Internal 
50
	physical characteristics describe the format of the data object being 
51
	described.  Examples are Microsoft Access 2000, ASCII, or UTF-8.  It 
52
	also includes the information needed to parse the data object to 
53
	extract the entity and its attributes from the data object.  
54
	Distribution information describes how to retrieve the data object.
55
	The retrieval information can be either online with connection 
56
	information, a URL for example, or offline with the data object 
57
	residing on an archival tape.
58
	</doc:moduleDescription>
59
        <doc:recommendedUsage>Any data object that is being desribed by EML
60
	needs this information so the entities and attributes that reside with
61
	in the data object can be extracted.
62
        </doc:recommendedUsage>
63
        <doc:standAlone>yes</doc:standAlone>
64
      </doc:moduleDocs>
65
    </xs:appinfo>
66
  </xs:annotation>
67
  <xs:element name="physical" type="PhysicalType">
68
    <xs:annotation>
69
      <xs:appinfo>
70
        <doc:tooltip>Physical structure.</doc:tooltip>
71
        <doc:summary>Physical structure of an entity or entities.</doc:summary>
72
        <doc:description>The content model for physical is a CHOICE between
73
        "references" and all of the elements that let you describe the
74
        internal/external characteristics and distribution of a data object
75
	(e.g., dataObject, dataFormat, distribution.) A physical element can 
76
	contain a reference to an physical element defined elsewhere. Using 
77
	a reference means that the referenced physical is identical, not just 
78
	in name but identical in its complete description. 
79
	</doc:description>
80
        <doc:lineage>The eml-physical was introduced into EML 1.4 as
81
        eml-file.</doc:lineage>
82
      </xs:appinfo>
83
    </xs:annotation>
84
  </xs:element>
85
  <xs:complexType name="PhysicalType">
86
    <xs:choice>
87
      <xs:sequence>
88
        <xs:element name="dataObject">
89
          <xs:annotation>
90
            <xs:appinfo>
91
              <doc:tooltip>Data Object.</doc:tooltip>
92
              <doc:summary>External characteristics of a data object
93
		</doc:summary>
94
              <doc:description>The dataObject element is the parent element for
95
              several elements (e.g. objectName, size, authentication, compressionMethod,
96
	      encodingMethod, characterEncoding) which describe the external 
97
	      characteristics of the data object.
98
              </doc:description>
99
              <doc:lineage>Introduced in EML 2.0.</doc:lineage>
100
            </xs:appinfo>
101
          </xs:annotation>
102
          <xs:complexType>
103
            <xs:sequence>
104
              <xs:annotation>
105
                <xs:appinfo>
106
                  <doc:tooltip>Object name</doc:tooltip>
107
                  <doc:summary>A name for the physical object.</doc:summary>
108
                  <doc:description>The objectName is the a name (i.e.
109
                  identifier) for the object being considered. In many cases,
110
                  it may just be the file name on the file system where it is
111
                  stored. Or if the object is a table in a RDBMS it may be the
112
                  table name.</doc:description>
113
                  <doc:lineage>Introduced in EML 2.0.</doc:lineage>
114
                </xs:appinfo>
115
              </xs:annotation>
116
              <xs:element name="objectName" type="xs:string"/>
117
              <xs:element name="size" minOccurs="0">
118
                <xs:annotation>
119
                  <xs:appinfo>
120
                    <doc:tooltip>Data object size</doc:tooltip>
121
                    <doc:summary>Describes the physical size of the
122
                    data object.</doc:summary>
123
                    <doc:description>This element contains information of the
124
                    physical size of the entity, typically in
125
                    bytes.</doc:description>
126
                    <doc:example><![CDATA[<entitySize unit="bytes">13</entitySize>]]></doc:example>
127
                    <doc:lineage>The entitySize was introduced into EML
128
                    1.4.</doc:lineage>
129
                  </xs:appinfo>
130
                </xs:annotation>
131
                <xs:complexType>
132
                  <xs:simpleContent>
133
                    <xs:extension base="xs:string">
134
                      <xs:attribute name="unit" use="optional" default="bytes">
135
                        <xs:annotation>
136
                          <xs:appinfo>
137
                            <doc:tooltip>Unit of measurement</doc:tooltip>
138
                            <doc:summary>Unit of measurement for the entity
139
                            size, typically bytes</doc:summary>
140
                            <doc:description>This element gives the unit of
141
                            measurement for the size of the entity, and is
142
                            typically bytes.</doc:description>
143
                            <doc:example><![CDATA[<entitySize unit="bytes">13</entitySize>]]></doc:example>
144
                            <doc:lineage>The unit was introduced into EML
145
                            1.4.</doc:lineage>
146
                          </xs:appinfo>
147
                        </xs:annotation>
148
                      </xs:attribute>
149
                    </xs:extension>
150
                  </xs:simpleContent>
151
                </xs:complexType>
152
              </xs:element>
153
              <xs:element name="authentication" minOccurs="0" maxOccurs="unbounded">
154
                <xs:annotation>
155
                  <xs:appinfo>
156
                    <doc:tooltip>Authentication method</doc:tooltip>
157
                    <doc:summary>A value, typically a checksum, used to
158
                    authenticate that the bitstream delivered to the user is
159
                    identical to the original.</doc:summary>
160
                    <doc:description>This element describes authentication
161
                    procedures or techniques, typically by giving a checksum
162
                    method (e.g., MD5) and checksum value for the
163
                    bytestream.</doc:description>
164
                    <doc:example><![CDATA[<authentication method="MD5">
165
                    f5b2177ea03aea73de12da81f896fe40</authentication>]]></doc:example>
166
                    <doc:lineage>The authentication element was introduced into
167
                    EML 1.4.</doc:lineage>
168
                  </xs:appinfo>
169
                </xs:annotation>
170
                <xs:complexType>
171
                  <xs:simpleContent>
172
                    <xs:extension base="xs:string">
173
                      <xs:attribute name="method" type="xs:string" use="optional">
174
                        <xs:annotation>
175
                          <xs:appinfo>
176
                            <doc:tooltip>Authentication method</doc:tooltip>
177
                            <doc:summary>The method used to calculate an
178
                            authentication checksum.</doc:summary>
179
                            <doc:description>This element names the method used
180
                            to calculate and authentication checksum that can
181
                            be used to validate a bytestream. Typical checksum
182
                            methods include MD5 and CRC.</doc:description>
183
                            <doc:example><![CDATA[<authentication method="MD5">
184
                            f5b2177ea03aea73de12da81f896fe40</authentication>]]></doc:example>
185
                            <doc:lineage>The authentication element was
186
                            introduced into EML 1.4.</doc:lineage>
187
                          </xs:appinfo>
188
                        </xs:annotation>
189
                      </xs:attribute>
190
                    </xs:extension>
191
                  </xs:simpleContent>
192
                </xs:complexType>
193
              </xs:element>
194
              <xs:element name="compressionMethod" type="xs:string" minOccurs="0">
195
                <xs:annotation>
196
                  <xs:appinfo>
197
                    <doc:tooltip>Entity's compression method</doc:tooltip>
198
                    <doc:summary>Name of the entity's compression
199
                    method</doc:summary>
200
                    <doc:description>This element describes any compression
201
                    methods used to compress the entity, such as zip, compress,
202
                    etc.</doc:description>
203
                    <doc:lineage>The compressed element was introduced into EML
204
                    1.4.</doc:lineage>
205
                  </xs:appinfo>
206
                </xs:annotation>
207
              </xs:element>
208
              <xs:element name="encodingMethod" type="xs:string" minOccurs="0">
209
                <xs:annotation>
210
                  <xs:appinfo>
211
                    <doc:tooltip>Encoding Method</doc:tooltip>
212
                    <doc:summary>Method used for encoding the
213
                    entity</doc:summary>
214
                    <doc:description>This element describes the entity's
215
                    encoded method, such as MIME base64 encoding or binhex
216
                    encoding.</doc:description>
217
                    <doc:lineage>The encoded element was introduced into EML
218
                    1.4.</doc:lineage>
219
                  </xs:appinfo>
220
                </xs:annotation>
221
              </xs:element>
222
              <xs:element name="characterEncoding" type="xs:string" minOccurs="0">
223
                <xs:annotation>
224
                  <xs:appinfo>
225
                    <doc:tooltip>Character Encoding</doc:tooltip>
226
                    <doc:summary>Contains the name of the chracter encoding
227
                    used for the data.</doc:summary>
228
                    <doc:description>This element contains the name of the
229
                    character encoding. This is typically ASCII or UTF-8, or
230
                    one of the other common encodings.</doc:description>
231
                    <doc:example><![CDATA[<characterEncoding>UTF-8</characterEncoding>]]></doc:example>
232
                    <doc:lineage>Introduced in EML 2.0</doc:lineage>
233
                  </xs:appinfo>
234
                </xs:annotation>
235
              </xs:element>
236
            </xs:sequence>
237
          </xs:complexType>
238
        </xs:element>
239
        <xs:element name="dataFormat">
240
          <xs:annotation>
241
            <xs:appinfo>
242
              <doc:tooltip>Data format</doc:tooltip>
243
              <doc:summary>Describes the internal physical format
244
	      of a data object.</doc:summary>
245
              <doc:description>This element is the parent which is a CHOICE 
246
	      between four possible internal physical formats 
247
	      which describe the internal 
248
	      physical characteristics of the data object.  Using this 
249
	      information the user should be able construct the entity 
250
	      and attributes described in those modules. Note that this is 
251
	      the format of the
252
              physical file itself.</doc:description>
253
              <doc:lineage>The format element was introduced into EML
254
              1.4.</doc:lineage>
255
            </xs:appinfo>
256
          </xs:annotation>
257
          <xs:complexType>
258
            <xs:choice>
259
              <xs:annotation>
260
                <xs:appinfo>
261
                  <doc:tooltip>Generic binary format</doc:tooltip>
262
                  <doc:summary>Generic binary format</doc:summary>
263
                  <doc:description>Documentation for a generic binary
264
                  format</doc:description>
265
                  <doc:lineage>Introduced in EML 2.0.</doc:lineage>
266
                </xs:appinfo>
267
              </xs:annotation>
268
              <xs:element name="textFormat">
269
                <xs:complexType>
270
                  <xs:sequence>
271
                    <xs:element name="numHeaderLines" minOccurs="0"/>
272
                    <xs:element name="numPhysicalLines" type="xs:unsignedInt" minOccurs="0">
273
                      <xs:annotation>
274
                        <xs:appinfo>
275
                          <doc:tooltip>Number of physical lines</doc:tooltip>
276
                          <doc:summary>The number of physical lines in the file
277
                          spanned by a single logical data
278
                          record.</doc:summary>
279
                          <doc:description>A single logical data record may be
280
                          written over several physical lines in a file, with
281
                          no special marker to indicate the end of a record. In
282
                          such cases, it is necessary to know the number of
283
                          lines per record in order to correctly read
284
                          them.</doc:description>
285
                          <doc:example>3</doc:example>
286
                          <doc:lineage>Introduced into EML 2.0.</doc:lineage>
287
                        </xs:appinfo>
288
                      </xs:annotation>
289
                    </xs:element>
290
                    <xs:choice>
291
                      <xs:element name="simpleDelimited">
292
                        <xs:complexType>
293
                          <xs:sequence>
294
                            <xs:element name="fieldDelimiter" type="xs:string" maxOccurs="unbounded"/>
295
                          </xs:sequence>
296
                        </xs:complexType>
297
                      </xs:element>
298
                      <xs:element name="complex" maxOccurs="unbounded">
299
                        <xs:complexType>
300
                          <xs:sequence>
301
                            <xs:element name="lineNumber" type="xs:unsignedLong" minOccurs="0">
302
                              <xs:annotation>
303
                                <xs:appinfo>
304
                                  <doc:tooltip>Physical Line Number</doc:tooltip>
305
                                  <doc:summary>The line on which the data field
306
                                is found, when the data record is written over
307
                                more than one physical line in the
308
                                file.</doc:summary>
309
                                  <doc:description>A single logical data record
310
                                may be written over several physical lines in a
311
                                file, with no special marker to indicate the
312
                                end of a record. In such cases, the relative
313
                                location of a data field must be indicated by
314
                                both relative row and column
315
                                number.</doc:description>
316
                                  <doc:example>3</doc:example>
317
                                  <doc:lineage>Introduced into EML
318
                                2.0.</doc:lineage>
319
                                </xs:appinfo>
320
                              </xs:annotation>
321
                            </xs:element>
322
                            <xs:choice maxOccurs="unbounded">
323
                              <xs:element name="textFixed">
324
                                <xs:annotation>
325
                                  <xs:appinfo>
326
                                    <doc:tooltip>ASCII fixed delimited</doc:tooltip>
327
                                    <doc:summary>Describes physical format of entities 
328
		  and attributes delimitedby special characters like commas
329
		  and spaces.</doc:summary>
330
                                    <doc:description>Describes physical format of entities 
331
		  and attributes delimitedby special characters like commas
332
		  and spaces.</doc:description>
333
                                    <doc:lineage>Introduced in EML 2.0.</doc:lineage>
334
                                  </xs:appinfo>
335
                                </xs:annotation>
336
                                <xs:complexType>
337
                                  <xs:sequence>
338
                                    <xs:element name="fieldStartColumn" type="xs:long" minOccurs="0">
339
                                      <xs:annotation>
340
                                        <xs:appinfo>
341
                                          <doc:tooltip>Start column</doc:tooltip>
342
                                          <doc:summary>The starting column number for a
343
                                fixed format attribute.</doc:summary>
344
                                          <doc:description>FixedWidth fields have a set
345
                                length, thus the end of the field can always be
346
                                determined by adding the fieldWidth to the
347
                                starting column number.</doc:description>
348
                                          <doc:example>any positive integer, see example
349
                                in "delimiter" description</doc:example>
350
                                          <doc:lineage>Introduced into EML
351
                                2.0.</doc:lineage>
352
                                        </xs:appinfo>
353
                                      </xs:annotation>
354
                                    </xs:element>
355
                                    <xs:element name="fieldWidth" type="xs:unsignedLong">
356
                                      <xs:annotation>
357
                                        <xs:appinfo>
358
                                          <doc:tooltip>Field width</doc:tooltip>
359
                                          <doc:summary>FieldWidth specification for fixed
360
                                field length.</doc:summary>
361
                                          <doc:description>FixedWidth fields have a set
362
                                length, thus the end of the field can always be
363
                                determined by adding the fieldWidth to the
364
                                starting column number.</doc:description>
365
                                          <doc:example>any positive integer, see example
366
                                in "delimeter" description</doc:example>
367
                                          <doc:lineage>The fieldWidth element was
368
                                introduced into EML 1.4. Semantics changed to
369
                                work identically to the NBII DTD.</doc:lineage>
370
                                        </xs:appinfo>
371
                                      </xs:annotation>
372
                                    </xs:element>
373
                                  </xs:sequence>
374
                                </xs:complexType>
375
                              </xs:element>
376
                              <xs:element name="textDelimited">
377
                                <xs:annotation>
378
                                  <xs:appinfo>
379
                                    <doc:tooltip>ASCII field delimited</doc:tooltip>
380
                                    <doc:summary>Describes physical format of entities 
381
		  and attributes delimitedby special characters like commas
382
		  and spaces.</doc:summary>
383
                                    <doc:description>Describes physical format of entities 
384
		  and attributes delimitedby special characters like commas
385
		  and spaces.</doc:description>
386
                                    <doc:lineage>Introduced in EML 2.0.</doc:lineage>
387
                                  </xs:appinfo>
388
                                </xs:annotation>
389
                                <xs:complexType>
390
                                  <xs:sequence>
391
                                    <xs:element name="fieldDelimiter" type="xs:string">
392
                                      <xs:annotation>
393
                                        <xs:appinfo>
394
                                          <doc:tooltip>Attribute delimiter</doc:tooltip>
395
                                          <doc:summary>The end of the attribute (field) is
396
                          delimited by a special character called a field
397
                          delimiter.</doc:summary>
398
                                          <doc:description>
399
                          Variable width format fields (attributes) can vary
400
                          in their
401
                          field length, thus the end of the field is
402
                          delimited by a special character called a
403
                          field delimiter (typically a comma or a space).
404
                          Data sets are generally classified as fixedWidth
405
                          format or variableWidth format, but we have
406
                          determined that this is actually a per-field
407
                          classification because one may encounter
408
                          fixedWidth fields mixed together in the same
409
                          data file with variableWidth fields.
410
                          In our encoding scheme, the start of each field
411
                          is assumed to be the column after the last column
412
                          of the previous field, or the first column
413
                          if this is the first field in the dataset, unless
414
                          the starting column is explicity enumerated using the
415
                          "fieldStartColumn" element.
416
                          The end column for each field is classified
417
                          using either a special character delimeter indicated
418
                          using the filedDelimiter element,
419
                          or a fixed field length indicated by using the
420
                          "fieldWidth"
421
                          element.  The delimiter for the last field in the
422
                          data set can be omitted.
423
                          variableWidth fields can vary in their field length,
424
                          and the end of
425
                          the field is delimited by a special character
426
                          called a field delimiter, usually a comma or
427
                          a tab character.  fixedWidth fields have a set
428
                          length, and so the end of the field can always
429
                          be determined by adding the fieldWidth to the
430
                          starting column number.  Here is an example:
431
                          Assume we have the following data in a data set:
432
                          May,100aaaa,1.2,
433
                          April,200aaaa,3.4,
434
                          June,300bbbb,4.6,
435
                          The metadata indicating the physical layout of the
436
                          4 fields would include the
437
                          following:
438
                          <![CDATA[
439
                          <delimiter>,</delimiter>
440
                          <fieldWidth>3</fieldWidth>
441
                          <fieldWidth>3</fieldWidth>
442
                          <delimiter>,</delimiter>
443
                          ]]>
444
                          In a strictly fixed format file, the metadata would
445
                          be slightly different:
446
                          May100aaaa1.2
447
                          Apr200aaaa3.4
448
                          Jun300bbbb4.6
449
                          <![CDATA[
450
                            <fieldWidth>3</fieldWidth>
451
                            <fieldWidth>3</fieldWidth>
452
                            <fieldWidth>4</fieldWidth>
453
                            <fieldWidth>3</fieldWidth>
454
                          ]]>
455
                          or, one could explicitly describe the starting columns:
456
                          <![CDATA[
457
                            <fieldStartColumn>1</fieldStartColumn>
458
                            <fieldWidth>3</fieldWidth>
459
                            <fieldStartColumn>4</fieldStartColumn>
460
                            <fieldWidth>3</fieldWidth>
461
                            <fieldStartColumn>7</fieldStartColumn>
462
                            <fieldWidth>4</fieldWidth>
463
                            <fieldStartColumn>11</fieldStartColumn>
464
                            <fieldWidth>3</fieldWidth>
465
                          ]]></doc:description>
466
                                          <doc:example>comma, tab, white space,
467
                          etc.</doc:example>
468
                                          <doc:lineage>The delimiter element was introduced
469
                          into EML 1.4. Semantics changed to work identically
470
                          to the NBII DTD, and then modified to fit more
471
                          cases.</doc:lineage>
472
                                        </xs:appinfo>
473
                                      </xs:annotation>
474
                                    </xs:element>
475
                                    <xs:element name="maxRecordLength" type="xs:unsignedLong" minOccurs="0"/>
476
                                    <xs:element name="quoteCharacter" type="xs:string" minOccurs="0" maxOccurs="unbounded">
477
                                      <xs:annotation>
478
                                        <xs:appinfo>
479
                                          <doc:tooltip>Quote character</doc:tooltip>
480
                                          <doc:summary>Character used to quote values for
481
                          delimiter escaping</doc:summary>
482
                                          <doc:description>This element specifies a character
483
                          to be used in the entity for quoting values so that
484
                          field delimeters can be used within the value. This
485
                          basically allows delimeter "escaping". The
486
                          quoteChacter is typically a " or '.</doc:description>
487
                                          <doc:example><![CDATA[<quoteCharacter>"</quoteCharacter>]]></doc:example>
488
                                          <doc:lineage>The quoteCharacter element was taken
489
                          from the NBII standard.</doc:lineage>
490
                                        </xs:appinfo>
491
                                      </xs:annotation>
492
                                    </xs:element>
493
                                    <xs:element name="recordDelimiter" type="xs:string" minOccurs="0">
494
                                      <xs:annotation>
495
                                        <xs:appinfo>
496
                                          <doc:tooltip>Record delimiter character</doc:tooltip>
497
                                          <doc:summary>Character used to delimit
498
                          records.</doc:summary>
499
                                          <doc:description>This element specifies the record
500
                          delimiter character when the format is text. The
501
                          record delimiter is usually a newline (\n) on UNIX, a
502
                          carriage return (\r) on MacOS, or both (\r\n) on
503
                          Windows/DOS. Multiline records are usually delimited
504
                          with two line ending characters, for example on UNIX
505
                          it would be two newline characters
506
                          (\n\n).</doc:description>
507
                                          <doc:example><![CDATA[<recordDelimiter>\n\r</recordDelimiter>]]></doc:example>
508
                                          <doc:lineage>The recordDelimiter element was
509
                          introduced into EML 1.4.</doc:lineage>
510
                                        </xs:appinfo>
511
                                      </xs:annotation>
512
                                    </xs:element>
513
                                    <xs:element name="literalCharacter" type="xs:string" minOccurs="0" maxOccurs="unbounded">
514
                                      <xs:annotation>
515
                                        <xs:appinfo>
516
                                          <doc:tooltip>Literal character</doc:tooltip>
517
                                          <doc:summary>Character used to escape other
518
                          characters</doc:summary>
519
                                          <doc:description>This element specifies a character
520
                          to be used for escaping character values so that the
521
                          following character is treated as its literal value.
522
                          This allows "escaping" for special characters like
523
                          quotes, commas, and spaces when they aren't intended
524
                          as a delimiter value. The literalCharacter is 
525
			  typicallya \.</doc:description>
526
                                          <doc:example><![CDATA[<literalCharacter>\</literalCharacter>]]></doc:example>
527
                                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
528
                                        </xs:appinfo>
529
                                      </xs:annotation>
530
                                    </xs:element>
531
                                  </xs:sequence>
532
                                </xs:complexType>
533
                              </xs:element>
534
                            </xs:choice>
535
                          </xs:sequence>
536
                        </xs:complexType>
537
                      </xs:element>
538
                    </xs:choice>
539
                  </xs:sequence>
540
                </xs:complexType>
541
              </xs:element>
542
              <xs:element name="formatType">
543
                <xs:complexType>
544
                  <xs:sequence>
545
                    <xs:element name="formatName" type="xs:string">
546
                      <xs:annotation>
547
                        <xs:appinfo>
548
                          <doc:tooltip>Format Name</doc:tooltip>
549
                          <doc:summary>Name of the internal format of the
550
			  data object</doc:summary>
551
                          <doc:description>Name of the internal format of the
552
			  data object</doc:description>
553
                          <doc:example>
554
                           Microsoft Excel
555
                          </doc:example>
556
                          <doc:lineage>The formatName element was
557
                          introduced into EML 2.0</doc:lineage>
558
                        </xs:appinfo>
559
                      </xs:annotation>
560
                    </xs:element>
561
                    <xs:element name="formatVersion" type="xs:string" minOccurs="0">
562
                      <xs:annotation>
563
                        <xs:appinfo>
564
                          <doc:tooltip>Format Version</doc:tooltip>
565
                          <doc:summary>Version of the internal format of the
566
			  data object</doc:summary>
567
                          <doc:description>Version of the internal format of the
568
			  data object</doc:description>
569
                          <doc:example>
570
                           2000 (9.0.2720)
571
                          </doc:example>
572
                          <doc:lineage>The formatVersion element was
573
                          introduced into EML 2.0</doc:lineage>
574
                        </xs:appinfo>
575
                      </xs:annotation>
576
                    </xs:element>
577
                    <xs:element name="citation" type="lit:CitationType" minOccurs="0">
578
                      <xs:annotation>
579
                        <xs:appinfo>
580
                          <doc:tooltip>citation</doc:tooltip>
581
                          <doc:summary>Data object is an eml-literature document.
582
			  </doc:summary>
583
                          <doc:description>Data object conforms to the 
584
			  EML standard for citation as defined in the XML schema
585
			  for eml-literature.</doc:description>
586
                          <doc:example>
587
                           eml-literature.xml
588
                          </doc:example>
589
                          <doc:lineage>The citation element was
590
                          introduced into EML 2.0</doc:lineage>
591
                        </xs:appinfo>
592
                      </xs:annotation>
593
                    </xs:element>
594
                  </xs:sequence>
595
                </xs:complexType>
596
              </xs:element>
597
              <xs:element name="binaryRasterInfo">
598
                <xs:annotation>
599
                  <xs:appinfo>
600
                    <doc:tooltip>raster image parameters</doc:tooltip>
601
                    <doc:summary>contains binary raster data header
602
                    parameters</doc:summary>
603
                    <doc:description>The binaryRasterInfo element is a
604
                    container for various parameters used to described the
605
                    contents of binary raster image files. In this case, it is
606
                    based on a white paper on the ESRI site that describes the
607
                    header information used for BIP and BIL files ("Extendable
608
                    Image Formats for ArcView GIS 3.1 and
609
                    3.2").</doc:description>
610
                    <doc:lineage>Introduced in EML 2.0.</doc:lineage>
611
                  </xs:appinfo>
612
                </xs:annotation>
613
                <xs:complexType>
614
                  <xs:sequence>
615
                    <xs:element name="nrows" type="xs:int">
616
                      <xs:annotation>
617
                        <xs:appinfo>
618
                          <doc:tooltip>Number of rows</doc:tooltip>
619
                          <doc:summary>The number of rows in the image.
620
			  </doc:summary>
621
                          <doc:description>The number of rows in the image.
622
                          Rows are parallel to the x-axis of the map coordinate
623
                          system. There is no default.</doc:description>
624
                          <doc:example>400</doc:example>
625
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
626
                        </xs:appinfo>
627
                      </xs:annotation>
628
                    </xs:element>
629
                    <xs:element name="ncols" type="xs:int">
630
                      <xs:annotation>
631
                        <xs:appinfo>
632
                          <doc:tooltip>Number of columns</doc:tooltip>
633
                          <doc:summary>The number of columns in the image.
634
			  </doc:summary>
635
                          <doc:description>The number of columns in the image.
636
                          Columns are parallel to the y-axis of the map
637
                          coordinate system. There is no
638
                          default.</doc:description>
639
                          <doc:example>600</doc:example>
640
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
641
                        </xs:appinfo>
642
                      </xs:annotation>
643
                    </xs:element>
644
                    <xs:element name="orientation" nillable="true" minOccurs="0">
645
                      <xs:annotation>
646
                        <xs:appinfo>
647
                          <doc:tooltip>Entity's record
648
                          orientation</doc:tooltip>
649
                          <doc:summary>Specification of the binary raster
650
                          entity's record orientation.</doc:summary>
651
                          <doc:description>This element contains specification
652
                          of the binary raster entity's record orientation by
653
                          defining the element's attribute "columnorrow". The
654
                          binary raster will be column major if the raster is
655
                          to be displayed column by column from the byte
656
                          stream, or row major if it is to be displayed row by
657
                          row from the byte stream.</doc:description>
658
                          <doc:example>The valid attribute values are
659
                          "columnmajor" or "rowmajor". If the attribute is not
660
                          specified, "columnmajor" is used.</doc:example>
661
                          <doc:lineage>The orientation element was introduced
662
                          into EML 2.0</doc:lineage>
663
                        </xs:appinfo>
664
                      </xs:annotation>
665
                      <xs:complexType>
666
                        <xs:attribute name="columnOrRow" use="optional" default="columnMajor">
667
                          <xs:annotation>
668
                            <xs:appinfo>
669
                              <doc:tooltip>Attribute of orientation
670
                              element</doc:tooltip>
671
                              <doc:summary>Specification of the entity's record
672
                              orientation.</doc:summary>
673
                              <doc:description>This attribute specifies the
674
                              entity's record orientation.</doc:description>
675
                              <doc:example>The valid attribute values are
676
                              "columnmajor" or "rowmajor". If the attribute is
677
                              not specified, "columnmajor" is
678
                              used.</doc:example>
679
                              <doc:lineage>The columnorrow attribute was
680
                              introduced into EML 1.4.</doc:lineage>
681
                            </xs:appinfo>
682
                          </xs:annotation>
683
                          <xs:simpleType>
684
                            <xs:restriction base="xs:string">
685
                              <xs:enumeration value="columnMajor"/>
686
                              <xs:enumeration value="rowMajor"/>
687
                            </xs:restriction>
688
                          </xs:simpleType>
689
                        </xs:attribute>
690
                      </xs:complexType>
691
                    </xs:element>
692
                    <xs:element name="nbands" type="xs:int" minOccurs="0">
693
                      <xs:annotation>
694
                        <xs:appinfo>
695
                          <doc:tooltip>Number of Bands</doc:tooltip>
696
                          <doc:summary>The number of spectral bands in the
697
                          image.</doc:summary>
698
                          <doc:description>The number of spectral bands in the
699
                          image. The default is 1.</doc:description>
700
                          <doc:example>1</doc:example>
701
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
702
                        </xs:appinfo>
703
                      </xs:annotation>
704
                    </xs:element>
705
                    <xs:element name="nbits" type="xs:int" minOccurs="0">
706
                      <xs:annotation>
707
                        <xs:appinfo>
708
                          <doc:tooltip>Number of Bits</doc:tooltip>
709
                          <doc:summary>The number of bits per pixel per
710
                          band.</doc:summary>
711
                          <doc:description>The number of bits per pixel per
712
                          band. Acceptable values are 1, 4, 8, 16, and 32. The
713
                          default value is eight bits per pixel per band. For a
714
                          true color image with three bands (R, G, B) stored
715
                          using eight bits for each pixel in each band, nbits
716
                          equals eight and nbands equals three, for a total of
717
                          twenty-four bits per pixel. For an image with nbits
718
                          equal to one, nbands must also equal
719
                          one.</doc:description>
720
                          <doc:example>8</doc:example>
721
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
722
                        </xs:appinfo>
723
                      </xs:annotation>
724
                    </xs:element>
725
                    <xs:element name="byteorder" type="xs:string" minOccurs="0">
726
                      <xs:annotation>
727
                        <xs:appinfo>
728
                          <doc:tooltip>Byte Order</doc:tooltip>
729
                          <doc:summary>The byte order in which image pixel
730
                          values are stored.</doc:summary>
731
                          <doc:description>The byte order in which image pixel
732
                          values are stored. The byte order is important for
733
                          sixteen-bit images, with two bytes per pixel.
734
                          Acceptable values are I - Intel byte order (Silicon
735
                          Graphics, DEC Alpha, PC) Also known as little endian.
736
                          M - Motorola byte order (Sun, HP, etc.) Also known as
737
                          big-endian. The default byte order is the same as
738
                          that of the host machine executing the
739
                          software.</doc:description>
740
                          <doc:example>I or M</doc:example>
741
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
742
                        </xs:appinfo>
743
                      </xs:annotation>
744
                    </xs:element>
745
                    <xs:element name="layout" type="xs:string" minOccurs="0">
746
                      <xs:annotation>
747
                        <xs:appinfo>
748
                          <doc:tooltip>Layout</doc:tooltip>
749
                          <doc:summary>The organization of the bands in the
750
                          image file.</doc:summary>
751
                          <doc:description>The organization of the bands in the
752
                          image file. Acceptable values are bil - Band
753
                          interleaved by line. bip - Band interleaved by pixel.
754
                          bsq - Band sequential. The default layout is
755
                          bil.</doc:description>
756
                          <doc:example>bil, bip, bsq</doc:example>
757
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
758
                        </xs:appinfo>
759
                      </xs:annotation>
760
                    </xs:element>
761
                    <xs:element name="skipbytes" type="xs:string" minOccurs="0">
762
                      <xs:annotation>
763
                        <xs:appinfo>
764
                          <doc:tooltip>Skip Bytes</doc:tooltip>
765
                          <doc:summary>The number of bytes of data in the
766
                          image file to skip in order to reach the start of the
767
                          image data.</doc:summary>
768
                          <doc:description>The number of bytes of data in the
769
                          image file to skip in order to reach the start of the
770
                          image data. This keyword allows you to bypass any
771
                          existing image header information in the file. The
772
                          default value is zero bytes.</doc:description>
773
                          <doc:example>0</doc:example>
774
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
775
                        </xs:appinfo>
776
                      </xs:annotation>
777
                    </xs:element>
778
                    <xs:element name="ulxmap" type="xs:string" minOccurs="0">
779
                      <xs:annotation>
780
                        <xs:appinfo>
781
                          <doc:tooltip>upper left X map coordinate</doc:tooltip>
782
                          <doc:summary>The x-axis map coordinate of the
783
                          center of the upper-left pixel.</doc:summary>
784
                          <doc:description>The x-axis map coordinate of the
785
                          center of the upper-left pixel. If this parameter is
786
                          specified, ulymap must also be set, otherwise a
787
                          default value is used.</doc:description>
788
                          <doc:example>340000</doc:example>
789
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
790
                        </xs:appinfo>
791
                      </xs:annotation>
792
                    </xs:element>
793
                    <xs:element name="ulymap" type="xs:string" minOccurs="0">
794
                      <xs:annotation>
795
                        <xs:appinfo>
796
                          <doc:tooltip>upper left Y map coordinate</doc:tooltip>
797
                          <doc:summary>The y-axis map coordinate of the
798
                          center of the upper-left pixel.</doc:summary>
799
                          <doc:description>The y-axis map coordinate of the
800
                          center of the upper-left pixel. If you specify this
801
                          parameter, set ulxmap, too, otherwise a default value
802
                          is used.</doc:description>
803
                          <doc:example>6486666</doc:example>
804
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
805
                        </xs:appinfo>
806
                      </xs:annotation>
807
                    </xs:element>
808
                    <xs:element name="xdim" type="xs:string" minOccurs="0">
809
                      <xs:annotation>
810
                        <xs:appinfo>
811
                          <doc:tooltip>X dimension</doc:tooltip>
812
                          <doc:summary>The x-dimension of a pixel in map
813
                          units.</doc:summary>
814
                          <doc:description>The x-dimension of a pixel in map
815
                          units. If this parameter is specified, ydim must also
816
                          be set, otherwise a default value is
817
                          used.</doc:description>
818
                          <doc:example>16.665</doc:example>
819
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
820
                        </xs:appinfo>
821
                      </xs:annotation>
822
                    </xs:element>
823
                    <xs:element name="ydim" type="xs:string" minOccurs="0">
824
                      <xs:annotation>
825
                        <xs:appinfo>
826
                          <doc:tooltip>Y dimension</doc:tooltip>
827
                          <doc:summary>The y-dimension of a pixel in map
828
                          units.</doc:summary>
829
                          <doc:description>The y-dimension of a pixel in map
830
                          units. If this parameter is specified, xdim must also
831
                          be set, otherwise a default value is
832
                          used.</doc:description>
833
                          <doc:example>16.665</doc:example>
834
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
835
                        </xs:appinfo>
836
                      </xs:annotation>
837
                    </xs:element>
838
                    <xs:element name="bandrowbytes" type="xs:string" minOccurs="0">
839
                      <xs:annotation>
840
                        <xs:appinfo>
841
                          <doc:tooltip>Bytes per band per row</doc:tooltip>
842
                          <doc:summary>The number of bytes per band per
843
                          row.</doc:summary>
844
                          <doc:description>The number of bytes per band per
845
                          row. This must be an integer. This keyword is used
846
                          only with BIL files when there are extra bits at the
847
                          end of each band within a row that must be
848
                          skipped.</doc:description>
849
                          <doc:example>3</doc:example>
850
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
851
                        </xs:appinfo>
852
                      </xs:annotation>
853
                    </xs:element>
854
                    <xs:element name="totalrowbytes" type="xs:string" minOccurs="0">
855
                      <xs:annotation>
856
                        <xs:appinfo>
857
                          <doc:tooltip>Total bytes of data per row</doc:tooltip>
858
                          <doc:summary>The total number of bytes of data
859
                          per row.</doc:summary>
860
                          <doc:description>The total number of bytes of data
861
                          per row. Use totalrowbytes when there are extra
862
                          trailing bits at the end of each
863
                          row.</doc:description>
864
                          <doc:example>8</doc:example>
865
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
866
                        </xs:appinfo>
867
                      </xs:annotation>
868
                    </xs:element>
869
                    <xs:element name="bandgapbytes" type="xs:string" minOccurs="0">
870
                      <xs:annotation>
871
                        <xs:appinfo>
872
                          <doc:tooltip>Bytes between bands</doc:tooltip>
873
                          <doc:summary>The number of bytes between bands in
874
                          a BSQ format image.</doc:summary>
875
                          <doc:description>The number of bytes between bands in
876
                          a BSQ format image. The default is
877
                          zero.</doc:description>
878
                          <doc:example>1</doc:example>
879
                          <doc:lineage>Introduced in EML 2.0.</doc:lineage>
880
                        </xs:appinfo>
881
                      </xs:annotation>
882
                    </xs:element>
883
                  </xs:sequence>
884
                </xs:complexType>
885
              </xs:element>
886
            </xs:choice>
887
          </xs:complexType>
888
        </xs:element>
889
        <xs:element name="distribution" type="PhysicalDistributionType" minOccurs="0" maxOccurs="unbounded">
890
          <xs:annotation>
891
            <xs:appinfo>
892
              <doc:tooltip>Distribution Information</doc:tooltip>
893
              <doc:summary>Information on how the resource is distributed
894
              online and offline</doc:summary>
895
              <doc:description>This element provides information on how the
896
              resource is distributed online and offline. Connections to online
897
              systems can be described as URLs and as a list of relevant
898
              connection parameters.</doc:description>
899
              <doc:lineage>Derived from distribution elements in the FGDC
900
              standard.</doc:lineage>
901
            </xs:appinfo>
902
          </xs:annotation>
903
        </xs:element>
904
      </xs:sequence>
905
      <xs:element name="references" type="xs:string"/>
906
    </xs:choice>
907
    <xs:attribute name="id" type="xs:string" use="optional"/>
908
    <xs:attribute name="system" type="xs:string" use="optional"/>
909
    <xs:attribute name="scope" type="res:ScopeType" use="optional" default="document"/>
910
  </xs:complexType>
911
  <xs:complexType name="PhysicalDistributionType">
912
    <xs:choice>
913
      <xs:choice>
914
        <xs:element name="online">
915
          <xs:annotation>
916
            <xs:appinfo>
917
              <doc:tooltip>Online Distribution Information</doc:tooltip>
918
              <doc:summary>Distribution information for accessing the
919
              resource online.</doc:summary>
920
              <doc:description>Distribution information for accessing the
921
              resource online, represented either as a URL or as a series of
922
              named parameters that are needed in order to
923
              connect. The URL field is provided for the simple cases where a
924
              file is available for download directly from a web server or
925
              other similar server and a complex connection protocol is not
926
              needed.  The connection field provides an alternative where a
927
              complex protocol needs to be named and described, along with
928
              the necessary parameters needed for the connection.
929
              </doc:description>
930
            </xs:appinfo>
931
          </xs:annotation>
932
          <xs:complexType>
933
            <xs:sequence>
934
              <xs:choice>
935
                <xs:element name="url">
936
                  <xs:annotation>
937
                    <xs:appinfo>
938
                      <doc:tooltip>Download site URL</doc:tooltip>
939
                      <doc:summary>A URL (Uniform Resource Locator) from which
940
                      this resource can be downloaded or information can be
941
                      obtained about downloading it.</doc:summary>
942
                      <doc:description>A URL (Uniform Resource Locator) from
943
                      which this resource can be downloaded or additional
944
                      information can be obtained. If accessing the URL would
945
                      directly return the data stream, then the "function"
946
                      attribute should be set to "download".  If the URL
947
                      provides further information about downloading the
948
                      object but does not directly return the data stream, then
949
                      the "function" attribute should be set to "information".
950
                      If the "function" attribute is omitted, then "download"
951
                      is implied for the URL function.
952
                      In more complex cases where a non-standard connection
953
                      must be established that complies with application
954
                      specific procedures beyond what can be described in the
955
                      simple URL, then the "connection" element should
956
                      be used instead of the URL element.</doc:description>
957
                      <doc:example>
958
                      http://data.org/getdata?id=98332</doc:example>
959
                      <doc:lineage>ISO CD 19115.3, Geographic information -
960
                      Metadata</doc:lineage>
961
                    </xs:appinfo>
962
                  </xs:annotation>
963
                  <xs:complexType>
964
                    <xs:simpleContent>
965
                      <xs:extension base="xs:anyURI">
966
                        <xs:attribute name="function" type="res:FunctionType" use="optional" default="download"/>
967
                      </xs:extension>
968
                    </xs:simpleContent>
969
                  </xs:complexType>
970
                </xs:element>
971
                <xs:element name="connection">
972
                  <xs:annotation>
973
                    <xs:appinfo>
974
                      <doc:tooltip>Connection</doc:tooltip>
975
                      <doc:summary>A description of the information needed
976
                      to make an application connection to a data service.
977
                      </doc:summary>
978
                      <doc:description>A description of the information needed
979
                      to make an application connection to a data service.
980
                      The connection starts with a connectionDefinition which
981
                      lists all of the parameters needed for the connection
982
                      and possible default values for each.  It then includes a
983
                      list of parameter values, one for each parameter, that
984
                      override the defaults for this particular connection.
985
                      One parameter element should exist for every
986
                      parameterDefinition that is present in the
987
                      connectionDefinition, except that parameters that were
988
                      defined with a defaultValue in their parameterDefinition
989
                      can be ommitted from the connection and the default
990
                      will be used. All information about how to use the
991
                      parameters to establish a session and extract data is
992
                      present in the connectionDefinition, possibly implicitly
993
                      by naming a connection schemeName that is well-known.
994
                      </doc:description>
995
                    </xs:appinfo>
996
                  </xs:annotation>
997
                  <xs:complexType>
998
                    <xs:choice>
999
                      <xs:sequence>
1000
                        <xs:element name="connectionDefinition" type="res:ConnectionDefinitionType">
1001
                          <xs:annotation>
1002
                            <xs:appinfo>
1003
                              <doc:tooltip>Connection Definition</doc:tooltip>
1004
                              <doc:summary>Definition of the connection protocol
1005
                              to be used for this connection.</doc:summary>
1006
                              <doc:description>Definition of the connection
1007
                              protocol to be used for this connection.  The
1008
                              definition has a "scheme" which identifies the
1009
                              protocol by name, and a detailed description of
1010
                              the scheme and its required parameters.
1011
                              </doc:description>
1012
                            </xs:appinfo>
1013
                          </xs:annotation>
1014
                        </xs:element>
1015
                        <xs:element name="parameter" minOccurs="0" maxOccurs="unbounded">
1016
                          <xs:annotation>
1017
                            <xs:appinfo>
1018
                              <doc:tooltip>Parameter</doc:tooltip>
1019
                              <doc:summary>A parameter to be used to make this
1020
                              connection.</doc:summary>
1021
                              <doc:description>A parameter to be used to make
1022
                              this connection. This value overrides any
1023
                              default value that may have been provided in the
1024
                              connection definition.
1025
                              </doc:description>
1026
                            </xs:appinfo>
1027
                          </xs:annotation>
1028
                          <xs:complexType>
1029
                            <xs:sequence>
1030
                              <xs:element name="name" type="xs:string">
1031
                                <xs:annotation>
1032
                                  <xs:appinfo>
1033
                                    <doc:tooltip>Parameter Name</doc:tooltip>
1034
                                    <doc:summary>Name of the parameter to be
1035
                                    used to make this connection.</doc:summary>
1036
                                    <doc:description>The name of the parameter
1037
                                    to be used to make this connection.
1038
                                    </doc:description>
1039
                                    <doc:example>hostname</doc:example>
1040
                                  </xs:appinfo>
1041
                                </xs:annotation>
1042
                              </xs:element>
1043
                              <xs:element name="value" type="xs:string">
1044
                                <xs:annotation>
1045
                                  <xs:appinfo>
1046
                                    <doc:tooltip>Parameter Value</doc:tooltip>
1047
                                    <doc:summary>The value of the parameter to
1048
                                    be used to make this connection.
1049
                                    </doc:summary>
1050
                                    <doc:description>The value of the parameter
1051
                                    to be used to make this connection. This
1052
                                    value overrides any default value that may
1053
                                    have been provided in the connection
1054
                                    definition.</doc:description>
1055
                                    <doc:example>nceas.ucsb.edu</doc:example>
1056
                                  </xs:appinfo>
1057
                                </xs:annotation>
1058
                              </xs:element>
1059
                            </xs:sequence>
1060
                          </xs:complexType>
1061
                        </xs:element>
1062
                      </xs:sequence>
1063
                      <xs:element name="references" type="xs:string">
1064
                        <xs:annotation>
1065
                          <xs:appinfo>
1066
                            <doc:tooltip>References</doc:tooltip>
1067
                            <doc:summary>The id of another connection in this
1068
                            EML document to be used to provide the connection
1069
                            information.
1070
                            </doc:summary>
1071
                            <doc:description>The id of another connection in
1072
                            this EML document to be used to provide the
1073
                            connection information. This is used instead of
1074
                            duplicating connection information when an identical
1075
                            connection needs to be used multiple times in an
1076
                            EML document.</doc:description>
1077
                          </xs:appinfo>
1078
                        </xs:annotation>
1079
                      </xs:element>
1080
                    </xs:choice>
1081
                    <xs:attribute name="id" type="xs:string" use="optional"/>
1082
                    <xs:attribute name="system" type="xs:string" use="optional"/>
1083
                    <xs:attribute name="scope" type="res:ScopeType" use="optional" default="document"/>
1084
                  </xs:complexType>
1085
                </xs:element>
1086
              </xs:choice>
1087
            </xs:sequence>
1088
          </xs:complexType>
1089
        </xs:element>
1090
        <xs:element name="offline">
1091
          <xs:annotation>
1092
            <xs:appinfo>
1093
              <doc:tooltip>medium of the resource</doc:tooltip>
1094
              <doc:summary>the medium on which this resource is distributed,
1095
              either digitally or as hardcopy</doc:summary>
1096
              <doc:description>the medium on which this resource is distributed
1097
              digitally, such as 3.5" floppy disk, or various tape media types,
1098
              or 'hardcopy'</doc:description>
1099
              <doc:example>CD-ROM, 3.5 in. floppy disk, Zip disk</doc:example>
1100
              <doc:lineage>ISO CD 19115.3, Geographic information -
1101
              Metadata</doc:lineage>
1102
            </xs:appinfo>
1103
          </xs:annotation>
1104
          <xs:complexType>
1105
            <xs:sequence>
1106
              <xs:element name="mediumName" type="xs:string" minOccurs="0">
1107
                <xs:annotation>
1108
                  <xs:appinfo>
1109
                    <doc:tooltip>Medium name</doc:tooltip>
1110
                    <doc:summary>Name of the medium that for this resource
1111
                    distribution</doc:summary>
1112
                    <doc:description>Name of the medium on which this resource
1113
                    is distributed. Can be various digital media such as tapes
1114
                    and disks, or printed media which can collectively be
1115
                    termed 'hardcopy'.</doc:description>
1116
                    <doc:example>Tape, 3.5 inch Floppy Disk,
1117
                    hardcopy</doc:example>
1118
                    <doc:lineage>ISO CD 19115.3, Geographic information -
1119
                    Metadata</doc:lineage>
1120
                  </xs:appinfo>
1121
                </xs:annotation>
1122
              </xs:element>
1123
              <xs:element name="mediumDensity" type="xs:string" minOccurs="0">
1124
                <xs:annotation>
1125
                  <xs:appinfo>
1126
                    <doc:tooltip>density of the digital medium</doc:tooltip>
1127
                    <doc:summary>the density of the digital medium if this is
1128
                    relevant.</doc:summary>
1129
                    <doc:description>the density of the digital medium if this
1130
                    is relevant. Used mainly for floppy disks or
1131
                    tape.</doc:description>
1132
                    <doc:example>High Density (HD), Double Density
1133
                    (DD)</doc:example>
1134
                    <doc:lineage>ISO CD 19115.3, Geographic information -
1135
                    Metadata</doc:lineage>
1136
                  </xs:appinfo>
1137
                </xs:annotation>
1138
              </xs:element>
1139
              <xs:element name="mediumDensityUnits" type="xs:string" minOccurs="0">
1140
                <xs:annotation>
1141
                  <xs:appinfo>
1142
                    <doc:tooltip>units of a numerical density</doc:tooltip>
1143
                    <doc:summary>a numerical density's units</doc:summary>
1144
                    <doc:description>if a density is given numerically, the
1145
                    units should be given here.</doc:description>
1146
                    <doc:example>B/cm</doc:example>
1147
                    <doc:lineage>ISO CD 19115.3, Geographic information -
1148
                    Metadata</doc:lineage>
1149
                  </xs:appinfo>
1150
                </xs:annotation>
1151
              </xs:element>
1152
              <xs:element name="mediumVolume" type="xs:string" minOccurs="0">
1153
                <xs:annotation>
1154
                  <xs:appinfo>
1155
                    <doc:tooltip>storage volume</doc:tooltip>
1156
                    <doc:summary>total volume of the storage
1157
                    medium</doc:summary>
1158
                    <doc:description>the total volume of the storage medium on
1159
                    which this resource is shipped.</doc:description>
1160
                    <doc:example>650 MB</doc:example>
1161
                    <doc:lineage>ISO CD 19115.3, Geographic information -
1162
                    Metadata</doc:lineage>
1163
                  </xs:appinfo>
1164
                </xs:annotation>
1165
              </xs:element>
1166
              <xs:element name="mediumFormat" type="xs:string" minOccurs="0" maxOccurs="unbounded">
1167
                <xs:annotation>
1168
                  <xs:appinfo>
1169
                    <doc:tooltip>medium format</doc:tooltip>
1170
                    <doc:summary>format of the medium on which the resource is
1171
                    shipped.</doc:summary>
1172
                    <doc:description>the file system format of the medium on
1173
                    which the resource is shipped</doc:description>
1174
                    <doc:example>NTFS, FAT32, EXT2, QIK80</doc:example>
1175
                    <doc:lineage>ISO CD 19115.3, Geographic information -
1176
                    Metadata</doc:lineage>
1177
                  </xs:appinfo>
1178
                </xs:annotation>
1179
              </xs:element>
1180
              <xs:element name="mediumNote" type="xs:string" minOccurs="0">
1181
                <xs:annotation>
1182
                  <xs:appinfo>
1183
                    <doc:tooltip>note about the media</doc:tooltip>
1184
                    <doc:summary>note about the media</doc:summary>
1185
                    <doc:description>any additional pertinent information about
1186
                    the media</doc:description>
1187
                    <doc:lineage>ISO CD 19115.3, Geographic information -
1188
                    Metadata</doc:lineage>
1189
                  </xs:appinfo>
1190
                </xs:annotation>
1191
              </xs:element>
1192
            </xs:sequence>
1193
          </xs:complexType>
1194
        </xs:element>
1195
        <xs:element name="inline">
1196
          <xs:complexType>
1197
            <xs:sequence>
1198
              <xs:any maxOccurs="unbounded"/>
1199
            </xs:sequence>
1200
          </xs:complexType>
1201
        </xs:element>
1202
      </xs:choice>
1203
      <xs:element name="references" type="xs:string"/>
1204
    </xs:choice>
1205
    <xs:attribute name="id" type="xs:string" use="optional"/>
1206
    <xs:attribute name="system" type="xs:string" use="optional"/>
1207
    <xs:attribute name="scope" type="res:ScopeType" use="optional" default="document"/>
1208
  </xs:complexType>
1209
</xs:schema>
(2-2/3)