source: RevitalizationWS/schemas/dataProvider/tags/1.0.0-BETA/src/main/resources/DPWS.xsd @ 7397

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/RevitalizationWS/schemas/dataProvider/tags/1.0.0-BETA/src/main/resources/DPWS.xsd@7397
Revision 7397, 21.9 KB checked in by mnagni, 9 years ago (diff)

First frozen version with all service implemented. The security is done but actually commented out.

  • Property svn:executable set to *
  • Property svn:mime-type set to text/plain
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by Steve Donegan (NERC Earth Observation Data Centre) -->
3<xs:schema elementFormDefault="qualified" attributeFormDefault="qualified"
4        xmlns:xs="http://www.w3.org/2001/XMLSchema"
5        targetNamespace="http://ejb.revitalization.services.ndg/"
6        xmlns:dpw="http://ejb.revitalization.services.ndg/">
7
8
9
10        <xs:annotation>
11                <xs:documentation>Basic service operation requests</xs:documentation>
12        </xs:annotation>
13
14        <!--###### GetList #####-->
15        <xs:element name="GetList" type="dpw:GetListType">
16                <xs:annotation>
17                        <xs:documentation>Get a list of values for list specified in GetListNames operation</xs:documentation>
18                </xs:annotation>
19        </xs:element>
20        <xs:element name="GetListResponse" type="dpw:GetListResponse">
21                <xs:annotation>
22                        <xs:documentation>Return values in chosen List N</xs:documentation>
23                </xs:annotation>
24        </xs:element>
25        <xs:complexType name="GetListResponse">
26                <xs:complexContent>
27                        <xs:extension base="dpw:ResponseType">
28                                <xs:sequence>
29                                        <xs:element name="ListNames" type="dpw:ListNames"/>
30                                </xs:sequence>
31                        </xs:extension>
32                </xs:complexContent>
33        </xs:complexType>
34
35        <!--###### GetListNames #####-->
36        <xs:element name="GetListNames" nillable="true">
37                <xs:annotation>
38                        <xs:documentation>Get names of lists used to define controlled values in this web service i.e. HarvestType</xs:documentation>
39                </xs:annotation>
40        </xs:element>
41        <xs:element name="GetListNamesResponseType" type="dpw:GetListNamesResponse">
42                <xs:annotation>
43                        <xs:documentation>Return names of lists used for controlled values</xs:documentation>
44                </xs:annotation>
45        </xs:element>
46        <xs:complexType name="GetListNamesResponse">
47                <xs:complexContent>
48                        <xs:extension base="dpw:ResponseType">
49                                <xs:sequence>
50                                        <xs:element name="ListNames" type="dpw:ListNames"/>
51                                </xs:sequence>
52                        </xs:extension>
53                </xs:complexContent>
54        </xs:complexType>
55
56        <!--###### DoNewProvider #####-->
57        <xs:element name="DoHarvestRequest">
58                <xs:annotation>
59                        <xs:documentation>Initiate an OAI or CSW metadata harvest from the specified provider</xs:documentation>
60                </xs:annotation>
61                <xs:complexType>
62                        <xs:sequence>
63                                <xs:element name="EmailReportID" type="xs:int" minOccurs="0" maxOccurs="unbounded">
64                                        <xs:annotation>
65                                                <xs:documentation>Email of person(s) to send harvest confirmation email to</xs:documentation>
66                                        </xs:annotation>
67                                </xs:element>
68                                <xs:element name="ProviderID" type="xs:int">
69                                        <xs:annotation>
70                                                <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation>
71                                        </xs:annotation>
72                                </xs:element>
73                        </xs:sequence>
74                </xs:complexType>
75        </xs:element>
76        <xs:element name="DoHarvestResponseType" type="dpw:DoHarvestResponse">
77                <xs:annotation>
78                        <xs:documentation>Return confirmation on status of metadata harvest and relevant report</xs:documentation>
79                </xs:annotation>
80        </xs:element>
81        <xs:complexType name="DoHarvestResponse">
82                <xs:complexContent>
83                        <xs:extension base="dpw:ResponseType">
84                                <xs:sequence>
85                                        <xs:element name="processID" type="dpw:ProcessIDType"/>
86                                </xs:sequence>
87                        </xs:extension>
88                </xs:complexContent>
89        </xs:complexType>
90
91
92        <!--###### DoNewProvider #####-->
93        <xs:element name="DoNewUpdateProviderRequest">
94                <xs:complexType>
95                        <xs:sequence>
96                                <xs:element name="DoNewUpdateProvider" type="dpw:ProviderDetail"/>
97                        </xs:sequence>
98                </xs:complexType>
99        </xs:element>
100
101        <xs:element name="DoNewUpdateProviderResponse" type="dpw:DoNewUpdateProviderResponse">
102                <xs:annotation>
103                        <xs:documentation>Confirmation of addition of NEW metadata provider details (super admin only)</xs:documentation>
104                </xs:annotation>
105        </xs:element>
106        <xs:complexType name="DoNewUpdateProviderResponse">
107                <xs:complexContent>
108                        <xs:extension base="dpw:ResponseType">
109                                <xs:sequence>
110                                        <xs:element ref="dpw:Provider"/>
111                                </xs:sequence>
112                        </xs:extension>
113                </xs:complexContent>
114        </xs:complexType>
115
116        <!--###### GetProviderDetails #####-->
117        <xs:element name="GetProviderDetailsRequest">
118                <xs:complexType>
119                        <xs:sequence>
120                                <xs:element name="ProviderID" type="xs:int" maxOccurs="unbounded">
121                                        <xs:annotation>
122                                                <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation>
123                                        </xs:annotation>
124                                </xs:element>
125                        </xs:sequence>
126                </xs:complexType>
127        </xs:element>
128
129        <xs:element name="GetProviderDetailsResponse" type="dpw:GetProviderDetailsResponse"/>
130        <xs:complexType name="GetProviderDetailsResponse">
131                <xs:complexContent>
132                        <xs:extension base="dpw:ResponseType">
133                                <xs:sequence maxOccurs="unbounded">
134                                        <xs:element name="Provider" type="dpw:ProviderDetail"/>
135                                </xs:sequence>
136                        </xs:extension>
137                </xs:complexContent>
138        </xs:complexType>
139
140        <!--###### GetProcessStatus #####-->
141        <xs:element name="GetProcessStatusRequest">
142                <xs:complexType>
143                        <xs:sequence maxOccurs="unbounded">
144                                <xs:element name="ProcessID" type="xs:int"/>
145                        </xs:sequence>
146                </xs:complexType>
147        </xs:element>
148        <xs:element name="GetProcessStatusResponseType" type="dpw:GetProcessStatusResponse"/>
149
150
151        <xs:complexType name="GetProcessStatusResponse">
152                <xs:complexContent>
153                        <xs:extension base="dpw:ResponseType">
154                                <xs:sequence>
155                                        <xs:element name="ProcessID" type="dpw:ProcessIDType" maxOccurs="unbounded"/>
156                                </xs:sequence>
157                        </xs:extension>
158                </xs:complexContent>
159        </xs:complexType>
160
161        <!--###### GetHarvestHistory #####-->
162        <xs:element name="GetHarvestHistoryRequest" type="dpw:GetHistoryRequest">
163                <xs:annotation>
164                        <xs:documentation>Get information on OAI or CSW metadata harvesting histories for a date range</xs:documentation>
165                </xs:annotation>
166        </xs:element>
167
168        <xs:element name="GetHarvestHistoryResponse" type="dpw:GetHarvestHistoryResponse">
169                <xs:annotation>
170                        <xs:documentation>Return information on previous metadata harvesting</xs:documentation>
171                </xs:annotation>
172        </xs:element>
173
174        <xs:complexType name="GetHarvestHistoryResponse">
175                <xs:complexContent>
176                        <xs:extension base="dpw:ResponseType">
177                                <xs:sequence maxOccurs="unbounded">
178                                        <xs:element name="HarvestingEvent" type="dpw:HarvestHistoryType" minOccurs="0"
179                                                maxOccurs="unbounded">
180                                                <xs:annotation>
181                                                        <xs:documentation>One per event in log within the date range in the request (default is last 10 days)</xs:documentation>
182                                                </xs:annotation>
183                                        </xs:element>
184                                </xs:sequence>
185                        </xs:extension>
186                </xs:complexContent>
187        </xs:complexType>
188
189        <!--###### GetIngestHistory #####-->
190        <xs:element name="GetIngestHistoryRequest" type="dpw:GetHistoryRequest">
191                <xs:annotation>
192                        <xs:documentation>Get information on OAI or CSW metadata ingesting histories for a date range</xs:documentation>
193                </xs:annotation>
194        </xs:element>
195
196        <xs:element name="GetIngestHistoryResponse" type="dpw:GetIngestHistoryResponse">
197                <xs:annotation>
198                        <xs:documentation>Return information on previous metadata ingesting</xs:documentation>
199                </xs:annotation>
200        </xs:element>
201
202        <xs:complexType name="GetIngestHistoryResponse">
203                <xs:annotation>
204                        <xs:documentation>Return information on previous metadata ingestion</xs:documentation>
205                </xs:annotation>
206                <xs:complexContent>
207                        <xs:extension base="dpw:ResponseType">
208                                <xs:sequence maxOccurs="unbounded">
209                                        <xs:element name="IngestEvent" type="dpw:IngestHistoryType" minOccurs="0"
210                                                maxOccurs="unbounded">
211                                                <xs:annotation>
212                                                        <xs:documentation>One per event in log within the date range in the request (default is last 10 days)</xs:documentation>
213                                                </xs:annotation>
214                                        </xs:element>
215                                </xs:sequence>
216                        </xs:extension>
217                </xs:complexContent>
218        </xs:complexType>
219
220        <!--###### DoIngest #####-->
221        <xs:element name="DoIngestRequest">
222                <xs:annotation>
223                        <xs:documentation>Activate an ingest of all available metadata files for the specified provider</xs:documentation>
224                </xs:annotation>
225                <xs:complexType>
226                        <xs:sequence>
227                                <xs:element name="ProcessID" type="dpw:ProcessIDType" minOccurs="0">
228                                        <xs:annotation>
229                                                <xs:documentation>Unique ID to assign process for later recall from db</xs:documentation>
230                                        </xs:annotation>
231                                </xs:element>
232                                <xs:element name="EmailReportID" type="xs:int" minOccurs="0" maxOccurs="unbounded">
233                                        <xs:annotation>
234                                                <xs:documentation>Email of person(s) to send ingest confirmation email to</xs:documentation>
235                                        </xs:annotation>
236                                </xs:element>
237                        </xs:sequence>
238                </xs:complexType>
239        </xs:element>
240
241        <xs:element name="DoIngestResponse" type="dpw:DoIngestResponse">
242                <xs:annotation>
243                        <xs:documentation>Return confirmation on status of metadata ingest and relevant report</xs:documentation>
244                </xs:annotation>
245        </xs:element>
246
247        <xs:complexType name="DoIngestResponse">
248                <xs:annotation>
249                        <xs:documentation>Return information on previous metadata ingestion</xs:documentation>
250                </xs:annotation>
251                <xs:complexContent>
252                        <xs:extension base="dpw:ResponseType"> </xs:extension>
253                </xs:complexContent>
254        </xs:complexType>
255
256        <!-- ##### -->
257        <xs:complexType name="ResponseType" abstract="true">
258                <xs:annotation>
259                        <xs:documentation>Service operational response</xs:documentation>
260                </xs:annotation>
261                <xs:sequence>
262                        <xs:element name="Confirmation" type="dpw:ConfirmationType"/>
263                </xs:sequence>
264        </xs:complexType>
265        <!-- ##### -->
266
267
268
269
270        <xs:complexType name="GetHistoryRequest">
271                <xs:annotation>
272                        <xs:documentation>Get information on metadata ingest into the discovery database history for a date range</xs:documentation>
273                </xs:annotation>
274                <xs:sequence>
275                        <xs:element name="DateRange" type="dpw:DataRangeType" minOccurs="0">
276                                <xs:annotation>
277                                        <xs:documentation>If DateRange not present will default to the last 10 days</xs:documentation>
278                                </xs:annotation>
279                        </xs:element>
280                        <xs:element name="ProviderID" type="xs:int">
281                                <xs:annotation>
282                                        <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation>
283                                </xs:annotation>
284                        </xs:element>
285                </xs:sequence>
286        </xs:complexType>
287
288
289
290        <xs:complexType name="GetListType">
291                <xs:sequence>
292                        <xs:element name="listName" type="xs:string"/>
293                </xs:sequence>
294        </xs:complexType>
295        <xs:complexType name="ListNames">
296                <xs:sequence>
297                        <xs:element name="listItem" type="xs:string" maxOccurs="unbounded"/>
298                </xs:sequence>
299        </xs:complexType>
300        <xs:annotation>
301                <xs:documentation>Types</xs:documentation>
302        </xs:annotation>
303
304        <xs:complexType name="ConfirmationType">
305                <xs:sequence>
306                        <xs:element name="Status" type="xs:string"/>
307                        <xs:element name="Message" type="xs:string"/>
308                </xs:sequence>
309        </xs:complexType>
310        <xs:complexType name="HarvestHistoryType">
311                <xs:sequence>
312                        <xs:element name="RequestId" type="xs:int">
313                                <xs:annotation>
314                                        <xs:documentation>Process ID number</xs:documentation>
315                                </xs:annotation>
316                        </xs:element>
317                        <xs:element name="TotalRecords" type="xs:int">
318                                <xs:annotation>
319                                        <xs:documentation>Number of records processed</xs:documentation>
320                                </xs:annotation>
321                        </xs:element>
322                        <xs:element name="HarvestStartTime" type="xs:dateTime" minOccurs="0"/>
323                        <xs:element name="HarvestStopTime" type="xs:dateTime" minOccurs="0"/>
324                        <xs:element name="ProviderID" type="xs:int">
325                                <xs:annotation>
326                                        <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation>
327                                </xs:annotation>
328                        </xs:element>
329                </xs:sequence>
330        </xs:complexType>
331        <xs:complexType name="IngestHistoryType">
332                <xs:sequence>
333                        <xs:element name="IngestStartTime" type="xs:dateTime">
334                                <xs:annotation>
335                                        <xs:documentation>Start time of metadata ingest operation</xs:documentation>
336                                </xs:annotation>
337                        </xs:element>
338                        <xs:element name="IngestStopTime" type="xs:dateTime">
339                                <xs:annotation>
340                                        <xs:documentation>End time of metadata ingest operation</xs:documentation>
341                                </xs:annotation>
342                        </xs:element>
343                        <xs:element name="TotalNumberFilesProcessed" type="xs:int">
344                                <xs:annotation>
345                                        <xs:documentation>Number of files processed - i.e. the number of files in the harvested XML director</xs:documentation>
346                                </xs:annotation>
347                        </xs:element>
348                        <xs:element name="RecordsProcessedSuccessfully" type="xs:int">
349                                <xs:annotation>
350                                        <xs:documentation>Number of files in the harvest directory successfully processed - NOTE this includes files that may have ingest errors</xs:documentation>
351                                </xs:annotation>
352                        </xs:element>
353                        <xs:element name="RecordsProcessedUnsuccessfully" type="xs:int">
354                                <xs:annotation>
355                                        <xs:documentation>Number of files that failed - mainly due to XML parsing errors during ingest</xs:documentation>
356                                </xs:annotation>
357                        </xs:element>
358                        <xs:element name="RecordsCreated" type="xs:int">
359                                <xs:annotation>
360                                        <xs:documentation>Number of records inserted into the discovery database for the first time</xs:documentation>
361                                </xs:annotation>
362                        </xs:element>
363                        <xs:element name="RecordsUpdated" type="xs:int">
364                                <xs:annotation>
365                                        <xs:documentation>Number of existing records in the discovery database that have been updated due to new content after harvesting</xs:documentation>
366                                </xs:annotation>
367                        </xs:element>
368                        <xs:element name="RecordsDeleted" type="xs:int">
369                                <xs:annotation>
370                                        <xs:documentation>Number of files deleted from the discovery database - will equate to files that were previously in the database but equivalent record on the providers CSW/OAI has been withdrawn so must be deleted from the database</xs:documentation>
371                                </xs:annotation>
372                        </xs:element>
373                        <xs:element name="ProblemFileReport" minOccurs="0" maxOccurs="unbounded">
374                                <xs:annotation>
375                                        <xs:documentation>Report for each file summarised in NumberOfProblemFiles</xs:documentation>
376                                </xs:annotation>
377                                <xs:complexType>
378                                        <xs:sequence>
379                                                <xs:element name="ProblemFileName" type="xs:string">
380                                                        <xs:annotation>
381                                                                <xs:documentation>xml filename</xs:documentation>
382                                                        </xs:annotation>
383                                                </xs:element>
384                                                <xs:element name="Message" type="xs:string">
385                                                        <xs:annotation>
386                                                                <xs:documentation>error message thrown by the ingester</xs:documentation>
387                                                        </xs:annotation>
388                                                </xs:element>
389                                        </xs:sequence>
390                                </xs:complexType>
391                        </xs:element>
392                        <xs:element name="ProviderID" type="xs:int">
393                                <xs:annotation>
394                                        <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation>
395                                </xs:annotation>
396                        </xs:element>
397                        <xs:element name="RequestId" type="xs:int">
398                                <xs:annotation>
399                                        <xs:documentation>Process ID number</xs:documentation>
400                                </xs:annotation>
401                        </xs:element>
402                </xs:sequence>
403        </xs:complexType>
404        <xs:complexType name="ProviderContactType">
405                <xs:sequence>
406                        <xs:element ref="dpw:Provider"/>
407                        <xs:element name="HarvestDetails">
408                                <xs:complexType>
409                                        <xs:choice>
410                                                <xs:element name="OAIProvider" type="dpw:OAIProviderDetailsType"/>
411                                                <xs:element name="CSWProvider" type="dpw:CSWProviderDetailsType"/>
412                                        </xs:choice>
413                                </xs:complexType>
414                        </xs:element>
415                        <xs:element name="ProviderName" type="xs:string" minOccurs="0">
416                                <xs:annotation>
417                                        <xs:documentation>Full provider name i.e. British Atmospheric Data Centre</xs:documentation>
418                                </xs:annotation>
419                        </xs:element>
420                        <xs:element name="ProviderContacts" type="dpw:EmailContactType" minOccurs="0"
421                                maxOccurs="unbounded">
422                                <xs:annotation>
423                                        <xs:documentation>Email addresses of contacts at Data Provider</xs:documentation>
424                                </xs:annotation>
425                        </xs:element>
426                        <xs:element name="ProviderAdminEmail">
427                                <xs:annotation>
428                                        <xs:documentation>Mandatory provider admin email</xs:documentation>
429                                </xs:annotation>
430                                <xs:complexType>
431                                        <xs:complexContent>
432                                                <xs:extension base="dpw:ContactType">
433                                                        <xs:sequence>
434                                                                <xs:sequence>
435                                                                        <xs:element name="EmailContact" type="dpw:EmailContactType"/>
436                                                                </xs:sequence>
437                                                                <xs:element name="Monitor" type="xs:boolean" minOccurs="0">
438                                                                        <xs:annotation>
439                                                                                <xs:documentation>Set to true if all processes are to be reported via email to this main contact</xs:documentation>
440                                                                        </xs:annotation>
441                                                                </xs:element>
442                                                        </xs:sequence>
443                                                </xs:extension>
444                                        </xs:complexContent>
445                                </xs:complexType>
446                        </xs:element>
447                </xs:sequence>
448        </xs:complexType>
449
450        <xs:complexType name="HarvestProviderType">
451                <xs:sequence> </xs:sequence>
452        </xs:complexType>
453        <xs:complexType name="DataRangeType">
454                <xs:sequence>
455                        <xs:element name="Start" type="xs:dateTime">
456                                <xs:annotation>
457                                        <xs:documentation>start period for calculating statistics</xs:documentation>
458                                </xs:annotation>
459                        </xs:element>
460                        <xs:element name="End" type="xs:dateTime">
461                                <xs:annotation>
462                                        <xs:documentation>end period for calculating statistics</xs:documentation>
463                                </xs:annotation>
464                        </xs:element>
465                </xs:sequence>
466        </xs:complexType>
467        <xs:complexType name="HarvestType">
468                <xs:sequence>
469                        <xs:element name="Type" type="xs:string">
470                                <xs:annotation>
471                                        <xs:documentation>OAI, CSW etc - should be name delimited list</xs:documentation>
472                                </xs:annotation>
473                        </xs:element>
474                </xs:sequence>
475        </xs:complexType>
476        <xs:complexType name="ContactType">
477                <xs:attribute name="id" type="xs:int" use="required"/>
478        </xs:complexType>
479        <xs:complexType name="ProcessIDType">
480                <xs:annotation>
481                        <xs:documentation>Unique ID to assign a process</xs:documentation>
482                </xs:annotation>
483                <xs:attribute name="id" type="xs:int" use="required"/>
484                <xs:attribute name="status" type="xs:string"/>
485        </xs:complexType>
486        <xs:element name="HarvestOperationType" type="dpw:HarvestType">
487                <xs:annotation>
488                        <xs:documentation>Harvest All/new records</xs:documentation>
489                </xs:annotation>
490        </xs:element>
491        <xs:complexType name="ProviderIDType">
492                <xs:annotation>
493                        <xs:documentation>Unique Provider ID</xs:documentation>
494                </xs:annotation>
495                <xs:sequence>
496                        <xs:element name="ID" type="xs:string"/>
497                </xs:sequence>
498        </xs:complexType>
499        <xs:complexType name="EmailContactType">
500                <xs:sequence>
501                        <xs:element name="Email" type="xs:string"/>
502                        <xs:element name="Name" type="xs:string" minOccurs="0"/>
503                        <xs:element name="ID" type="xs:int" minOccurs="0">
504                                <xs:annotation>
505                                        <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation>
506                                </xs:annotation>
507                        </xs:element>
508                </xs:sequence>
509        </xs:complexType>
510        <xs:complexType name="ReturnType" abstract="true">
511                <xs:sequence>
512                        <xs:element name="Confirmation" type="dpw:ConfirmationType"/>
513                </xs:sequence>
514        </xs:complexType>
515        <xs:complexType name="ProviderCommonType">
516                <xs:sequence>
517                        <xs:element name="ProviderURL" type="xs:string">
518                                <xs:annotation>
519                                        <xs:documentation>URL of the Providers Metadata publisher i.e. OAI or CSW</xs:documentation>
520                                </xs:annotation>
521                        </xs:element>
522                        <xs:element name="ProviderName" type="xs:string" minOccurs="0">
523                                <xs:annotation>
524                                        <xs:documentation>Full provider name i.e. British Atmospheric Data Centre</xs:documentation>
525                                </xs:annotation>
526                        </xs:element>
527                        <xs:element name="ProviderContacts" type="dpw:EmailContactType" minOccurs="0"
528                                maxOccurs="unbounded">
529                                <xs:annotation>
530                                        <xs:documentation>Email addresses of contacts at Data Provider</xs:documentation>
531                                </xs:annotation>
532                        </xs:element>
533                        <xs:element name="ProviderAdminEmail">
534                                <xs:annotation>
535                                        <xs:documentation>Mandatory provider admin email</xs:documentation>
536                                </xs:annotation>
537                                <xs:complexType>
538                                        <xs:sequence>
539                                                <xs:element name="EmailContact" type="dpw:EmailContactType"/>
540                                                <xs:element name="Monitor" type="xs:boolean" minOccurs="0">
541                                                        <xs:annotation>
542                                                                <xs:documentation>Set to true if all processes are to be reported via email to this main contact</xs:documentation>
543                                                        </xs:annotation>
544                                                </xs:element>
545                                        </xs:sequence>
546                                </xs:complexType>
547                        </xs:element>
548                </xs:sequence>
549        </xs:complexType>
550
551
552        <!-- ##### ProviderDetail #### -->
553        <xs:element name="Provider" type="dpw:ProviderDetail"/>
554        <xs:complexType name="ProviderDetail">
555                <xs:annotation>
556                        <xs:documentation>Provide details for a NEW metadata provider</xs:documentation>
557                </xs:annotation>
558                <xs:sequence>
559                        <xs:element ref="dpw:ProviderType"/>
560                        <xs:element name="ProviderCommon" type="dpw:ProviderCommonType"/>
561                        <xs:element name="ProviderID" type="xs:int" minOccurs="0">
562                                <xs:annotation>
563                                        <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation>
564                                </xs:annotation>
565                        </xs:element>
566                </xs:sequence>
567        </xs:complexType>
568
569        <xs:element name="ProviderType" type="dpw:ProviderDetailsType" abstract="true"/>
570        <xs:element name="OAIProvider" substitutionGroup="dpw:ProviderType"
571                type="dpw:OAIProviderDetailsType"/>
572        <xs:element name="CSWProvider" substitutionGroup="dpw:ProviderType"
573                type="dpw:CSWProviderDetailsType"/>
574
575        <xs:complexType name="ProviderDetailsType" abstract="true"/>
576        <xs:complexType name="OAIProviderDetailsType">
577                <xs:complexContent>
578                        <xs:extension base="dpw:ProviderDetailsType">
579                                <xs:sequence>
580                                        <xs:element name="SetSpec" type="xs:string" minOccurs="0"/>
581                                        <xs:element name="splitBySet" type="xs:boolean"/>
582                                        <xs:element name="Format" type="xs:string">
583                                                <xs:annotation>
584                                                        <xs:documentation/>
585                                                </xs:annotation>
586                                        </xs:element>
587                                </xs:sequence>
588                        </xs:extension>
589                </xs:complexContent>
590        </xs:complexType>
591
592        <xs:complexType name="CSWProviderDetailsType">
593                <xs:complexContent>
594                        <xs:extension base="dpw:ProviderDetailsType">
595                                <xs:sequence>
596                                        <xs:element name="outputSchema" type="xs:string">
597                                                <xs:annotation>
598                                                        <xs:documentation/>
599                                                </xs:annotation>
600                                        </xs:element>
601                                        <xs:sequence maxOccurs="unbounded">
602                                                <xs:element name="typeName">
603                                                        <xs:complexType>
604                                                                <xs:attribute name="namespaceURI" type="xs:string" use="required"/>
605                                                                <xs:attribute name="localPart" type="xs:string" use="required"/>
606                                                        </xs:complexType>
607                                                </xs:element>
608                                        </xs:sequence>
609                                </xs:sequence>
610                        </xs:extension>
611                </xs:complexContent>
612        </xs:complexType>
613</xs:schema>
Note: See TracBrowser for help on using the repository browser.