Changeset 242 for Document_handling


Ignore:
Timestamp:
05/05/05 13:22:42 (14 years ago)
Author:
ko23
Message:

First pass at the production of Stub B from the eXist B repository

File:
1 edited

Legend:

Unmodified
Added
Removed
  • Document_handling/trunk/MDM/xqueries/NDG-DEStubB.xqy

    r235 r242  
    1 for $DE in document()//dgMetadataRecord[dgDataEntity!='' and dgMetadataID/repositoryIdentifier='badc.nerc.ac.uk' and dgMetadataID/localIdentifier='dataent1'] 
     1for $DE in collection("ndg_B_metadata")//dgMetadataRecord[dgDataEntity!='' and dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier='badc.nerc.ac.uk' and dgMetadataID/localIdentifier='dataent2'] 
    22return 
    33<dgMetadataRecord> 
    4         {$DE/dgMetadataID} 
     4        <dgMetadataID> 
     5                <schemeIdentifier>NDG-B1</schemeIdentifier> 
     6                {$DE/dgMetadataID/repositoryIdentifier} 
     7                {$DE/dgMetadataID/localIdentifier} 
     8        </dgMetadataID> 
    59        {$DE/dgMetadataDescription} 
    610        {$DE/name} 
     
    1216                {$DE/dgDataEntity/dgDataSummary} 
    1317                <dgDataRoles> 
    14                         <dgDataCreator> 
     18                        {if (exists($DE/dgDataEntity/dgDataRoles/dgDataCreator/dgMetadataID)) then (<dgDataCreator> 
    1519                                {$DE/dgDataEntity/dgDataRoles/dgDataCreator/dgMetadataID} 
    1620                                {$DE/dgDataEntity/dgDataRoles/dgDataCreator/roleName} 
     
    2125                                        return  
    2226                                                <dgRoleHolder> 
    23                                                 {for $DataCreatorRoleHolder in /*/(dgOrganisation | dgPerson)[(dgMetadataID/repositoryIdentifier=$DataCreatorRole/*/repositoryIdentifier and dgMetadataID/localIdentifier=$DataCreatorRole/*/localIdentifier)] return $DataCreatorRoleHolder} 
     27                                                {for $DataCreatorRoleHolder in /*/(dgOrganisation | dgPerson)[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$DataCreatorRole/*/repositoryIdentifier and dgMetadataID/localIdentifier=$DataCreatorRole/*/localIdentifier)] return $DataCreatorRoleHolder} 
    2428                                                        {$DataCreatorRole/startDate} 
    2529                                                        {$DataCreatorRole/endDate} 
    2630                                                        {$DataCreatorRole/localName} 
    2731                                                </dgRoleHolder>} 
    28                         </dgDataCreator> 
    29                         <dgDataCurator> 
     32                        </dgDataCreator>) 
     33                        else ()} 
     34                        {if (exists($DE/dgDataEntity/dgDataRoles/dgDataCurator/dgMetadataID)) then ( 
     35                                <dgDataCurator> 
    3036                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/dgMetadataID} 
    3137                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/roleName} 
     
    3642                                        return  
    3743                                                <dgRoleHolder> 
    38                                                 {for $DataCuratorRoleHolder in /*/(dgOrganisation | dgPerson)[(dgMetadataID/repositoryIdentifier=$DataCuratorRole/*/repositoryIdentifier and dgMetadataID/localIdentifier=$DataCuratorRole/*/localIdentifier)] return $DataCuratorRoleHolder} 
     44                                                {for $DataCuratorRoleHolder in /*/(dgOrganisation | dgPerson)[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$DataCuratorRole/*/repositoryIdentifier and dgMetadataID/localIdentifier=$DataCuratorRole/*/localIdentifier)] return $DataCuratorRoleHolder} 
    3945                                                        {$DataCuratorRole/startDate} 
    4046                                                        {$DataCuratorRole/endDate} 
    4147                                                        {$DataCuratorRole/localName} 
    4248                                                </dgRoleHolder>} 
    43                         </dgDataCurator> 
     49                        </dgDataCurator>) 
     50                        else ()} 
     51 
     52                        {if (exists($DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/dgMetadataID)) then ( 
     53                                <dgDataOtherRoles> 
     54                                {$DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/dgMetadataID} 
     55                                {$DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/roleName} 
     56                                {$DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/abbreviation} 
     57                                {$DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/contactDetails} 
     58                                {for $DataOtherRolesRole in $DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/dgRoleHolder  
     59                                        order by $DataOtherRolesRole/startDate empty least, $DataOtherRolesRole/endDate empty least 
     60                                        return  
     61                                                <dgRoleHolder> 
     62                                                {for $DataOtherRolesRoleHolder in /*/(dgOrganisation | dgPerson)[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$DataOtherRolesRole/*/repositoryIdentifier and dgMetadataID/localIdentifier=$DataOtherRolesRole/*/localIdentifier)] return $DataOtherRolesRoleHolder} 
     63                                                        {$DataOtherRolesRole/startDate} 
     64                                                        {$DataOtherRolesRole/endDate} 
     65                                                        {$DataOtherRolesRole/localName} 
     66                                                </dgRoleHolder>} 
     67                        </dgDataOtherRoles>) 
     68                        else ()} 
     69 
    4470                </dgDataRoles> 
    4571                {for $RelDep in $DE//RelatedDeployment 
     
    4975                        {$RelDep/DateEnd} 
    5076                        {$RelDep/dgMetadataID} 
    51                         {for $SRAct in //dgMetadataRecord[(dgMetadataID/repositoryIdentifier=$RelDep/ActivityID/repositoryIdentifier and dgMetadataID/localIdentifier=$RelDep/ActivityID/localIdentifier)] 
     77                        {for $SRAct in collection("ndg_B_metadata")//dgMetadataRecord[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$RelDep/ActivityID/repositoryIdentifier and dgMetadataID/localIdentifier=$RelDep/ActivityID/localIdentifier)] 
    5278                                return 
    5379                                        <activity> 
     
    6692                                        </activity> 
    6793                                } 
    68                         {for $SRDPT in //dgMetadataRecord[(dgMetadataID/repositoryIdentifier=$RelDep/DataProductionToolID/repositoryIdentifier and dgMetadataID/localIdentifier=$RelDep/DataProductionToolID/localIdentifier)] 
     94                        {for $SRDPT in collection("ndg_B_metadata")//dgMetadataRecord[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$RelDep/DataProductionToolID/repositoryIdentifier and dgMetadataID/localIdentifier=$RelDep/DataProductionToolID/localIdentifier)] 
    6995                                return 
    7096                                        <dataproductiontool> 
     
    80106                                        </dataproductiontool> 
    81107                                } 
    82                         {for $SRObsStn in //dgMetadataRecord[(dgMetadataID/repositoryIdentifier=$RelDep/ObservationStationID/repositoryIdentifier and dgMetadataID/localIdentifier=$RelDep/ObservationStationID/localIdentifier)] 
     108                        {for $SRObsStn in collection("ndg_B_metadata")//dgMetadataRecord[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$RelDep/ObservationStationID/repositoryIdentifier and dgMetadataID/localIdentifier=$RelDep/ObservationStationID/localIdentifier)] 
    83109                                return 
    84110                                        <observationstation> 
    85111                                        {$SRObsStn/dgMetadataID} 
    86112                                        {$SRObsStn/dgMetadataDescription} 
    87                                         {$SRObsStn/name} 
    88                                         {$SRObsStn/abbreviation} 
     113                                        {$SRObsStn/name}                                        {$SRObsStn/abbreviation} 
    89114                                        <dgObservationStation> 
    90115                                                {$SRObsStn/dgObservationStation/contactDetails} 
     
    97122                </RelatedDeployment> 
    98123                } 
    99                 {$DE/dgInputDataGranuleID} 
    100                 {$DE/dgRelatedDataGranuleID} 
     124                {for $RelatedDataGranule in collection("ndg_B_metadata")//dgMetadataRecord[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$DE/dgRelatedDataGranuleID/dgRelatedDataGranuleID/repositoryIdentifier and dgMetadataID/localIdentifier=$DE/dgRelatedDataGranuleID/RelatedDataGranuleID/localIdentifier)] 
     125                        return 
     126                                <relateddatagranule> 
     127                                <relation> 
     128                                        {$RelatedDataGranule/RelationID/dgValidTerm} 
     129                                        {$RelatedDataGranule/RelationID/dgValidTermID} 
     130                                </relation> 
     131                                {$RelatedDataGranule/dgMetadataID} 
     132                                {$RelatedDataGranule/dgMetadataDescription} 
     133                                {$RelatedDataGranule/name} 
     134                                {$RelatedDataGranule/abbreviation} 
     135                                <dgDataEntity> 
     136                                        {$RelatedDataGranule/dgDataEntity/dgDataSetType} 
     137                                        {$RelatedDataGranule/dgDataEntity/dgDataObjectType} 
     138                                        {$DE/dgDataEntity/dgDataGranule} 
     139                                        {$DE/dgDataEntity/dgDataSummary} 
     140                                </dgDataEntity> 
     141                                </relateddatagranule> 
     142                        } 
    101143        </dgDataEntity> 
    102144        {$DE/dgStructuredKeyword} 
     
    104146        {$DE/MetadataSecurity} 
    105147</dgMetadataRecord> 
     148 
Note: See TracChangeset for help on using the changeset viewer.