Changeset 7291


Ignore:
Timestamp:
06/08/10 11:13:05 (9 years ago)
Author:
mnagni
Message:

introduced abstract type for the Provider and the Response elements

File:
1 edited

Legend:

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

    r7285 r7291  
    77        </xs:annotation> 
    88 
     9        <!--###### GetList #####--> 
    910        <xs:element name="GetList" type="GetListType"> 
    1011                <xs:annotation> 
     
    1213                </xs:annotation> 
    1314        </xs:element> 
    14         <xs:element name="GetListResponse"> 
     15        <xs:element name="GetListResponseType" type="GetListResponse"> 
    1516                <xs:annotation> 
    1617                        <xs:documentation>Return values in chosen List N</xs:documentation> 
    1718                </xs:annotation> 
    18                 <xs:complexType> 
    19                         <xs:sequence> 
    20                                 <xs:element name="Confirmation" type="ConfirmationType"/> 
    21                                 <xs:element name="ListNames" type="ListNames"/> 
    22                         </xs:sequence> 
    23                 </xs:complexType> 
    24         </xs:element> 
     19        </xs:element> 
     20        <xs:complexType name="GetListResponse"> 
     21                <xs:complexContent>                              
     22                        <xs:extension base="ResponseType"> 
     23                                <xs:sequence> 
     24                                        <xs:element name="ListNames" type="ListNames"/> 
     25                                </xs:sequence> 
     26                        </xs:extension> 
     27                </xs:complexContent>     
     28        </xs:complexType>        
     29         
     30        <!--###### GetListNames #####--> 
    2531        <xs:element name="GetListNames" nillable="true"> 
    2632                <xs:annotation> 
     
    2834                </xs:annotation> 
    2935        </xs:element> 
    30         <xs:element name="GetListNamesResponse"> 
     36        <xs:element name="GetListNamesResponseType" type="GetListNamesResponse"> 
    3137                <xs:annotation> 
    3238                        <xs:documentation>Return names of lists used for controlled values</xs:documentation> 
    3339                </xs:annotation> 
    34                 <xs:complexType> 
    35                         <xs:sequence> 
    36                                 <xs:element name="Confirmation" type="ConfirmationType"/> 
    37                                 <xs:element name="ListNames" type="ListNames"/> 
    38                         </xs:sequence> 
    39                 </xs:complexType> 
    40         </xs:element> 
    41  
     40        </xs:element> 
     41        <xs:complexType name="GetListNamesResponse"> 
     42                <xs:complexContent>                              
     43                        <xs:extension base="ResponseType"> 
     44                                <xs:sequence> 
     45                                        <xs:element name="ListNames" type="ListNames"/> 
     46                                </xs:sequence> 
     47                        </xs:extension> 
     48                </xs:complexContent>             
     49        </xs:complexType> 
     50 
     51        <!--###### DoNewProvider #####--> 
    4252        <xs:element name="DoHarvestRequest"> 
    4353                <xs:annotation> 
     
    5161                                        </xs:annotation> 
    5262                                </xs:element> 
    53                         </xs:sequence> 
    54                 </xs:complexType> 
    55         </xs:element> 
    56         <xs:element name="DoHarvestResponse"> 
     63                                <xs:element name="ProviderID" type="xs:int"> 
     64                                        <xs:annotation> 
     65                                                <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation> 
     66                                        </xs:annotation> 
     67                                </xs:element> 
     68                        </xs:sequence> 
     69                </xs:complexType> 
     70        </xs:element> 
     71        <xs:element name="DoHarvestResponseType" type="DoHarvestResponse"> 
    5772                <xs:annotation> 
    5873                        <xs:documentation>Return confirmation on status of metadata harvest and relevant report</xs:documentation> 
    5974                </xs:annotation> 
    60                 <xs:complexType> 
    61                         <xs:sequence> 
    62                                 <xs:element name="Confirmation" type="ConfirmationType"/> 
    63                                 <xs:element name="processID" type="ProcessIDType"/> 
    64                         </xs:sequence> 
    65                 </xs:complexType> 
    66         </xs:element> 
     75        </xs:element> 
     76        <xs:complexType name="DoHarvestResponse"> 
     77                <xs:complexContent>                              
     78                        <xs:extension base="ResponseType"> 
     79                                <xs:sequence> 
     80                                        <xs:element name="processID" type="ProcessIDType"/> 
     81                                </xs:sequence> 
     82                        </xs:extension> 
     83                </xs:complexContent>             
     84        </xs:complexType> 
     85 
     86         
     87        <!--###### DoNewProvider #####--> 
    6788        <xs:element name="DoNewProviderRequest"> 
    6889                <xs:complexType> 
    6990                        <xs:sequence> 
    70                                 <xs:element name="DoNewProvider" type="ProviderDetails"/> 
    71                         </xs:sequence> 
    72                 </xs:complexType> 
    73         </xs:element> 
    74         <xs:element name="DoNewProviderResponse"> 
     91                                <xs:element name="DoNewProvider" type="ProviderDetail"/> 
     92                        </xs:sequence> 
     93                </xs:complexType> 
     94        </xs:element> 
     95         
     96        <xs:element name="DoNewProviderResponseType" type="DoNewProviderResponse"> 
    7597                <xs:annotation> 
    7698                        <xs:documentation>Confirmation of addition of NEW metadata provider details (super admin only)</xs:documentation> 
    7799                </xs:annotation> 
    78                 <xs:complexType> 
    79                         <xs:sequence> 
    80                                 <xs:element name="Confirmation" type="ConfirmationType"/> 
    81                                 <xs:element ref="Provider"/> 
    82                         </xs:sequence> 
    83                 </xs:complexType> 
    84         </xs:element> 
    85         <xs:element name="GetProviderDetails"> 
     100        </xs:element>    
     101        <xs:complexType name="DoNewProviderResponse"> 
     102                <xs:complexContent>                              
     103                        <xs:extension base="ResponseType"> 
     104                                <xs:sequence> 
     105                                        <xs:element ref="Provider"/> 
     106                                </xs:sequence> 
     107                        </xs:extension> 
     108                </xs:complexContent> 
     109        </xs:complexType> 
     110         
     111        <!--###### GetProviderDetails #####--> 
     112        <xs:element name="GetProviderDetailsRequest"> 
    86113                <xs:complexType> 
    87114                        <xs:sequence> 
     
    94121                </xs:complexType> 
    95122        </xs:element> 
    96         <xs:complexType name="GetProviderDetailsReturn"> 
    97                 <xs:annotation> 
    98                         <xs:documentation>Return information on Provider N's details</xs:documentation> 
     123         
     124        <xs:element name="GetProviderDetailsResponseType" type="GetProviderDetailsResponse"/> 
     125        <xs:complexType name="GetProviderDetailsResponse"> 
     126                <xs:complexContent>                              
     127                        <xs:extension base="ResponseType"> 
     128                                <xs:sequence maxOccurs="unbounded"> 
     129                                        <xs:element name="Provider" type="ProviderDetail"/> 
     130                                        <xs:element name="ProviderID" type="xs:int"> 
     131                                                <xs:annotation> 
     132                                                        <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation> 
     133                                                </xs:annotation> 
     134                                        </xs:element> 
     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="GetProcessStatusResponse"/> 
     149 
     150         
     151        <xs:complexType name="GetProcessStatusResponse"> 
     152                <xs:complexContent>                              
     153                        <xs:extension base="ResponseType"> 
     154                                <xs:sequence> 
     155                                        <xs:element name="ProcessID" type="ProcessIDType" maxOccurs="unbounded"/> 
     156                                </xs:sequence> 
     157                        </xs:extension> 
     158                </xs:complexContent>             
     159        </xs:complexType> 
     160 
     161        <!-- ##### --> 
     162        <xs:complexType name="ResponseType" abstract="true"> 
     163                <xs:annotation> 
     164                        <xs:documentation>Service operational response</xs:documentation> 
    99165                </xs:annotation> 
    100166                <xs:sequence> 
    101167                        <xs:element name="Confirmation" type="ConfirmationType"/> 
    102                         <xs:sequence maxOccurs="unbounded"> 
    103                                 <xs:element name="Provider" type="ProviderDetails"/> 
    104                                 <xs:element name="ProviderID" type="xs:int"> 
    105                                         <xs:annotation> 
    106                                                 <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation> 
    107                                         </xs:annotation> 
    108                                 </xs:element> 
    109                         </xs:sequence> 
    110                 </xs:sequence> 
    111         </xs:complexType> 
     168                </xs:sequence> 
     169        </xs:complexType> 
     170        <!-- ##### --> 
     171         
    112172        <xs:element name="GetHarvestHistoryRequest"> 
    113173                <xs:annotation> 
     
    159219                </xs:complexType> 
    160220        </xs:element> 
    161         <xs:complexType name="GetProviderDetailsRequest"> 
    162                 <xs:annotation> 
    163                         <xs:documentation>Request details for provider N</xs:documentation> 
    164                 </xs:annotation> 
    165                 <xs:sequence> 
    166                         <xs:element ref="Provider"/> 
    167                 </xs:sequence> 
    168         </xs:complexType> 
    169221        <xs:element name="DoConfigureProviderDetails"> 
    170222                <xs:annotation> 
     
    227279                </xs:complexType> 
    228280        </xs:element> 
    229         <xs:element name="GetProcessStatusRequest"> 
    230                 <xs:complexType> 
    231                         <xs:sequence maxOccurs="unbounded"> 
    232                                 <xs:element name="ProcessID" type="xs:int"/> 
    233                         </xs:sequence> 
    234                 </xs:complexType> 
    235         </xs:element> 
    236         <xs:element name="GetProcessStatusResponse"> 
    237                 <xs:complexType> 
    238                         <xs:sequence> 
    239                                 <xs:element name="ProcessID" type="ProcessIDType" maxOccurs="unbounded"/> 
    240                                 <xs:element name="Confirmation" type="ConfirmationType"/> 
    241                         </xs:sequence> 
    242                 </xs:complexType> 
    243         </xs:element> 
     281 
    244282        <xs:annotation> 
    245283                <xs:documentation>Basic service operation returns</xs:documentation> 
     
    310348                <xs:documentation>Types</xs:documentation> 
    311349        </xs:annotation> 
    312         <xs:complexType name="OAIProviderDetailsType"> 
    313                 <xs:sequence> 
    314                         <xs:element name="SetSpec" type="xs:string" minOccurs="0"/> 
    315                         <xs:element name="splitBySet" type="xs:boolean"/> 
    316                         <xs:element name="Format" type="xs:string"> 
    317                                 <xs:annotation> 
    318                                         <xs:documentation/> 
    319                                 </xs:annotation> 
    320                         </xs:element> 
    321                 </xs:sequence> 
    322         </xs:complexType> 
    323         <xs:complexType name="CSWProviderDetailsType"> 
    324                 <xs:sequence> 
    325                         <xs:element name="Format" type="xs:string"> 
    326                                 <xs:annotation> 
    327                                         <xs:documentation/> 
    328                                 </xs:annotation> 
    329                         </xs:element> 
    330                 </xs:sequence> 
    331         </xs:complexType> 
     350 
    332351        <xs:complexType name="ConfirmationType"> 
    333352                <xs:sequence> 
     
    469488                </xs:sequence> 
    470489        </xs:complexType> 
    471         <xs:element name="Provider" type="ProviderDetails"/> 
     490 
    472491        <xs:complexType name="HarvestProviderType"> 
    473492                <xs:sequence> </xs:sequence> 
     
    580599                </xs:sequence> 
    581600        </xs:complexType> 
    582         <xs:complexType name="ProviderDetails"> 
     601 
     602         
     603        <!-- ##### ProviderDetail #### --> 
     604        <xs:element name="Provider" type="ProviderDetail"/> 
     605        <xs:complexType name="ProviderDetail"> 
    583606                <xs:annotation> 
    584607                        <xs:documentation>Provide details for a NEW metadata provider</xs:documentation> 
    585608                </xs:annotation> 
    586609                <xs:sequence> 
    587                         <xs:element name="HarvestDetails"> 
    588                                 <xs:complexType> 
    589                                         <xs:choice> 
    590                                                 <xs:element name="OAIProvider" type="OAIProviderDetailsType"/> 
    591                                                 <xs:element name="CSWProvider" type="CSWProviderDetailsType"/> 
    592                                         </xs:choice> 
    593                                 </xs:complexType> 
    594                         </xs:element> 
     610                        <xs:element ref="ProviderType"/> 
    595611                        <xs:element name="ProviderCommon" type="ProviderCommonType"/> 
    596                 </xs:sequence> 
     612                        <xs:element name="ProviderID" type="xs:int" minOccurs="0"> 
     613                                <xs:annotation> 
     614                                        <xs:documentation>Represents the ID assigned to a Provider element</xs:documentation> 
     615                                </xs:annotation> 
     616                        </xs:element> 
     617                </xs:sequence> 
     618        </xs:complexType> 
     619         
     620        <xs:element name="ProviderType" type="ProviderDetailsType" abstract="true"/> 
     621        <xs:element name="OAIProvider" substitutionGroup="ProviderType" type="OAIProviderDetailsType"/> 
     622        <xs:element name="CSWProvider" substitutionGroup="ProviderType" type="CSWProviderDetailsType"/> 
     623         
     624        <xs:complexType name="ProviderDetailsType" abstract="true"/>     
     625        <xs:complexType name="OAIProviderDetailsType"> 
     626                <xs:complexContent>                              
     627                        <xs:extension base="ProviderDetailsType"> 
     628                                <xs:sequence> 
     629                                        <xs:element name="SetSpec" type="xs:string" minOccurs="0"/> 
     630                                        <xs:element name="splitBySet" type="xs:boolean"/> 
     631                                        <xs:element name="Format" type="xs:string"> 
     632                                                <xs:annotation> 
     633                                                        <xs:documentation/> 
     634                                                </xs:annotation> 
     635                                        </xs:element> 
     636                                </xs:sequence> 
     637                        </xs:extension> 
     638                </xs:complexContent> 
     639        </xs:complexType> 
     640         
     641        <xs:complexType name="CSWProviderDetailsType"> 
     642                <xs:complexContent>                              
     643                        <xs:extension base="ProviderDetailsType"> 
     644                                <xs:sequence> 
     645                                        <xs:element name="Format" type="xs:string"> 
     646                                                <xs:annotation> 
     647                                                        <xs:documentation/> 
     648                                                </xs:annotation> 
     649                                        </xs:element> 
     650                                </xs:sequence> 
     651                        </xs:extension> 
     652                </xs:complexContent> 
    597653        </xs:complexType> 
    598654</xs:schema> 
Note: See TracChangeset for help on using the changeset viewer.