Difference between revisions of "Imeji Metadata"

From MPDLMediaWiki
Jump to navigation Jump to search
Line 55: Line 55:


'''Status/Schedule'''
'''Status/Schedule'''
* Status: in specification
* Status: implemented
* Schedule:  
* Schedule: 1.0


'''Description''' <br>
'''Description''' <br>
Line 62: Line 62:
#* Title (string, mandatory, once)  
#* Title (string, mandatory, once)  
#* Description (string, optional, once)  
#* Description (string, optional, once)  
#* Owner (string, mandatory, many)
#* Owner.Organization (string, mandatory, many)
#* Attributes (complex, mandatory, one-unbounded)
#* Attributes (complex, mandatory, one-unbounded)
# The user can modify all attributes of the profile and can create new attributes or delete already existing attributes.
# The user can modify all attributes of the profile and can create new attributes or delete already existing attributes.
Line 69: Line 67:
#* An '''attribute''' consists of  
#* An '''attribute''' consists of  
#** '''type''' (list, mandatory, once) e.g. date, geonames, string, integer, cone-person
#** '''type''' (list, mandatory, once) e.g. date, geonames, string, integer, cone-person
#**: For type integer: definition of '''unit''' (string with autosuggest, mandatory, once) e.g. km, m, cm, mm, Celsius, Fahrenheit
#** '''label''' (string, mandatory, multiple)  
#** '''label''' (string with autosuggest, mandatory, once) either defined by the user himself or chosen out of an list of already existing attributes
#** a '''language''' for each label (list, mandatory, once)  
#** '''cardinality''' (list, mandatory, once): once / multiple
#** '''cardinality''' (list, mandatory, once): once / multiple
#** (optional) a possibility to define a '''list of allowed values''' (one text field for each value)
#** (optional) a possibility to define a '''list of predefined values''' (one text field for each value) or choose a '''controlled vocabulary'''
# The user can modify the list of allowed values for one or more attributes, can delete them or ad new values.
# The user can modify the list of allowed values for one or more attributes, can delete them or ad new values.
#* When deleting values from the list of allowed values for one or more attributes, these values will be deleted also in the metadata sets of all pictures that use these values. Therefore the system displays a warning message, where the number of values, that will be deleted, is displayed.  
#* When deleting values from the list of allowed values for one or more attributes, these values will be deleted also in the metadata sets of all pictures that use these values. Therefore the system displays a warning message, where the number of values, that will be deleted, is displayed.  
# The user has to define an order for all his attributes, which later on will be used as default sorting order and for the display of the metadata in the different display types.
# The user can define the attribute that shall be used as underline (image caption) for the images.
# After saving, the system displays a success message.
# After saving, the system displays a success message.


Line 85: Line 83:
* We will use the '''pessimistic logging''': the selected metadata profile will be locked the moment when one user goes on "edit" and will be un-locked once again when the user clicks on "save". In case the user never goes on save, the locking will be neutralized after the '''session time out''' which will be 15 minutes after the last user action on imeji.  
* We will use the '''pessimistic logging''': the selected metadata profile will be locked the moment when one user goes on "edit" and will be un-locked once again when the user clicks on "save". In case the user never goes on save, the locking will be neutralized after the '''session time out''' which will be 15 minutes after the last user action on imeji.  
* When the metadata profile is locked, all images that are using this profile (that means all images within the collection that uses the profile) have to be logged, too.
* When the metadata profile is locked, all images that are using this profile (that means all images within the collection that uses the profile) have to be logged, too.
'''Further Ideas'''
* The attribute type integer could also offer a definition of '''unit''' (string with autosuggest, mandatory, once) e.g. km, m, cm, mm, Celsius, Fahrenheit
* Additionally autosuggest for label (either defined by the user himself or chosen out of an list of already existing labels). This way, similar labels are always written the same way.


== UC_IM_MD_03 Release metadata profile ==
== UC_IM_MD_03 Release metadata profile ==

Revision as of 09:59, 14 October 2011

FACES

Scope · Functionalities
Disclaimer and Copyright
Support

Application Profiles
Release Agreement

Specification:
Browse and Display · Search
Albums · Users
Note Pads · Versioning

Related Projects:
Imeji

edit


Metadata Profile[edit]

Scenarios[edit]

1:1[edit]

One metadata profile can be only used for one collection (but of course it is possible to use an already available metadata profile as template for a new profile).

  • Status: Implemented
  • Schedule: 1.0
  • Versioning: A metadata profile will not be versioned.
  • States: A metadata profile can be in the state private, published, and discarded (linked with the corresponding collection).

1:n[edit]

One metadata profile in usable for several collections.

  • Status: planned
  • Schedule:
  • Versioning: A metadata profile will not be versioned (if it would be versioned, the above mentioned problem with deleting information would be solved, but then we will have many versions of one profile which will be functionally the same as the current 1:1 relation).
  • States: A metadata profile can be in the state private, published, and discarded (independently from the corresponding collection(s)). This means following further use cases and informations are needed:
  • Description:
  1. Only the creator of the profile is allowed to make any changes on the profile or somebody else who gets special rights (md profile editor) from the creator.
  2. When the creator deletes a metadata element or a predefined value of an element, this metadata will be deleted in all collections that use this profile.
    • As through this action some data could get lost, the user should get a warning bevore deleting anything.
    • Further on, every collection creator that uses the profile should get an information (either via e-mail or via a system message on his collection).
  3. When the creator adds a metadata element or a predefined value of an element, this metadata will be added in all collections that use this profile.
    • This changes has no influence on the already available data. But to make it nice, every collection creator that uses the profile should get an information (either via e-mail or via a system message on his collection).

UC_IM_MD_01 Create metadata profile[edit]

Status/Schedule

  • Status: implemented
  • Schedule: 1.0

Pre-Condition

  • One collection in the state private is selected which does not have a metadata profile yet.

Description

  1. The user has to enter a name for the profile.
  2. The user has two different options:
    1. To create a new metadata profile
    2. To use an already available MD profile as template
      1. The system displays a list of all available published metadata profiles.
      2. (Optionally) The user wants to view the details of one selected metadata profile.
      3. The user can select one of the already existing md profiles (the system creates a copy of the md profile).
  3. The user can edit the the metadata profile (see UC_IM_MD_02 Edit metadata profile).
  4. After saving, the system displays a success message.

Actors Involved

  • Account user

UC_IM_MD_02 Edit metadata profile[edit]

Status/Schedule

  • Status: implemented
  • Schedule: 1.0

Description

  1. A MD profile consists of
    • Title (string, mandatory, once)
    • Description (string, optional, once)
    • Attributes (complex, mandatory, one-unbounded)
  2. The user can modify all attributes of the profile and can create new attributes or delete already existing attributes.
    • When deleting already available attributes, all values of these attributes will be deleted, too. Therefore the system displays a warning message, where the number of values, that will be deleted, is displayed.
    • An attribute consists of
      • type (list, mandatory, once) e.g. date, geonames, string, integer, cone-person
      • label (string, mandatory, multiple)
      • a language for each label (list, mandatory, once)
      • cardinality (list, mandatory, once): once / multiple
      • (optional) a possibility to define a list of predefined values (one text field for each value) or choose a controlled vocabulary
  3. The user can modify the list of allowed values for one or more attributes, can delete them or ad new values.
    • When deleting values from the list of allowed values for one or more attributes, these values will be deleted also in the metadata sets of all pictures that use these values. Therefore the system displays a warning message, where the number of values, that will be deleted, is displayed.
  4. The user can define the attribute that shall be used as underline (image caption) for the images.
  5. After saving, the system displays a success message.

Actors Involved

  • Collection editor for the selected collection

Comments

  • When somebody edits one metadata profile, this profile will be locked for all other users.
  • We will use the pessimistic logging: the selected metadata profile will be locked the moment when one user goes on "edit" and will be un-locked once again when the user clicks on "save". In case the user never goes on save, the locking will be neutralized after the session time out which will be 15 minutes after the last user action on imeji.
  • When the metadata profile is locked, all images that are using this profile (that means all images within the collection that uses the profile) have to be logged, too.

Further Ideas

  • The attribute type integer could also offer a definition of unit (string with autosuggest, mandatory, once) e.g. km, m, cm, mm, Celsius, Fahrenheit
  • Additionally autosuggest for label (either defined by the user himself or chosen out of an list of already existing labels). This way, similar labels are always written the same way.

UC_IM_MD_03 Release metadata profile[edit]

Status/Schedule

  • Status: in specification
  • Schedule:

Pre-Condition

  • One metadata profile in the state private is selected

Description

  1. The user wants to release the metadata profile.
  2. For the release a confirmation message is necessary.
  3. After confirming, the system displays a success message. The metadata profile is now in the state released and gets a persistent URL.
  4. For the case an older released version of the metadata profile already exists, this version will be overwritten.
  5. Released means that the profile:
    • is displayed in browsing lists
    • can be used (as template) for other metadata profile

Actors Involved

  • MD profile editor for the selected metadata profile

UC_IM_MD_04 Rework metadata profile[edit]

Status/Schedule

  • Status: in specification
  • Schedule:

Pre-Condition

  • One metadata profile in the state released is selected

Description

  • For reworking a metadata profile a new version of the profile will automatically be created that is in the state private.
  • The latest released version will stay as is is (till a newer version of the profile will be released).
  • In this private version, the user can edit the profile (see UC_IM_MD_02 Edit metadata profile).
  • After saving, the system displays a success message. The profile is still in the state private.
  • To release the profile, see UC_IM_MD_03 Release metadata profile.

Actors Involved

  • MD profile editor for the selected metadata profile

UC_IM_MD_05 Withdraw metadata profile[edit]

Status/Schedule

  • Status: in specification
  • Schedule:

Pre-Condition

  • One metadata profile in the state released is selected

Description

  1. The withdraw needs to be explained by the user via a withdrawn comment and needs a confirmation, where the system makes it clear to the user, that a withdrawn metadata profile can not be edited any more, is not searchable or browsable and can only be found from other users via following the URL to one version of the metadata profile.
  2. After confirming, the system displays a success message. The metadata profile is now in the state withdrawn.
  3. All collections that use this metadata profile can still use it, but there will be displayed an information, that the profile is withdrawn.
  4. Withdraw means that the profile:
    • is not displayed in any browsing context
    • can not be used any more (as template) for a new collection

Actors Involved

  • MD profile editor for the selected metadata profile

Metadata Values[edit]

  1. Edit metadata values
    Keep in mind that there are two different use cases possible:
    • if edit can be done under a couple of seconds without any errors (preferred way)
    • if not, should certainly be specified something like an edit workspace where a report can be displayed etc. (not so nice)
    --> depends on the results of the dev team demonstrators!

UC_IM_MD_06 Scan filename[edit]

Status/Schedule

  • Status: in specification
  • Schedule:

Pre-Conditions

  • One upload, one collection, or several pictures within one collection are selected.
  • The metadata profile for the selected collection is already defined.

Triggers

Description

  1. When the filename of the uploading pictures already contains some metadata values, these values can automatically extracted by the system if they are based on a general regulation.
  2. The system displays one filename as example.
  3. The user defines the general regulation for the filenames via
    1. defining the order of the metadata elemens as they occur in the filename
    2. defining the symbol that defined the end of one element and the beginning of the next (e.g. an underscore or a semicolon)
  4. The system extract the filename based on the defined regulation from the example shown in step 2.
  5. When the result of the example is satisfying, the user confirms his definitions and the system extracts all metadata values from the selected pictures and stores them in their metadata. Otherwise the user has to change his definitions.

Actors Involved

  • Picture editor for the selected collection

UC_IM_MD_07 Edit picture metadata[edit]

Status/Schedule

  • Status: in specification
  • Schedule:

Pre-Condition

Description

  1. The system displays an information message which says how many pictures are currently selected. Further on, there must be a possibility to view all the selected pictures.
  2. The user chooses one or several metadata labels he wants to assign to the selected pictures.
  3. The users defines one or more metadata values for the selected labels.
    • When only one picture is selected, already available metadata values will be displayed as pre-filled in (also the ones from the automatic technical metadata extraction).
    • When the selected pictures have one or more metadata values in common, this value(s) will be displayed as pre-filled in. When they have different metadata values, this can not be displayed, but then the system will give the information, that some pictures already have a value for the metadata.
  4. After saving, the system displays a confirmation message and assigns the defined metadata values to the pictures.
    • When one or several picture(s) already have a metadata value in one or more of the chosen fields, this value(s) will automatically be overwritten by the new value(s).

Actors Involved

  • Picture editor for the selected collection

Comments

  • To avoid confusion when more than one user tries to edit the metadata of the same picture(s) at the same time, the system has to take care that always the newest version of the pictures and its metadata is displayed. And this will be the only version that is editable.
  • When somebody edits the metadata of one or more pictures, this pictures have to be locked during the editing process so that nobody else can edit them. When during this time, someone else tries to edit them, an information message has to be displayed.
  • We will use the pessimistic logging: the selected image(s) will be locked the moment when one user goes on "edit" and will be un-locked once again when the user clicks on "save". In case the user never goes on save, the locking will be neutralized after the session time out which will be 15 minutes after the last user action on imeji.
  • When at lease one image within a collection is locked, the corresponding metadata profile has to be locked, too.

Further Information
For the editing of picture metadate, 5 different usage scenarios are possible:

Number of images Number of MD elements Value of the MD element(s) State
1 1 same not planned
1 n / all different implemented
n (selected) 1 / n different implemented
n (selected) 1 / n same implemented
whole collection 1 / n same still missing