Record Profiles

Profiles define the content of records supplied by a Torus, however, at the moment they are not enforced by the Torus itself and validation is left to the client. Each profile specifies which fields are mandatory, and which are permissible but not required. Eventually the Torus protocol will enforce profile compliance through the exchange of profile identifiers and a fail-early-fail-often policy. For now, we just trust the software to behave well. Two profiles are defined so far.

The searchable profile (target profile records)

Records contain the following elements:

Note 1: recordEncoding is the part of PazPar2?'s nativeSyntax element that comes after the semi-colon in values such as iso2709;iso8859-7. The part that comes before the colon can be derived from the request syntax, with "iso2709" being correct for all MARC variants (whose OIDs all begin 1.2.840.10003.5.*) and "xml" being correct for ... guess.
element mandatory description
resourceName the name of the searched resource, used by administrators only
parentInstitution not used
serviceProvider provider of the target or service
zurl Y the host, port and database name of the searchable resource
displayName Y the name of the searchable target as displayed to the user
sru indicates what protocol to use. If missing or empty, use Z39.50; if sru, use SRW; if get, use SRU. No other value is valid.
transform Y the name of an XSLT stylesheet used to transform the target's records into PP2 format
urlRecipe recipe to link into the internal system/catalog
cclmap_term CCL specification for constructing queries with no index specified
cclmap_au CCL specification for constructing author queries
cclmap_ti CCL specification for constructing title queries
cclmap_su CCL specification for constructing subject queries
cclmap_date I will not insult your intelligence by explaining this
cclmap_type CCL specification for querying material type (book, cd, etc.)
requestSyntax Record syntax requested from targets [default: server default]
recordEncoding Character encoding in records returned from target (note 1)
queryEncoding Character encoding used for queries [default: no conversion]
elementSet Element set requested from targets [default is left to the target]
authentication Authentication required by the target, in PazPar2?'s format
maxRecords Maximum number of records to retrieve from the target [default: 100]
zproxy Proxy via which to access the target [default: direct connection]
piggyback Can be set to zero to prevent piggybacking on broken servers [default: 1]
apduLog Boolean indicating whether to log APDUs [default: better be zero!]
comment A comment for the administrator's benefit
sourceType A short token indicating target type, e.g. "library catalogs", "Selected websites"
categories A comma-separated list of category tags that describe the target
useUrlProxy A flag set to 1 or 0, indicating whether the user's URL proxy pattern should be applied to this target
cfAuth CF specific: cf z-authentication parameters
cfProxy CF specific: cf proxy adress (http proxy)
cfSubDb CF specific: subdatabase name (connector internal selection mechanism)
udb "Unique database name" -- the name by which this target can be addressed via MasterKey Connect applications. Must be specified as the Z39.50/SRU database name in Meta-Proxy requests to identify the desired target profile record

The identity profile (identity records)

Records contain the following elements:

element mandatory description
identityId Y The identity of this user for purposes of authorization in other Toruses. Will be renamed realm once Jakub agrees
displayName Y The name of the identity (user, library, consortium, etc.)
userName Y Name, if any, used to log in
password Y Password, if any, used to log in
referer Regular expression matching referer URLs for this user
ipRanges Whitespace-separated list of IP ranges, each of which may be a single IP address or a hyphen-separated range
comment A comment for the administrator's benefit
emailAddress Address to use for contacting the user, e.g. for a password reminder
phoneNumber What it says