source: MILK/trunk/milk_server/milk_server/templates/atom_editor/atom_help.html @ 4730

Subversion URL:
Revision 4730, 52.0 KB checked in by cbyrom, 12 years ago (diff)

Move code to create atom home link to layout template + add lots of
new help info - including creation of atom_help.html - a specific
help page for the atom editor with all required usage + background info

  • including appendices describing common usages + atom format.
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
2<html xmlns=""
3        xmlns:py="" 
4        xmlns:xi="">
5        <xi:include href="layout.html" />
6        <xi:include href="atom_functions.html" />
7        <head>
8        <title py:content="c.title">title</title>
9    </head>
10  <body class="submit">
11      <panelTab>Editor</panelTab>
12        <div id="contents">
13            <div class="metadata">
14                            <h3>  $c.title
15                    </h3>
16                                <h2>Contents</h2>
17                                <div class="headingblock">                 
18                    <ol>
19                        <li><a href="#intro">Introduction</a></li>
20                        <li><a href="#home">Editor home page</a></li>
21                        <li><a href="#creating">Creating an atom</a></li>
22                        <li><a href="#searching">Searching atoms</a></li>
23                        <li><a href="#editing">Editing an atom</a></li>
24                        <li><a href="#granulite">Importing granulite data</a></li>
25                        <li><a href="#csml">Importing CSML/CDML data</a></li>
26                        <li><a href="#deleting">Deleting granule atoms</a></li>
27                        <li><a href="#structure">Appendix A: Atom XML structure</a></li>
28                        <li><a href="#example">Appendix B: Creating an example set of metadata documents</a></li>
29                    </ol>
30                    </div>
31                    <a name="intro"><h2>Introduction</h2></a>
32                                <div class="headingblock">                 
33                    <p>
34                    This editor allows the creation and maintenance of metadata documents in the MOLES2.0
35                    (Metadata Objects for Links in Environmental Science) format - which is based on the Atom
36                    Syndication Format v1.0 (details
37                    <a href="">here</a>).  It
38                    replaces the CEDAR editor which produced documents according to the more complex, MOLES1.3 schema.  NB,
39                    documents produced using this older schema should be available in the BADC system in new format; if not,
40                    a migration script exists with which to enable this - contact the system administrator for details**.
41                    </p>
42                    <p>
43                    Full details of the MOLES2.0 schema are provided in section, '<a href="#structure">Appendix A: Atom XML structure</a>'.
44                    </p>
45                                </div>
46                    <a name="home"><h2>Editor home page</h2></a>
47                                <div class="headingblock">                 
48                    <p>
49                    The editor home page is available <a href="${h.url_for('atomHome')}">
50                    here</a>.  The following options are available:
51                    <ul>
52                    <li>
53                            <a href="${h.url_for('create')}">Create atom</a>
54                            - see section, '<a href="#creating">Creating an atom</a>'
55                    </li>
56                    <li>
57                            <a href="${h.url_for('createGranule')}">Create data granule atom using granulite file</a>
58                            - see section, '<a href="#granulite">Importing granulite data</a>'
59                    </li>
60                    <li>
61                            <a href="${h.url_for('list')}">Edit/List atoms</a>
62                            - see sections, '<a href="#editing">Editing an atom</a>' and '<a href="#searching">Searching atoms</a>'
63                    </li>
64                    <li>
65                            <a href="${h.url_for('help')}">Help</a>
66                            - display this page
67                    </li>
68                    </ul>
69                    </p>
70                    </div>
72                    <a name="creating"><h2>Creating an atom</h2></a>
73                                <div class="headingblock">                 
74                    <p>
75                    Atom metadata documents are created in two stages - firstly specifying the essential, 'header' information
76                    then filling out the remaining detail.  Documents are created by visiting the,
77                    '<a href="${h.url_for(controller='atom_editor/editatom',action='create')}">Create atom</a>' page.  This
78                    presents the user with four input fields that MUST be specified in order for the document to be created:
79                    <dl>
80                    <dt><b>Provider ID</b></dt>
81                    <dd>
82                    the name of the organisation providing the data - selectable from a pre-specified drop down list
83                    </dd>
84                    <dt><b>Data Type</b></dt>
85                    <dd>
86                    the type of atom document to produce.  This relates to the type of underlying data that
87                    the metadata is describing and must be set to one of the following, pre-specified values:
88                        <dl>
89                        <dt><b>Data Entity</b></dt>
90                        <dd>
91                        a general, high level metadata document allowing the grouping of data granules
92                        and deployments data together in a logical manner - e.g. bringing together a data granule describing a
93                        particular data file with the observation stations, data production tools and activities involved in creating it.
94                        </dd>
95                        <dt><b>Data Granule</b></dt>
96                        <dd>
97                        acts as a 'wrapper' to specific data files, providing summary metadata in
98                        order to aid discovery.  NB, data granules can be created or augmented by ingesting data directly into
99                        the system - see sections, '<a href="#importing">Importing granulite data</a>' and '<a href="#csml">Importing CSML/CDML data</a>'
100                        </dd>
101                        <dt><b>Activity</b></dt>
102                        <dd>
103                        a metadata document describing an activity used to create a dataset.
104                        </dd>
105                        <dt><b>Data Production Tool (DPT)</b></dt>
106                        <dd>
107                        a metadata document describing an instrument involved in the creation of a dataset.
108                        </dd>
109                        <dt><b>Observation Station</b></dt>
110                        <dd>
111                        a metadata document describing the observation station used to create a dataset.
112                        </dd>
113                        <dt><b>Deployment</b></dt>
114                        <dd>
115                        a simple metadata document allowing the grouping of Activity, Data Production Tool and Observation
116                        Station documents in a logical manner - i.e. to pull together the why/how/where of data production.  NB, any number of
117                        activities, data production tools and observation stations can be specified in a single deployment and these will all
118                        share the same temporal and spatial coverage summary information.  Also note, data entities do not specify references to
119                        activities, DPTs or observation stations metadata document directly; rather they reference Deployment documents which, in turn, reference
120                        these documents.  Note, a Deployment atom is just a specialisation of the 'Activity' atom type - but with a subtype of, 'Deployment'.
121                        </dd>
122                        </dl>
123                    </dd>
124                    <dt><b>Title</b></dt>
125                    <dd>
126                    free text field to specify a title for the metadata document
127                    </dd>
128                    <dt><b>Author</b></dt>
129                    <dd>
130                    free text field to specify the principal author of the underlying data described by the metadata document.
131                    </dd>
132                    </dl>
133                    Note, the atom types, 'Actitivity', 'Observation Station' and 'Data Production Tool' are known collectively as
134                    <em>Deployments data</em> - and this should not be confused with the 'Deployment' atom type - which is the document
135                    type which groups together Deployments data.
136                    </p>
137                    <p>
138                    Once the header info is completed, the atom document is created and the user is taken to the 'Edit' page
139                    (see section, '<a href="#editing">Editing an atom</a>') where additional content can be specified.  Note, the edit
140                    page allows the author and title details to be edited, however the provider and type data cannot be changed
141                    following document creation.
142                    </p>
143                    </div>
145                    <a name="searching"><h2>Searching atoms</h2></a>
146                                <div class="headingblock">                 
147                    <p>
148                    The atom metadata catalogue can be searched by visiting the
149                    '<a href="${h.url_for(controller='atom_editor/listatom',action='list', searchData=None)}">Edit/List atoms</a>' page.
150                    This provides a simple search filter allowing the user to specify the following inputs to search on:
151                    <dl>
152                    <dt><b>Provider ID</b></dt><dd>
153                    - the name of the organisation providing the data - selectable from a pre-specified drop down list
154                    </dd>
155                    <dt><b>Data Type</b></dt>
156                    <dd>
157                    the type of atom document to search for - selectable from a pre-specified drop down list
158                                </dd>
159                                <dt><b>Search Text</b></dt>
160                                <dd>
161                                a free text field to allow searching for specific data
162                                </dd>
163                                </dl>
164                                NB, the 'Search Text' field allows the contents of the atom elements to be searched and is done in a
165                                cumulative manner when multiple words are specified - e.g. searching using, 'temperature hot' will return
166                                all atoms which feature both the words 'temperature' and 'hot', although not necessarily in that order or
167                                adjacent to one another.  Additionally, simple wildcards can be used in the searches - using '*' to represent
168                                all characters, multiple times and '?' to represent a single character - demonstrated as follows:
169                                <dl>
170                                        <dt><b>temp*</b></dt>
171                                        <dd>
172                                        will return existing documents containing 'temperature', 'temperate', 'temporary', etc
173                                        </dd>
174                                        <dt><b>?eather</b></dt>
175                                        <dd>
176                                        will return existing documents containing 'weather', 'heather', 'leather', etc
177                                        </dd>
178                                </dl>
179                                Note, also, text searches are case insensitive.
180                                </p>
181                                <p>
182                                To search for documents, enter the required search terms (NB, leaving the filter in its initial state, with
183                                Provider ID and Data Type set to 'All' and Search Text empty, will return all available atom documents) and
184                                click the 'Search' button.  If data exists matching the search criteria, these will be displayed after a short
185                                pause in a table of results.  To view this data in more detail, click the 'Edit' button associated with it.  This will
186                                take you to the atom editor, described in the section, '<a href="#editing">Editing an atom</a>'.
187                    </p>
188                    </div>
190                    <a name="editing"><h2>Editing an atom</h2></a>
191                                <div class="headingblock">                 
192                    <p>
193                    The main 'Edit' page for an atom is reached via two routes: either by creating a new atom
194                    (see section, '<a href="#creating">Creating an atom</a>'); or by searching
195                    existing atoms and electing to edit one of these (see section, '<a href="#searching">Searching atoms</a>').
196                    </p>
197                    <p>
198                    The following inputs are available to the atom editor - note, some are
199                    only available to specific atom types:
200                    <dl>
201                    <dt><b>Title</b>
202                    </dt>
203                    <dd>
204                    free text field to specify a title for the metadata document
205                    </dd>
206                    <dt>
207                    <b>Sub-Type</b> (not Deployments or Granules)
208                    </dt>
209                    <dd>
210                    more specific classification of the type of the underlying data - selectable from a fixed list - which is dependent on the main atom type
211                    </dd>
212                    <dt>
213                    <b>Abbreviation</b> (not Deployments or Granules)
214                    </dt>
215                    <dd>
216                    free text field to specify an abbreviation for the data
217                    </dd>
218                    <dt>
219                    <b>Upload data</b> (Data Granules only)
220                    </dt>
221                    <dd>
222                                functionality to allow the import of data direct from CDML or CSML
223                                files - as described in section, '<a href="#csml">Importing CSML/CDML data</a>'.
224                    </dd>
225                    <dt>
226                    <b>Summary</b> (not Deployments or Granules)
227                    </dt>
228                    <dd>
229                    free text area to provide an abstract for the data
230                    </dd>
231                    <dt>
232                    <b>Content</b> (not Deployments)
233                    </dt>
234                    <dd>
235                    the actual main content of the metadata document.  This may just be
236                    text content, but in the case of Granule atoms, if a CSML or CDML file
237                    has been specified (see section '<a href="#csml">Importing CSML/CDML data</a>',
238                    this will be set as the atom content.
239                    </dd>
240                    <dt>
241                    <b>Author</b>
242                    </dt>
243                    <dd>
244                    the principal author of the underlying data being described by the atom. An
245                    email address can be provided with the author name.
246                    </dd>
247                    <dt>
248                    <b>Contributors</b> (not Deployments)
249                    </dt>
250                    <dd>
251                    secondary authors of the underlying data - together with email addresses, if required.
252                    Three contributors can be added at a time; if more are required, add the first three
253                    then click, 'Update' - and space will be added to input another three contributors.
254                    Contributors can be removed by selecting the check box and clicking on 'Remove'.  NB,
255                    multiple contributors can be removed at once.
256                    </dd>
257                    <dt>
258                    <b>Online References</b> (not Deployments or Granules)
259                    </dt>
260                    <dd>
261                    reference links to data associated with the underlying data - composed of a link 'type',
262                    or 'relation' together with a URI and a title.  Note, the URI must follow the format,
263                    '' - i.e. including the full address.  Like 'Contributors', it is
264                    possible to add and remove multiple online references at once.
265                    </dd>
266                    <dt>
267                    <b>Associated Data Granules</b> (Data Entities only)
268                    </dt>
269                    <dd>
270                    references to existing data granule atoms.  Clicking
271                    on the 'Add' link in this section takes the user to the atom list page (see section
272                    '<a href="#searching">Searching atoms</a>').  Since the user is setting up
273                    data granule associations, only atoms of this type can now be searched on.  Once
274                    a search has been done (narrowing results by specifying suitable search terms, if required),
275                    if results have been found, the user can then set up associations with these, by
276                    using the checkboxes to select the specific granules and then clicking 'Add selections'.
277                    If associations with granules need to be removed, click the 'Edit' link, select the
278                    granule(s) to remove using the checkbox and then click, 'Remove'.
279                    </dd>
280                    <dt>
281                    <b>Associated Deployments</b> (Data Entities only)
282                    </dt>
283                    <dd>
284                    references to existing deployment atoms.  The process to add
285                    and remove associations is the same as for data granules, above.
286                    </dd>
287                    <dt>
288                    <b>Associated Data</b> (Deployments only)
289                    </dt>
290                    <dd>
291                    references to existing activity/observation station/data production tool atoms.  The process to add
292                    and remove associations is the same as for data granules, above.
293                    </dd>
294                    <dt>
295                    <b>Parameters</b> (Data Entities only)
296                    </dt>
297                    <dd>
298                    parameters categorising the underlying data described by the metadata document.  Parameter data consists
299                    of a label together with a URL to a valid vocabulary term (i.e. available from a vocab server - such as
300                    '') and term ID.  On input the validity of the vocab term data is checked and
301                    the data will be rejected if it is invalid.
302                    </dd>
303                    <dt>
304                    <b>Data Coverage</b>
305                    </dt>
306                    <dd>
307                    a summary of the spatiotemporal coverage of the underlying data.  Input fields allow the specification of
308                    max/min coordinates and temporal ranges.
309                    </dd>
310                    <dt>
311                    <b>Responsible Parties</b>
312                    </dt>
313                    <dd>
314                    information on individuals responsible for the creation and maintenance
315                    of the actual atom metadata document - consists of free text information
316                    to specify the user role, name and uri (if required).  As with Contributors,
317                    multiple data can be added - and subsequently removed.
318                    </dd>
320                    </dl>
322                    In addition to the input fields, some atom types have additonal, 'summary'
323                    information displayed - relating to atoms which have a logical reference to
324                    the current document.  Specifically, the following summaries are available:
325                    <dl>
326                    <dt>
327                    <b>Associated Deployments Data (summary/details)</b> (Data Entities and Deployments data only)
328                    </dt>
329                    <dd>
330                    displays a list of the associated Deployments data - via associated Deployment atoms - i.e.
331                    this gathers info from all Deployment documents which reference the current
332                    data and lists out all the other Deployments data featured.  For example, if a Deployment
333                    features Activity1, DPT1 and Observation Station2, and we are viewing Activity1, then
334                    DPT1 and Observation Station2 will be displayed (together with links to the actual docs)
335                    here.  Clicking on the plus/minus sign toggles between the summary and details mode.
336                    Summary mode displays a unique list of the associated Deployments data whereas details mode
337                    shows exactly how this is grouped, together with temporal ranges, in the Deployment atoms.
338                    </dd>
339                    <dt>
340                    <b>Associated Data Entities - summary</b> (Deployments data and Granules only)
341                    </dt>
342                    <dd>
343                    displays a list of the associated Data Entities data - together with links to this data. 
344                    For Deployments data, the list is constructed
345                    by finding all Deployment atoms which feature the currently displayed atom, then
346                    finding all Data Entities which reference these Deployments.  For Data Granule atoms,
347                    this list is constructed by finding all the Data Entities which directly reference the
348                    displayed Granule.
349                    </dd>
350                    </dl>
351                    </p>
352                    </div>
353                    <a name="granulite"><h2>Importing granulite data</h2></a>
354                                <div class="headingblock">                 
355                    <p>
356                    Data can be imported directly into the system using a type of data file known
357                    as a <em>granulite</em>.  These are used to create Data Granule metadata documents
358                    and set up associations with existing Data Entities.  The format of a granulite file
359                    can be seen here - <a href="${h.url_for('example')}">example granulite</a>.
360                    </p>
361                    <p>
362                    When a valid granulite file has been constructed, the contents may be ingested by
363                    visiting the '<a href="${h.url_for('createGranule')}">Create data granule atom using granulite file</a>' page.
364                    This presents the user with the following input fields:
365                    <dl>
366                    <dt><b>
367                    Granulite File
368                    </b></dt>
369                    <dd>
370                    Clicking on 'Browse...' produces a file browser window to allow users to
371                    navigate and select their granulite file.
372                    </dd>
373                    <dt><b>
374                    CSML or CDML file
375                    </b></dt>
376                    <dd>
377                    Clicking on 'Browse...' produces a file browser window to allow users to
378                    navigate and select their CSML or CDML file.  This file is used to augment data
379                    specified in the granulite file and is uploaded to the document repository upon
380                    ingest.  Note, only one CSML or CDML
381                    file can be ingested per granulite file.  Also note, if a CDML file is ingested
382                    it is coverted into a CSML file, as part of the ingest, to extract the required
383                    summary data; both the original CDML file and the generated CSML file are subsequently
384                    stored in the document repository.
385                    </dd>
386                    <dt><b>
387                    Dataset ID
388                    </b></dt>
389                    <dd>
390                    *****************THIS SHOULD PROBABLY BE REMOVED - NEEDS TESTING....****
391                    </dd>
392                    <dt><b>
393                    Time axis
394                    </b></dt>
395                    <dd>
396                    If a CDML file is specified, it is necessary to identify the time axis label
397                    used by the file in order to extract all the available data.  If no axis is provided,
398                    the default, 'time' will be used.
399                    </dd>
400                    </dl>
401                    </p>
402                    <p>
403                    <h2>Use Cases</h2>
404                    The ingesting of granulite data has several possible workflows; these are
405                    described in detail here.
406                    <dl>
407                    <dt><b>
408                    1. Ingest of new granulite, with no CSML/CDML file, describing new Data Granule
409                    </b></dt>
410                    <dd>
411                    The granulite should not have a dataset_id specified in the granule_info as this
412                    will be automatically generated upon ingest.  User selects the granulite file
413                    using the 'Granulite file' Browse input.  User clicks 'Upload'.  The data is then
414                    ingested and, if no problems are encountered, a new Data Granule is created using
415                    this data and then displayed.
416                    </dd>
417                    <dt><b>
418                    2. Ingest of old granulite, with no CSML/CDML file or dataset_id specified
419                    </b></dt>
420                    <dd>
421                    If no dataset_id has been specified, the ingest process has no way of knowing
422                    that the data has already been ingested.  In this case, a new Data Granule is
423                    created - effectively with identical contents to another Data Granule.
424                    </dd>
425                    <dt><b>
426                    3. Ingest of old granulite, with no CSML/CDML file specified, but dataset_id of existing Data Granule <em>is</em>specified
427                    </b></dt>
428                    <dd>
429                    If the dataset_id has been specified, and if an existing Data Granule is already using this ID, the
430                    ingest process is interupted and the user is asked whether they want to overwrite the existing
431                    Data Granule with the new Data Granule generated from the granulite file contents.  If the user
432                    clicks, 'Cancel' then the ingest is halted and they remain on the granulite ingest page.  If they
433                    click, 'Ok' then the ingest continues and the old Data Granule is replaced with the new one.  NB, in
434                    this scenario, any links between Data Entities and the old Data Granule are removed.
435                    </dd>
436                    <dt><b>
437                    4. Ingest of new granulite with CSML file specified
438                    </b></dt>
439                    <dd>
440                    Work flow as Use Case 1, however a CSML file is also specified - using the Browse input for this
441                    field.  When the user clicks 'Upload' the CSML file is the scanned to extract the following data:
442                    <ul>
443                    <li>
444                    CSML ID - to be used as the produced Data Granule dataset ID
445                    </li>
446                    <li>
447                    Title
448                    </li>
449                    <li>
450                    Spatiotemporal coverage data
451                    </li>
452                    <li>
453                    Parameters data
454                    </li>
455                    </ul>
456                    This is used to create a new Data Granule and the CSML file is uploaded to the
457                    document repository.  The granulite data is then extracted
458                    and applied to this new Data Granule.  NB, this will lead to replacement of any
459                    single value data, if specified - i.e. the ID, Title and coverage data.  The parameters
460                    data will be augmented with any new, unique terms.
461                    </dd>                   
462                    <dt><b>
463                    5. Ingest of new granulite with CDML file specified
464                    </b></dt>
465                    <dd>
466                    As Use Case 4, however the CDML file is firstly converted into a
467                    CSML file, using the additional supplied inputs, if required.  NB, both
468                    the original CDML file and the generated CSML file are uploaded to the
469                    document repository.
470                    </dd>
471                    <dt><b>
472                    6. Ingest of old granulite with CSML/CDML file and dataset ID specified
473                    </b></dt>
474                    <dd>
475                    Similarly to Use Case 3, the user will be prompted to confirm whether the
476                    ingest should complete - and overwrite the existing Data Granule.  If the
477                    user selects to do this, workflow continues as for Use Case 4/5.
478                    </dd>
479                    </dl>
480                    </p>
481                    <p>
482                    Note, the granulite ingest functionality is also available as a command line
483                    process - which may be more appropriate for batch processing large numbers of
484                    granulite files.
485                    </p>
486                    </div>
487                    <a name="csml"><h2>Importing CSML/CDML data</h2></a>
488                                <div class="headingblock">                 
489                    <p>
490                    As well as importing data from granulite files (see section, '<a href="#granulite">Importing granulite data</a>'),
491                    it is also possible to ingest data directly from CSML or CDML files into existing Data Granules.
492                    </p>
493                    <p>
494                    If a Data Granule doesn't already have a CSML or CDML file associated with it, it
495                    will have an 'Upload data' input section available to it in edit mode.  This is
496                    similar to the input used for the granulite ingest - except the option to specify
497                    a granulite file is absent.  A user can specify a CSML or CDML file and click,
498                    'Upload' to add data from the file to the Data Granule.  NB, as with the granulite
499                    ingest, if a CDML file is specified, it may be necessary to include a time axis, to
500                    aid the parsing of this file.  Also, like the granulite ingest, CDML files are used
501                    to create CSML files - and both these types of document are uploaded to the document
502                    repository as part of the upload process.
503                    </p>
504                    <p>
505                    When the upload is completed, the new data is saved to the Data Granule and this is
506                    reloaded to display the new contents.  NB, it is only possible to associate a single
507                    CDML or CSML file with a Data Granule so, following the initial upload, this input
508                    functionality is then disabled.  The 'Content File' section is filled in automatically
509                    to display the name of the uploaded CSML/CDML.
510                    </p>
511                    </div>
512                    <a name="deleting"><h2>Deleting granule atoms</h2></a>
513                                <div class="headingblock">                 
514                    <p>
515                    Data Granules, and their associations with Data Entities, may be deleted from
516                    the system.  To do this, access the Data Granule in question, via the search
517                    page (see section '<a href="#searching">Searching atoms</a>') and click on the
518                    'Delete' button at the top of the editor.  The user is then presented with a
519                    confirmation dialog, to avoid accidental deletion of data.  If the user confirms the
520                    delete, the Data Granule atom is deleted and links to it from Data Entity atoms are removed.
521                    NB, before the atom is deleted a copy is stored in the backup collection of the document
522                    repository.
523                    </p>
524                    </div>
525                    <a name="structure"><h2>Appendix A: atom XML structure</h2></a>
526                                <div class="headingblock">                 
527                    <p>
528                    The XML structure of a dummy Data Entity document is given described below.  The various metadata inputs
529                    discussed in section, '<a href="#editing">Editing an atom</a>' should be evident in this structure.  Points of note
530                    include:
531                    <ul>
532                    <li>
533                    Online references are stored as atom links
534                    </li>
535                    <li>
536                    Parameters are stored as atom categories
537                    </li>
538                    <li>
539                    Atom type and subtype are stored as atom categories
540                    </li>
541                    <li>
542                    The atom id element is a unique identifier - an IRI as specified by <a href="">[RFC3987]</a> - this includes the atom dataset ID
543                    </li>
544                    <li>
545                    The Atom1.0 schema has been extended to include data that didn't naturally fit in it, namely:
546                        <ul>
547                        <li>
548                                Spatiotemporal data - which is described in GEOSS, GML and Moles elements
549                        </li>
550                        <li>
551                        Responsible parties data
552                        </li>
553                        <li>
554                        Dataset and metadata language
555                        </li>
556                        <li>
557                        Abbreviation
558                        </li>
559                        <li>
560                        Creation date
561                        </li>
562                        <li>
563                        Provider ID
564                        </li>
565                        </ul>
566                        NB, the Moles elements are based on the old MOLES1.3 format.  Note, also, that the schema
567                        could be further simplified by judicious use of vocab terms - effectively translating
568                        the latter four bits of data into categories data.
569                    </li>
570                    </ul>
571                    <pre>
572            <div class="xmlDocBig"><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">entry <span class="xmlAttrTyp">xmlns</span>="<span class="xmlAttrVal"></span>" <span class="xmlAttrTyp">xmlns:georss</span>="<span class="xmlAttrVal"></span>"
573            <span class="xmlAttrTyp">xmlns:moles</span>="<span class="xmlAttrVal"></span>" <span class="xmlAttrTyp">xmlns:gml</span>="<span class="xmlAttrVal"></span>"</span><b>></b>
574<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">id</span><b>></b>tag:localhost,2008-12-23:/view/<b>&lt;</b>/<span class="xmlElemTag">id</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">title</span><b>></b>A data entity describing some data used in a measurement.<b>&lt;</b>/<span class="xmlElemTag">title</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">link</span> <span class="xmlAttrTyp">href</span>="<span class="xmlAttrVal">http://localhost:5000/view/</span>" <span class="xmlAttrTyp">rel</span>="<span class="xmlAttrVal">self</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">link</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">link</span> <span class="xmlAttrTyp">href</span>="<span class="xmlAttrVal">http://localhost:5000/view/</span>"
575<span class="xmlAttrTyp">rel</span>="<span class="xmlAttrVal">NOT YET SET UP/None/Deployment</span>" <span class="xmlAttrTyp">title</span>="<span class="xmlAttrVal">dep1</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">link</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">link</span> <span class="xmlAttrTyp">href</span>="<span class="xmlAttrVal">http://localhost:5000/view/</span>"
576<span class="xmlAttrTyp">rel</span>="<span class="xmlAttrVal">NOT YET SET UP/None/Deployment</span>" <span class="xmlAttrTyp">title</span>="<span class="xmlAttrVal">dep266</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">link</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">link</span> <span class="xmlAttrTyp">href</span>="<span class="xmlAttrVal">http://localhost:5000/view/</span>"
577<span class="xmlAttrTyp">rel</span>="<span class="xmlAttrVal">GRAN - NOT YET SET UP/None/GRANULE</span>" <span class="xmlAttrTyp">title</span>="<span class="xmlAttrVal">gran1</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">link</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">link</span> <span class="xmlAttrTyp">href</span>="<span class="xmlAttrVal">http://localhost:5000/view/</span>"
578<span class="xmlAttrTyp">rel</span>="<span class="xmlAttrVal">GRAN - NOT YET SET UP/None/GRANULE</span>" <span class="xmlAttrTyp">title</span>="<span class="xmlAttrVal">new gran12</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">link</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">link</span> <span class="xmlAttrTyp">href</span>="<span class="xmlAttrVal"></span>" <span class="xmlAttrTyp">rel</span>="<span class="xmlAttrVal"></span>" <span class="xmlAttrTyp">title</span>="<span class="xmlAttrVal">Tessella</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">link</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">link</span> <span class="xmlAttrTyp">href</span>="<span class="xmlAttrVal"></span>" <span class="xmlAttrTyp">rel</span>="<span class="xmlAttrVal"></span>" <span class="xmlAttrTyp">title</span>="<span class="xmlAttrVal">Data</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">link</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">link</span> <span class="xmlAttrTyp">href</span>="<span class="xmlAttrVal"></span>" <span class="xmlAttrTyp">rel</span>="<span class="xmlAttrVal"></span>" <span class="xmlAttrTyp">title</span>="<span class="xmlAttrVal">object home</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">link</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">author</span><b>></b>
579<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">name</span><b>></b>Mr Smith<b>&lt;</b>/<span class="xmlElemTag">name</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">email</span><b>></b><b>&lt;</b>/<span class="xmlElemTag">email</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">author</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">contributor</span><b>></b>
580<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">name</span><b>></b>Mrs Smith<b>&lt;</b>/<span class="xmlElemTag">name</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">email</span><b>></b><b>&lt;</b>/<span class="xmlElemTag">email</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">contributor</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">contributor</span><b>></b>
581<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">name</span><b>></b>Mr Yang<b>&lt;</b>/<span class="xmlElemTag">name</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">email</span><b>></b><b>&lt;</b>/<span class="xmlElemTag">email</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">contributor</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">category</span> <span class="xmlAttrTyp">term</span>="<span class="xmlAttrVal">ATOM_TYPE</span>" <span class="xmlAttrTyp">scheme</span>="<span class="xmlAttrVal">DE - NOT YET SET UP/None/DE</span>" <span class="xmlAttrTyp">label</span>="<span class="xmlAttrVal">DE</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">category</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">category</span> <span class="xmlAttrTyp">term</span>="<span class="xmlAttrVal">ATOM_SUBTYPE</span>" <span class="xmlAttrTyp">scheme</span>="<span class="xmlAttrVal">NOT YET SET UP/None/dgMeasurement</span>" <span class="xmlAttrTyp">label</span>="<span class="xmlAttrVal">dgMeasurement</span>"<b>></b><b>&lt;</b>/<span class="xmlElemTag">category</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">summary</span><b>></b>This data entity represents some measurement data.<b>&lt;</b>/<span class="xmlElemTag">summary</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">content</span> <span class="xmlAttrTyp">type</span>="<span class="xmlAttrVal">xhtml</span>"<b>></b>
582<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">{}div</span><b>></b>Some more details of the measurement data.
585blah...<b>&lt;</b>/<span class="xmlElemTag">{}div</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">content</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">updated</span><b>></b>2008-12-24T13:42:51Z<b>&lt;</b>/<span class="xmlElemTag">updated</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">published</span><b>></b>2008-12-23T13:45:59Z<b>&lt;</b>/<span class="xmlElemTag">published</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:entity</span><b>></b>
586<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:molesISO</span><b>></b>
587<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:datasetLanguage</span><b>></b>English<b>&lt;</b>/<span class="xmlElemTag">moles:datasetLanguage</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:metadataLanguage</span><b>></b>English<b>&lt;</b>/<span class="xmlElemTag">moles:metadataLanguage</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:responsibleParties</span><b>></b>
588<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:responsibleParty</span><b>></b><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:name</span><b>></b>Calum Byrom<b>&lt;</b>/<span class="xmlElemTag">moles:name</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:uri</span><b>></b><b>&lt;</b>/<span class="xmlElemTag">moles:uri</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:role</span><b>></b>Data migrator<b>&lt;</b>/<span class="xmlElemTag">moles:role</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">moles:responsibleParty</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:responsibleParty</span><b>></b><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:name</span><b>></b>Calum Byrom<b>&lt;</b>/<span class="xmlElemTag">moles:name</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:uri</span><b>></b><b>&lt;</b>/<span class="xmlElemTag">moles:uri</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:role</span><b>></b>Data curator<b>&lt;</b>/<span class="xmlElemTag">moles:role</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">moles:responsibleParty</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">moles:responsibleParties</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:abbreviation</span><b>></b>ANON<b>&lt;</b>/<span class="xmlElemTag">moles:abbreviation</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:providerID</span><b>></b><b>&lt;</b>/<span class="xmlElemTag">moles:providerID</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:created</span><b>></b>2008-12-23T13:45:59Z<b>&lt;</b>/<span class="xmlElemTag">moles:created</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">moles:molesISO</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">moles:entity</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">moles:temporalRange</span><b>></b>1901-01-01/2003-04-29<b>&lt;</b>/<span class="xmlElemTag">moles:temporalRange</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">georss:where</span><b>></b>
589<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">gml:Envelope</span><b>></b>
590<div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">gml:lowerCorner</span><b>></b>-29 -02<b>&lt;</b>/<span class="xmlElemTag">gml:lowerCorner</span><b>></b></div><div class="xmlElem"><b>&lt;</b><span class="xmlElemTag">gml:upperCorner</span><b>></b>44 89<b>&lt;</b>/<span class="xmlElemTag">gml:upperCorner</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">gml:Envelope</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">georss:where</span><b>></b></div><b>&lt;</b>/<span class="xmlElemTag">entry</span><b>></b></div></div>
592                    </p>
593                    </div>
594                    <a name="example"><h2>Appendix B: Creating an example set of metadata documents</h2></a>
595                                <div class="headingblock">                 
596                    <p>
597                    Setting up a collection of metadata documents is described in the following example:
598                    <dl>
599                    <dt>
600                    <b>
601                    1. Create a Data Granule atom
602                    </b>
603                    </dt>
604                    <dd>
605                    <ol>
606                    <li>
607                    From the <a href="${h.url_for('home')}">atom home page</a>, click on <a href="${h.url_for('create')}">Create atom</a> link.
608                    </li>
609                    <li>
610                    Select the required Provider ID and select, 'Data Granule' as the Data Type.
611                    </li>
612                    <li>
613                    Click 'Create'.  The editor will now complain about missing author and title data - so provide these.
614                    </li>
615                    <li>
616                                The editor will create a new Data Granule atom and open this in the main editor page.  Add additional
617                                information by editing the different sections and clicking 'Update' each time.
618                    </li>
619                    </ol>
620                    </dd>
621                    <dt>
622                    <b>
623                    2. Create a Data Entity atom and link the Data Granule atom
624                    </b>
625                    </dt>
626                    <dd>
627                    <ol>
628                    <li>
629                    Return to the home page, clicking on the <a href="${h.url_for('home')}">Home</a> link.
630                    </li>
631                    <li>
632                    Click on <a href="${h.url_for('create')}">Create atom</a> link and create a new atom - this type specifying 'Data Entity' as the data type.
633                    </li>
634                    <li>
635                    Add additional data to the Data Entity document; notice there are several extra inputs available
636                    </li>
637                    <li>
638                    Click the 'Add' link in the 'Associated Data Granules' section - this will open the <a href="${h.url_for('list')}">atom search</a> page.
639                    </li>
640                    <li>
641                    Leave the filter blank in its initial state and click, 'Search'.  The Data Granule created in
642                    the previous section should now be displayed.  Gain familiarisation with the search filter,
643                    try changing the selected provider ID and entering search terms - with and without wildcards
644                    (see section '<a href="#searching">Searching atoms</a>' for details).
645                    </li>
646                    <li>
647                    Select the Data Granule created in the previous section, by clicking its checkbox
648                    and then click 'Add Selections'.  The editor will now return to the Data Entity atom; notice
649                    it now displays the Data Granule just added in its 'Associated Data Granules' section.
650                    </li>
651                    <li>
652                    Click on the link to Data Granule in the 'Associated Data Granules' section.  When this
653                    loads notice the 'Associated Data Entities' section now contains the Data Entity to which this atom
654                    has just been associated.
655                    </li>
656                    </ol>
657                    </dd>
658                    <dt>
659                    <b>
660                    3. Create Activity, Observation Station and DPT atoms
661                    </b>
662                    </dt>
663                    <dd>
664                    <ol>
665                    <li>
666                    Return to the home page, clicking on the <a href="${h.url_for('home')}">Home</a> link.
667                    </li>
668                    <li>
669                    Click on <a href="${h.url_for('create')}">Create atom</a> link and create a new atom - this type specifying 'Activity' as the data type.
670                    </li>
671                    <li>
672                    Add additional data to the Activity atom; notice, again, the slightly different available content for input.
673                    </li>
674                    <li>
675                    Repeat steps 2. and 3., specifying Data Types of 'Observation Station' and 'Data Production Tool'
676                    </li>
677                    </ol>
678                    </dd>
679                    <dt>
680                    <b>
681                    4. Create a Deployment atom and link to Deployment Data atoms
682                    </b>
683                    </dt>
684                    <dd>
685                    <ol>
686                    <li>
687                    Return to the home page, clicking on the <a href="${h.url_for('home')}">Home</a> link.
688                    </li>
689                    Click on <a href="${h.url_for('create')}">Create atom</a> link and create a new atom - this type specifying 'Deployment' as the data type.
690                    <li>
691                    Click the 'Add' link in the 'Associated Data' section then search for and add the Deployment Data atoms created in the previous section.
692                    </li>
693                    <li>
694                    The editor will now return to the Deployment atom; notice
695                    it now displays the newly added Deployment Data just added in its 'Associated Data' section.
696                    </li>
697                    <li>
698                    Click on a link to one of the Deployment Data atoms.  This will open the data in 'view' mode.
699                    Click the 'Edit' button at the top of the document to open it in edit mode.  Notice that the
700                    'Associated Deployments Data' now displays the other Deployment Data atoms associated with this
701                    one by the newly created Deployment atom.
702                    </li>
703                    </ol>
704                    </dd>
705                    <dt>
706                    <b>
707                    6. Link Deployment atom to Data Entity atom
708                    </b>
709                    </dt>
710                    <dd>
711                    <li>
712                    Return to the home page, clicking on the <a href="${h.url_for('home')}">Home</a> link.
713                    </li>
714                    <li>
715                    Click on <a href="${h.url_for('list')}">Edit/List atoms</a> and search for the Data Entity created previously.
716                    </li>
717                    <li>
718                    Once found, click 'Edit' to view the Data Entity in the editor.
719                    </li>
720                    <li>
721                    Click the 'Add' link in the 'Associated Deployements' section - and use the search filter to find and add the
722                    Deployment atom just created.
723                    </li>
724                    <li>
725                    The editor returns to the Data Entity atom; notice that the 'Associated Deployments'
726                    section now contains the Deployment atom just added.  Also note the 'Associated Deployments Data'
727                    section now contains summary data from the newly added Deployment atom.
728                    </li>
729                    <li>
730                    Click on the plus/minus sign on the 'Associated Deployments Data' section to
731                    view the data at different levels of detail
732                    </li>
733                    <li>
734                    Click on a link to one of the associated Deployment Data atoms.  When this loads notice
735                    the 'Associated Data Entities' section now contains the Data Entity to which this atom
736                    has just been associated (indirectly via the Deployment atom).
737                    </li>
738                    </dd>
739                    </dl>
740                    </p>
741                    </div>
742                    <a name="example"><h2>Appendix C: Curating an example set of metadata documents</h2></a>
743                                <div class="headingblock">                 
744                    <p>
745                    Updating a collection of metadata documents is described in the following example (which assumes the previous Appendix has been completed):
746                    <dl>
747                    <dt>
748                    <b>
749                    1. Curate the Deployment details
750                    </b>
751                    </dt>
752                    <dd>
753                    <li>
754                    From the <a href="${h.url_for('home')}">atom home page</a>, click on the <a href="${h.url_for('list')}">Edit/List atoms</a> link and search for and open the Deployment atom created previously.
755                    </li>
756                    <li>
757                    Click on the 'Edit' link for the 'Associated Data' section.
758                    </li>
759                    <li>
760                    Select a couple of the Deployment Data atoms and click 'Remove'.
761                    </li>
762                    <li>
763                    The Deployment atom now updates - when it reloads notice the selected
764                    Deployment Data atoms are no longer referenced.
765                    </li>
766                    <li>
767                    Click on a remaining Deployment Data atom link - and notice, when this loads, that
768                    it has a reduced set of 'Associated Deployments Data'
769                    </li>
770                    </dd>
771                    <dt>
772                    <b>
773                    2. Remove the Deployment atom association to the Data Entity atom
774                    </b>
775                    </dt>
776                    <dd>
777                    <li>
778                    From the <a href="${h.url_for('home')}">atom home page</a>, click on the <a href="${h.url_for('list')}">Edit/List atoms</a> link and search for and open the Data Entity atom created previously.
779                    </li>
780                    <li>
781                    Click the 'Edit' link of the 'Associated Deployments' section, then select the Deployment atom and click 'Remove'.
782                    </li>
783                    <li>
784                    The editor updates the Data Entity - notice that it no longer has any 'Associated Deployments'.
785                    </li>
786                    <li>
787                    Return to the search page and find one of the Deployment Data atoms created previously.
788                    </li>
789                    <li>
790                    When this loads, notice it no longer has any 'Associated Data Entities' information.
791                    </li>
792                    </dd>
793                    <dt>
794                    <b>
795                    3. Remove the Data Granule atom association to the Data Entity atom
796                    </b>
797                    </dt>
798                    <dd>
799                    <li>
800                    Repeat the previous section, but this time remove the atom in the 'Associated Data Granules' section.
801                    </li>
802                    <li>
803                    Check the Data Granule is no longer featured in the Data Entity - and that it no longer references
804                    the Data Entity.
805                    </li>
806                    <li>
807                    Add the Data Granule to the Data Entity again.
808                    </li>
809                    <li>
810                    Now, search for the Data Granule and open in the editor.
811                    </li>
812                    <li>
813                    Click the 'Delete' button at the top of the document and confirm the deletion.  A pop up
814                    box should confirm that the deletion has completed successfully.  Control returns to the
815                    atom home page.
816                    </li>
817                    <li>
818                    Click on <a href="${h.url_for('list')}">Edit/List atoms</a> and search for the deleted Data Granule - it should no longer be found.
819                    Instead return to the Data Entity created previously.
820                    </li>
821                    <li>
822                    Observe the Data Entity no longer holds any data in its 'Associated Data Granules' section;
823                    the Data Granule has been deleted and references to it have been removed.
824                    </li>
825                    </dd>
826                    </dl>
827                    </p>
828                    </div>
829                </div>
830        </div>
831  </body>
Note: See TracBrowser for help on using the repository browser.