source: TI07-MOLES/trunk/StubB/XQuery/NDG-DEStubBmoles.xquery @ 1656

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

Namespaced queries starting points

Line 
1for $DE in collection('/db/ndg_B_metadata')/dgMetadata/dgMetadataRecord[exists('dgDataEntity') and dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier='badc.nerc.ac.uk' and localIdentifier='dataent1']]
2return
3<dgMetadataRecord>
4        <dgMetadataID>
5                <schemeIdentifier>NDG-B1</schemeIdentifier>
6                {$DE/dgMetadataID/repositoryIdentifier}
7                {$DE/dgMetadataID/localIdentifier}
8        </dgMetadataID>
9        {$DE/dgMetadataDescription}
10        {$DE/name}
11        {$DE/abbreviation}
12        <dgDataEntity>
13                {$DE/dgDataEntity/dgDataSetType}
14                {$DE/dgDataEntity/dgDataObjectType}
15                {$DE/dgDataEntity/dgDataGranule}
16                {$DE/dgDataEntity/dgDataSummary}
17                <dgDataRoles>
18                        {if (exists($DE/dgDataEntity/dgDataRoles/dgDataCreator/dgMetadataID)) then (
19                                <dgDataCreator>
20                                {$DE/dgDataEntity/dgDataRoles/dgDataCreator/dgMetadataID}
21                                {$DE/dgDataEntity/dgDataRoles/dgDataCreator/roleName}
22                                {$DE/dgDataEntity/dgDataRoles/dgDataCreator/abbreviation}
23                                {$DE/dgDataEntity/dgDataRoles/dgDataCreator/contactDetails}
24                                {for $DataCreatorRole in $DE/dgDataEntity/dgDataRoles/dgDataCreator/dgRoleHolder
25                                        order by $DataCreatorRole/startDate empty least, $DataCreatorRole/endDate empty least
26                                        return
27                                                <dgRoleHolder>
28                                                        {if (exists($DataCreatorRole/dgOrganisationID)) then (
29                                                                for $DataCreatorRoleHolder in collection('/db/ndg_B_metadata')/dgMetadata/dgOrganisation[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$DataCreatorRole/dgOrganisationID/repositoryIdentifier and localIdentifier=$DataCreatorRole/dgOrganisationID/localIdentifier]]
30                                                                return $DataCreatorRoleHolder)
31                                                         else ()
32                                                        }
33                                                        {if (exists($DataCreatorRole/dgPersonID)) then (
34                                                                for $DataCreatorRoleHolder in collection('/db/ndg_B_metadata')/dgMetadata/dgPerson[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$DataCreatorRole/dgPersonID/repositoryIdentifier and localIdentifier=$DataCreatorRole/dgPersonID/localIdentifier]]
35                                                                return $DataCreatorRoleHolder)
36                                                         else ()
37                                                        }
38                                                        {$DataCreatorRole/startDate}
39                                                        {$DataCreatorRole/endDate}
40                                                        {$DataCreatorRole/localName}
41                                                </dgRoleHolder>
42                                        }                                       
43                                </dgDataCreator>)
44                        else ()}
45                        {if (exists($DE/dgDataEntity/dgDataRoles/dgDataCurator/dgMetadataID)) then (
46                                <dgDataCurator>
47                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/dgMetadataID}
48                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/roleName}
49                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/abbreviation}
50                                {$DE/dgDataEntity/dgDataRoles/dgDataCurator/contactDetails}
51                                {for $DataCuratorRole in $DE/dgDataEntity/dgDataRoles/dgDataCurator/dgRoleHolder
52                                        order by $DataCuratorRole/startDate empty least, $DataCuratorRole/endDate empty least
53                                        return
54                                                <dgRoleHolder>
55                                                        {if (exists($DataCuratorRole/dgOrganisationID)) then (
56                                                                for $DataCuratorRoleHolder in collection('/db/ndg_B_metadata')/dgMetadata/dgOrganisation[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$DataCuratorRole/dgOrganisationID/repositoryIdentifier and localIdentifier=$DataCuratorRole/dgOrganisationID/localIdentifier]]
57                                                                return $DataCuratorRoleHolder)
58                                                         else ()
59                                                        }
60                                                        {if (exists($DataCuratorRole/dgPersonID)) then (
61                                                                for $DataCuratorRoleHolder in collection('/db/ndg_B_metadata')/dgMetadata/dgPerson[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$DataCuratorRole/dgPersonID/repositoryIdentifier and localIdentifier=$DataCuratorRole/dgPersonID/localIdentifier]]
62                                                                return $DataCuratorRoleHolder)
63                                                         else ()
64                                                        }
65                                                        {$DataCuratorRole/startDate}
66                                                        {$DataCuratorRole/endDate}
67                                                        {$DataCuratorRole/localName}
68                                                </dgRoleHolder>}
69                        </dgDataCurator>)
70                        else ()}
71
72                        {if (exists($DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/dgMetadataID)) then (
73                                <dgDataOtherRoles>
74                                {$DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/dgMetadataID}
75                                {$DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/roleName}
76                                {$DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/abbreviation}
77                                {$DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/contactDetails}
78                                {for $DataOtherRolesRole in $DE/dgDataEntity/dgDataRoles/dgDataOtherRoles/dgRoleHolder
79                                        order by $DataOtherRolesRole/startDate empty least, $DataOtherRolesRole/endDate empty least
80                                        return
81                                                <dgRoleHolder>
82                                                        {if (exists($DataOtherRolesRole/dgOrganisationID)) then (
83                                                                for $DataOtherRolesRoleHolder in /dgMetadata/dgOrganisation[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$DataOtherRolesRole/dgOrganisationID/repositoryIdentifier and localIdentifier=$DataOtherRolesRole/dgOrganisationID/localIdentifier]]
84                                                                return $DataOtherRolesRoleHolder)
85                                                         else ()
86                                                        }
87                                                        {if (exists($DataOtherRolesRole/dgPersonID)) then (
88                                                                for $DataOtherRolesRoleHolder in /dgMetadata/dgPerson[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$DataOtherRolesRole/dgPersonID/repositoryIdentifier and localIdentifier=$DataOtherRolesRole/dgPersonID/localIdentifier]]
89                                                                return $DataOtherRolesRoleHolder)
90                                                         else ()
91                                                        }
92                                                        {$DataOtherRolesRole/startDate}
93                                                        {$DataOtherRolesRole/endDate}
94                                                        {$DataOtherRolesRole/localName}
95                                                </dgRoleHolder>}
96                        </dgDataOtherRoles>)
97                        else ()}
98
99                </dgDataRoles>
100                {for $RelDep in $DE/dgDataEntity/RelatedDeployment
101                        return
102                        <RelatedDeployment>
103                        {$RelDep/DateStart}
104                        {$RelDep/DateEnd}
105                        {$RelDep/dgMetadataID}
106                        {for $SRAct in collection('/db/ndg_B_metadata')/dgMetadata/dgMetadataRecord[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$RelDep/ActivityID/repositoryIdentifier and localIdentifier=$RelDep/ActivityID/localIdentifier]]
107                                return
108                                        <activity>
109                                        {$SRAct/dgMetadataID}
110                                        {$SRAct/dgMetadataDescription}
111                                        {$SRAct/name}
112                                        {$SRAct/abbreviation}
113                                        <dgActivity>
114                                                {$SRAct/dgActivity/dgActivityDataCollection}
115                                                {$SRAct/dgActivity/dgActivityDataProject}
116                                                {$SRAct/dgActivity/dgActivityDataCampaign}
117                                                {$SRAct/dgActivity/dgActivityDataInvestigation}
118                                                {$SRAct/dgActivity/dgActivityCoverage}
119                                                {$SRAct/dgActivity/dgActivityDuration}
120                                        </dgActivity>
121                                        </activity>
122                                }
123                        {for $SRDPT in collection('/db/ndg_B_metadata')/dgMetadata/dgMetadataRecord[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$RelDep/DataProductionToolID/repositoryIdentifier and localIdentifier=$RelDep/DataProductionToolID/localIdentifier]]
124                                return
125                                        <dataproductiontool>
126                                        {$SRDPT/dgMetadataID}
127                                        {$SRDPT/dgMetadataDescription}
128                                        {$SRDPT/name}
129                                        {$SRDPT/abbreviation}
130                                        <dgDataProductionTool>
131                                                {$SRDPT/dgDataProductionTool/contactDetails}
132                                                {$SRDPT/dgDataProductionTool/dgModel}
133                                                {$SRDPT/dgDataProductionTool/dgInstrument}
134                                        </dgDataProductionTool>
135                                        </dataproductiontool>
136                                }
137                        {for $SRObsStn in collection('/db/ndg_B_metadata')/dgMetadata/dgMetadataRecord[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$RelDep/ObservationStationID/repositoryIdentifier and localIdentifier=$RelDep/ObservationStationID/localIdentifier]]
138                                return
139                                        <observationstation>
140                                        {$SRObsStn/dgMetadataID}
141                                        {$SRObsStn/dgMetadataDescription}
142                                        {$SRObsStn/name}                                        {$SRObsStn/abbreviation}
143                                        <dgObservationStation>
144                                                {$SRObsStn/dgObservationStation/contactDetails}
145                                                {$SRObsStn/dgObservationStation/dgStationaryPlatform}
146                                                {$SRObsStn/dgObservationStation/dgMovingPlatform}
147                                        </dgObservationStation>
148                                        </observationstation>
149                                }
150                        {$RelDep/Coverage}
151                </RelatedDeployment>
152                }
153                {for $RelatedDataGranule in collection('/db/ndg_B_metadata')/dgMetadata/dgMetadataRecord[dgMetadataID[schemeIdentifier='NDG-B0' and repositoryIdentifier=$DE/dgRelatedDataGranuleID/dgRelatedDataGranuleID/repositoryIdentifier and localIdentifier=$DE/dgRelatedDataGranuleID/RelatedDataGranuleID/localIdentifier]]
154                        return
155                                <relateddatagranule>
156                                <relation>
157                                        {$RelatedDataGranule/RelationID/dgValidTerm}
158                                        {$RelatedDataGranule/RelationID/dgValidTermID}
159                                </relation>
160                                {$RelatedDataGranule/dgMetadataID}
161                                {$RelatedDataGranule/dgMetadataDescription}
162                                {$RelatedDataGranule/name}
163                                {$RelatedDataGranule/abbreviation}
164                                <dgDataEntity>
165                                        {$RelatedDataGranule/dgDataEntity/dgDataSetType}
166                                        {$RelatedDataGranule/dgDataEntity/dgDataObjectType}
167                                        {$DE/dgDataEntity/dgDataGranule}
168                                        {$DE/dgDataEntity/dgDataSummary}
169                                </dgDataEntity>
170                                </relateddatagranule>
171                        }
172        </dgDataEntity>
173        {$DE/dgStructuredKeyword}
174        {$DE/DataProvenance}
175        {$DE/MetadataSecurity}
176</dgMetadataRecord>
Note: See TracBrowser for help on using the repository browser.