Changeset 2457 for TI07-MOLES/trunk/DIF
- Timestamp:
- 03/05/07 11:43:18 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
TI07-MOLES/trunk/DIF/XQuery/NDG-DIFtemplate.xquery
r1744 r2457 1 import module namespace voclib='http://ndg.nerc.ac.uk/xquery/lib/vocab' at 'xmldb:exist:///db/xqueryLib/Vocabs/vocab_xquery_lib.xquery'; 2 import module namespace utillib='http://ndg.nerc.ac.uk/xquery/lib/utilities' at 'xmldb:exist:///db/xqueryLib/Utilities/utility_xquery_lib.xquery'; 1 3 declare default element namespace 'http://gcmd.gsfc.nasa.gov/Aboutus/xml/dif/'; 2 4 declare namespace xsi='http://www.w3.org/2001/XMLSchema-instance'; … … 4 6 declare namespace f='http://ndg.nerc.ac.uk/moles/localfunctions'; 5 7 6 for $DE in collection('/db/ndg_B_metadata')/moles:dgMetadata/moles:dgMetadataRecord[ 8 declare variable $targetCollection as xs:string {'TargetCollection'}; 9 declare variable $repositoryIdentifier as xs:string {'RepositoryID'}; 10 declare variable $localIdentifier as xs:string {'LocalID'}; 11 12 for $DE in collection($targetCollection)/moles:dgMetadata/moles:dgMetadataRecord[ 7 13 exists('moles:dgDataEntity') 8 14 and moles:dgMetadataID/moles:schemeIdentifier='NDG-B0' 9 and moles:dgMetadataID/moles:repositoryIdentifier= 'grid.bodc.nerc.ac.uk'10 and moles:dgMetadataID/moles:localIdentifier= 'HGFS3751']15 and moles:dgMetadataID/moles:repositoryIdentifier=$repositoryIdentifier 16 and moles:dgMetadataID/moles:localIdentifier=$localIdentifier] 11 17 return 12 18 element DIF { … … 17 23 for $DataCreatorRole in $DE/moles:dgDataEntity/moles:dgDataRoles/moles:dgDataCreator/moles:dgRoleHolder[not(exists(moles:endDate)) or moles:endDate=''][1] 18 24 return 19 for $DataCreatorRoleHolder in collection( '/db/ndg_B_metadata')/moles:dgMetadata/*[(moles:dgMetadataID/moles:schemeIdentifier='NDG-B0'25 for $DataCreatorRoleHolder in collection($targetCollection)/moles:dgMetadata/*[(moles:dgMetadataID/moles:schemeIdentifier='NDG-B0' 20 26 and moles:dgMetadataID/moles:repositoryIdentifier=$DataCreatorRole/*/moles:repositoryIdentifier 21 27 and moles:dgMetadataID/moles:localIdentifier=$DataCreatorRole/*/moles:localIdentifier)] … … 62 68 return 63 69 element Sensor_Name { 64 for $DepDPTAbbrev in distinct-values((collection( '/db/ndg_B_metadata')/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepDPT/moles:repositoryIdentifier and moles:localIdentifier=$DepDPT/moles:localIdentifier]]/moles:abbreviation))70 for $DepDPTAbbrev in distinct-values((collection($targetCollection)/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepDPT/moles:repositoryIdentifier and moles:localIdentifier=$DepDPT/moles:localIdentifier]]/moles:abbreviation)) 65 71 return element Short_Name {data($DepDPTAbbrev)}, 66 for $DepDPTName in distinct-values((collection( '/db/ndg_B_metadata')/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepDPT/moles:repositoryIdentifier and moles:localIdentifier=$DepDPT/moles:localIdentifier]]/moles:name))72 for $DepDPTName in distinct-values((collection($targetCollection)/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepDPT/moles:repositoryIdentifier and moles:localIdentifier=$DepDPT/moles:localIdentifier]]/moles:name)) 67 73 return element Long_Name {data($DepDPTName)} 68 74 }, … … 70 76 return 71 77 element Source_Name { 72 for $DepObsStnAbbrev in distinct-values((collection( '/db/ndg_B_metadata')/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepObsStn/moles:repositoryIdentifier and moles:localIdentifier=$DepObsStn/moles:localIdentifier]]/moles:abbreviation))78 for $DepObsStnAbbrev in distinct-values((collection($targetCollection)/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepObsStn/moles:repositoryIdentifier and moles:localIdentifier=$DepObsStn/moles:localIdentifier]]/moles:abbreviation)) 73 79 return element Short_Name {data($DepObsStnAbbrev)}, 74 for $DepObsStnName in distinct-values((collection( '/db/ndg_B_metadata')/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepObsStn/moles:repositoryIdentifier and moles:localIdentifier=$DepObsStn/moles:localIdentifier]]/moles:name))80 for $DepObsStnName in distinct-values((collection($targetCollection)/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepObsStn/moles:repositoryIdentifier and moles:localIdentifier=$DepObsStn/moles:localIdentifier]]/moles:name)) 75 81 return element Long_Name {data($DepObsStnName)} 76 82 }, … … 100 106 return 101 107 element Project { 102 for $DepActAbbrev in distinct-values(collection( '/db/ndg_B_metadata')/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepAct/moles:repositoryIdentifier and moles:localIdentifier=$DepAct/moles:localIdentifier]]/moles:abbreviation)108 for $DepActAbbrev in distinct-values(collection($targetCollection)/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepAct/moles:repositoryIdentifier and moles:localIdentifier=$DepAct/moles:localIdentifier]]/moles:abbreviation) 103 109 return 104 110 element Short_Name {data($DepActAbbrev)}, 105 for $DepActName in distinct-values(collection( '/db/ndg_B_metadata')/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepAct/moles:repositoryIdentifier and moles:localIdentifier=$DepAct/moles:localIdentifier]]/moles:name)111 for $DepActName in distinct-values(collection($targetCollection)/moles:dgMetadata/moles:dgMetadataRecord[moles:dgMetadataID[moles:schemeIdentifier='NDG-B0' and moles:repositoryIdentifier=$DepAct/moles:repositoryIdentifier and moles:localIdentifier=$DepAct/moles:localIdentifier]]/moles:name) 106 112 return 107 113 element Long_Name {data($DepActName)} … … 133 139 order by $DataCreatorRole/moles:startDate empty least 134 140 return 135 for $DataCreatorRoleHolder in collection( '/db/ndg_B_metadata')/moles:dgMetadata/(moles:dgOrganisation | moles:dgPerson)141 for $DataCreatorRoleHolder in collection($targetCollection)/moles:dgMetadata/(moles:dgOrganisation | moles:dgPerson) 136 142 [(moles:dgMetadataID/moles:schemeIdentifier='NDG-B0' 137 143 and moles:dgMetadataID/moles:repositoryIdentifier=$DataCreatorRole/(moles:dgOrganisationID | moles:dgPersonID)/moles:repositoryIdentifier … … 148 154 for $DataCuratorRole in $DE/moles:dgDataEntity/moles:dgDataRoles/moles:dgDataCurator/moles:dgRoleHolder[not(exists(moles:endDate)) or moles:endDate=''] 149 155 return 150 for $DataCuratorRoleHolder in collection( '/db/ndg_B_metadata')/moles:dgMetadata/*[(moles:dgMetadataID/moles:schemeIdentifier='NDG-B0'156 for $DataCuratorRoleHolder in collection($targetCollection)/moles:dgMetadata/*[(moles:dgMetadataID/moles:schemeIdentifier='NDG-B0' 151 157 and moles:dgMetadataID/moles:repositoryIdentifier=$DataCuratorRole/*/moles:repositoryIdentifier 152 158 and moles:dgMetadataID/moles:localIdentifier=$DataCuratorRole/*/moles:localIdentifier)]
Note: See TracChangeset
for help on using the changeset viewer.