SDD Primer Home   Index

SDD Part 0: Introduction and Primer to the SDD Standard

3.2 Specifying authors and other contributors of SDD data

Names and other details for authors, editors and other contributors to SDD projects are defined in the <Agents> collection of the <Resources> section. Agents are people (or software agents) who are responsible in some way for creating or marking up SDD data, or for an SDD project. Agents defined in the <Agents> collection are numbered using key values, then referred to throughout an SDD document using their key reference numbers.

Agents may be defined and described internally in an SDD document, or their details may be provided by an external service provider (such as a database of authorities).

Example 3.2.1 - Specification of agents in SDD

 <Resources>
   <Agents>
        <Agent key="1">
            <ExternalID>http://www.ttl.org/staff/holden</ExternalID>
            <FreeFormDescription>Jill Holden</FreeFormDescription>
            <LastName>Holden</LastName>
            <FirstNames>Jill Margaret</FirstNames>
            <Homepage>http://www.ttl.org/staff/holden</Homepage>
        </Agent>
        <Agent key="2">
            <ServiceProvider>http://www.authorities.org</ServiceProvider>
            <ExternalID>12284683</ExternalID>
            </Agent>
    </Agents>
<Resources>

<Agent> elements contain one attribute and 2 mandatory and 4 optional elements for defining agents:

The Key attribute specifies a non-negative integer by which the agent will be referenced within the remainder of the SDD document. Key values for all agents must be unique within the document (and should be unique for all contributors to a project, even if only part of the project is reported in the document).

If the agent details are to be provided by an external web service, the <ServiceProvider> element is used to store a URI of the web service.

If the agent details are to be provided by an external web service, the <ExternalID> element provides an ID reference (string or number) that will be used in the request to the Service Provider. It will normally be the internal reference used by the service provider for that agent.

<FreeFormDescription> is provided to allow internal representation of an agent's name or description. The text in <FreeFormDescription> will not be parsed by the consuming application.

<LastName> is used to store the surname of a person, or the name of an organisation or software agent.

<FirstNames> is only used when the agent is a person, and stores the person's forenames.

<Homepage> is used to store a URL when the agent has a personal or corporate website

Agents defined in the <Agents> element of <Resources> are used wherever an agent is specified (e.g. for specifying authors, editors and contributors of a project in <ProjectDefinition>, for specifying the author of a glossary entry in <Terminology>, or for specifying the author of a description in <Descriptions>)

Example 3.2.2 - Use of agents for specifying authors and editors for SDD projects

<ProjectDefinition>
  <Authors>
    <Agent ref="1" />
    <Agent ref="2" />
  </Authors>
  <Editors>
    <Agent ref="3" />
  </Editors>
</ProjectDefinition>

KRT Last Edit: 31 Dec 03