Changeset 7247 for RevitalizationWS


Ignore:
Timestamp:
27/07/10 17:23:19 (9 years ago)
Author:
sdonegan
Message:

Updated with new monitoring process ID and contact types - have changed some stuff for consistency!

File:
1 edited

Legend:

Unmodified
Added
Removed
  • RevitalizationWS/schemas/dataProvider/trunk/src/main/resources/DPWS.xsd

    r7246 r7247  
    11<?xml version="1.0" encoding="UTF-8"?> 
    22<!-- 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="unqualified" 
    4         xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
     3<xs:schema elementFormDefault="qualified" attributeFormDefault="unqualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
    54        <xs:annotation> 
    65                <xs:documentation>Basic service operation requests</xs:documentation> 
     
    1211                <xs:complexType> 
    1312                        <xs:sequence> 
    14                                 <xs:element minOccurs="0" name="Contacts"> 
    15                                         <xs:complexType> 
    16                                                 <xs:sequence maxOccurs="unbounded" minOccurs="0"> 
    17                                                         <xs:element name="ContactID" type="xs:string"/> 
    18                                                 </xs:sequence> 
    19                                         </xs:complexType> 
    20                                 </xs:element> 
    21                                 <xs:element ref="HarvestProvider"/> 
    22                                 <xs:element minOccurs="0" ref="HarvestOperationType"/> 
     13                                <xs:element name="EmailReport" type="ContactType" minOccurs="0" maxOccurs="unbounded"> 
     14                                        <xs:annotation> 
     15                                                <xs:documentation>Email of person(s) to send harvest confirmation email to</xs:documentation> 
     16                                        </xs:annotation> 
     17                                </xs:element> 
     18                                <xs:element ref="Provider"/> 
     19                                <xs:element name="ProcessID" type="ProcessIDType" minOccurs="0"> 
     20                                        <xs:annotation> 
     21                                                <xs:documentation>Unique ID to assign process for later recall from db</xs:documentation> 
     22                                        </xs:annotation> 
     23                                </xs:element> 
    2324                        </xs:sequence> 
    2425                </xs:complexType> 
     
    3031                <xs:complexType> 
    3132                        <xs:sequence> 
    32                                 <xs:element name="Provider" type="ProviderContactType"> 
     33                                <xs:element name="EmailReport" type="ContactType" minOccurs="0" maxOccurs="unbounded"> 
     34                                        <xs:annotation> 
     35                                                <xs:documentation>Email of person(s) to send harvest confirmation email to</xs:documentation> 
     36                                        </xs:annotation> 
     37                                </xs:element> 
     38                                <xs:element name="Provider" type="ProviderIDType"> 
    3339                                        <xs:annotation> 
    3440                                                <xs:documentation>Value for Provider ID should be available in a list from the getLists operation.  When process completed notification will be sent to selected email address if provided</xs:documentation> 
    3541                                        </xs:annotation> 
    3642                                </xs:element> 
     43                                <xs:element name="ProcessID" type="ProcessIDType" minOccurs="0"> 
     44                                        <xs:annotation> 
     45                                                <xs:documentation>Unique ID to assign process for later recall from db</xs:documentation> 
     46                                        </xs:annotation> 
     47                                </xs:element> 
    3748                        </xs:sequence> 
    3849                </xs:complexType> 
     
    4960                                        </xs:annotation> 
    5061                                </xs:element> 
    51                                 <xs:element ref="HarvestProvider"/> 
     62                                <xs:element ref="Provider"/> 
    5263                        </xs:sequence> 
    5364                </xs:complexType> 
     
    6374                                </xs:annotation> 
    6475                        </xs:element> 
    65                         <xs:element ref="HarvestProvider"/> 
     76                        <xs:element ref="Provider"/> 
    6677                </xs:sequence> 
    6778        </xs:complexType> 
     
    7384                        <xs:sequence> 
    7485                                <xs:element name="DateRange" type="DataRangeType" minOccurs="0"/> 
    75                                 <xs:element ref="HarvestProvider"/> 
     86                                <xs:element ref="Provider"/> 
    7687                        </xs:sequence> 
    7788                </xs:complexType> 
     
    8798                </xs:complexType> 
    8899        </xs:element> 
     100        <xs:complexType name="DoNewProviderDetails"> 
     101                <xs:annotation> 
     102                        <xs:documentation>Provide details for a NEW metadata provider</xs:documentation> 
     103                </xs:annotation> 
     104                <xs:sequence> 
     105                        <xs:element name="NewProviderInformation" type="ProviderContactType"/> 
     106                </xs:sequence> 
     107        </xs:complexType> 
    89108        <xs:complexType name="GetProviderDetailsRequest"> 
    90109                <xs:annotation> 
     
    92111                </xs:annotation> 
    93112                <xs:sequence> 
    94                         <xs:element ref="HarvestProvider"/> 
     113                        <xs:element ref="Provider"/> 
    95114                </xs:sequence> 
    96115        </xs:complexType> 
     
    101120                <xs:complexType> 
    102121                        <xs:sequence> 
    103                                 <xs:element name="ProviderDetails" type="ProviderDetailsType"/> 
    104122                                <xs:element name="ContactDetails" type="ProviderContactType" minOccurs="0"/> 
    105                                 <xs:element ref="HarvestProvider"/> 
     123                        </xs:sequence> 
     124                </xs:complexType> 
     125        </xs:element> 
     126        <xs:element name="GetProcessStatusRequest"> 
     127                <xs:complexType> 
     128                        <xs:sequence maxOccurs="unbounded"> 
     129                                <xs:element name="ProcessID" type="ProcessIDType"/> 
    106130                        </xs:sequence> 
    107131                </xs:complexType> 
     
    142166                                        </xs:annotation> 
    143167                                </xs:element> 
     168                                <xs:element name="processID" type="ProcessIDType"/> 
    144169                        </xs:sequence> 
    145170                </xs:complexType> 
     
    152177                        <xs:sequence> 
    153178                                <xs:element name="Confirmation" type="ConfirmationType"/> 
    154                                 <xs:element name="HarvestingEvent" type="HarvestInformationType" minOccurs="0" 
    155                                         maxOccurs="unbounded"> 
     179                                <xs:element name="HarvestingEvent" type="HarvestInformationType" minOccurs="0" maxOccurs="unbounded"> 
    156180                                        <xs:annotation> 
    157181                                                <xs:documentation>One per event in log within the date range in the request (default is last 10 days)</xs:documentation> 
     
    167191                <xs:sequence> 
    168192                        <xs:element name="Confirmation" type="ConfirmationType"/> 
    169                         <xs:element name="IngestEvent" type="IngestInformationType" minOccurs="0" 
    170                                 maxOccurs="unbounded"> 
     193                        <xs:element name="IngestEvent" type="IngestInformationType" minOccurs="0" maxOccurs="unbounded"> 
    171194                                <xs:annotation> 
    172195                                        <xs:documentation>One per event in log within the date range in the request (default is last 10 days)</xs:documentation> 
     
    197220                </xs:complexType> 
    198221        </xs:element> 
     222        <xs:complexType name="DoNewProviderDetailsReturn"> 
     223                <xs:annotation> 
     224                        <xs:documentation>Confirmation of addition of NEW metadata provider details (super admin only)</xs:documentation> 
     225                </xs:annotation> 
     226                <xs:sequence> 
     227                        <xs:element name="Confirmation" type="ConfirmationType"/> 
     228                </xs:sequence> 
     229        </xs:complexType> 
    199230        <xs:complexType name="GetProviderDetailsReturn"> 
    200231                <xs:annotation> 
     
    213244                        <xs:sequence> 
    214245                                <xs:element name="Confirmation" type="ConfirmationType"/> 
     246                        </xs:sequence> 
     247                </xs:complexType> 
     248        </xs:element> 
     249        <xs:element name="GetProcessStatusReturn"> 
     250                <xs:complexType> 
     251                        <xs:sequence maxOccurs="unbounded"> 
     252                                <xs:element name="ProcessID" type="ProcessIDType"/> 
     253                                <xs:element name="processStatus" type="ProcessStatusIDType"/> 
    215254                        </xs:sequence> 
    216255                </xs:complexType> 
     
    229268                <xs:documentation>Types</xs:documentation> 
    230269        </xs:annotation> 
    231         <xs:complexType name="ProviderDetailsType"> 
     270        <xs:complexType name="OAIProviderDetailsType"> 
    232271                <xs:sequence> 
    233272                        <xs:element name="ProviderURL" type="xs:string"> 
     
    243282                        <xs:element name="SetSpec" type="xs:string" minOccurs="0"/> 
    244283                        <xs:element name="splitBySet" type="xs:boolean"/> 
     284                </xs:sequence> 
     285        </xs:complexType> 
     286        <xs:complexType name="CSWProviderDetailsType"> 
     287                <xs:sequence> 
     288                        <xs:element name="ProviderURL" type="xs:string"> 
     289                                <xs:annotation> 
     290                                        <xs:documentation>URL of the Providers Metadata publisher i.e. OAI or CSW</xs:documentation> 
     291                                </xs:annotation> 
     292                        </xs:element> 
     293                        <xs:element name="Format" type="xs:string"> 
     294                                <xs:annotation> 
     295                                        <xs:documentation>Format name (getList)</xs:documentation> 
     296                                </xs:annotation> 
     297                        </xs:element> 
    245298                </xs:sequence> 
    246299        </xs:complexType> 
     
    358411                                        </xs:complexType> 
    359412                                </xs:element> 
    360                                 <xs:element ref="HarvestProvider"/> 
     413                                <xs:element ref="Provider"/> 
    361414                        </xs:sequence> 
    362415                </xs:sequence> 
     
    364417        <xs:complexType name="ProviderContactType"> 
    365418                <xs:sequence> 
    366                         <xs:element name="HarvestDetails" type="ProviderDetailsType"/> 
     419                        <xs:element ref="Provider"/> 
     420                        <xs:element name="HarvestDetails"> 
     421                                <xs:complexType> 
     422                                        <xs:choice> 
     423                                                <xs:element name="OAIProvider" type="OAIProviderDetailsType"/> 
     424                                                <xs:element name="CSWProvider" type="CSWProviderDetailsType"/> 
     425                                        </xs:choice> 
     426                                </xs:complexType> 
     427                        </xs:element> 
    367428                        <xs:element name="ProviderName" type="xs:string" minOccurs="0"> 
    368429                                <xs:annotation> 
     
    370431                                </xs:annotation> 
    371432                        </xs:element> 
    372                         <xs:element name="ProviderContacts" type="ContactType" minOccurs="0" 
    373                                 maxOccurs="unbounded"> 
     433                        <xs:element name="ProviderContacts" type="EmailContactType" minOccurs="0" maxOccurs="unbounded"> 
    374434                                <xs:annotation> 
    375435                                        <xs:documentation>Email addresses of contacts at Data Provider</xs:documentation> 
    376436                                </xs:annotation> 
    377437                        </xs:element> 
    378                         <xs:element name="ProviderAdminEmail" type="ContactType"> 
     438                        <xs:element name="ProviderAdminEmail"> 
    379439                                <xs:annotation> 
    380440                                        <xs:documentation>Mandatory provider admin email</xs:documentation> 
    381441                                </xs:annotation> 
    382                         </xs:element> 
    383                         <xs:element ref="HarvestProvider"/> 
    384                 </xs:sequence> 
    385         </xs:complexType> 
    386  
    387         <xs:element name="HarvestProvider" type="HarvestProviderType"/> 
    388  
     442                                <xs:complexType> 
     443                                        <xs:complexContent> 
     444                                                <xs:extension base="ContactType"> 
     445                                                        <xs:sequence> 
     446                                                                <xs:sequence> 
     447                                                                        <xs:element name="EmailContact" type="EmailContactType"/> 
     448                                                                </xs:sequence> 
     449                                                                <xs:element name="Monitor" type="xs:boolean" minOccurs="0"> 
     450                                                                        <xs:annotation> 
     451                                                                                <xs:documentation>Set to true if all processes are to be reported via email to this main contact</xs:documentation> 
     452                                                                        </xs:annotation> 
     453                                                                </xs:element> 
     454                                                        </xs:sequence> 
     455                                                </xs:extension> 
     456                                        </xs:complexContent> 
     457                                </xs:complexType> 
     458                        </xs:element> 
     459                </xs:sequence> 
     460        </xs:complexType> 
     461        <xs:element name="Provider" type="ProviderIDType"/> 
    389462        <xs:complexType name="HarvestProviderType"> 
    390463                <xs:sequence> 
     
    394467                                </xs:annotation> 
    395468                        </xs:element> 
    396                         <xs:element name="HarvestType" type="xs:string"> 
     469                        <xs:element name="HarvestType" type="HarvestType"> 
    397470                                <xs:annotation> 
    398471                                        <xs:documentation>Represents the harvest type (OAI, CSW, etc.) defined by the ProviderID element</xs:documentation> 
     
    401474                </xs:sequence> 
    402475        </xs:complexType> 
    403  
    404476        <xs:complexType name="DataRangeType"> 
    405477                <xs:sequence> 
     
    437509                                </xs:annotation> 
    438510                        </xs:element> 
    439                         <xs:element ref="HarvestProvider"/> 
     511                        <xs:element ref="Provider"/> 
    440512                </xs:sequence> 
    441513        </xs:complexType> 
    442514        <xs:complexType name="ContactType"> 
    443                 <xs:sequence> 
    444                         <xs:element name="email" type="xs:string"/> 
    445                 </xs:sequence> 
    446515                <xs:attribute name="id" type="xs:string" use="required"/> 
    447516        </xs:complexType> 
    448  
    449517        <xs:complexType name="ProcessIDType"> 
     518                <xs:annotation> 
     519                        <xs:documentation>Unique ID to assign a process</xs:documentation> 
     520                </xs:annotation> 
     521                <xs:sequence> 
     522                        <xs:element name="ID" type="xs:string"/> 
     523                </xs:sequence> 
    450524                <xs:attribute name="id" type="xs:string" use="required"/> 
    451525        </xs:complexType> 
    452  
    453         <xs:element name="GetStatusProcessesRequest"> 
    454                 <xs:complexType> 
    455                         <xs:sequence maxOccurs="unbounded"> 
    456                                 <xs:element name="ProcessID" type="ProcessIDType"/> 
    457                         </xs:sequence> 
    458                 </xs:complexType> 
    459         </xs:element> 
    460         <xs:element name="GetStatusProcessesReturn"> 
    461                 <xs:complexType> 
    462                         <xs:sequence maxOccurs="unbounded"> 
    463                                 <xs:element name="ProcessID" type="ProcessIDType"/> 
    464                                 <xs:element name="processStatus" type="ProcessStatusIDType"/> 
    465                         </xs:sequence> 
    466                 </xs:complexType> 
    467         </xs:element> 
    468526        <xs:complexType name="ProcessStatusIDType"> 
    469527                <xs:attribute name="id" type="xs:string" use="required"/> 
    470528        </xs:complexType> 
    471  
    472         <xs:element name="HarvestOperationType" type="xs:string"> 
     529        <xs:element name="HarvestOperationType" type="HarvestType"> 
    473530                <xs:annotation> 
    474531                        <xs:documentation>Harvest All/new records</xs:documentation> 
    475532                </xs:annotation> 
    476533        </xs:element> 
    477  
     534        <xs:complexType name="ProviderIDType"> 
     535                <xs:annotation> 
     536                        <xs:documentation>Unique Provider ID</xs:documentation> 
     537                </xs:annotation> 
     538                <xs:sequence> 
     539                        <xs:element name="ID" type="xs:string"/> 
     540                </xs:sequence> 
     541        </xs:complexType> 
     542        <xs:complexType name="EmailContactType"> 
     543                <xs:sequence> 
     544                        <xs:element name="Email" type="xs:string"/> 
     545                        <xs:element name="Name" type="xs:string" minOccurs="0"/> 
     546                </xs:sequence> 
     547        </xs:complexType> 
    478548</xs:schema> 
Note: See TracChangeset for help on using the changeset viewer.