This is an old revision of the document!


Frequently Asked Questions

The runtime environment is generated during installation of the software (see the README file coming with the software for details). Basically the following procedure is used to set up a METAMOD instance:

  1. Edit master_config.txt under app/<appname>
  2. Run update_target.pl found in source code using the user owning the web server
    1. This creates a runtime source code tree located as defined within master_config.txt
  3. If a first time set up, run create_and_load_all.sh located within the runtime source code tree directory init
  4. Run prepare_runtime_env.sh located within runtime source code tree root directory
  5. Start the system by running metamodInit.sh located in the runtime source code tree root directory

If changes are made to master_config.txt, repeat steps 1, 2, 4 and 5 and remember that all scripts need to be run as the user owning the web server. In step 5 use e.g. sudo -u wwwuser ./metamodInit.sh restart or the two step procedure of first stopping and then starting the server.

The visual appearance of METAMOD is determined by style sheets and contents of the master_config.txt file. Style sheets are located in the directory named htdocs within the runtime source code directory of METAMOD. Appearance of most of the web pages, including buttons can be changed by changing the corresponding style elements within the following style sheets:

  1. htdocs/style.css - Main style sheet determining the appearance of main menus and containers.
  2. htdocs/sch/style.css - Style sheet used by the search interface.
  3. htdocs/upl/style.css - Style sheet used by the upload interface.
  4. htdocs/qst/style.css - Style sheet used by the quest interface.

METAMOD has two main menu containers. One top left (available within all modules) and one left (mainly in the search module and the upload). The top left menu is set up using the APP_MENU tag of the master_config.txt.

The search module menu is configured using the SEARCH_CATEGORY_SEQUENCE of the master_config.txt. This is configured using numbers (defined within the file searchdata.xml) where the following mapping apply by default1):

  1. Activity type
  2. Area
  3. Variables (hidden)
  4. Topics and variables
  5. TBW
  6. TBW
  7. Institutions
  8. Datacollection period
  9. Map search
  10. Operational status

In addition the keyword Fulltext can be used.

Open Archive Initiative Protocol for metadata harvesting has been supported for a time. Support for ISO23950/Z39.50 (SRU implementation) is currently under implementation and is expected in the next release.

METAMOD use an internal metadata standard that is mapped to Dublin Core, GCMD DIF and ISO191152).

Information and schemata of the metadata-files used since Metamod 2.1 can be found under XML format for dataset descriptions.

The metadata structure is configurable, so this question must relate to a specific application of the database. The answer below is based on the applications implemented at met.no, which corresponds more or less to the EXAMPLE application available as part of the SVN source tree.

The METAMODPMH module contain a translation from the database to DIF XML. For the time being, this translation is implemented in a PHP script oaidp-config.php. This script contains an array which defines the translation:

      $key_conversion = array(
         '!DS_name 1', 'Entry_ID', '',
         'title', 'Entry_Title', '',
         'PI_name', 'Data_Set_Citation Dataset_Creator', '',
         'title', 'Data_Set_Citation Dataset_Title', '',
         'institution', 'Data_Set_Citation Dataset_Publisher', '',
         'dataref', 'Data_Set_Citation Online_Resource', '',
         'variable', '*Parameters Category', 'EARTH SCIENCE',
         'variable 1', 'Parameters Topic', '',
         'variable 2', 'Parameters Term', '',
         'variable 3', 'Parameters Variable_Level_1', '',
         'variable', 'Parameters Detailed_Variable', '',
         'topiccategory', 'ISO_Topic_Category', '',
         'keywords', 'Keyword', '',
         'datacollection_period 1', 'Temporal_Coverage Start_Date', '',
         'datacollection_period 2', 'Temporal_Coverage Stop_Date', '',
         'southernmost_latitude', 'Spatial_Coverage Southernmost_Latitude', '',
         'northernmost_latitude', 'Spatial_Coverage Northernmost_Latitude', '',
         'westernmost_longitude', 'Spatial_Coverage Westernmost_Longitude', '',
         'easternmost_longitude', 'Spatial_Coverage Easternmost_Longitude', '',
         'area 1', '*Location Location_Category', '',
         'area 2', 'Location Location_Type', '',
         'area 3', 'Location Location_Subregion1', '',
         'area 4', 'Location Detailed_Location', '',
         'latitude_resolution 1', 'Data_Resolution Latitude_Resolution', '',
         'longitude_resolution 1', 'Data_Resolution Longitude_Resolution', '',
         '!DS_ownertag 1', 'Project Short_Name', '',
         'distribution_statement', 'Access_Constraints', '',
         'institution', 'Originating_Center', '',
         '', 'Data_Center Data_Center_Name Short_Name', 'met.no',
         '', 'Data_Center Data_Center_Name Long_Name', 'Norwegian Meteorological Institute',
         '', 'Data_Center Data_Center_URL', 'http://met.no/',
         '', 'Data_Center Personnel Role', 'DATA CENTER CONTACT',
         '', 'Data_Center Personnel First_Name', 'Egil',
         '', 'Data_Center Personnel Last_Name', 'Støren',
         '', 'Data_Center Personnel Phone', '+4722963000',
         '', 'Data_Center Personnel Contact_Address Address', "Norwegian Meteorological Institute\nP.O. Box 43\nBlindern",
         '', 'Data_Center Personnel Contact_Address City', 'Oslo',
         '', 'Data_Center Personnel Contact_Address Postal_Code', 'N-0313',
         '', 'Data_Center Personnel Contact_Address Country', 'Norway',
         'references', 'Reference', '',
         'abstract', 'Summary', '',
         '', 'Metadata_Name', 'CEOS IDN DIF',
         '', 'Metadata_Version', '9.7',
         '!DS_datestamp', 'Last_DIF_Revision_Date', '',
         '', 'Private', 'False',
      );

In this array, triples of three consecutive elements (starting with elements 0, 1 and 2 on the first line) constitute the translation of one metadata item in the database to one XML element in the DIF.

Each triple comprise the following components:

  1. Name of metadata type in the database (or an empty string)
  2. Sequence of element names used in the DIF
  3. Constant value

If these three components has, for example, the following contenet:

'institution', 'Data_Set_Citation Dataset_Publisher', '',

and “METNO Norwegian Meteorological Institute” is the value in the database found for the 'institution' metadata type, then the following text will be part of the DIF XML:

<DIF ...>
  ...
  <Data_Set_Citation>
    ...
    <Dataset_Publisher>METNO Norwegian Meteorological Institute</Dataset_Publisher>
    ...
  </Data_Set_Citation>
  ...
</DIF>

The sequence of triples in the array define the sequence of the elements in the DIF XML. If possible, one triple will use the same higher level XML elements as the previous triple.

These points constitute the general rule, but some special rules apply:

  1. If an '!' prepends the metadata type name, the name represents a field name in the Datasts table instead.
  2. If the third component in the triple (the constant value) is non-empty, it is used as the value in the DIF XML. The first component will then usually be empty.
  3. A number may follow the metadata type name. This indicate a spacial conversion of the metadata value in the database. This conversion is implemented in the get_exception.php routine.
  4. If several consecutive triples have the same metadata type name, they will appear as consecutive elements in the DIF XML. When this is the case, different conversions of the metatdata value will take place (indicated by a number as explained above).
  5. Several metadata values for the same metadata type and dataset, produce several DIF XML elements.
  6. An asterix (*) prepending an element name in the sequence of element names will force the start of a new DIF XML element at this level. (Othervise, new elements will, if possible, add to an already started higher level element).

1)
can be changed by changing the content of searchdata.xml
2)
Not fully testetd yet
This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • metamod/faq.1285574059.txt.gz
  • Last modified: 2022-05-31 09:23:19
  • (external edit)