Glud documentation
Help to the GLU record fields
Version: 1.06 - 8th, June 1998

Exhaustive list of GLU dictionary fields

Field name Abbr Description
%ActionName %A Action record identifier (and aliases)
%ApplicationField %V Free field for application dependant fields
%Copyright %M.C Copyright mention
%DataType.Conv %> Data type conversion
%DataType.Equiv %= Data type equivalence
%DataType.NConv %>@ Multiple data type conversion
%DataType.NRevconv %<@ Multiple reverse data type conversion
%DataType.Revconv %< Reverse data type conversion
%DataTypeName %K Data type record identifier (and aliases)
%DefaultAction %X Default action identifier
%DefaultAnchorText %B Default anchor text
%Description %D Short description
%DistribDomain %Z Distribution domain
%Doc.Technical %F.T URL for technical documentation
%Doc.User %F.U URL for user documentation
%Email %M.E Mail address of the origin institut/manager
%FullTextResult %L HTML anchor context
%Glu.Description %Y Service or domain description record identifier
%Glu.Group %G Group record identifier
%Glu.Service %S Service list record identifier
%Host %H Hostname
%Host.Allowed %W.A Access mask for allowed hosts
%Host.Denied %W.D Access mask for denied hosts
%Institute %M.I Postal address of the origin institut/manager
%KeyWords %M.K Key words qualifying the record
%Owner %O Owner service
%Param.DataType %P.K Parameter data type of action URL
%Param.Description %P.D Parameter description of action URL
%Param.Optional %P.O List of optional parameters of the action URL
%Param.Range %P.R Range of parameter values
%Param.Value %P.V Parameter default value of action URL
%ResultDataType %R Result data type of action URL
%ResultTest.Local %E.L Local program for result test
%ResultTest.Remote %E.R Remote URL for result test
%SeeAction %I Identifier and availibility for indirection
%Test %T Parameters (and options) for test sequence
%Test.Delay %T.D Proposition of delay between two tests
%Test.Result %Q Last test result and date
%Url %U Action URL with templates ($n)
%Url.Method %U.M Recommanded HTTP method for immediate query
%VerboseDescr %M.V Verbose description
%VersionNumber %N Version number and date


Fields by record type

Data type record
%DataTypeName Data type record identifier (and aliases)
%Description Short description
%Owner Owner service
%VersionNumber Version number and date
%DistribDomain Distribution domain
%Test Parameters (and options) for test sequence
%Doc.Technical URL for technical documentation
%Doc.User URL for user documentation
%DataType.Equiv Data type equivalence
%DataType.Conv Data type conversion
%DataType.Revconv Reverse data type conversion
%DataType.NConv Multiple data type conversion
%DataType.NRevconv Multiple reverse data type conversion
%DefaultAction Default action identifier
%ApplicationField Free field for application dependant fields

Action record
%ActionName Action record identifier (and aliases)
%Description Short description
%Owner Owner service
%VersionNumber Version number and date
%DistribDomain Distribution domain
%Url Action URL with templates ($n)
%Url.Method Recommanded HTTP method for immediate query
%DefaultAnchorText Default anchor text
%FullTextResult HTML anchor context
%ResultTest.Local Local program for result test
%ResultTest.Remote Remote URL for result test
%Param.Description Parameter description of action URL
%Param.DataType Parameter data type of action URL
%Param.Value Parameter default value of action URL
%Param.Range Range of parameter values
%Param.Optional List of optional parameters of the action URL
%Test Parameters (and options) for test sequence
%Test.Delay Proposition of delay between two tests
%Test.Result Last test result and date
%ResultDataType Result data type of action URL
%VerboseDescr Verbose description
%Institute Postal address of the origin institut/manager
%Email Mail address of the origin institut/manager
%Copyright Copyright mention
%KeyWords Key words qualifying the record
%Doc.Technical URL for technical documentation
%Doc.User URL for user documentation
%ApplicationField Free field for application dependant fields

Generic action record
%ActionName Action record identifier (and aliases)
%Description Short description
%Owner Owner service
%VersionNumber Version number and date
%DistribDomain Distribution domain
%SeeAction Identifier and availibility for indirection

Service or domain description record
%Glu.Description Service or domain description record identifier
%Description Short description
%Owner Owner service
%VersionNumber Version number and date
%DistribDomain Distribution domain
%VerboseDescr Verbose description
%Institute Postal address of the origin institut/manager
%Email Mail address of the origin institut/manager
%Copyright Copyright mention
%KeyWords Key words qualifying the record
%Doc.Technical URL for technical documentation
%Doc.User URL for user documentation
%ApplicationField Free field for application dependant fields

Host group record
%Glu.Group Group record identifier
%Description Short description
%Owner Owner service
%VersionNumber Version number and date
%DistribDomain Distribution domain
%Host.Allowed Access mask for allowed hosts
%Host.Denied Access mask for denied hosts
%Host Hostname

Services list record
%Glu.Service Service list record identifier
%Description Short description
%Owner Owner service
%VersionNumber Version number and date
%DistribDomain Distribution domain
%Host.Allowed Access mask for allowed hosts
%Host.Denied Access mask for denied hosts
%Host Hostname


Manual for each type of field


Field ``ActionName''

NAME
     %ActionName (or %A) - Action record identifier (and aliases)

SYNOPSIS
     %ActionName identifier [ alias... ]

DESCRIPTION
     Give the identifier of an action. This identifier can
     be followed by aliases (separated by spaces or tab).
      
     The characters comma (,) and : (colon) are not allowed in
     identifier.
      
     All identifiers and aliases have to be different in a same
     service (see %Owner field).

AVAILABLE FIELDS IN THIS RECORD TYPE
     Action:
         %ActionName         Action record identifier (and aliases)
         %Description        Short description
         %Owner              Owner service
         %VersionNumber      Version number and date
         %DistribDomain      Distribution domain
         %Url                Action URL with templates ($n)
         %Url.Method         Recommanded HTTP method for immediate query
         %DefaultAnchorText  Default anchor text
         %FullTextResult     HTML anchor context
         %ResultTest.Local   Local program for result test
         %ResultTest.Remote  Remote URL for result test
         %Param.Description  Parameter description of action URL
         %Param.DataType     Parameter data type of action URL
         %Param.Value        Parameter default value of action URL
         %Param.Range        Range of parameter values
         %Param.Optional     List of optional parameters of the action URL
         %Test               Parameters (and options) for test sequence
         %Test.Delay         Proposition of delay between two tests
         %Test.Result        Last test result and date
         %ResultDataType     Result data type of action URL
         %VerboseDescr       Verbose description
         %Institute          Postal address of the origin institut/manager
         %Email              Mail address of the origin institut/manager
         %Copyright          Copyright mention
         %KeyWords           Key words qualifying the record
         %Doc.Technical      URL for technical documentation
         %Doc.User           URL for user documentation
         %ApplicationField   Free field for application dependant fields
     Generic action:
         %ActionName         Action record identifier (and aliases)
         %Description        Short description
         %Owner              Owner service
         %VersionNumber      Version number and date
         %DistribDomain      Distribution domain
         %SeeAction          Identifier and availibility for indirection

EXAMPLES
     %ActionName UGuide
     %ActionName VizHomePage VizirHome VizieR.Home
     %ActionName CNRS.logo
     %ActionName simq SIMQ

Field ``ApplicationField''

NAME
     %ApplicationField (or %V) - Free field for application dependant fields

SYNOPSIS
     %ApplicationField (Application dependant)

DESCRIPTION
     This field can be used to encapsulated some application
     dependant fields.
      
     It follows the same rules of all other fields: lines can be
     broken in paragraphs, a backslash (\) at the endline avoids
     the automatic insertion of carriage return (\n), all blancks
     and tabs are ignored at the beginning of each line (expected
     on the first line), no comment lines (beginning by #) inside
     the paragraph field.

EXAMPLES
     %ApplicationField symbol=....
     %ApplicationField querybox available, ...

Field ``Copyright''

NAME
     %Copyright (or %M.C) - Copyright mention

SYNOPSIS
     %Copyright Line_in_natural_language

DESCRIPTION
     Give the copyright mention on the service.

EXAMPLES
     %Copyright &copy; CNRS

Field ``DataType.Conv''

NAME
     %DataType.Conv (or %>) - Data type conversion

SYNOPSIS
     %DataType.Conv data_type_identifier [: resolver_treatement ]

DESCRIPTION
     Specify an manner to convert a value in a data type
     in another data type.
      
     The GLU has the capability to convert the query parameters
     if their data types aren't the data types required
     by the action. For example, a GLU tag can specify an identifier
     of an astronomical object instead of their coordinates. And if it
     exists a way of conversion from the data type "identifier" to the
     data type "coordinates", the GLU applies this conversion way
     and inserts the result in the generating anchor.
      
     To specify a data type conversion, use this field in the following
     manner :
      - the fist word is the TARGET data type ; the source data type
        is the record data type itself.
      - after the delimiter ":", the end of field specify the conversion
        (or resolver) treatement.

     The resolver treatement is specified by a set of functions working
     as filters (pipe method - see examples)
     The reserved parameter $1 will be replaced by the original value.
     of the parameter

     The GLU has the following internal functions:
        .GetHttp(Url): HTTP call
        .GluFilter(string with glu tags): Internal glu resolution
        .Regex(pattern[,rewrite string]): Pattern matching by regular expr
        .Echo(string): basic display
        .Trim(string): Squeeze blanks before and after the parameter
        .Astropos(syst_in,fmt_in,syst_out,fmt_out,coord): coordinate conversion
     if the last parameter is missing, the std input of the function
     is taken into account for it.

EXAMPLES
     %DataType.Conv smbmgr'I : GetHttp("http://simbad/sim-id.pl?Ident=$1")\n | Trim
     %DataType.Conv J2000 : Astropos("B1950","%Coo","J2000","%Coo",$1)
     %DataType.Conv 'Prenom : GluFilter("<&StarHeads,rb $1>")\n | Regex("^[^ ]+ +([^ ]+)","\1")
     %DataType.Conv CDS'bibmgr'R

Field ``DataType.Equiv''

NAME
     %DataType.Equiv (or %=) - Data type equivalence

SYNOPSIS
     %DataType.Equiv data_type_identifier

DESCRIPTION
     Specify an equivalence between two data types.
      
     See %DataType.Conv field.

EXAMPLES
     %DataType.Equiv CDS'bibmgr'R
     %DataType.Equiv smbmgr'J
     %DataType.Equiv Mime(text/plain)

Field ``DataType.NConv''

NAME
     %DataType.NConv (or %>@) - Multiple data type conversion

SYNOPSIS
     %DataType.NConv data_type_identifier [: resolver_treatement ]

DESCRIPTION
     Specify an manner to convert a value in a data type
     in another data type.
     This field is used by multiple conversion ; one value
     can return several results in target data type.
      
     (see %DataType.Conv field for explanations)

     The resolver treatement is specified by a set of functions working
     as filters (pipe method - see examples)
     The reserved parameter $1 will be replaced by the original value.
     of the parameter

     The GLU has the following internal functions:
        .GetHttp(Url): HTTP call
        .GluFilter(string with glu tags): Internal glu resolution
        .Regex(pattern[,rewrite string]): Pattern matching by regular expr
        .Echo(string): basic display
        .Trim(string): Squeeze blanks before and after the parameter
        .Astropos(syst_in,fmt_in,syst_out,fmt_out,coord): coordinate conversion
     if the last parameter is missing, the std input of the function
     is taken into account for it.

EXAMPLES
     %DataType.NConv smbmgr'I : GetHttp("http://simbad/sim-id.pl?Ident=$1")\n | Trim
     %DataType.NConv J2000 : Astropos("B1950","%Coo","J2000","%Coo",$1)
     %DataType.NConv 'Prenom : GluFilter("<&StarHeads,rb $1>")\n | Regex("^[^ ]+ +([^ ]+)","\1")
     %DataType.NConv CDS'bibmgr'R

Field ``DataType.NRevconv''

NAME
     %DataType.NRevconv (or %<@) - Multiple reverse data type conversion

SYNOPSIS
     %DataType.NRevconv data_type_identifier [: resolver_treatement ]

DESCRIPTION
     Specify an manner to convert a value in a data type
     in another data type.
     This field is used by multiple conversion ; one value
     can return several results in target data type.
     Its a reverse conversion.
      
     (see %DataType.Revconv field for explanations)

     The resolver treatement is specified by a set of functions working
     as filters (pipe method - see examples)
     The reserved parameter $1 will be replaced by the original value.
     of the parameter

     The GLU has the following internal functions:
        .GetHttp(Url): HTTP call
        .GluFilter(string with glu tags): Internal glu resolution
        .Regex(pattern[,rewrite string]): Pattern matching by regular expr
        .Echo(string): basic display
        .Trim(string): Squeeze blanks before and after the parameter
        .Astropos(syst_in,fmt_in,syst_out,fmt_out,coord): coordinate conversion
     if the last parameter is missing, the std input of the function
     is taken into account for it.

EXAMPLES
     %DataType.NRevconv smbmgr'I : GetHttp("http://simbad/sim-id.pl?Ident=$1")\n | Trim
     %DataType.NRevconv J2000 : Astropos("B1950","%Coo","J2000","%Coo",$1)
     %DataType.NRevconv 'Prenom : GluFilter("<&StarHeads,rb $1>")\n | Regex("^[^ ]+ +([^ ]+)","\1")
     %DataType.NRevconv CDS'bibmgr'R

Field ``DataType.Revconv''

NAME
     %DataType.Revconv (or %<) - Reverse data type conversion

SYNOPSIS
     %DataType.Revconv data_type_identifier [: resolver_treatement ]

DESCRIPTION
     Specify an manner to convert a value in a data type
     in another data type.
     This field is used by reverse conversion.
      
     The GLU has the capability to convert the query parameters
     if their data types aren't the data types required
     by the action. For example, a GLU tag can specify an identifier
     of an astronomical object instead of their coordinates. And if it
     exists a way of conversion from the data type "identifier" to the
     data type "coordinates", the GLU applies this conversion way
     and inserts the result in the generating anchor.
      
     To specify a data type conversion, use this field in the following
     manner :
      - the fist word is the SOURCE data type ; the target data type
        is the record data type itself.
      - after the delimiter ":", the end of field specify the conversion
        (or resolver) treatement.

     The resolver treatement is specified by a set of functions working
     as filters (pipe method - see examples)
     The reserved parameter $1 will be replaced by the original value.
     of the parameter

     The GLU has the following internal functions:
        .GetHttp(Url): HTTP call
        .GluFilter(string with glu tags): Internal glu resolution
        .Regex(pattern[,rewrite string]): Pattern matching by regular expr
        .Echo(string): basic display
        .Trim(string): Squeeze blanks before and after the parameter
        .Astropos(syst_in,fmt_in,syst_out,fmt_out,coord): coordinate conversion
     if the last parameter is missing, the std input of the function
     is taken into account for it.

EXAMPLES
     %DataType.Revconv smbmgr'I : GetHttp("http://simbad/sim-id.pl?Ident=$1")\n | Trim
     %DataType.Revconv J2000 : Astropos("B1950","%Coo","J2000","%Coo",$1)
     %DataType.Revconv 'Prenom : GluFilter("<&StarHeads,rb $1>")\n | Regex("^[^ ]+ +([^ ]+)","\1")
     %DataType.Revconv CDS'bibmgr'R

Field ``DataTypeName''

NAME
     %DataTypeName (or %K) - Data type record identifier (and aliases)

SYNOPSIS
     %DataTypeName identifier [ alias... ]

DESCRIPTION
     Give the identifier of a data_type. This identifier can
     be followed by aliases (separated by spaces or tab).
      
     The characters comma (,) and : (colon) are not allowed in
     identifier.
     dollar ($) and parenthesis ((,)) are reserved to define variable
     data type identifier (see the field %DataType.Conv).
      
     All identifiers and aliases have to be different in a same
     service (see %Owner field).
      
     Rem: there are four default data types defined in GLU (under
     "GLU'dommgr" service):
      
     1) Mime($MimeType) : MIME type    ex: Mime(text/html)
     2) Coo($Sys,$Fmt)  : Astronomical coordinates
      
           where $Sys can be:
        J2000 Standard Julian coord.
        B1950 Standard Besselian coord.
        FK4[:equinox] Besselian coord. with an equinox (defaults to 1950)
        F54[:equinox] Julian coord. with an equinox (defaults to 2000)
        GAL   Galactic coordinates
        SGAL  Supergalactic coordinates
        ECL   Ecliptic Coordinates
      
           where $Fmt can be:
        COOd  The entire coord. string in decimal degrees (76.96583 -76.44222)
        COO   The entire coord. string in sex. format (05 07 51.8 -76 26 32)
        RA    The RA in standard sexigesimal form (05 07 51.8)
        RAdeg The RA in degrees (76.96583)
        RAh   The hours of right ascension (05)
        RAhd  The RA in decimal hours (5.13106)
        RAm   The minutes of RA (07)
        RAmd  The minutes of RA including any fractional minutes (07.9)
        RAs   The seconds of RA (52)
        RAsd  The seconds of RA including fractional seconds (51.8)
        DE    The DE in standard sexigesimal form (-76 26 32.0)
        DEdeg The DE in degrees (-76.44222)
        DEd   The degrees of DE (-76)
        DEm   The minutes of DE (26)
        DEmd  The minutes of DE including fractional minutes (26.5)
        DEs   The seconds of DE (32)
        DEsd  The seconds of DE including fractional seconds (32.0)
        LON   The longitudinal coord. in degrees (288.48372)
        LAT   The latitudinal coord. in degrees (-32.30250)
      
     3) J2000 : equivalents to Coo(J2000,COO) data type
     4) B1950 : equivalents to Coo(B1950,COO) data type

AVAILABLE FIELDS IN THIS RECORD TYPE
     Data type:
         %DataTypeName       Data type record identifier (and aliases)
         %Description        Short description
         %Owner              Owner service
         %VersionNumber      Version number and date
         %DistribDomain      Distribution domain
         %Test               Parameters (and options) for test sequence
         %Doc.Technical      URL for technical documentation
         %Doc.User           URL for user documentation
         %DataType.Equiv     Data type equivalence
         %DataType.Conv      Data type conversion
         %DataType.Revconv   Reverse data type conversion
         %DataType.NConv     Multiple data type conversion
         %DataType.NRevconv  Multiple reverse data type conversion
         %DefaultAction      Default action identifier
         %ApplicationField   Free field for application dependant fields

EXAMPLES
     %DataTypeName I
     %DataTypeName E ABS.E
     %DataTypeName image/gif
     %DataTypeName R SMB.B BIBSMB.R ABS.R DIC.R

Field ``DefaultAction''

NAME
     %DefaultAction (or %X) - Default action identifier

SYNOPSIS
     %DefaultAction Default_action_identifier

DESCRIPTION
     Specify the default action identifier for a data type.

EXAMPLES
     %DefaultAction getcat
     %DefaultAction CDS'smbmgr'smb.query

Field ``DefaultAnchorText''

NAME
     %DefaultAnchorText (or %B) - Default anchor text

SYNOPSIS
     %DefaultAnchorText HTML text

DESCRIPTION
     Give the default anchor text (HTML format). It will be
     used only if there isn't an anchor text submitted, and
     if there isn't a %FullTextResult  field.
      
     It's really usefull for the HTML menu.

EXAMPLES
     %DefaultAnchorText <B>S</B>imbad
     %DefaultAnchorText Vizir <FONT SIZE=-1>in test</FONT>

Field ``Description''

NAME
     %Description (or %D) - Short description

SYNOPSIS
     %Description string_in_natural_language

DESCRIPTION
     Give a short record description.

EXAMPLES
     %Description Simple simbad query (from @adress)

Field ``DistribDomain''

NAME
     %DistribDomain (or %Z) - Distribution domain

SYNOPSIS
     %DistribDomain domain [ExceptField=field_type field_type... ]

DESCRIPTION
     Specify a domain name which the record will be distributed.
     To know the existing domains, you must see the %ServiceName GLUROOT
      record or use the "gludic" command with the parameter "-g".
      
     The domain name can be followed by the list of excepted type_fields
     separated by a space (with a : before the list). These are the fields
     which won't be distributed to the specified domain.
     However, the specification of the fields DataTypeName, ActionName,
     GroupName, ServiceName, Owner , VersionNumber,  DistribDomain has
     not consequence.
      
     There must be as many as %DistribDomain fields than distributed domains.
     If a record hasn't a field %DistribDomain, it won't be distributed.

EXAMPLES
     %DistribDomain CDS
     %DistribDomain ADS ExceptField=B T

     %Z CDS
     %Z ADS :=B T

Field ``Doc.Technical''

NAME
     %Doc.Technical (or %F.T) - URL for technical documentation

SYNOPSIS
     %Doc.Technical URL

DESCRIPTION
     Give an URL for technical documentations.
     There must be as many as %Doc.Technical field than URLs.

EXAMPLES
     %Doc.Technical http://simbad.u-strasbg.fr/simq-doct.html
     %Doc.Technical http:/cdsweb.u-strasbg.fr/glu.html

Field ``Doc.User''

NAME
     %Doc.User (or %F.U) - URL for user documentation

SYNOPSIS
     %Doc.User URL

DESCRIPTION
     Give an URL for user documentations.
     There must be as many as %Doc.User field than URLs.

EXAMPLES
     %Doc.User http://simbad.u-strasbg.fr/simq-docu.html
     %Doc.User http:/cdsweb.u-strasbg.fr/glu-users.html

Field ``Email''

NAME
     %Email (or %M.E) - Mail address of the origin institut/manager

SYNOPSIS
     %Email name@host.domain.dns

DESCRIPTION
     Give the Email address of the service or domain manager.

EXAMPLES
     %Email xxx@simbad.u-strasbg.fr

Field ``FullTextResult''

NAME
     %FullTextResult (or %L) - HTML anchor context

SYNOPSIS
     %FullTextResult HTML_text_with_$n|$url_variables

DESCRIPTION
     Give the "context" of an action URL (HTML format)
     The position where the action URL has to be inserted is
     indicated by a $url variable. The GLU tag parameters will
     replace $n variables as in %Url field.
      
     If the record hasn't a %Url field, it will be the %FullTextResult field
     which will be returned. In this case, the %FullTextResult field hasn't
     $url variable.
      
     The %FullTextResult field can included itself some GLU tags
     (see examples). By this way, the %FullTextResult field is very
     usefull to prepare an homogeneous menu, a head or tail of page,...

EXAMPLES
     %FullTextResult Please send comments to <A HREF="$url"> question@simbad.u-strasbg.fr</A>
     %FullTextResult <IMG SRC="$url" ALIGN="middle" ALT="CDS logo">
     %FullTextResult <A HREF=$url TARGET=New>$1</A>
     %FullTextResult <HR noshade> <&CDS.menu>\n<A HREF="<&Question,u '$1'>">\n</BODY>\n</HTML>

Field ``Glu.Description''

NAME
     %Glu.Description (or %Y) - Service or domain description record identifier

SYNOPSIS
     %Glu.Description domain'service'Description

DESCRIPTION
     Give a description of a service or a domain : manager informations
     verbose description, documentation URL...
      
     Warning: the glu identifier must be the word "Description"
      
     The described service is define by the field %Owner of this record.
     For the domain descriptions, it's the "dommgr" service of
     the domain which is taken in account.

AVAILABLE FIELDS IN THIS RECORD TYPE
     Service or domain description:
         %Glu.Description    Service or domain description record identifier
         %Description        Short description
         %Owner              Owner service
         %VersionNumber      Version number and date
         %DistribDomain      Distribution domain
         %VerboseDescr       Verbose description
         %Institute          Postal address of the origin institut/manager
         %Email              Mail address of the origin institut/manager
         %Copyright          Copyright mention
         %KeyWords           Key words qualifying the record
         %Doc.Technical      URL for technical documentation
         %Doc.User           URL for user documentation
         %ApplicationField   Free field for application dependant fields

EXAMPLES
     %Glu.Description CDS'smbmgr'Description
     %Glu.Description APJ'paper'Description
     %Glu.Description NED'dommgr'Description

Field ``Glu.Group''

NAME
     %Glu.Group (or %G) - Group record identifier

SYNOPSIS
     %Glu.Group domain'dommgr'{Clients|Servers}

DESCRIPTION
     Give the identifier of group. This group is also named
     "distributed domain".
      
     This type of record is used by the glud for its own protocol.

AVAILABLE FIELDS IN THIS RECORD TYPE
     Host group:
         %Glu.Group          Group record identifier
         %Description        Short description
         %Owner              Owner service
         %VersionNumber      Version number and date
         %DistribDomain      Distribution domain
         %Host.Allowed       Access mask for allowed hosts
         %Host.Denied        Access mask for denied hosts
         %Host               Hostname

EXAMPLES
     %Glu.Group CDS'dommgr'Clients
     %Glu.Group ADS'dommgr'Servers

Field ``Glu.Service''

NAME
     %Glu.Service (or %S) - Service list record identifier

SYNOPSIS
     %Glu.Service domain'dommgr'Services

DESCRIPTION
     Give the identifier of sercice list.
      
     This type of record is used by the glud for its own protocol.

AVAILABLE FIELDS IN THIS RECORD TYPE
     Services list:
         %Glu.Service        Service list record identifier
         %Description        Short description
         %Owner              Owner service
         %VersionNumber      Version number and date
         %DistribDomain      Distribution domain
         %Host.Allowed       Access mask for allowed hosts
         %Host.Denied        Access mask for denied hosts
         %Host               Hostname

EXAMPLES
     %Glu.Service CDS'dommgr'Services
     %Glu.Service NED'dommgr'Services

Field ``Host''

NAME
     %Host (or %H) - Hostname

SYNOPSIS
     %Host hostname [service=servicename servicename...]

DESCRIPTION
     Specify a hostname (DNS notation). This field is used by
     internal GLU records (%ServiceName and %GroupName) to define
     a hostname list.
      
     In a %GroupName record, the %Host field specifies a hostname
     which is a member of the group.
      
     In a %ServiceName record, each %H field is followed by the list
     of the services (see %Owner field) managed by the hostname.

EXAMPLES
     %Host astro.u-strasbg.fr
     %Host vizir.u-strasbg.fr service=catmgr vizmgr

     %H astro.u-strasbg.fr
     %H vizir.u-strasbg.fr service=catmgr vizmgr

Field ``Host.Allowed''

NAME
     %Host.Allowed (or %W.A) - Access mask for allowed hosts

SYNOPSIS
     %Host.Allowed /regexpr/|string_with_jokers (*,?)

DESCRIPTION
     Specify an access mask to determine the hosts which are
     authorized to be a glud client or a glud server (when it
     is in a %GroupName Clients record or a %GroupName Servers record)
     or a glud service subscriber (when it is in a %ServiceName record).
      
     Two formats are authorized. It can be a string with some
     jokers (* or ?), or, if the begin and end string are '/'
     it will be considered as a regular expression.
      
     If there is %Host.Allowed fields, only the matched hostnames are
     authorized.

EXAMPLES
     %Host.Allowed *.iap.fr
     %Host.Allowed /.*(\.fr|\.au)$/

Field ``Host.Denied''

NAME
     %Host.Denied (or %W.D) - Access mask for denied hosts

SYNOPSIS
     %Host.Denied /regexpr/|string_with_jokers (*,?)

DESCRIPTION
     Specify an access mask to determine the hosts which are
     denied to be a glud client or a glud server (when it
     is in a %GroupName Clients record or a %GroupName Servers record)
     or a glud service subscriber (when it is in a %ServiceName record).
      
     Two formats are authorized. It can be a string with some
     jokers (* or ?), or, if the begin and end string are '/'
     it will be considered as a regular expression.
      
     If there is %Host.Denied fields, only the matched hostnames are
     denied.

EXAMPLES
     %Host.Denied *.iap.fr
     %Host.Denied /.*(\.fr|\.au)$/

Field ``Institute''

NAME
     %Institute (or %M.I) - Postal address of the origin institut/manager

SYNOPSIS
     %Institute Paragraph_in_natural_language

DESCRIPTION
     Give the postal address of the service or domain manager
     Or eventually, this field gives the postal address of
     the origin institut (laboratory, company...)

EXAMPLES
     %Institute Centre de Donnees Astronomique de Strasbourg...

Field ``KeyWords''

NAME
     %KeyWords (or %M.K) - Key words qualifying the record

SYNOPSIS
     %KeyWords word|'phrase' [word|'phrase'...]

DESCRIPTION
     Give a list of keywords to qualified the service or the domain.
     A keyword is a word or a phrase (quoted by ')

EXAMPLES
     %KeyWords Astronomy 'data base' 'cross identification'

Field ``Owner''

NAME
     %Owner (or %O) - Owner service

SYNOPSIS
     %Owner service

DESCRIPTION
     Specify the record owner. It's a one word (without ' and :).
     All records with the same owner define a "service"
     which must be managed by an unique "glud" (the same host).
      
     In the global dictionary, the owner is prefixed by the domain name,
     (separated by ').
      
     All service names have to be different in a same
     subsribe domain (see %SeeAction field).

EXAMPLES
     %Owner smbmgr
     %Owner bibmgr
     %Owner CDS'alamgr

Field ``Param.DataType''

NAME
     %Param.DataType (or %P.K) - Parameter data type of action URL

SYNOPSIS
     %Param.DataType $n=data_type_identifier

DESCRIPTION
     Specify the data type of an URL parameter in the %Url field.
     The field must begin by the parameter number and : before
     the description (see examples).
      
     The identifier of data type can be prefixed by its owner and
     by its subscribed domain.
      
     This field has to be repeat as many as times than parameters.

EXAMPLES
     %Param.DataType $1=E
     %Param.DataType $2=CDS'smbmgr'I

     %P.K 1:E
     %P.K 2:CDS'smbmgr'I

Field ``Param.Description''

NAME
     %Param.Description (or %P.D) - Parameter description of action URL

SYNOPSIS
     %Param.Description $n=string_in_natural_language

DESCRIPTION
     Give a short description of an URL parameter in the %Url field.
     The field must begin by the parameter number and : before
     the description (see examples).
      
     This field has to be repeat as many as times than parameters.

EXAMPLES
     %Param.Description $1=Name of Number of a catalogue
     %Param.Description $2=Identification or J2000-position

     %P.D 1:Name of Number of a catalogue
     %P.D 2:Identification or J2000-position

Field ``Param.Optional''

NAME
     %Param.Optional (or %P.O) - List of optional parameters of the action URL

SYNOPSIS
     %Param.Optional $n | $n,m | $n-m ...

DESCRIPTION
     Specify the list of optional parameters.

EXAMPLES
     %Param.Optional $1
     %Param.Optional $6 $3

     %P.O 1
     %P.O 6 3

Field ``Param.Range''

NAME
     %Param.Range (or %P.R) - Range of parameter values

SYNOPSIS
     %Param.Range free_syntax

DESCRIPTION
     Specify the range of accepted values. This field is not
     planned to be computed ; it must be in human comprehensive
     syntax.

EXAMPLES
     %Param.Range [0..10]
     %Param.Range > 3.123 and < 6.456

Field ``Param.Value''

NAME
     %Param.Value (or %P.V) - Parameter default value of action URL

SYNOPSIS
     %Param.Value $n=value

DESCRIPTION
     Specify a default value for a parameter.
      
     If there are several values for the same parameter, it is assumed
     that these are the only possible values
      

EXAMPLES
     %Param.Value $1=123
     %Param.Value $2=full resolution

     %P.V 1:123
     %P.V 2:full resolution

Field ``ResultDataType''

NAME
     %ResultDataType (or %R) - Result data type of action URL

SYNOPSIS
     %ResultDataType data_type_identifier

DESCRIPTION
     Specify the data type of the returned format.

EXAMPLES
     %ResultDataType image/gif
     %ResultDataType text/html

Field ``ResultTest.Local''

NAME
     %ResultTest.Local (or %E.L) - Local program for result test

SYNOPSIS
     %ResultTest.Local script_name|script_with_$n_variables

DESCRIPTION
     Specify a local method to determine if an action
     will return some results or not, according to the parameter
     values in the GLU tag. With a "t" option (in the GLU tag)
     the action URL will be returned only if this method returns
     the string "TRUE".
      
     The %Local.ResultTest field can be a script or program name
     (with $n variables) to submit the GLU tag parameters. It can be also
     a  Bourne-shell script "in-line". In this case, it's own
     variables $... must be prefixed by an other $ (see example)
      
     The %Local.ResultTest field is never distributed by the glud
     (see %Remote.ResultTest field for a remote result test).

EXAMPLES
     %ResultTest.Local /usr/local/getabs bibcode=$1 existence
     %ResultTest.Local look '$1' /usr4/bibmgr/simbad/refobj.lis | awk '{ print $$0 \" TRUE\" }'

Field ``ResultTest.Remote''

NAME
     %ResultTest.Remote (or %E.R) - Remote URL for result test

SYNOPSIS
     %ResultTest.Remote URL_with_$n_variables [pattern="pattern_matching"]

DESCRIPTION
     Specify an URL to determine if an action
     will return some results or not, according to the parameter
     values in the GLU tag. With a "t" option (in the GLU tag)
     the action URL will be returned only if the URL call returns
     the string "TRUE".
      
     It is possible to override the string matching "TRUE" by another
     specified after the test URL. If this new string begins and ends
     by '/', it is considered as a regular expression.
      
     Like in the %U field, the glu tag parameters will replace
     the $n variables in the %Remote.ResultTest field.

EXAMPLES
     %ResultTest.Remote http://simbad.u-strasbg.fr/cgi-bin/getabs?bibcode=$1&existence
     %ResultTest.Remote http://cdsads.u-strasbg.fr/cgi-bin/verify?bibcode=$1&db_key=AST *Abstract Available*

     %E.R http://simbad.u-strasbg.fr/cgi-bin/getabs?bibcode=$1&existence
     %E.R http://cdsads.u-strasbg.fr/cgi-bin/verify?bibcode=$1&db_key=AST *Abstract Available*

Field ``SeeAction''

NAME
     %SeeAction (or %I) - Identifier and availibility for indirection

SYNOPSIS
     %SeeAction identifier | full_identifier [availability=integer]

DESCRIPTION
     Specify an indirection i.e. an action record identifier.
     This field is used to indicate several httpd servers for a same service
     (clones, backups, ...).
      
     In the global dictionary (glu.dic), this identifier is followed by
     an accessibility number (an integer) calculated by the glud regularly.
     The smallest accessiblity number indicates the best action.
      
     If a negative value is specified, this value is never modified
     by the glud (static availability).
      
     There are as many as %SeeAction fields than available httpd servers

EXAMPLES
     %SeeAction simq.fr
     %SeeAction simq.us
     %SeeAction CDS'extmgr'ads.byauthor.u availability=1002
     %SeeAction CDS'extmgr'ads.byauthor.fr availability=-3

     %I simq.fr
     %I simq.us
     %I CDS'extmgr'ads.byauthor.u:1002
     %I CDS'extmgr'ads.byauthor.fr:-3

Field ``Test''

NAME
     %Test (or %T) - Parameters (and options) for test sequence

SYNOPSIS
     %Test param="parameter_list" [option="n"] [pattern="/regexp/|string"]

DESCRIPTION
     Give the parameters for a test. The format is the same as in
     in a GLU tag
      
     It can have several %T fields for severals tests.
     These tests are used by the "glutry" command.

EXAMPLES
     %Test param="VI/25/"
     %Test param="6578 HD1"
     %Test param="1995A%26AS..111...41N" option="n" pattern="/^1995.*/"

     %T ::VI/25/
     %T ::6578 HD1
     %T n^1995.*/:

Field ``Test.Delay''

NAME
     %Test.Delay (or %T.D) - Proposition of delay between two tests

SYNOPSIS
     %Test.Delay integer{m|h|d}

DESCRIPTION
     Give a proposition of delay between two tests. The format is an
     integer followed by one of these unities : m, h or d respectively
     for minutes, hours and days.

EXAMPLES
     %Test.Delay 2h
     %Test.Delay 15d
     %Test.Delay 30m

Field ``Test.Result''

NAME
     %Test.Result (or %Q) - Last test result and date

SYNOPSIS
     %Test.Result integer  date

DESCRIPTION
     This field specifies the last test result for an action record.
     This result is an integer which gives an appreciation of
     the connectivity, the delay and the result of the first
     %Test field (if there isn't, the URL is tried without
     parameter). The smallest value indicates the
     best availibility.
      
     This value is followed by the date of the last test.
      
     This field is never distributed and is automatically
     computed by the glud daemon. The delay between two tests
     can be proposed by the field %Test.Delay.

EXAMPLES
     %Test.Result 0  1997/04/10 14:33:42
     %Test.Result 510  1997/04/11 08:30:02

Field ``Url''

NAME
     %Url (or %U) - Action URL with templates ($n)

SYNOPSIS
     %Url URL_with_$n_variables

DESCRIPTION
     Give the URL which will be used for an action.
     Each parameter must be replaced by a $n variable.

EXAMPLES
     %Url http://astro.u-strasbg.fr/cgi-bin/Dic
     %Url http://simbad.harvard.edu/simbo.pl?bibcode=$1
     %Url mailto:question@simbad.u-strasbg.fr?Subject=$1
     %Url http://vizier.u-strasbg.fr:8000/cgi-bin/caturn?-source=$1&-c=$2&-c.rm=20
     %Url http://simbad.u-strasbg.fr/sim-id.pl?Ident=$1&$2
     %Url /icons/envelop1.gif

Field ``Url.Method''

NAME
     %Url.Method (or %U.M) - Recommanded HTTP method for immediate query

SYNOPSIS
     %Url.Method GET|get|POST|post

DESCRIPTION
     Specify the default HTTP method for the immediate GLU
     resolutions.
      
     If this field isn't mentionned, it assumes that is a GET
     method.

EXAMPLES
     %Url.Method GET
     %Url.Method POST
     %Url.Method post

Field ``VerboseDescr''

NAME
     %VerboseDescr (or %M.V) - Verbose description

SYNOPSIS
     %VerboseDescr Paragraph_in_natural_language

DESCRIPTION
     Give a verbose description of the service or the domain.
     This field shouldn't bigger that a small paragraph.
     See the fields %Doc.User and %Doc.Technical to specify
     documentation URLs.

EXAMPLES
     %VerboseDescr The SIMBAD astronomical database, created...

Field ``VersionNumber''

NAME
     %VersionNumber (or %N) - Version number and date

SYNOPSIS
     %VersionNumber integer [date]

DESCRIPTION
     Indicate the number version of the record. This field is automatically
     generated by the glud daemon.
      
     This number is followed by the date of the last update.

EXAMPLES
     %VersionNumber 32	1997/04/11 08:30:02
     %VersionNumber 5   1997/04/10 14:33:42

Field ``VersionNumber''

NAME
     %VersionNumber (or %N) - Version number and date

SYNOPSIS
     %VersionNumber integer [date]

DESCRIPTION
     Indicate the number version of the record. This field is automatically
     generated by the glud daemon.
      
     This number is followed by the date of the last update.

EXAMPLES
     %VersionNumber 32	1997/04/11 08:30:02
     %VersionNumber 5   1997/04/10 14:33:42