Mobile Computing in a Fieldwork Environment
Home button

[Project Home]

MCFE Metadata Elements

Version 0.2

Created: 22nd April 1997
Last modified: 13th October 1997
Previous version

UKC Mobile Projects

[UKC Mobile Projects]


Table of Contents


Introduction

The Mobile Computing in a Fieldwork Environment (MCFE) project addresses issues in the application of mobile and context-aware computing to fieldwork training and research in higher education. We are developing applications to support data collection, resource creation and access to previously recorded information using hand-held computers in the field. In contrast to some other projects that seek to bring the fieldwork indoors by the development of 'virtual reality field courses', our approach is to take the data outside and so to provide 'enhanced reality field courses'.

The main components of the project are:

MCFE Field Notes

These are a development of Peter Brown's Stick-e notes. Notes carry an embedded description of the physical or logical context in which they should be activated. Current implementations concentrate on text notes but the concept can be extended to cover any passive or active object. Whereas Stick-e notes are defined by an special-purpose SGML DTD, MCFE Field Notes are prepared in HTML format. Each note is represented as a single HTML document.

Mobile Context-aware Applications

Context-aware applications monitor input from environmental sensors and allow users to select from a range of physical and logical contexts corresponding to their current interests or activities. Perhaps the most generally applicable physical sensor is the computer's own internal clock. This is widely used to provide a simple form of context-awareness in 'personal scheduler' programs.

Most basic MCFE applications use input from a GPS receiver to provide location and accurate time data. For other, more specialised, activities we might employ sensors to monitor air temperature, humidity or incident light level. Logical contexts might include broad or narrow subject categories such as 'archaeology' or 'earthwork', a required temporal coverage such as 'medieval' or '1914-1918', or the name of a person or group responsible for creating a set of data.

Information derived both from the sensors and from user input is used to tag newly authored notes. This information is held in HTML <META> tags in each note, and is then available for applications to use as selection criteria for retrieving stored notes.

Desktop Fieldnote Management Tools

The desktop management tools will include a central repository for collections of field notes, together with authoring and editing tools. Sets of notes covering a range of activities will then be downloaded from the PC to the hand-held machine as required, and collected data can be uploaded to the desktop on return from the field. Data import and export facilities will be required so that data can be exchanged with databases, GIS and other analytical tools.

Context, metadata and resource discovery

Using HTML rather than a special purpose SGML DTD to encode MCFE Field Notes has a number of benefits. Firstly, many members of the target user community have some degree of familiarity with HTML, whereas they might be reluctant to learn a DTD. Familiarity with the encoding language may lead to more rapid acceptance of the Field Notes and interest their further development. Secondly, the availability of HTML browsers and editors, and users' familiarity with them, reduces the need to develop special purpose software for many of the basic note authoring and management tasks.

The HTML <META> tag has a rather restricted syntax, but nevertheless, can be used to embed contextual metadata in documents. Following the initial decision to use HTML, it seemed that we would have to define a special syntax for embedding notes in the NAME and CONTENT fields of the META tag. However, it soon became apparent that there was a close similarity between the needs of context-aware applications and the task of resource discovery. This led to an examination of existing and emerging metadata standards aimed at resource discovery. Most existing standards are either too detailed or too specialised for our purposes, but the emerging Dublin Core standard appears to offer both simplicity and sufficiently general coverage for many context aware applications.

Dublin Core metadata elements

The Dublin Core consists of fifteen core metadata elements, intended primarily for high-level resource discovery. The simple fifteen element structure clearly cannot satisfy all metadata requirements. The Warwick Framework proposals provide a method of extending the Dublin core to include special-purpose metadata 'packages'. Using this approach, the basic Dublin Core elements are grouped into a single high-level package and further packages are added to contain the specialised metadata.

Initially, it appeared that a Warwick Framework package would be needed to deal with the particular requirements of MCFE Field Note metadata. In practice, most of the project's needs can be satisfied using the basic Dublin Core element set. Indeed, with the exception of the spatial and temporal coverage elements, MCFE metadata is a restricted subset of the current Dublin Core.

The Dublin Core is still evolving. The semantics of some elements are still only loosely defined, and the syntax of the HTML representation has yet to be finalised. Rather than facing the need for multiple revisions of the format of the MCFE metadata during the lifetime of the project, a simple package specification based on the fifteen element Dublin Core has been developed. This approach should:

MCFE metadata elements

The sixteen MCFE metadata elements are shown in the following table.

Element name Element Description
Identifier Unique identifier of the note
Title The title or name of the note
Subject One or more keywords describing the content of the note
Description Free text description of the note
Creator The person(s) who created the note
Contributor Other person(s), such as editors and translators, who have made a significant intellectual contribution to the note
Publisher The agent or agency responsible for making the note available
Date Date of creation or modification
Type The type of the note, normally "MCFE field note"
Format The data representation of the note, normally "text/html"
Source
Language Language of the intellectual content
Relation Relationship to other resource
Spatial The spatial coverage of the note
Temporal The temporal coverage of the note
Rights Access rights governing the note

The Spatial and Temporal elements are particularly important in defining the context of a field note. They are often more complex than the other elements, having many different types and subtypes. We have therefore decided to treat them as separate elements, rather than following the Dublin Core approach of using a single Coverage element.

If it becomes necessary to include other contextual information from environmental sensors (e.g. temperature or humidity), new elements will be added following the pattern of Spatial and Temporal.

Using the MCFE elements

The structure of an MCFE metadata package

Each MCFE Field Note is formatted as a single HTML 'page' with the metadata embedded in <META> tags in the <HEAD>...</HEAD> section of the page. The typical syntax of a metadata element is as follows:
<META NAME = "MCFE.element[.qualifier]"
	CONTENT = "[(scheme=scheme_name)]element_value">

Within each field note, all MCFE metadata elements appear as a 'package' enclosed within a single pair of package.begin and package.end entries:

<META NAME = "package.begin" CONTENT = "MCFE Version 0.1">
  <!--# MCFE elements in here -->
  <!--# The order of elements within a package is free -->
<META NAME = "package.end" CONTENT = "MCFE Version 0.1">
Each MCFE package should also contain a <LINK...> tag referencing the URL of this page:
<LINK REL="schema.MCFE" 
    HREF="http://www.cs.ukc.ac.uk/research/infosys/mobicomp/meta/mcfemeta.html">
Individual element definitions may be located by appending #element_name to this URL. Some MCFE elements permit the use of other schemes. If any are used, additional LINK elements must be added to reference the appropriate scheme definition.

Example metadata package:

<meta name="package.begin" content="MCFE Version 0.1">
  <meta name="MCFE.identifier" content="MCFE134530908">
  <meta name="MCFE.title" content="An MCFE stick-e note">
  <meta name="MCFE.creator.name" content="Nick Ryan">
  <meta name="MCFE.date.creation" content="1997-04-07 01:41:00">
  <meta name="MCFE.type" content="MCFE stick-e note">
  <meta name="MCFE.format" content="text/html">
  <meta name="MCFE.spatial.point.3D" content="(scheme=OSGB) TR 13562 58591 47m">
  <link rel="schema.MCFE" href="http://www.cs.ukc.ac.uk/research/infosys/mobicomp/meta/mcfemeta.html">
<meta name="package.end" content="MCFE Version 0.1">


MCFE metadata element definitions

The following sections describe each of the MCFE elements in detail. Similarities with and differences from the current understanding of the Dublin Core elements are also discussed.

Element Name: Identifier
Usage: MCFE.identifier identifier
Example: <META name="MCFE.identifier" CONTENT="MCFE1234567890">

Notes:

See also: DC.identifier, Table of Contents


Element Name: Title
Usage: MCFE.title resource_title
Example: <META NAME="MCFE.title" CONTENT="MCFE Metadata Elements">

Notes:

See also: DC.Title, Table of Contents


Element Name: Subject
Usage: MCFE.subject [scheme] subject_keywords
Example: <META NAME="MCFE.subject" CONTENT="(SCHEME=RCHME) excavation">

Notes:

See also:DC.subject, Table of Contents


Element Name: Description
Usage: MCFE.description text
Example: <META NAME="MCFE.description" CONTENT="An informal definition of the MCFE metadata elements">

Notes:

See also:DC.description, Table of Contents


Element Name: Creator
Usage: MCFE.creator[.n][.type] creator
Example 1: <META NAME="MCFE.creator" CONTENT="Nick Ryan">
Example 2: <META NAME="MCFE.creator.e-mail" CONTENT="N.S.Ryan@ukc.ac.uk">
Example 3: <META NAME="MCFE.creator.2" CONTENT="Jason Pascoe">

Notes:


Valid type qualifiers include:

See also: DC.creator, Table of Contents


Element Name: Contributor
Usage: MCFE.contributor[.n][.type[.subtype]] contributor
Example: <META NAME="MCFE.contributor.funder" CONTENT="JISC">
Notes:


Valid type qualifiers are:
Valid subtype qualifiers include:

See also: DC.contributor, Table of Contents



Element Name: Publisher
Usage: MCFE.publisher[.type] publisher
Example: <META NAME="MCFE.publisher" CONTENT="MCFE Project, UKC">
Notes:


Valid type qualifiers include:

See also: DC.Publisher


Element Name: Date
Usage: MCFE.date.type date | datetime
Example: <META name="MCFE.date.creation" CONTENT="1997-04-22 18:32">

Notes:

See also: DC.date, Table of Contents


Element Name: Type
Usage: MCFE.type resource_type
Example: <META name="MCFE.type" CONTENT="MCFE field note">

Notes:

See also: DC.type, Table of Contents


Element Name: Format
Usage: MCFE.format form
Example: <META name="MCFE.format" CONTENT="text/html">

Notes:

See also: DC.format, Table of Contents


Element Name: Relation
Usage: MCFE.relation.type related_object
Example: <META NAME="MCFE.relation.childof" CONTENT="(identifier)MCFE1234567889">

Notes:


Valid type qualifiers include:

See also: DC.Relation, Table of Contents


Element Name: Source
Usage: MCFE.source[.type] source
Example: <META NAME="MCFE.source.ISBN" CONTENT="1-85032-115-9">

Notes:


Valid {type}s include;

See also: DC.Source, Table of Contents


Element Name: Language
Usage: MCFE.language [scheme] language
Example: <META NAME="MCFE.language" CONTENT="en">

Notes:

See also: DC.Language, Table of Contents


Element Name: Spatial
Usage: MCFE.spatial.type[.subtype] [scheme] spatial_coverage
Examples:

	<META NAME="MCFE.spatial.point 
		CONTENT="(SCHEME=OSGB)TR 13558 58585">

	<META NAME="MCFE.spatial.point 
		CONTENT="(SCHEME=OSGB)613558 158585">

	<META NAME="MCFE.spatial.point.3D 
		CONTENT="(SCHEME=UTM)31U 512558 4125850 480">

	<META NAME="MCFE.spatial.line 
		CONTENT="(SCHEME=OSGB)TR 13558 58585, TR 13610 59930">

	<META NAME="MCFE.spatial.bbox
		CONTENT="(SCHEME=OSGB)TR 13558 58585 TR, 13610 58662">

	<META NAME="MCFE.spatial.facing CONTENT="NW">

	<META NAME="MCFE.spatial.datum CONTENT="OSGB-1936">
Notes:
Valid types are:

Point, line, polygon and bbox types may be further qualified by the subtype "3d", indicating three-dimensional coordinates. A 3d coordinate is represented by a 2d coordinate, followed by altitude in metres (see spatial schemes below for details of coordinate formats).
Question: should we allow circle.3d? If so, do we assume the plane of the circle is horizontal, or do we require an extra parameter .

The datum type content is a name as found in the Datum list. This list contains ellipsoid and datum transformation parameters.

Valid schemes for point, line, polygon, circle and bbox types are:

Schemes other than the default should be referenced by including an appropriate <LINK...> element in the metadata package.

Geodetic datum content:

Note that although spatial coverage will often be derived from a GPS receiver, there is as yet no defined mechanism for representing raw measurement data for later use in post-processing, or for recording the accuracy of these or other locations. Further thought is needed to decide whether it is appropriate to store this information as metadata and, if so, how it should be represented.

See also: DC.Coverage, Table of Contents, MCFE.temporal, Datum list.


Element Name: Temporal
Usage: MCFE.temporal[.type[.subtype] [scheme] temporal_coverage
Examples:

	<META NAME="MCFE.temporal.date" CONTENT="1792">
	<META NAME="MCFE.temporal.date" 
			CONTENT="1997-04-22 14:35:05.550">
	<META NAME="MCFE.temporal.date" CONTENT="C4q3">

	<META NAME="MCFE.temporal.period" 
			CONTENT="1792-03-12 ~ 1997-04-22 14:35:00">
	<META NAME="MCFE.temporal.period" 
			CONTENT="C18 ~ 1997-04-22 14:35:00">

	<META NAME="MCFE.temporal.period.name" 
			CONTENT="(SCHEME=xxx)Carolingian">
Notes: MCFE.temporal is a repeatable field. The temporal coverage of the note content is given by the union of all of its MCFE.temporal records. The types, subtypes, schemes and formats suggested here are experimental and subject to change.

Acceptable type qualifiers are:

Acceptable content formats for date and period types are:

Periods are expressed as their start and end points separated by a '~' (tilde). Start and end may be a date, timestamp or century date, and need not be of the same format or granularity. Incompletely bounded periods, before or after a single date, are represented by omitting the start or end date: 'before 1500' is expressed as "~1500", after 1900 as "1900~".

Note that these formats support variable granularity time, but do not allow for uncertainty or expressions of confidence. For example, the date "1997" has a granularity of one year and implies a single event located somewhere during the specified year. This event occupies a single chronon, a duration of time that is less than or equal in length to the the granularity of the date. Events that have a known start and end should be expressed as a period, e.g. "1997-01-01~1997-12-31".

Valid schemes for date and period types containing timestamp values are:

Valid Schemes for date and period types containing date values are used to define the calendar:

Valid schemes for period.name types include:

Schemes other than the default should be referenced by including an appropriate <LINK...> element in the metadata package.

See also: DC.Coverage, Table of Contents, MCFE.spatial, period name list.


Element Name: Rights
Usage: MCFE.rights rights
Example: <META NAME="MCFE.rights" CONTENT="restricted">

Notes:

See also: DC.Rights, Table of Contents


Nick Ryan
Computing Laboratory, University of Kent at Canterbury, UK
N.S.Ryan@ukc.ac.uk