Changeset 7885 for ndgCommon


Ignore:
Timestamp:
14/02/11 12:13:31 (8 years ago)
Author:
sdonegan
Message:

Further updates to keywords and atom content handling

File:
1 edited

Legend:

Unmodified
Added
Removed
  • ndgCommon/trunk/ndg/common/xmldb/xquery/atom2NERCiso.xq

    r7884 r7885  
    141141    element gmd:dateStamp { 
    142142        element gco:Date { 
    143             replace(string($DE/atom:updated),"T|Z"," ") 
     143            replace(string($DE/atom:updated),"Z","") 
    144144        } 
    145145    }, 
     
    276276            (:TODO: need to get CEDA to evaluate this properly - codelist/vocab?   
    277277             
    278             UPDATE (11/02/11) : can pull format from the atom:content xhtml section 
    279              
    280             :) 
    281              
     278            UPDATE (11/02/11) : can pull format from the atom:content xhtml section  BUT this is a restricted list from http://vocab.ndg.nerc.ac.uk/term/M010/-but its a cr@p list. 
     279             
     280            :) 
     281             
     282            (: this one is pulled from the CEDA ATOM :) 
    282283              for $divContent in $DE/atom:content 
    283284                let $content := isolib:extractAtomContent(string("cedacat:formats"),$divContent) 
     
    301302            (: Ensure NERC_DDC is in there :) 
    302303             
    303             (: TODO: CEDA/NERC - is this keyword in a vocab or codelist?/ :) 
     304            (: TODO: CEDA/NERC - is this keyword in a vocab or codelist?/ 
     305             
     306            UPDATE 14/02/11:yes - use this http://vocab.ndg.nerc.ac.uk/term/N010/0/NDGO0003 - and use new method too.            
     307            :) 
     308            
    304309            element gmd:descriptiveKeywords { 
     310                    element gmd:MD_Keywords { 
     311                        element gmd:keyword{ 
     312                            element gmx:Anchor { 
     313                                attribute xlink:href {string("http://vocab.ndg.nerc.ac.uk/term/N010/0/")}, 
     314                                 
     315                                (: use the unknown vocab reference.. this may show up on the portal as an error! :) 
     316                                attribute xlink:title {string("NDGO0003")}, 
     317                                string("NERC_DDC") 
     318                            }                             
     319                        } 
     320                    } 
     321                }, 
     322             
     323            (: Vertical Extent - Element 14:) 
     324             
     325            (: TODO - CEDA have to implement vertical extent keywords - must take from L131 list on NDG vocab server.  :) 
     326                       
     327            (: if vertical extent present - pull this through for now, notwithstanding whether its on the L131 list or not.. :) 
     328            for $keyword in $DE/moles:entity/moles:molesISO/moles:verticalExtent            
     329            return 
     330                element gmd:descriptiveKeywords { 
     331                    element gmd:MD_Keywords { 
     332                        element gmd:keyword{ 
     333                            element gmx:Anchor { 
     334                                attribute xlink:href {string("http://vocab.ndg.nerc.ac.uk/term/L131/3")}, 
     335                                 
     336                                (: use the unknown vocab reference.. this may show up on the portal as an error! :) 
     337                                attribute xlink:title {string("UK")}, 
     338                                data($keyword) 
     339                            }                             
     340                        } 
     341                    } 
     342                }, 
     343                 
     344            (: depending on whether BADC or NEODC record, add in some hardcoded VE keywords for good measure!:) 
     345               
     346             if (contains($cedaIdentifier,"badc")) then             
     347               element gmd:descriptiveKeywords { 
     348                    element gmd:MD_Keywords { 
     349                        element gmd:keyword{ 
     350                            element gmx:Anchor { 
     351                                attribute xlink:href {string("http://vocab.ndg.nerc.ac.uk/term/L131/3")}, 
     352                                attribute xlink:title {string("AT")}, 
     353                                string("atmosphere") 
     354                            }                             
     355                        } 
     356                    } 
     357                }            
     358            else (),            
     359             
     360            if (contains($cedaIdentifier,"neodc")) then             
     361                element gmd:descriptiveKeywords { 
     362                    element gmd:MD_Keywords { 
     363                        element gmd:keyword{ 
     364                            element gmx:Anchor { 
     365                                attribute xlink:href {string("http://vocab.ndg.nerc.ac.uk/term/L131/3")}, 
     366                                attribute xlink:title {string("UK")}, 
     367                                string("unknown") 
     368                            }                             
     369                        } 
     370                    } 
     371                }            
     372            else (), 
     373             
     374            (: INSPIRE keywords :) 
     375             
     376            (: TODO: CEDA - need to have info on INSPIRE themes available in the CEDA MOLES db - hardwire for now  
     377             
     378            Update: freetext field available in editor now - still need to map this to a vocab... 
     379             
     380            PROBLEM 14/02/11: lack of suitable GEMET keywords for CEDA datasets/themes? 
     381             
     382            :) 
     383             
     384            if (contains($cedaIdentifier,"badc")) then             
     385               element gmd:descriptiveKeywords { 
    305386                element gmd:MD_Keywords { 
    306387                    element gmd:keyword { 
    307                         element gco:CharacterString { string("NERC_DDC") } 
    308                     } 
    309                 } 
    310             }, 
    311              
    312             (: Vertical Extent - Element 14:) 
    313              
    314             (: TODO - CEDA have to implement vertical extent keywords - must take from L131 list on NDG vocab server.  Optional element so can leave for now :) 
    315              
    316             (: INSPIRE keywords :) 
    317              
    318             (: TODO: CEDA - need to have info on INSPIRE themes available in the CEDA MOLES db - hardwire for now  
    319              
    320             Update: freetext field available in editor now - still need to map this to a vocab... 
    321              
    322             :) 
    323              
    324             element gmd:descriptiveKeywords { 
    325                 element gmd:MD_Keywords { 
    326                     element gmd:keyword { 
    327                          
    328                         if (exists($DE/moles:entity/moles:molesISO/moles:verticalExtent)) then 
    329                             element gco:CharacterString {data($DE/moles:entity/moles:molesISO/moles:verticalExtent)} 
    330                         else 
    331                             element gco:CharacterString { string("Elevation") } 
     388                        element gco:CharacterString { string("Atmospheric conditions") } 
    332389                    }, 
    333390                    element gmd:thesaurusName {                     
     
    335392                    } 
    336393                } 
    337             }, 
    338              
     394            } 
     395            else (), 
     396             
     397            if (contains($cedaIdentifier,"badc")) then             
     398               element gmd:descriptiveKeywords { 
     399                element gmd:MD_Keywords { 
     400                    element gmd:keyword { 
     401                        element gco:CharacterString { string("Meteorological geographical features") } 
     402                    }, 
     403                    element gmd:thesaurusName {                     
     404                        isolib:CI_Citation(string('GEMET - INSPIRE themes, version 1.0'),concat($currentDate,"=",string('publication')),string(""),string("")) 
     405                    } 
     406                } 
     407            } 
     408            else (), 
     409             
     410            if (contains($cedaIdentifier,"neodc")) then             
     411               element gmd:descriptiveKeywords { 
     412                element gmd:MD_Keywords { 
     413                    element gmd:keyword { 
     414                        element gco:CharacterString { string("Orthoimagery") } 
     415                    }, 
     416                    element gmd:thesaurusName {                     
     417                        isolib:CI_Citation(string('GEMET - INSPIRE themes, version 1.0'),concat($currentDate,"=",string('publication')),string(""),string("")) 
     418                    } 
     419                } 
     420            } 
     421            else (), 
     422             
     423            
    339424            (: TODO: CEDA - need to properly quantify keywords/parameters to actual vocabs.  For now map category attribute "label" to  keyword value in gmx:anchor and the scheme to xlink:href attritubte and term to title.   
    340425            follow medin example for nerc harvesting keyword.  This seriously needs tidying up  
     
    379464                            element gmd:MD_Constraints { 
    380465                                element gmd:useLimitation { 
    381                                     element gco:CharacterString {data($content)} 
     466                                    element gco:CharacterString {string("Restrictions Apply")} 
    382467                                } 
    383468                            } 
     
    487572             
    488573            (: Topic Category - Element 9:) 
    489             (:TODO: CEDA will also need to include this information as mandatory for datasets.  For now, hardcoded to "Geoscientific Information" :) 
     574            (:TODO: CEDA will also need to include this information as mandatory for datasets.  For now, hardcoded to "Geoscientific Information" 
     575             
     576            UPDATE - still needs to be hardcoded as npt supported by DSR round1 editor updates, but use badc/neodc specific categories that are better descriptive of data 
     577             
     578            :) 
     579             
     580            if (contains($cedaIdentifier,"badc")) then             
     581                element gmd:topicCategory { 
     582                    element gmd:MD_TopicCategoryCode {string("climatologyMeteorologyAtmosphere")} 
     583                }                 
     584            else (),            
     585             
     586            if (contains($cedaIdentifier,"neodc")) then             
     587                element gmd:topicCategory { 
     588                    element gmd:MD_TopicCategoryCode {string("imageryBaseMapsEarthCover")} 
     589                }                 
     590            else (), 
    490591            element gmd:topicCategory { 
    491                 element gmd:MD_TopicCategoryCode {string("GeoscientificInformation")} 
    492             }, 
    493              
     592                    element gmd:MD_TopicCategoryCode {string("environment")} 
     593                }, 
    494594            
    495595             
     
    718818     
    719819 
    720  
Note: See TracChangeset for help on using the changeset viewer.