|
|
HYPERMEDIA
TIME-BASED DOCUMENT STRUCTURING LANGUAGE -HYTIME (ISO/IEC Draft
International Standard 10744)
Purpose
Typical
Applications
Features
Hytime
architecture and modules
Advantages
of Current Specification
Enhancements
to the Published Standard
Implementation
Issues
Purpose
The Hypermedia Time-Based Document
Structuring Language (HyTime) is a standard language for representing the
logical structure of documents with requirements for space and time based
coordinates and addressing. HyTime is based on SGML (ISO 8879), and uses the
grammatical and syntactical conventions of SGML. HyTime provides the
capability to package information objects using a standardized markup
language whose structure will enable non-sequential access, querying,
version control, and long-term maintenance despite system evolution or
migration.
By using the SGML/HyTime standards, the
application designer can create system independent files that are
transferable and interoperable across dissimilar computer applications.
HyTime provides architectural forms for the definition of SGML element
classes in SGML Document Type Definitions (DTD). HyTime does not provide a
DTD, as such, but instead, constitutes a meta-DTD from which conforming
application DTDs can be created.
HyTime is not yet a CALS standard. It is
perceived as a potential standard supporting future interactive, electronic,
hypertext and multimedia CALS applications.
Typical
Applications
The HyTime language can be directly applied
to hypertext (documents that enable multiple access paths) and multimedia
applications. These include the design and encoding of information for
Interactive Electronic Technical Manuals and Portable Maintenance Aids (IETM/PMA),
online review of existing documents both in and not in neutral formats, and
the creation of large interoperable hyperdocument libraries or design data
bases.
HyTime has potential applications in the
areas of project management, enterprise process design, discrete event
simulation, and music.
Features
HyTime is designed for modular application.
Features of the language which are not needed for an application need not be
supported. Depending on which features are supported, HyTime provides:
- Location addressing: a standard way of
encoding a system-neutral address of any information object or any part
of an information object within or external to any given document.
Addressing may be by name, position, or semantic property.
- Hyperlinking: models for hyperlink
classes independent of the number of objects linked to, and the context
of the link. One model even provides for attaching properties to
information objects that cannot be modified or over-written.
- Scheduling: synchronization and
alignment of information objects relative to one another. Information
objects are positioned within events on the spatio-temporal axes of a
Finite Coordinate Space (FCS). The axes of the FCS can be related and
can be named to match the context of the application. For example, the X
axis can represent a virtual time line as seen in a project management
schedule for project phases, and the Y axis can represent the real clock
time as seen by a calendar.
- Object Modification: Object modification
is scheduled by HyTime but must be applied by application-specific
functions. This enables the scheduling of rendering instructions in
other notations, e.g., PostScript.
- Event Projection: Events may be
scheduled and projected onto alternative finite coordinate systems and
scaled accordingly. For example, if a graphic in a document must be
rendered in a smaller area on a display screen, this projection and
scaling can be indicated by HyTime notation.
- Parsability: HyTime documents are
parsable by SGML applications; parsing checks for correct SGML grammar
and syntax as well as conformance of the instance to the DTD.
Hytime
architecture and modules
The modules of HyTime are:
- Base Module: includes hyperdocument
management facilities, SGML, identification facilities for replacing
HyTime-specific identifiers with user-defined identifiers with
provisions for name collisions, coordinate addressing for scheduling
dimensions, positions of events, and document locations addressing by
position. There is optional support for specifying activity tracking
policies by an activity tracking attribute that is part of the SGML
document, and for other basic utilities used to declare default
attribute values and definition tables.
- Location Address Module: includes
functionality to provide addressing of information objects without a
unique identifier within the current document's name space. Supports
addressing by coordinate location (discrete dimensions of arbitrary
universe), semantic location (by SGML attribute name or by
notation-specific address), or namespace location (SGML entities and
SGML elements in external documents).
- Hyperlink Module: uses five metaclasses
of hyperlinks to define application-specific hyperlink elements with
their own processing semantics. The link classes are:
- independent links can have any
number of link ends with optional end terms used as text or icons to
invoke the link,
- property links (two link ends which
associate an attribute name and value with an element),
- contextual links (two link ends, one
of which is a link's own location),
- aggregate location links link
multiple locations and treat them as a single location,
- span links allow contiguous
information to appear to be undivided by SGML markup.
- Finite Coordinate Space Module (FCS):
provides for scheduling of objects with optional projection and
modification modules. Event schedules define the position and occurrence
of objects. Objects occur in an FCS as the content of an event. An event
is a conceptual bounding box. Each event has a set of dimension
specifications for its position and extent on the coordinate axes of the
FCS in which the event schedule appears. The FCS coordinates can be
expressed in the terms of the application. Finite Coordinate Spaces can
be nested. For example, if a project schedule is modeled as processes
nested within processes, the FCS can be used to encode this nesting, the
relationship of time changes that occur within a process and the effect
of these changes on processes within which it is nested.
Advantages
of Current Specification
Users of HyTime-compliant systems can
incorporate active references within documents and to external online
documents. This includes referencing to non-HyTime documents. HyTime can
reference documents in multiple notation languages, e.g., IGES, VHDL, ODA,
etc. HyTime location addressing includes the capability to reference
read-only documents which is crucial to incorporating legacy data.
HyTime provides a standard way to represent
abstract time dependencies. HyTime's representation of time and space
measurements is the same and can be extended to any measurement domain with
any number of axes.
HyTime does not restrict the potential sets
of applications nor the application design except in the agreements about
how to express hyperlinks. This enables maximum interoperability of
hyperdocuments without attempting to standardize the information object
notations or modifiers.
Enhancements
to the Published Standard
The newest and most significant addition to
the HyTime published standard is the HyQ query language. It was added to
provide an alternative user interface (sanctioned by ISO) not only to HyTime
and SGML documents but non-SGML documents as well by using HyTime features.
Some of the recent technical changes to the published standard impact the
Content Data Model which must be revised accordingly.
Implementation
Issues
Non-HyTime notations used in scaling
factors cannot be executed by a HyTime system. Such notations might include
the potential for asynchronous interrupts by a user. HyTime has been created
by the ISO X3Vl.8M committee with much effort and time spent anticipating
conceivable applications. However, at this time, there are no full scale
commercial applications that can be examined to determine if the standard is
effective.
|