m

HypermedialTime-based Document Struc:turing Language

he computer and telecom- ment contains data consisting of exam- munications industries have ples of markup (for example, an made enormous progress in SGML document about SGML). communications technology stan- The proposed standard "HyTime" dardization in recent years. One Hypermedia/Time-based Document effect of good communications tech- Structuring Language (ISO/IEC nology is that people can concentrate Draft International Standard (DIS) on the information being communi- 10744), built on the Standard Gener- cated. More and more people are alized (SGML; realizing, however, that being able ISO/IEC International Standards to send and receive files containing (IS) 8879-1986), is designed to make information is not enough. all this possible. By using SGML/ It is desirable that all digital HyTime, all kinds of documents can documents explicitly indicate in a package their information content standard way what kind of notation using standard "markup." This is used in them. When an electronic markup provides information about document is created, its author the structure and notation(s) of the should be able to incorporate active document in a way that is under- references to other on-line documents standable or interpretable by any ("hyperlinks"l), regardless of the application that has been provided heterogeneity of their notations. In other words, there with an appropriate data importation facility. The should be a standard way to make "information about "structured" character of such documents will also information" interoperable. Such a standard should, make them amenable to nonsequential browsing, among other things: querying, access and version control, and maintenance over very long time spans. • provide a standard way to express the fact that any number of data objects in any number of different nota- The WOrld Of Structured tions are related in some way or for some reason. 2 Documents • provide a standard way to express the way in which The majority of the information stored by human any number of data objects in any number of dif- civilization is for perception by human beings? Most of ferent notations are intended to be rendered for human that information is fully formatted for immediate and perception in space, in time, or in both space and time? direct perception, and stored on printed pages. Some One method of incorporating information about the of it is fully formatted, but still requires the use of some information contained in a document is to use "markup ''4 mechanism to render it perceivable. In this category consisting mainly of "start tags" and "end tags" that are such items as magnetically recorded plain ASCII respectively precede and follow each logical portion of text files, PostScript files, digital video and sound a document. Tags must be specially punctuated so that recordings, etc. The rest of the information is stored the markup can be identified as markup when the docu- unformatted, but in such a way that is convenient to ment is parsed, and it can be processed separately from format, perform, or otherwise render for direct percep- the data which it surrounds. Obviously, the rules for speci- tion by human beings; databases and structured fying the punctuation that distinguishes markup from documents fall into the latter category. data must be powerful enough to ensure that the markup Structured documents are so named because the hierar- and the data cannot be confused even when a given docu- chical and sequential structure of the various kinds of Steven R. New¢omb, Neill A. Kipp, and Victoria 1'. New¢omb

COMMUNICATIONS OF THE ACM/November 1991/Voi.34, No.ll 67 • iv-a

information they contain is made ex- document is: "Show me the authors industry in its own right, very dis- plicit by identifying tags. Each tag and titles of the documents whose tinct from the hardware and sys- associates a "generic identifier ''L chapter titles contain both 'napo- tems industries, and in need of a the name of the kind of thing being leon' and either 'frosting' or way to protect its product invest- tagged (e.g., "subsection")--with the 'icing.'" ments from losing value as a result data surrounded by a start tag and Communities of interest can of changes in hardware technology. end tag of the same generic identifier. agree on a set of generic tags for One remarkable feature of Generic tags bear a superficial their documents, and they can HyTime is its ability to accommo- resemblance to the embedded for- thereby immunize their documents date and support musical informa- matting codes used by virtually all against the obsolescence of their tion in a fashion that will allow such text-processing applications, in that formatting systems, and at the same information to be completely inte- they occur mixed in with data, they time maximize the availability of grated with other kinds of informa- can affect the way the data are for- the information they have collec- tion: to share the same scheduling matted, and they do not appear in tively created. Moreover, the infor- facilities, to be hyperlinkable, etc. the formatted document. An exam- mation in generically tagged docu- Without a deliberate design effort ple of an embedded formatting ments remains available for uses toward a holistic hypermedia struc- code is one which causes the text on totally unforeseen when the docu- turing language, the representa- the following line to be centered, ment was created. A community of tional needs of whole areas of e.g., .oe in an nroff document. We interest can further agree about the human endeavor, such as music, might use such an embedded in- contexts in which each generis may could be unintentionally prevented struction to center the title of an appear, e.g., "no chapter titles may from participating fully in our in- article. However, generic tags and appear within any paragraph." The creasingly information-driven civi- formatting codes are philosophi- agreement can further elaborate lization. It seems unlikely that a cally in different universes. The each generis with a list of allowable single-industry-driven de facto stan- generic tags in structured docu- attributes and attribute values-- dard would be capable of incorpo- ments do not have the effect of as- information about a paragraph, for rating facilities that would meet the sociating some particular format- example, which is not part of the content of that paragraph. IThe word hyperlink is deliberately used in this ting instruction with some data. article instead of the more familiar bypertext That is, in the case of data tagged as jargon link because the word link has a special Why should there be a structuring a title, '.no particular formatting in- meaning in SGML. In SGML, a link is a con- language for multimedia and struct used to associate special processing in- struction is implied; the tags merely hypermedia documents? structions with portions of a document; it has identify the title as a title. How a People share common languages nothing to do with . title is to be formatted is entirely a because they need to communicate 2This is accomplished by the document loca- matter to be decided when the doc- with one another. A common struc- tion address module and the hyperlink mod- ule of HyTime. ument is formatted. turing language for hypermedia A formatting application for a documents is needed in order to SThis is accomplished by HyTime's finite co- ordinate space (FCS) module, including two generically tagged document can be permit human communications in FCS submodules, the event projection mod- driven by a "style sheet"--a table this relatively new combination of ule and the object modification module. that associates a set of formatting media, given that the computing 4Markup is so named because of its resem- instructions with each generic iden- environments we create for our- blance to the markings that editors make on drafts of paper documents. tifier, i[n the case of print docu- selves are now and will probably ments, title, for example, may be always be heterogeneous. 5Comparatively little information is stored in a form intended solely for machine process- associated with "boldface, 14-point, HyTime's design reflects the ing, e.g., as a succession of predicate calculus centered text" and paragraph with view that all multimedia and hyper- statements, or as an image of a neural net- "Roman, 10-point, ragged right." If text technologies, all graphics tech- work. a document is tagged generically, it nologies, all audio technologies, 6The phrase generic identifier is SGML jargon. It emphasizes the idea that the identifier is is generally unnecessary for anyone etc., regardless of whether or not used to say what kind of thing is being identi- to edit it in order to reformat it ac- they are proprietary, should be al- fied. It would be just as valid (but not in keep- cording to a different style. All that lowed to compete with one another ing with tradition) to say structural identifier, thus emphasizing the importance of is necessary is to use a different in a market environment which is of the kind of object being identified. style sheet with the formatting ap- technically able to accommodate 7Nroffis a venerable text-processing program, plication, s any combination of them in any in- usually supplied with Unix-based computer Generic tagging offers another formation product. It also reflects a systems. even more significant benefit: col- conviction that "software" (in the 8The SGML "link" feature (which, as noted lections of generically tagged docu- broadest sense that includes such previously, has nothing whatsoever to do with ments can be queried like data- things as movies, recordings, hyperlinking) does provide an explicit way to associate formatting instructions with the in- bases. An example of such a games, databases, news, etc.) is an formation contained in SGML documents.

68 November 1991/Vol.34, No.I1/COMMUNICATIONSOF THE ACM needs of as many human communi- ties of endeavor as a committee- developed public standard would. (Although it is often said that a camel is a committee's idea of a horse, there are many people who need camels for situations in which horses cannot function.)

Who is HyTJme for? If there is one industry for which HyTime was created, it is the digital information publishing industry, which now comprises a variety of industries that used to be compara- tively unrelated, and which now stand to benefit by participating in each others' markets. By using HyTime, information products can incorporate one another by refer- ence, and many companies can be- come value-added vendors of the products of other companies. In some sense, the digital information industry takes part in all industry. HyTime can be used as a means of integrating the information man- agement of a diverse enterprise, so that, for example, innovative ideas, their sources, and the obstacles those ideas have to overcome can be identified and tracked, despite the fact that different departments use different machinery and different software. HyTime can be used to or data notations. HyTime does always be produced by their own facilitate concurrent engineering provide standard ways of perform- management software, but there is and other forms of collaborative ing tasks many documents have to no way to guarantee that such re- research, because it can make the do, such as referring to portions of ports can be used as direct input to documentation and data of all the themselves and of other docu- the general contractor's manage- teams assimilable by all the other ments. There is nothing to be lost ment software. It is not necessary to teams without requiring anyone to due to the existence of a standard reinvent clocks, Gantt charts, man- give up his or her existing software for making such references, and agement algorithms, or project investments. Obviously, a HyTime- there is much for everyone to gain. management software in order to compliant import/export facility HyTime merely standardizes cer- allow the interchange of time de- will have to be added to each soft- tain rules for creating certain syn- pendency data. It is only necessary ware system before this can hap- tactical productions used to express to agree about how to express an pen. certain kinds of things. The rules abstract time dependency. HyTime are designed to be very general, contains a set of agreements about What HyTime IS Not, and What It Is very extensible, and very unlikely to how abstract time dependencies Care has been taken in HyTime's interfere with competitive product (and other abstract dependencies design to standardize only those differentiation in any way. based on measurement) can be ex- aspects of hyperdocument repre- Without HyTime, there is cur- pressed. These agreements were sentation whose standardization rently no standard way to represent reached by consensus of the indus- will improve the business climate abstract time dependencies. For tries involved in the standard- for all competing information ven- example, in the case of plans made making process. dors. No provision has been made in connection with large construc- Without HyTime, there is cur- for standardizing user interfaces or tion projects, progress reports from rently no standard way to express user interactions, query languages, subcontractors of large projects can the fact that some number of other-

COMMUNICATIONS OF THE ACM/November 1991/Vol.34, No.ll 69 -- I U h

wise unrelated data objects are re- text, or multimedia edit decision data objects are related. HyTime lated or connected in some abstract lists in order to allow the inter- contains a set of agreements about or exogenous fashion, i.e., no way change of hyperlinks. It is only nec- how hyperlinks can be expressed. to express a hyperlink. It is not nec- essary to agree about how to ex- Again, these agreements were essary to reinvent footnotes, hyper- press in documents the fact that reached by consensus of the indus- tries involved in the standard- making process.

HyTime and the Content Data Model Definitions (¢DM) for Revisable Interactive The following definitions apply to Electronic Technical Manual (IETM) terms used in this article: • a multimedia document is a parcel of Databases ...... information intended for human The U.S. Department of Defense (DOD) has been working to de- perception that uses one or more velop technology and document architecture for revisable data- media in addition to written bases in support of Interactive Electronic Technical Manuals words and graphics. The presen- (IETM:;) as replacements for paper technical manuals for logistic tation of the added media may support of military equipment [241. To hold costs down, to immu- nize IETM databases from obsolescence of presentation and que- occupy time, space, or both. rying systems, and to allow the information to be available on a • a hypertext document is a parcel of wide range of different types of machines (from mainframes to written and graphic information CD-ROM belt packs for use in the field), the DoD needs a standarcl intended for human perception, way to represent its technical data. These data include a large which can be explored and pre- number of cross references, access conditions, conditional sented in a variety of sequences, branchings, possible equipment configurations, etc.; IETMs are using a set of traversable connec- . With a hypertext standard in hand, the DoD can make tions usually called "links" (in this compliance with that standard a condition of its documentation article, "hyperlinks" to avoid con- contracts with its hardware and software suppliers. fusion). ThE~ SGML document type definition of IETM database docu- ments is called the Content Data Model (CDM) !15i. The designers • a hypermedia document is a multi- of thee C;DM chose to base its hyperlinking and document address- media document with hyperlinks. ing ~lcilities on HyTime. HyTime was adopted for a number of rea- The construction and traversal of sons, including the following: hyperlinks in hypermedia docu- • Cross Referencing ments poses special problems, A strong cross-referencing facility was needed. In the course of since it should be possible to link repairing a Piece of equipment, a technician may need to consult to some point with a video object, a large number of documents, and/or many different parts of for example. each document. • a time-based document is a docu- • Conditional Branching ment which specifies one or more TO identify a technical problem with a piece of equipment, a technician generally performs a number of tests, on the basis of time schedules to which its ren- which a diagnosis is made and a repair procedure is prescribed. dering is meant to conform, e.g., The manual must outline each step of the testing and repair pro- musical scores, animation cedure, and there must be a specific series of steps to be taken storyboards, plays, and business for each possible problem. The CDM ern ploys HyTime hyperlinks to presentations. represent the possible branchings. • a space-based document is a docu- • Multiple Hierarchies ment which specifies a two- or HyTime can be used to impose an alternative structural hierar- three-dimensional finite coordi- chy upon a read-only document, by creating a set of hyperlinks in nate space, and which specifies another document. This feature was regarded as highly desirable the relative positions at which the due to the large number of anticipated CDM applications uses, and the enormous amount of "legacy data" involved. objects contained in the docu- • References to Multimedia Objects ment are to be rendered. Exam- M~lny IETM documents will have to contain multimedia objects, ples include displays on com- including motion videos demonstrating inspection and repair pro- puter screens comprising blocks cedures, audible spoken instructions, etc. HyTime's standardiza- of text, graphics, and icons with tion of references to digital multimedia Objects in all notations "screen real estate" allocated to will greatly lessen the difficulty and cost of preparing IETM docu- each block--plans for stage sets men,ts for presentation on various platforms and for use in vari- which allocate space on the stage ous contexts. for each property; etc. • HyTime is a proposed standard

70 November 1991/Vol.34, No.ll/COMMUNICATIONS OF THE ACM language for representing the the province of the renderer, or the a more flexible and abstract scheme structure of multimedia, hyper- creator of "style sheet" information. was developed, in which each text, hypermedia, time- and HyTime allows an author to control HyTime GI became a "HyTime space-based documents. 9 the rendition by expressing pro- architectural form"--each GI be- HyTime is a collection of abstract cessing instructions as integral parts came a fixed value of a I-I3grlme at- semantic constructs associated of the work. 1° tribute. It then became possible to with syntactic conventions. It al- consider each HyTime architec- lows hyperdocument interoper- HyTime's "Architectural Forms" tural form an object class, identifi- ability to the maximum extent Architecture of SGML Documents able by the value of its HyTime at- possible without standardizing The architecture of an SGML doc- tribute. By including the HyTime multimedia objects, their nota- ument is expressed in its Document attribute and conforming to the tions, their modifiers, the effects Type Definition (DTD). The syntax model for a particular HyTime ar- of those modifiers on them, or is expressed as a set of elements, chitectural form, document archi- the semantics of link types, and each with its own generic identifier tects can create limitless numbers of without requiring existing docu- ("tag"), an optional set of attributes subclasses of each such HyTime ments to be recast in order to and attribute data types, and a class. 13 Using the HyTime Archi- make their contents linkable by "content model"--a BNF-like pro- tectural Forms, a DTD can be cre- HyTime documents. HyTime- duction stating what sort of data (or ated which incorporates only those compliant documents can allow other elements, recursively) can be semantics of HyTime that are HyTime-cognizant software to placed inside each element. For needed (see Figure 1). browse, render, format, and example, a book element may con- query them even if that software tain several section elements, a sec- HyTIme's Modules is not able to understand or tion element several paragraph ele- HyTime is designed to be used render its multimedia objects. If ments, and so on, until the terminal modularly (see Figure 2). Only the notation of an object is unin- recursive element contains charac- those portions of HyTime which terpretable because no interpret- ter text. The document architect are appropriate to a given docu- ing system is locally available for has complete control over all these ment or application need be sup- it, the rendering can still incorpo- features. 11 ported. A HyTime document may rate some form of blankness-- only be a multimedia document, or darkness, silence, or an appropri- Early versions of HyTime it may only be a hypertext docu- ate error message--so that the Early versions of HyTime were in- ment, or it may only be a time- space and time relationships of tended to be included verbatim as the rendered and unrenderable an SGML public text entity l~ into 9HyTime'srepresentation of time and space is objects is preserved. the same for both the time and space mea- another, more application-specific surement domains, and it can be extended to DTD. Each of the early HyTime any other measurementdomain. Any mani- elements came with its own seman- fold, combiningany measurable domains on HyTIme Syntax and Semantics any number of axes (e.g., seconds, meters, Essential Information vs. tics (documented not only within moles, lumens, grams, dollars) is represent- Rendering Instructions the DTD, but also in the appropri- able as a HyTimeFinite Coordinate Space. Of ate ANSI and/or ISO/IEC stan- course, the usefulnessof some of the possible When a definition of a document combinationsis probablygreater than that of type is created, a distinction is made dard), its own attribute list (which others. between information and render- could be added to, but not usually I°Rendering instructions are given in ing instructions. This can be a rela- subtracted from), and its own ge- HyTime batons and wands. See subsections: tively straightforward distinction in neric identifier (GI). The GI of "Event ProjectionModule" and "Object Modi- the case of many types of tradi- each element could not be fication Module." tional print media documents, changed--it was the means by lilt should be noted that SGML only stand- which it would be recognized as a ardizes the metasyntax of an SGML docu- where all the data consist of print- ment. It does not standardize the syntax-- able words and punctuation. In the HyTime element by a HyTime- that is what a DTD does--and it does not pro- case of multimedia, hypermedia, compliant application. Ultimately, vide any way to express or enforcethe seman- tics of an element, even though the document and time-based documents such as the committee abandoned the idea architect may have some very specific seman- music, simulations, and process that HyTime should be a DTD, tic in mind. The only way for a document because such a scheme had the ef- architect to express the semanticsof each ele- models, the distinction is much less ment and attribute within the DTD itselfis to clear. In such documents, the ren- fect of legislating GIs, thus reduc- insert appropriatelydelimited comments in it. dering of the information is often ing the expressive power of SGML. Ignored by SGML parsers, such comments indicate the intent of the architect only to critical to its understanding. Only human readers, thus helping document au- the author or composer can know Architectural Forms as Object thors to use a DTD appropriately. what rendering information is es- Classes 12See the sidebaron SGMLfor an explanation sential and what should be left as Instead of making HyTime a DTD, of the term SGML entity.

COMMUNICATIONSOF THE ACM/November 1991/Vo1.34, No.ll 71 • Wa based or space-based document, or it may be any combination of the foregoing. The primary modules support basic utility functions (the base module), the indication of segments of information, wherever they may be, (the location address module), the expression of hypermedia links, anchors, L4 and webs x5 (the hyper- link module), and the specification of space and time relationships (the finite coordinate space (FCS) mod- ule). Two additional modules can be added to the finite coordinate space module: the event projection module and the object modification module. The latter are used to specify the rendition of HyTime documents. The base module must always be supported by any HyTime-compliant system. In ad- dition, under most circumstances, at least one of the other modules must also be supported in order to : use( take advantage of HyTime's stan- end dard semantics. ana

Base Module The base module (see Figure 3) in-

lSThe SGML mechanism used to implement the notion of architectural form is the #g£XED attribute value data type. When an element is defined in a DTD as a subclass of a given HyTime architectural form, that ele- fill!flies ment definition is provided with an attribute list containing an attribute named I-l.b'Ttmo, whose value is fixed as the name of the HyTime architectural form to which the ele- SGML DOCUMENT ment conforms. This has the effect of perma- nently setting the value of the HyTime attri- bute to the specified value, in all instances of PROLOG that element. The document architect must make the attribute list (and, in some cases, the DTD content model) of any HyTime element con- form in all ways to the HyTime architectural DECLARATIONS data file form named as the fixed value of the HyTime attribute. ENTITY name= 14Anchor is well-established hypertext jargon local data file address meaning ,either (1) a section of data which is designated as an end of some hyperlink, or (2) ,,,- NOTATION name= a section of data which might be designated as local in terpreter address i: ¸¸¸/i an end o:[" some hyperlink. In HyTime par- lance, anchor has only the first definition, and the phrase document location is used instead of anchor to describe the data indicated by any i!i iii iii il i ~ document location address element, when- DOCU MENT CONTENT ever there is no implication that the indicated information constitutes a link end. - ENTITY reference 15Web is hypertext jargon meaning "a set of links." It is sometimes useful to create a docu- ment containing nothing but hyperlinks. As- suming there is some reason for all the links SGML Document on the LOCal File System to occur in the same document, the document might well be termed a web.

7 2 November 1991/Vol.34, No.ll/GOMMUNIGATIONSOF THE ACM cludes facilities that underlie the File System.") SGML also allows references to exterr facilities of other modules or that which process the data in an entity. Declarations of are (sometimes optionally) available notations are used to associate interpreting system regardless of which of the other a C compiler, or a Digital Video Interactive presenta modules are supported. The base with entities containing information notated in a fa may not be parsable as SGML. module includes: Important as the SGML entity management facilit3 • hyperdocument management facili- ordinary text flies, it Is even more important In mul ties, required for all other hypermedia documents comprising many files in m~ HyTime facilities: SGML itself, verse notations. Porting such documents from one with all its inherent representa- sentation system to another should not compromis Integrity, and proper use of SGML can guarantee th; tional and document manage- ment conveniences. Why use SGML? There are a number of reasons why # HyTime identification facilities, and private enterprises have turned wholeheartedl~ which permit the replacement of document methodology as a general solution for tr HyTime-specific identifiers with tion-handling problems. user-defined identifiers. These Information whose only format is an explicit expr, required facilities allow name col- abstract structure is maximally available and recycla lisions, however unlikely they documents are amenable to certain very general kif may be, to be corrected without ing, Including querying and browsing. That means t compromising the integrity of kindS of applications can be used with the entire cc documents. Furthermore, it is unnecessary to devel any document or application. software for each DTD. All SGML documents can be • means for specifying application- single validating parser which need only determine defined expressions, called given document conforms to a given document ty~ xenoforms, in such a way as to Prevalidatlng documents before formatting them r( identify the notation used. This is tlng applications of a significant burden of error ch a required facility. Xenoforms many causes of formatter failure can be avoided wi are combined with other HyTime proofing the formatter. architectural forms, wherever they were felt to be useful, and/or Who Uses SGML? where there was little point in CALS. Perhaps the single most economically signiflc; of SGML today is the U.S. Department of Defense's ( providing a standard means of aided Acquisition and LOgistic SUpport (CALS) Initiati expression. CALS, many defense contractors (including aircraft • coordinate addressing facility which facturers) are required to supply all technical and allows the dimension(s) and posi- information about their products In SGML form. Stn tions of events, etc., to be sched- ment technology is used to avoid reformatting cos1 uled, and allows document loca- time comes to convert its paper maintenance mant tions to be addressed by position. form, to be delivered as "Interactive Electronic Tecr This facility is required when to military technicians on "Portable Maintenance AI coordinate location addressing (see the sldebar, "HyTime and the Content Data MO (see subsection "Addressing by The DoD also plans to use the same technical data i that, for example, a query about the applications of Position") and/or the finite coor- sembly, or about the service procedures involving t dinate space module (see section some part, can be made. "Finite Coordinate Space (FCS) Module") is supported. Other Users of SGML. There are many nondefense ar • optional means for specifying activity- SGML, Including the proceedings of the European P, tracking policies. HyTime's loca- Oxford English DiCtionary, the Text Encoding Initlati~ tion address and hyperlink mod- dented academic effort involving the SGML coding ( ules are designed to allow literally dOus amount of literature), and at least one scholar anything to become an end of a CD-ROM-based bible. SGML is being studied and app hyperlink. While it is desirable, ans and scholars serving several scientific discipline various medical fields (e.g., pharmacology, patient r necessary, and technically possi- agement, biochemistry). SGML Is enthusiastically em ble to allow such linking, hyper- air transportation Industry. In general, the attractlw links to real-world objects are as a representation tool for a particular body of Inf~ subject to a kind of entropic deg- creases as that body of information becomes more radation, because the linked-to complex, important, and long-lived. information is subject to change. As a practical matter, it is impos-

• OMMUNI•ATIONS OF THE A•M/November 1991/Vol,34, No.ll 73 ' H • V'- I

sible either to prevent such deg- tions among document owners policy" element. The activity- radation or to adapt to it in a and editors, and users, creators, tracking policy element can asso- timely fashion without the coop- anthologizers, etc. ciate policies with any combina- eration of the owner and/or edi- tion of the following activities tor of each linked-to document. Any element in an SGML docu- with respect to the element: (1) HyTi:me mitigates this problem ment can have an "activity-track- creating, (2) modifying, (3) link- (and others) by providing a stan- ing" attribute, which functions as ing, (4) accessing, and (5) delet- dard ,Nay to establish communica- a pointer to an "activity-tracking ing. For each activity, there can be a policy expressed in a xenoform. The activity-reporting facility can be used by the author of a document containing a hyperlink to inform the owner of the linked-to document of the exis- tence of the link, and to request notification in the event that the document (or element, etc.)is revised. It could be used by an appropriately equipped commu- nications system to determine who should be billed and who should receive the royalty in cases where a link is traversed to infor- mation for which there is an ac- cess charge. The applications of activity reporting in collaborative research endeavors are many. They can be used as a means of collecting opinions, approvals, comments, and links to other rel- "! '2", '-"...."...... +:',.-,. . evant material. The access policy A HyTIme-compllant document type definition (DTD) Is created using HyTIme architectural forms. Although like any other SGML DTD, It con- can be used for security pur- slsts of user-defined elements and attribute lists, some of these ele- poses, to withhold information ments and attribute lists must conform to HyTIme architectural forms, from unauthorized persons, and/ which may be combined and/or embelllshecl as needed. or to report each access. Access reporting can also be used to de- velop information about the use- fulness of the document, and whether it is being used as its au- thor intended. other optional basic utilities in- tended to provide syntactically economical means of declaring default attribute values and defi- nition tables.

Location Address Module SGML provides a simple way to refer to particular elements in the same document, using its "unique identifier" facility. An identifier (#ID) attribute data type can be used to provide any instance of an element with a name unique to that '-: ...... --.:--- --.-.-: .... ;- - -i ...... HyTIme's modules. Connecting lines slope downward to dependent instance. The uniqueness of the modules. identifier is guaranteed only within

74 November 1991/Vol.34, No.ll/COMMUNICATIONS OF THE AC:M the current local document. There- fore, each document is said to have its own "name space." Addressing is accomplished in this case by using an "identifier reference" (#IDREF) attribute data type, the value of which is the same as the value of the #ID-type attribute that appears on some other element within the same document (i.e., the same name space). In addition to allowing unique identifiers to be associated with ele- ments, SGML provides a way to name "entities" (files) and to associ- ate convenient identifiers ("entity names") with their addresses on any given computer system or network. These entity names are also guar- anteed to be unique within a given document. Using the SGML #1D-#1DREF mechanism alone, it is possible to represent the addresses of hyper- text link endpoints in a standard fashion without the extensions pro- universe by their position in that vided by the HyTime location ad- HyTIme's base module universe. HyTime's universes are dress module. 16 However, the use- bounded areas, which are mea- fulness of the #ID-#IDREF tion it contains to "resolve" the ad- sured in countable atoms called addressing method is limited: only dress, i.e., to recover the informa- quanta. (This is discussed in more the contents of entire elements tion pointed at by the address detail in "Finite Coordinate Space within the same local document can element. Address elements can be (FCS) Module.") be addressed, and then only when cfiained and aggregated according All forms of position addressing those elements are provided with to the nature and complexity of the employ the same "quantum-count" unique identifiers. HyTime ex- addressing job. specification scheme used for a va- tends SGML's reference capability HyTime supports three kinds of riety of purposes throughout the to accommodate those cases in addressing: (1) by name, (2) by po- HyTime standard. The dimen- which no unique identifier for an sition in a coordinate space, and (3) sion(s) and position of the indicated information object exists in the by semantic construct. (See Figure location are specified by counting local document's name space. 4.) from the beginning or end of a co- HyTime provides location address ordinate axis, or by reference to (i.e., pointer) architectural forms, Addressing by Name some other location already speci- which have unique local identifiers, HyTime's named location address ar- fied on that axis. A dimension spec- and which contain the information chitectural form provides a way to ification may be defined in terms needed to accomplish the task of address named SGML entities and relative to some other existing di- locating the data. uniquely identified SGML elements mension specification. When a hyperdocument author in external SGML documents. It wishes to refer to an object which sets forth the information an appli- • String location addresses allow the does not have a unique identifier in cation will need to locate the file, to specification of substrings. The the local name space, that author establish a parsing context accord- substring is defined by specifying can create a location address ele- ing to the appropriate prolog, and that the quanta are "bit combina- ment which pairs the object in ques- to retrieve the named element or tions" (e.g., ASCII characters), tion with a unique local identifier. entity. and then by giving values resolv- A HyTime-conforming application able to a starting position and a will recognize the identified ele- Addressing by Position run length on the parent string. ment as an address element, and it HyTime allows addressing of ob- • Token location addresses are like will know how to use the informa- jects in some arbitrary measurable string location addresses, except

COMMUNICATION8 OF THE ACM/November 1991/Vol.34, No.ll 7 5 H

location ) address module space I

location named

list semantic ) location

class

-~ielmlll t ...... HyTIme'$ location address module. Basically, there are three kinds of addressing: by position (coordinate location), by semantic construct (semantic location), and by name (namespace location). Support of features In Italics; Is optional.

that the quantum is some data location address element pro- SGML. For example, one can combination defined as a token, vides a way for a portion of the imagine an expression in some e.g., a word in a natural language object to be identified when the application-specific query lan- delimited by whitespace. object's notation is unknown, or guage for extracting objects from • A tree location address allows a por- when only the rendition, and not data objects notated in some ap- tion of a hierarchy to be identi- the source notation, is available to plication-specific page descrip- fied by specifying target levels by the author. Obviously, it would tion language, to the following counting levels from the root, often be preferable to use a nota- effect: "Please give me only the and then by specifying siblings, tion-specific location address, if third polygon from the left. 'q7 counting on the chosen level(s) possible, because greater specific- from left to right. The quantum ity would usually be possible. Hyperlink Module is a node. There are five kinds of hyperlink • Path i!ocation addresses allow a por- Addressing by Semantic defined by HyTime, which were tion of a hierarchy to be identi- Construct designed to meet most general as fied by specifying terminal nodes, HyTime provides two architectural well as some specialized hyperlink- counting left to right (thus estab- forms which allow semantic ad- ing needs: independent link (ilink), lishing a unique path or paths), dressing: property link (plink), contextual link and then specifying a range of • An attribute location address points (clink), aggregate location link (ag- nodes, counting from the root to to the value of an SGML attribute glink), and spanlink (see Figure 5). the leaf on those unique paths. by attribute name; alternatively it Since each of these is an architec- Again, the quantum is a node. may point to a generic identifier. tural form, a limitless number of • FCS location addresses (discussed in different hyperlink elements, each "Finite Coordinate Space (FCS) • Notation-specific location addresses with its own semantics, may be de- Module"), allow the specification allow a subset of the data con-

of a portion of a media object, tained in some larger data object 16There are several implementations of such as a photograph, by impos- to be identified in a fashion which SGML-based hypertext systems using the ing a Finite Coordinate Space on requires the use of a system capa- SGML #ID-#IDI~F mechanism, and at least some actual or hypothetical ren- ble of interpreting the data. Nei- some are commercially available. dition of the object, and then by ther the data nor the expression lVNotations used to address SGML docu- ments, such as DSSSL addresses or SFQL identifying the desired portion as used to extract the subset of those queries, could also be used as notation- a region of that FCS. The FCS data need be interpretable as specific location addresses.

76 November 1991/Vol.34, No.ll/COMMUNICATIONSOF THE ACM fined for any number of applica- appear to be undivided by any (see Figures 6 and 7). tions. intervening SGML markup. As an example, a spanlink can be Finite Coordinate Space (FCS) • Independent links (ilinks), the most used when it is necessary to pro- Module general-purpose hyperlink archi- vide a read-only document with In HyTime, an object is ultimately tectural form, can have any num- what amounts to markup that any sort of information at all. An ber of link ends. Link ends may conforms to a DTD other than object may consist of xenoform no- point to anchors directly, using the one originally used. is tation data; such as digital video the ordinary SGML #ID- and/or audio, a graphic object, a #1DREF method, and they may Finite Coordinate Space (FCS) program 1° or script, etc. 2° An ob- also point to them indirectly, by Module ject may also be character text data; using the #ID-#IDREF method The finite coordinate space (FCS) to point to location-addressing module provides for the scheduling 18Spanlink could be used, for example, to elements, which contain more of objects. Optional projection and apply versification markup to an SGML- represented Shakespearean play, in which the elaborate addressing information modification modules, for which (see previous subsection "Loca- original markup ignores versification and the FCS module is corequisite, pro- only identifiesthe speeches in terms of which tion Address Module"). HyTime vide mechanisms for controlling or actors are supposed to say them. Without also provides a way to specify spanlink, it would be very inconvenient to guiding the rendition of scheduled mark up verses that run across speaker which link ends are ends from documents (or parts of documents) boundaries. which a traversal can be initiated, and which are ends from which a return can be made. Each link end can be associated with an "end term," which could be some text or an icon to be displayed as a user-selectable "button" which may be "pressed" by a user to ini- tiate traversal of the hyperlink. • Property links (plinks) always have just two link ends, and their pur- pose is to associate a property (i.e., an attribute name and value) with an element. Plinks are useful when a property cannot be associ- ated with the element in the nor- mal way (e.g., in cases of elements of read-only documents). • Contextual links (clinks) always have two link ends, and one of pro..unl| m.._. them is the clink's own location in Hyperllnk module the document. Clink is the only form of hyperlink whose own lo- cation is assigned a specific mean- ing by HyTime. Clinks could be used in text for footnote refer- ences, or, for example, in the context of an FCS event schedule (see "Finite Coordinate Space (FCS) Module") to link an event or event group with something else. • Aggregate location links (agglinks) link multiple locations together in such a way that they are treated as a single aggregate location. • Span links (spanlinks) allow the PlGU|III 6. parsed information contained in Finite Coordinate Space (FCS) modules. BOth eventproJectionand ob- contiguous SGML elements to Ject modification are optional dependent modules.

COMMUNICATIONS OF THE ACM/November 1991/Vol,34, No.ll 7 H ' W'i I

such data may or may not be par- real measurement units, such as rate at which virtual units of time sable as SGML. loaves of bread, is variable in some (musical beats) are converted into ObjeclLs in a HyTime finite coor- application-defined fashion. real time. Batons are schedules of dinate space occur in that space as There is no constraint upon ap- proscopes in the same way that the content of events; an event is a plication developers to use only the evscheds are schedules of events. nominal conceptual bounding box measurement granules mentioned The content of a proscope is called for an object. Each event has a set in the HyTime standard. a projector; the relationship be- of dimension specifications (like An FCS may contain any number tween proscope and projector is those used in location addressing by of event schedules (evscheds), and similar to the relationship between position) that specify its position each event schedule may contain event and object. As with the ob- and extent on the coordinate axes any number of events. How the jects contained in events, HyTime of the finite coordinate space in events are organized on event may or may not understand a given which the event schedule (ovsched) schedules, and how the event projector. If a projector is in a for- containing the event appears. schedules themselves are orga- eign notation, a HyTime engine In ca,;e an object is not readily nized, is left to the discretion of may have to ask the application to renderable within the bounding application designers. work out the location and extent of box of its event, HyTime provides a the projected events. However, cer- Event Projection Module way to express alternative extent tain commonplace kinds of projec- The event projection module's fa- reconciliation strategies. tion, such as projection by constant cilities are used to specify how the Positions and extents of events in ratio, can be expressed in HyTime. an FCS are specified in terms ap- positions and extents of events in one FCS (the "source FCS") are to propriate to the FCS. Every FCS Object Modification Module be mapped onto another (the "tar- establishes a specific measurement The object modification module get FCS"--see Figure 8). For exam- domain, and a reference unit is de- provides a way to specify the or- ple, a source FCS of two dimensions fined for each of its axes. All di- derly application of object modifi- might be a large mosaic of square mension specifications are made ers (see Figure 8) and combinations events, each nominally correspond- using quanta that are fractions or of object modifiers. A wand is a ing to a square meter of the state of multiples of the reference unit. schedule of modsoopes in the same New Jersey. (For purposes of this For example, a document archi- way that a baton is a schedule of example, we will ignore the fact tect may choose the Syst~me Inter- prosoopes. A modscope expresses that our planet is spherical.) In the national (SI) meter to be a refer- the range of the effect of the modi- source FCS, each event has a spe- ence unit, and use millimeters, for fier it contains in terms of the cific position and extent which is dimension specification. source FCS. Objects or parts of ob- described in terms of measurement HyTime is provided with many jects in events occupying the same granules called meters from the ori- declarations of dimensional quanta region in the source FCS as that gin of the FCS. Each event contains based on the SI meter and the SI occupied by a given modscope will an application-defined object which second. Some prosaic examples in- be affected by the modifier occur- describes that particular plot of clude: land. If we wish to render a map of [gSuch a program could be used to mediate New Jersey, a simple projector, • a centimeter is ~0 of a meter user interaction, for example. (e.g., 10,000 "meter" granules in • an inch is 2.54 centimeters (an the source FCS to one "centimeter" 2°Objects are not always entirely uninterpret- international standard value, not able by HyTime. An object can also be a re- granule in the target FCS), could an approximation) cursive finite coordinate space element, for have its effect over the entire example. t a minute is 60 seconds source FCS, or different prosoopes • a millisecond is 1#00 of a second 2XThe missing o is not a spelling error. While could be used to bring different SGML is capable of handling identifiers of any length, the "Reference Concrete Syntax" In addition to quanta of real projectrs 2~ to bear on certain parts defined by ISO 8879-1986 allows a maximum measurement (e.g., second, inch), of the state, to allow more (or less) of only eight characters for each identifier. HyTime allows the declaration of detail to be shown for specific areas. Since the Reference Concrete Syntax consti- tutes the minimum set of requirements which virtual measurement domains with The target FCS constitutes a "ren- all SGML systems must meet, all HyTime quanta defined in terms of units of dering, ''22 or particular rendered identifiers have been limited to eight charac- virtual time and virtual space. Virtual ters for the sake of minimally conforming instance of the source FCS--for parsers. However, if conforming to the Refer- measurement units are "figures of instance, an exploded view of At- ence Concrete Syntax is not required, an al- merit" in much the same way that lantic City. A schedule of pros- ternative concrete syntax can be declared. dollars are: they mean something copes is called a baton. The baton 2~Actually, a HyTime engine does not with re,;pect to themselves (two dol- appellation is a metaphor for the "render" anything. It only creates application- lars are worth twice as much as internal data structures which are intended to baton of an orchestra conductor; an allow applications to render an FCS in some one), but their rate of exchange to orchestra conductor determines the application-specific fashion.

78 November 1991/Vo1.34, No.ll/COMMUNICATIONSOF THE ACM ring in that modscope. Perhaps the most important difference between specifying specifying event projection and object modifi- scheduling scope scope cation, at least as far as implement- objects In of object of event ers of HyTime are concerned, is events: modifiers: projectors: that HyTime does far less to stand- EVSCHED WAND BATON ardize the semantics of object modi- fication than it does to standardize the semantics of event projection. Schedules of object modifiers are I (somewhat whimsically) called event modscope proscope wands because, while batons trans- form scheduled events (constructs fully defined by HyTime), wands act on the objects within events, and neither the semantics of modifiers nor objects are defined by HyTime. 2a The modification of objects has no impact on the posi- tion or extent of the events in which they occur.

HyTlme Document-Processing Three kinds of schedules are used In finite coordinate spaces. MOdel ~vsehe~s contain e~e~ts, whiCh contain objects. ]~re,,tS define the HyTime is designed to help appli- position and extent of occurrences of objectS. If the object modlflca- tlon module Is supported, wa~s may be used. They contain cations developers avoid duplica- •-o~seo]~es which In turn contain ,,,o~-~e~s. The positions and extents tion of effort, and to minimize the of mo~LsCOl)es define the areas of the finite coordinate space to be difficulty and complexity of making governed by the -,o~U~ets they contain. Finally, If the event projec- their applications conform to the tion module Is supported, batons may be used; they contain ]~osco]~es which In turn contain ]~zoJe~rS. The positions and extents of standard. It is anticipated that l~o=copes define the areas of the finite coorcllnate space to be gov- "HyTime engines" will be used by emed by the ]~zoJe~s they contain. systems integrators and applica- tions developers, who will incorpo- rate them into their applications. The conventional HyTime pro- cessing model puts the application in control of everything that hap- pens. When it is time to process the iiiiiiiiii HyTime document, the application calls the HyTime engine, which in iii~iiiil;i ! i i!!ili!i!!iliiii)i!ii!i!ii!i!i!i turn calls the SGML parser. As it is parsing the document, the parser ;!iii~i!;!i!ii~i iiiiiii!!iiii!ii!ii!ii!!iiiiiii!ii!iji!!]i informs the HyTime engine about !~''~:~:,::::!!:!ii::!i!i!ii:;!)iii:;!'ii:::~)ve~i:iiiiiiii)i~ili) ))))))))))))))) ))))))))) everything that it encounters. 24 ))))));) )) ) )) ;)));)))) While this is going on, the HyTime engine does two things: ))))))}))))})))))))))) ))))::;)66i66)i6))))));)] ;))L);))))))II)))))))));;L~))~)~i~)k)))L)))))I • The engine passes the entire out- )))))))):)))i))):));i)))i))))):))!):)))j)))))J))!i)i)))!)i)ii))):))i put of the document back to the application. The application uses this information as it sees fit, and );:)) it may ignore it entirely.

~STherefore, HyTime "understands" batons quite well, but wands are magic.

~4There is no standard regarding the format of the output of an SGML parser. The nature Rendering In HyTIme: As an event Is rendered, the object It contains of that output is an aspect of SGML technol- may be affected by a modifier, and Its position and extent may be al- ogy which is left open for vendor competition. tered by a projector.

COMMUNICATIONSOF THE ACM/November 1991/Vo1.34, No.ll 7~ • ilUllUlll L and it evolved out of at least one world of structured document rep- HyTIme document processing predecessor system, Hebrew chant, resentation, concepts from the hy- model which is far older. Even (and per- permedia world, and certain no- haps especially) today, there is tions about the specification of • The engine creates an engine- probably nothing more compli- rendering intentions borrowed internal data structure based on cated and demanding than produc- from the music world, HyTime is the HyTime-specific information ing a live musical comedy with an nothing more or less than a set of arriving from the parser. orchestra, lighting, special effects, expressive mechanisms designed to After the document has been and an array of potentially conflict- allow the publishing industry to parsed, the application may query ing personalities and artistic agen- create and deliver more intricate, the HyTime engine in various ways. das. Military people may disagree more interactive, and more valu- The engine assumes responsibility and claim that producing a musical able documents while reducing the for determining where things are comedy is almost trivially easy com- risk of early obsolescence and loss on FCS schedules, for resolving pared with waging a military cam- of investment. document location elements to the paign. NASA people might claim We nourish the hope that, by data they indicate, etc. that nothing at all can compare with making information more easily Although HyTime was devel- building a space vehicle and accessible and organizable, and by oped with the aforementioned pro- launching it successfully. We live in making it practical for purveyors of cessing model in mind, there is cer- an extremely complex civilization, multimedia information to address tainly no reason why other and in all three cases (musical com- the entire marketplace with a single processing models would not be edy, military campaign, and space well-honed and well-maintained more useful under some circum- mission), the problems are actually document, HyTime will have a sal- stances. HyTime is only a set of quite similar, though the stakes dif- utary effect on the quality of mechanisms, not a religion. fer considerably. They are all con- human life. This hope seems realis- cerned with making all the right tic, considering the effect that glo- Conclusion things happen at all the right times, bal telecommunications is already To some, it seems incongruous that despite the large number of people having on the global political and something as general as HyTime and systems involved, and the com- economic climate, and considering should be derived from an activity plexity of the interdependencies the magnitude of the improvement intended to result in a Standard involved in the enterprise. Civiliza- in communications that a standard Music Description Language. To tion itself can be seen as an inven- such as HyTime can facilitate. others it seems natural, necessary, tion whose mother is the necessity and entirely correct. Musicians for predictable outcomes despite Acknowledgments have been dealing with the prob- unpredictable circumstances. Un- The following persons have each lems inherent in synchronization predictable circumstances require made especially significant contri- and reaL-time rendering of complex contingency plans and the ability to butions to the effort to make SMDL documents for a long time. Indeed, execute the correct course of action and HyTime a reality: Salim Abi- Western music notation, as we when the time comes (i.e., a "late Ezzi, Larry Austin, Steven V. know it today, has been continu- binding" capability). Bertsche, Carsten Bormann, Gar- ously evolving for over 1,000 years, A fusion of concepts from the rett Bowles, Rita Brennan, Len

~O November 1991/Vo1.34, No.ll/GOMMUNICATION$OF THE AGM Bullard, Bryan Caporlette, Phil 5. Bullard, L., Price, H., Schoolfield, Dexter hypertext reference model. Cooke, William W. Davis Jr., Frank B., Harlow, R., Domingue, D., X3V1.8M/90-14. Dwyer, Marion L. Elledge, Edward Knox, E. and Laffin, M. Beyond the 17. Johnson, E. Non-musical applica- tions for the Hypermedia/Time- A. Fox, Anders Franz6n, Len Galla- Book Metaphor: Concepts for Designing based structuring language gher, Robert Glidden, Ron Gorow, and Implementing Integrated Product Development Environments and Digital (HyTime). X3V1.8M/90-63. Dorothy Gross, Dave Gunning, Technical Information Services. Obtain 18. Kipp, N. A document formatter for Ralph David Hill, Craig Harris, from Bruce Schoolfield, GE Air- the standard music description lan- Eitaro Kawaguchi, Yushi Komachi, craft Engines, One Neumann Way guage. X3V 1.8M/90-46. Francis Kretz, Brian D. Markey, MD F126, Cincinnati, OH 45215- 19. Kretz, F. Coded representation of Alan Marsden, Charles Mead, Ber- 6301. multimedia and hypermedia infor- nard Mont-Reynaud, AI Nelson, 6. Chamberlin, D.D. and Goldfarb, mation. X3V1.8M/90-59. Carlton F. Neville, Tim Oren, C.F. Graphic applications of the 20. Markey, B.D. Emerging hyper- Roger Price, Victor Riley, Lloyd standard generalized markup lan- media standards: Hypermedia mar- ketplace prepares for HyTime and Rutledge, Norman Scharpf, Elea- guage (SGML). Comput. Graph. 11, MHEG. USENIX Summer 1991 nor Selfridge-Field, Donald Sloan, 4, 1987. 7. Coombs, J.H., Renear, A.H. and (June 10-14, Nashville, Tenn.). Andy Spicely, Alan D. Talbot, Jack DeRose, S.J. Markup systems and 21. Markey, B.D. Multimedia and hy- A. Taylor, Hugh A. Tucker, Ludo the future of scholarly text process- permedia standardization, a report Van Vooren, Kim Walls, Jerome ing. Commun. ACM 30, 11 (Nov., from the ad hoc Study Group on Wenker, and Wayne T. Wilner. The 1987). Multimedia Standardization to the authors regret that space does not 8. Document Style Semantics and Specifi- ISO/IEC's JTC1 TAG. X3V1.8M/ permit recognition of many other cation Language (DSSSL). ISO/IEC 90-73. individuals who have contributed to Draft International Standard 22. Newcomb, S.R. Standard music the HyTime and SMDL work. 10179. 1991: International Organi- description language. 1EEE Comput. Because of his intellectual lead- zation for Standardization and In- 24, 8 (Aug. 1991). ership, effort, commitment, and ternational Electrotechnical Com- 23. Oak Ridge National Laboratory. mission, UDC 681.3.06:519.767. Hypertext bibliography. Apr. 1990. sheer tenacity, the contributions of 9. Dykiel, R. Technical requirements X3V1.8M/90-57. X3V1.8M chair and ISO/IEC DIS for ODA/Hypermedia. ESPRIT 24. Rainey, S.C., Jorgensen, E.L., and 10744 editor, Charles F. Goldfarb project. PODA2, Bull S.A. Fuller, J.J. Proposed Draft Military (IBM Almaden Research Center) X3V1.8M/91-2. Specification for Revisable Data are especially and gratefully ac- 10. Engelbart, D.C. Knowledge-domain Base for Support of Interactive knowledged. interoperability and an open hyper- Electronic Technical Manuals document system. In CSCW 90 Pro- (IETMs). David Taylor Research CR Categories and Subject Descrip- ceedings of the ACM. Available from Center, Bethesda, MD 20084-5000. tors: H.1.0 [Information Systems]: Bootstrap Project, Stanford Univer- DTRC-90/027 (July 1990). Models and Principles--General; H.3.1 sity. Doc. (AUGMENT, 132082). 25. Riley, V.A. An interchange format [Information Systems]: Content Analy- 11. Goldfarb, C.F. The SGML Handbook. for hypertext systems: The Inter- sis and Indexing--Indexing methods Oxford University Press, 1990. media Model. X3V1.8M/90-5. General Terms: Standardization 12. Goldfarb, C.F., Newcomb, S.R., 26. Rosenberg, J. Managing time in Additional Key Words and Phrases: Sloan, D. and Talbot, A.D. ANSI multimedia. Panel presentation, HyTime, SGML Project X3.542-D, Standard Music SIGGRAPH '91, Las Vegas, 91/08/ Description Language (SMDL). 02. (This will presumably be avail- References and Bibliography X3V1.8M/SD-8 (now ISO/IEC CD able on videotape or transcribed Note: Documents described as 10743). from ACM SIGGRAPH soon. Call X3V1.8M/nn-nn can be obtained from 13. Goldfarb, C.F., and Newcomb, S.R. J. Rosenberg at Bellcore, 445 South the Computer Music Association (see ANSI Project X3.749-D, Hypermedia/ St., Rm. MRE-2D-292, Box 1910, Appendix II, final paragraph). Time-based Document Structuring Lan- Morristown, N.J. 07961-1910). 1. ANSI X3V1.8M. Document regis- guage (HyTime). X3V1.8M/SD-7 27. Samuel, R.L., III, Ed. User require- ter. X3V1.8M/SD-2. (now ISO/1EC DIS 10744). ments for hypermedia. X3V1.8M/ 2. ANSI X3V1.8M. General informa- 14. Graphic Communications Associa- 90-44. tion about the X3V1.8M music in tion (GCA). The SGML Source Guide: 28. Stetina, M. CALS Industry Stan- information processing standards systems, software, service, consultants, dards Working Group (ISWG) (MIPS) Committee. X3V 1.8M/SD-0. seminars, and resources. (A loose-leaf Meeting, 9-11 April 1991. Unisys 3. ANSI X3V1.8M. Participants and binder publication updated quar- Corporation, 12010 Sunrise Valley officers. X3V1.8M/SD-3. terly.) Drive, Reston, VA 22091. 4. Bertsche, S.V. Hypermedia/time- 15. Gunning, D. Content Data Model based document (HyTime) and (CDM). Armstrong Laboratory, Air About the Authors: standard music description lan- Force Systems Command, Wright- STEVEN R. NEWCOMB is vice chair of guage (SMDL) user needs and Patterson Air Force Base, Dayton, the ANSI X3V 1.8M committee (since its functional specification. X3V1.8M/ Ohio 45433-6503. inception in 1986), coeditor (with SD-6. 16. Halasz, F.G., and Schwartz, M. The Charles F. Goldfarb) of the HyTime

COMMUNICATIONS OFTHE ACM/November 1991/Vo1.34, No.ll 81 standard, associate director of the Flor- kinds of information needed by en- HyTime was applying the timing ida State University Center for Music gravers of common music notation mechanisms to spatial (and other) Research, and president of Tech- (beam these notes together, slur those measurement domains, so as to allow noTeacher, Inc. He has spoken on notes together, this is an A-sharp half the description, prescription, and ren- HyTime a.t many SGML-oriented and note, etc.). Thus the study group's dition of finite coordinate spaces of report envisions something like a fu- four (or more) dimensions. HyTime's other conferences, including CD-ROM sion of the kinds of information pres- roots in SMDL are still evident; a '90 and SIGGRAPH '91. ent in a time-stamped Musical Instru- schedule of "proscopes" is still called a ment Digital Interface (MIDI) data "baton," for example. NEILL KIIPP is a computer scientist at stream with the kinds of information HyTime was "progressed" (as stan- TechnoTeacher, Inc. His master's de- present in a music manuscript. A sub- dards jargon puts it) to the Draft In- gree project at the Florida State Univer- group of X3V1.8, the MIPS commit- ternational Standard (DIS) phase on sity Computer Science Department was tee was dubbed "X3V1.8M" (M for August 22, 1991, by a unanimous vote the first p:rototype implementation of a music), and it held its first meeting in authorized by ISO/IEC JTC1/SC18/ Standard Music Description Language July, 1986. Since then, X3V1.8M WG8. At this writing, the DIS version meetings have been held three or four parser, fbrmatter, and synthesizer of HyTime is expected to be published times per calendar year, at various lo- in October 1991. The earliest possible driver on the NeXT platform. cations in the United States. date on which it can be made an Inter- In keeping with the U.S. legal re- national Standard will be at the April VICTORIA T. NEWCOMB is a techni- quirements which must be met by all 1992 meeting of WG8, which is ex- cal consultant at TechnoTeacher, Inc. standards activities, all X3V1.8M pected to take place in Denmark. In She designs many of the teaching mate- meetings are open to the public--both the meantime, however, as a Draft In- rials used by TechnoTeacher instructors to those who simply wish to observe ternational Standard, references to at HyTime tutorial sessions. Authors' and to those who wish to participate. HyTime can be included in other ISO Present Address: All three authors can The 68 participants of record in the standards. MIPS committee represent industrial, be reached at TechnoTeacher, Inc., artistic, military, academic, and per- 1810 High Road, Tallahassee, FL sonal interests, including large and 32303-4408. Internet: {srn,neiU,vtn} small business concerns. Software de- APPENDIX II. @cmr.fsu.edu. velopers, hardware manufacturers, Por publishers, librarians, composers, musicians, dramatists, actors, dancers, more information military people, and academic re- APPENDIX I. searchers have attended and have Special interest Group on been represented at MIPS committee Hyllme HyTIme's meetings. Several frequently revised The SGML Users' Group Special In- Provenance "standing documents," including an terest Group on Hypertext and Multi- extensive register of documents con- media (SGML SIGhyper) maintains a HyTime was originally developed by tributed to and considered by the library of documents relevant to the American National Standards In- committee, a list of participants, an HyTime. Printed documents, includ- stitute's (.ANSI) X3V1.8M committee, inventory of user requirements, and, ing copies of the ISO/IEC DIS 10744, whose oriiginal mission was to create a of course, the proposed HyTime and examples of the use of HyTime, a di- Standard Music Description Language SMDL standards themselves, have rectory of parties interested in (ANSI Project X3.542-D). X3VI is the always been and continue to be avail- HyTime, and a newsletter, are all ANSI technical committee responsible able to the public for scrutiny and mailed to SGML SIGhyper members for standards in information process- comment. automatically as they become avail- ing systems for office and publishing Around 1989, it became clear that able. Annual membership dues vary purposes. X3V1.8 is the task group of much of the development work done from $75 to $170, depending on the X3V1 concerned with languages for by the MIPS committee had a large set type of membership and the cost of text processing and interchange. of natural applications outside the postage. For more information, con- Chaired by William W. Davis of music sphere, and several of those tact the authors at the address pro- Teleprim, Inc., X3V1.8 is the focus of applications, including hypertext and vided at the end of this article. U.S. participation in the ISO/IEC pro- multimedia, were "coming of age" and In addition, some documents rele- cess that has resulted in the SGML In- in need of a set of basic standard rep- vant to HyTime are available via anon- ternational Standard, the HyTime resentations. Accordingly, the com- ymous FTP from the University of Draft International Standard, and the mittee was granted an additional proj- Oslo, thanks to the efforts of Erik Standard Music Description Language ect number by ANSI (X3.749-D), and Naggum, the Vice Chairman of SGML Committee Draft, among others. HyTime was created by removing the SIGhyper. The FTP address in Oslo is In 1985 X3V1 convened a study music-specific mechanisms from the "ftp.ifi.uio.no" (129.240.88.1), direc- group whose purpose was to consider SMDL design, and by making SMDL a tory "SIGhyper." All new documents the scope and mission of a proposed specific application of HyTime, which are announced in the USENET group Music in Information Processing Stan- reconstitutes the music language by comp.text.sgml as they become avail- dards (MIPS) committee. The study adding back in the music-specific able via FTP. An alternative FTP group's report says that, if developed, mechanisms. HyTime has undergone source is at Florida State University in a Standard Music Description Lan- several major revisions and consider- Tailahassee, Florida, "mailer.cc.fsu. guage (SMDL) should be able to con- able refinement and generalization edu" (128.186.6.103), directory pub/ vey both the specific kinds of informa- since its removal from SMDL, but the sgml. Also available at both of the tion that performers generate (play relationship between HyTime and above Internet nodes is the ARC this pitch this loud at this millisecond SMDL remains the same today. A SGML public-domain SGML parser, with this timbre, etc.), and the specific major step in the generalization of which is written in C, and which was

82 November1991/Vol.34, No.ll/COMMUNI~kTIONS OF THE ACM originally donated through the SGML X3V1.8M processes by reports in the the committee's work at its annual In- Users' Group via the University of (TAG) newsletter (GCA cosponsors ternational Computer Music Confer- Exeter. this publication), by hosting commit- ence (ICMC). In addition, the ICMA tee meetings, and by arranging pres- makes most of the documents listed in entations and discussions relevant to the document register available to the ANSI X3VI.8M Secretariats the committee's work at its regular public on a cost-per-page basis. Con- Because of the interdisciplinary na- TechDoc, SGML, International tact The International Computer ture of the committee's work, there Markup, and other conferences and Music Association, Larry Austin, Pres- are two X3V1.8M Secretariats. Both tutorials. In addition, the GCA distrib- ident, P.O. Box 1634, San Francisco, Secretariats maintain awareness of the utes the committee's documents to the CA 94101-1634 (tel.: (817) 566-2235; committee's activities among the mem- participants of record prior to each Internet: [email protected]), r,I bers of the communities they serve. X3V1.8M meeting. For more infor- Both solicit and formulate user re- mation, contact Marion Elledge, Vice quirements, both conduct workshops President, Information Technologies, and meetings, where they solicit feed- Graphic Communications Association, Permission to copy without fee all or part of back on the technical issues confront- 100 Daingerfield Road, Alexandria, this material is granted provided that the ing the committee, both publish infor- VA 22314 (tel.: (703) 519-8160; fax: copies are not made or distributed for direct mation about the work of the (703) 548-2867). commercial advantage, the ACM copyright committee in their respective publica- The International Computer Music notice and the title of the publication and its tions, and each has a distinct role in Association (ICMA) serves the music date appear, and notice is given that copying the distribution of committee docu- community's interest in the ISO/IEC is by permission of the Association for ments. DIS 10744, CD 10743, and ANSI Computing Machinery. To copy otherwise, or The Graphic Communications As- X3V1.SM processes by reports in its to republish, requires a fee and/or specific sociation (GCA) [14] serves the pub- newsletter, Array, by hosting commit- permission. lishing community's interest in the tee meetings, and by arranging pres- ISO/IEC DIS 10744 and ANSI entations and discussions relevant to © ACM 0002-0782/91/1100-067 $1.50

SPRINGER FOR COMPUTER SCIENCE • TeX in Practice • Pascal User Manual and Report S. v. Bechtolsheim. W. Lafayette, IN Fourth Edition TeX has always been regarded as the most elegant and powerful system for computer by K. Jensen, Digital Equipment Corporation. Bedford. MA; N. Wirth, Institute typesetting. What has been needed is a book that teaches TeX in a step-by-step for lnformatik, Zurich, Switzerland: A. Mickel: Minneapolis College of Art and fashion illustratedwith relevant examples. Stephan v. Bechtolsheim, an acknowl- Design. Minneapolis, MN; J. Miner. University of Minaesota. Minneapolis. MN edged authority in the field, does exactly this with these four volumes. He provides This new edition of the definitive Pascal reference updates the text with the most a tutoria! guide for the first-time user of TeX as well as a reference for the more recent revisions of the ISO Pascal standard since the standard was formally appro- experienced "TeXpert." This four volume set will be an indispensable reference for ved in 1983: This revison of the ISO standard resolved differences between it and the "rex community and an informative guide for the TeX novice. the American (ANSI) standard. These as well as other changes are subsequently Volume 1: Basics: reflected in this edition. This book consists of two parts: the User Manual, 1992/300 pp., 15 illus/Softcover $39.00 (tent.)/ISBN 0-387-97595-0 directed to those who have some familiarity with computer programming and who Volume 2: Paragraphs, Math, and Fonts: wish to get acquainted with the Pascal language, and the Report, which serves as 1992/259 pp., 33 illus/Softcover $39.00 (tent.)/ISBN 0-387-97596-9 the ultimate concise reference for both programmers and implememors Volume 3: Tokens, Macros: 19911266 pp./Softcover $29.95/ISBN 0-387.97649-3 1992/315 pp., 23 illus/Sofl~over $39.00 (tent.)/ISBN 0-387-97597-7 Volume 4: Output Routine, Tables: ,,Artificial Neural Networks for Computer Vision 1992/288 pp., 12 illus/Softcover $39.00 (tent.)/ISBN 0-387-97598-5 By Y-T Zhou. HNC Inc, San Diego CA: R. Chellappa, University of 4 VOLUME SET PRICE/$148.00(tenI~)/ISBN 0-387-97296-X Southern California. Los Angeles, CA This book describes an artificial neural network (ANN) based on algorithms for • Research Directions in Database Security early vision. The book focuses on several important early vision problems such Edited by T. F. LunL SRI International. Menlo Park, CA as static and motion stero, motion estimation and restoration, and emphasizes Many commerical mid defense applications require a database system that finding effective solutions to these problems using the ANN. Many practical real- protects data of different sensitivitieswhile still allowing users of different time ANN algorithms are obtained, computational aspects are discussed in detail. clearances to access the system. This book reports on such landmark systems as and extensive experimental results with real image data are provided. Although SeaView, LDV, ASD, Secure Sybase, the UNISYS secure distributed system, and the book is written for researchers and engineers, it provides a fairly complete and the secure entity-relationship system GTERM. This book brings together readable introduction to both neural networks and computer vision. research on the emerging security technology for multi-level database systems 1992/190 ppJHardeover $39.95/ISBN 0-387-97683-3 which previously has been difficult to obtain. Research Notes in Neural Computing 1992/approx. 264 ppJHardcover $39.95 (tent.)/ISBN 0-387-97736-8 To order, call 1-800-SPRINGER. iI Please reference $929 to expedite your order. 11,'91 ReferenceNumber $929 Springer-Verlag New York Berlin Heidelberg Vienna London Paris Tokyo Hang Kong Barcelona Budapest

Circle #11 on Reader Service Card

COMMUNICATIONS OF THE ACM/November 1991/Vo1.34, No.ll 83