source: MOLES/trunk/StubB/XQuery/NDG-ObsStnStubB.xquery @ 326

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/MOLES/trunk/StubB/XQuery/NDG-ObsStnStubB.xquery@326
Revision 326, 7.4 KB checked in by ko23, 14 years ago (diff)

* empty log message *

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1for $ObsStn in //dgMetadataRecord[dgObservationStation!='' and dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier='badc.nerc.ac.uk' and dgMetadataID/localIdentifier='obs1']
2return
3<dgMetadataRecord>
4        <dgMetadataID>
5                <schemeIdentifier>NDG-B1</schemeIdentifier>
6                {$ObsStn/dgMetadataID/repositoryIdentifier}
7                {$ObsStn/dgMetadataID/localIdentifier}
8        </dgMetadataID>
9        {$ObsStn/dgMetadataDescription}
10        {$ObsStn/name}
11        {$ObsStn/abbreviation}
12        <dgObservationStation>
13                {$ObsStn/dgObservationStation/contactDetails}
14                {if (exists($ObsStn/dgObservationStation/dgStationaryPlatform)) then (
15                        <dgStationaryPlatform>
16                                {$ObsStn/dgObservationStation/dgStationaryPlatform/position}
17                                {if (exists($ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring)) then
18                                (
19                                <dgMooring>
20                                        {$ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring/dateStart}
21                                        {$ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring/dateEnd}
22                                        {for $DepositingCruise in //dgMetadataRecord[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring/DepositingCruise/repositoryIdentifier and dgMetadataID/localIdentifier=$ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring/DepositingCruise/localIdentifier)]
23                                        return
24                                        <depositingcruise>
25                                                {$DepositingCruise/dgMetadataID}
26                                                {$DepositingCruise/name}
27                                                {$DepositingCruise/abbreviation}
28                                                {$DepositingCruise/dgMetadataDescription}
29                                        </depositingcruise>
30                                        }
31                                        {if (exists($ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring/dgStationGrouping)) then
32                                        (
33                                        for $StationGrouping in //dgMetadataRecord[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring/DepositingCruise/repositoryIdentifier and dgMetadataID/localIdentifier=$ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring/DepositingCruise/localIdentifier)]
34                                        return
35                                                <dgStationGrouping>
36                                                        {$StationGrouping/dgMetadataID}
37                                                        {$StationGrouping/name}
38                                                        {$StationGrouping/abbreviation}
39                                                        {$StationGrouping/dgMetadataDescription}
40                                                        {$StationGrouping/dgObservationStation/dgStationaryPlatform/position}
41                                                </dgStationGrouping>
42                                        )
43                                        else ()}
44                                </dgMooring>           
45                                )
46                                else if (exists($ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring)) then
47                                (
48                                <dgStationGroup>
49                                        {$ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring/dateStart}
50                                        {$ObsStn/dgObservationStation/dgStationaryPlatform/dgMooring/dateEnd}
51                                        <dgGroupedStations>
52                                        {for $GroupedStations in //dgMetadataRecord[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$ObsStn/dgObservationStation/dgStationaryPlatform/dgStationGroup/dgGroupedStations/dgGroupedStation/repositoryIdentifier and dgMetadataID/localIdentifier=$ObsStn/dgObservationStation/dgStationaryPlatform/dgStationGroup/dgGroupedStations/dgGroupedStation/localIdentifier)]
53                                        return
54                                        <dgGroupedStation>
55                                                {$GroupedStations/dgMetadataID}
56                                                {$GroupedStations/name}
57                                                {$GroupedStations/abbreviation}
58                                                {$GroupedStations/dgMetadataDescription}
59                                                {$GroupedStations/dgObservationStation/dgStationaryPlatform/position}
60                                        </dgGroupedStation>
61                                        }
62                                        </dgGroupedStations>
63                                </dgStationGroup>               
64                                )
65                                else ($ObsStn/dgObservationStation/dgLandStation)
66                                }
67                        </dgStationaryPlatform>
68                )
69                else ($ObsStn/dgObservationStation/dgMovingPlatform)
70                }
71        {for $RelDep in $ObsStn//ObsStationDeployment
72                return
73                <ObsStationDeployment>
74                        {$RelDep/DateStart}
75                        {$RelDep/DateEnd}
76                        {$RelDep/dgMetadataID}
77                        {for $SRAct in //dgMetadataRecord[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$RelDep/ActivityID/repositoryIdentifier and dgMetadataID/localIdentifier=$RelDep/ActivityID/localIdentifier)]
78                                return
79                                        <activity>
80                                        {$SRAct/dgMetadataID}
81                                        {$SRAct/dgMetadataDescription}
82                                        {$SRAct/name}
83                                        {$SRAct/abbreviation}
84                                        <dgActivity>
85                                                {$SRAct/*/dgActivityDataCollection}
86                                                {$SRAct/*/dgActivityDataProject}
87                                                {$SRAct/*/dgActivityDataCampaign}
88                                                {$SRAct/*/dgActivityDataInvestigation}
89                                                {$SRAct/*/dgActivityCoverage}
90                                                {$SRAct/*/dgActivityDuration}
91                                        </dgActivity>
92                                        </activity>
93                                }
94                        {for $SRDPT in //dgMetadataRecord[(dgMetadataID/schemeIdentifier='NDG-B0' and dgMetadataID/repositoryIdentifier=$RelDep/DataProductionToolID/repositoryIdentifier and dgMetadataID/localIdentifier=$RelDep/DataProductionToolID/localIdentifier)]
95                                return
96                                        <dataproductiontool>
97                                                {$SRDPT/dgMetadataID}
98                                                {$SRDPT/dgMetadataDescription}
99                                                {$SRDPT/name}
100                                                {$SRDPT/abbreviation}
101                                                <dgDataProductionTool>
102                                                        {$SRDPT/dgDataProductionTool/contactDetails}
103                                                        {$SRDPT/dgDataProductionTool/dgModel}
104                                                        {$SRDPT/dgDataProductionTool/dgInstrument}
105                                                </dgDataProductionTool>
106                                        </dataproductiontool>
107                                }
108                        {for $DE in //dgMetadataRecord[dgMetadataID/schemeIdentifier='NDG-B0' and dgDataEntity/RelatedDeployment/dgMetadataID/repositoryIdentifier=$RelDep/dgMetadataID/repositoryIdentifier and dgDataEntity/RelatedDeployment/dgMetadataID/localIdentifier=$RelDep/dgMetadataID/localIdentifier]
109                                return
110                                <dataEntity>
111                                {$DE/dgMetadataID}
112                                {$DE/dgMetadataDescription}
113                                {$DE/name}
114                                {$DE/abbreviation}
115                                <dgDataEntity>
116                                        {$DE/dgDataEntity/dgDataSetType}
117                                        {$DE/dgDataEntity/dgDataObjectType}
118                                        {$DE/dgDataEntity/dgDataGranule}
119                                        {$DE/dgDataEntity/dgDataSummary}
120                                        <dgDataRoles>
121                                        <dgDataCurator>
122                                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/dgMetadataID}
123                                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/roleName}
124                                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/abbreviation}
125                                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/contactDetails}
126                                                {for $DataCuratorRole in $DE/dgDataEntity/dgDataRoles/dgDataCurator/dgRoleHolder
127                                                        order by $DataCuratorRole/startDate empty least, $DataCuratorRole/endDate empty least
128                                                        return
129                                                        <dgRoleHolder>
130                                                        {for $DataCuratorRoleHolder in /*/(dgOrganisation | dgPerson)[(dgMetadataID/repositoryIdentifier=$DataCuratorRole/*/repositoryIdentifier and dgMetadataID/localIdentifier=$DataCuratorRole/*/localIdentifier)] return $DataCuratorRoleHolder}
131                                                                {$DataCuratorRole/startDate}
132                                                                {$DataCuratorRole/endDate}
133                                                                {$DataCuratorRole/localName}
134                                                        </dgRoleHolder>}
135                                        </dgDataCurator>
136                                        </dgDataRoles>
137                                </dgDataEntity>
138                        </dataEntity>
139                        }
140                </ObsStationDeployment>
141                }
142        </dgObservationStation>
143        {$ObsStn/dgStructuredKeyword}
144        {$ObsStn/DataProvenance}
145        {$ObsStn/MetadataSecurity}
146</dgMetadataRecord>
147
148(: Stylus Studio meta-information - (c) 2004-2005. Progress Software Corporation. All rights reserved.
149<metaInformation>
150<scenarios ><scenario default="yes" name="Scenario1" userelativepaths="yes" externalpreview="no" url="..\..\..\..\..\..\..\My Documents\ndgBXML\ndgB.xml" outputurl="" processortype="internal" tcpport="2233" profilemode="0" profiledepth="" profilelength="" urlprofilexml="" commandline="" additionalpath="" additionalclasspath="" postprocessortype="none" postprocesscommandline="" postprocessadditionalpath="" postprocessgeneratedext="" host="" port="8000" user="" password=""/></scenarios><MapperMetaTag><MapperInfo srcSchemaPathIsRelative="yes" srcSchemaInterpretAsXML="no" destSchemaPath="" destSchemaRoot="" destSchemaPathIsRelative="yes" destSchemaInterpretAsXML="no"/><MapperBlockPosition></MapperBlockPosition></MapperMetaTag>
151</metaInformation>
152:)
Note: See TracBrowser for help on using the repository browser.