MDREPO -- retrieve data from metadata repository

  • Attention: This variable works only if MetadataRepository is in use. Otherwise, it always returns a zero length string.
  • This retrieves data from the specified metadata repository table.
  • Syntax: %MDREPO{ "table" ...}% (generic form), %MDREPO{ web="..." ...}% (web specific form)
  • Parameters (generic form without web="..." parameter):
    Parameter Description Default
    "..." Specify the table to retrieve This or below is required
    table="..." (Alternative to above) This or above is required
    separator="..." The separator string of records "$n" (new line)
    format="..." Format of one record. It may contain the following items. In addtion, the standard special tokens are handled accordingly.
    Item Description
    $_ or $_() the record ID
    $__ or $__() The record value in the following format:
    $marker or $marker() Expands to marker for the item matching selection only
    $_FILED_NAME or $_FIELD_NAME() Please be noted that you need to put _ (underscore) in front of a field name. $_FIELD_NAME$ yields the value of the specified field. If the specified field does not exist in the record, it returns the null string ("").
    ?FIELD_NAME?IF_FIELD_HAS_VALUE? If the specified field has value and it's neither 0 nor the null string (""), it's evaluated as IF_FIELD_HAS_VALUE. Otherwise, it's evaluated as the null string. This is like q/.../ in Perl. A non-word character following ?FIELD_NAME becomes the terminator; i.e. you can write: ?FIELD_NAME:IF_TRUE:
    Specifically, the following characters can be used as the delimiter: ! # % ' / : ? @ ^ ` | ~
    = is excluded because it clashes with a parameter specification in a URL (?name=value).
    ?!FIELD_NAME?IF_FIELD_HAS_NO_VALUE? Similar to above but it's opposite. If the field has value, it's evaluated as the null string. Otherwise, it's evaluated as IF_FIELD_HAS_NO_VALUE.
    $question Replaced with ? after the ?FIEL_DNAME and ?!FIELD_ANME constructs are processed.
    "| $_ | $__ |"
    selection="..." The record ID to be regarded as the selected. It affects how $marker in the format is evaluated. none
    marker="..." Text for $marker in the format if the item matches selection "selected"
    filter="..." The regular expression of record IDs to filter records. Matching is case-insensitive none
    exclude="..." Comma separated list of record IDs to be excluded. You can use regular expression. If you specify Trash\d*, then Trash, Trash1, Trash2, ... are exluded but LightTrash and TrashBag are not excluded none
  • Example: %MDREPO{"webs" filter="^A" format="| $_ | $_admin | $_master |"}%
    This would show the metadata of webs whose names start with A.
  • Paramerers (web specific form):
    Parameter Description Default
    web="..." Specify the web. If it's a subweb, the corresponding top level web is specified This is required
    "..." Specify the format of the return value in the same manner as the format parameter in the generic form $__
    default="..." Specify the value to be returned when the specified or implied top level web does not exist in MDREPO "" (null string)
  • Example: %MDREPO{web="Foo/Bar" "$_admin"}%
    This would show the admin field of the Foo web.
  • Category: AdministrationVariables, SystemInformationVariables
  • Related: MetadataRepository
Topic revision: r1 - 2013-04-05 - TWikiContributor
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 1999-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback
Note: Please contribute updates to this topic on at TWiki:TWiki.VarMDREPO.