JTM - a former OSI standard
"Job Transfer and Manipulation" was on ISO standard from 1989 to 1997 which
suffered from a misunderstanding of what it could do. It included a number
of ideas that have possilbe relevance to current developments in various
areas, such as workflow, messaging/queueing and e-commerce applications.
Since the standard is now withdrawn, it has been possible to make the text
available here. There are two documents:
ISO 8831 - JTM concepts and service
ISO 8832 - JTM protocol
Note that these documents have been withdrawn as ISO/IEC standards
and can therefore only be used under the sole responsibility of the user(s):
consequently ISO will always decline any responsibility and liability.
Like most standards, JTM is fairly indigestible - the section on "What
was JTM technically" below gives a quick outline. Within the standards,
there is a tutorial annex which might
be a good place to start - or you may prefer the
overview
in the service definition. The supermarket scenario
also gives an idea of what might be done, though it uses rather too much
JTM jargon
Brief history of the standard
-
JTM - "Job Transfer and Manipulation" was one of the initial set of OSI
application-layer standards
-
Work on JTM started in ISO in the early 1980's and the first edition was
published in 1989 as two standards: ISO 8831 - JTM concepts and services
and ISO 8832 - JTM protocol
-
The 1989 edition defined both the Basic and Full Class services, but the
protocol specification covered only the Basic Class; a second edition including
Full Class protocol was published in 1992
-
Interest in JTM gradually declined (from not very high in the first place),
and (as far as is known) no implementations were ever completed
-
When the standards came up for 5-year review, it was recommended that they
be withdrawn
-
Accordingly, ISO/IEC 8831:1992 and ISO/IEC 8832:1992 were withdrawn as
International Standards in 1997 (I'm not sure of exact date of withdrawal)
What was JTM technically
-
JTM was originally conceived as providing an open standard for remote job
entry (as with card reader and line printer)
-
JTM in fact was much more flexible than the original RJE environment -
the activity of job processing was generalised into the concept of an "execution
agency" which received some set of input documents and produced a set of
output documents.
-
The sources of the input documents and the onward routing, further processing
and final destination of the output documents was controlled by the JTM
"work-specification", defined by the initiator of the activity, wheras
all the execution agency had to worry about was processing the documents,
without being concerned with where they were going.
-
This clear separation between the processing and the distribution of the
activity as a whole, could have made JTM applicable to scenarios far removed
from classic RJE, and indeed, attempts were made to publicise the suitablity
of JTM in EDI and similar areas. (See reconstructed
example of one of these on JTM and supermarkets)
-
Some of the features of JTM that might be worth looking at for comparison
or reuse today are:
-
it does not assume all systems are under common management - a set of user-identifications,
with appropriate credentials, can be carried, each applicable within a
different system
-
the task could send reports back on its progress as it moved from system
to system and started and completed various stages of its activity
-
the JTM systems could be interrogated to find out which tasks they had
queued or were processing
-
the routing and other features of the task could be modified after some
processing had been done, while the task was in a queue somewhere somewhere,
given appropriate authorisation
-
the "documents" that are the basis of the processing model could be defined
with a loose or narrow type definition - the document types defined in
the standard were simple things like text-file, binary file, but it would
have been possible to identify something as "invoice" or "planning application".
-
JTM used the OSI two-phase commit protocol CCR (Commitment, Concurrency
and Recovery); the transfers (and in some cases the processing) were under
two-phase commit control to avoid loss or duplication of the work.
-
there were three levels of "commitment" defined - the lowest would allow
the task to be queued at each system; an intermediate level which required
that the processing of the task had started (not just it's transfer to
the server system); and the highest level in which the entire processing,
distribution of the output (including, potentially the further processing
of that output, and so on, unto the nth generation) was all one atomic
action.
-
JTM drew considerably from a system-independent protocol used in the UK
academic community "Red-Book JTMP" (Job Transfer and Manipulation Protocol
- one of a series of system-independent protocols, collectively known as
the "Coloured Books"). RedBook used a string encoding for its protocol
information, whereas JTM was defined in ASN.1 and there are various aspects
in which JTM is more flexible and general.
JTM as web pages and a warning on the status
of the documents
The HTML files on this website have been constructed from the original
text kept by the editor. Since this was in SGML, the conversion to HTML
was fairly easy and used some Perl scripts. It is possible these have mangled
the text unintentionally, but what you see should be the text as published,
including a couple of corrigenda. There are some mistakes in the ASN.1,
which exceeded the capabilities of most (all ?) of the ASN.1 tools available
when it was written. (See brief description of
webbifying JTM if you want to know more on the conversion to HTML).
While JTM was an International Standard, there were restrictions on
the availability of the text. Since it is now withdrawn, it has been possible
to make a version of the text freely available on the web. The official
ISO position was given by Jacques-Olivier Chabot in an email (dated 27
April 1998):
From our point of view, an ISO standard, whether valid,
cancelled or cancelled and replaced by another standard or a revised edtion,
remains under the ISO copyright. The ISO copyright also protects DISs,
FDISs or CDs, although they are not yet valid documents.
Nevertheless we have no objection if you put the text of these two
withdrawn standards on your web page: Our one condition is that you make
it clear, in a warning notice appearing immediately when you open the files,
that these two standards are withdrawn and can therefore only be used under
the sole responsibility of the user(s): consequently ISO will always decline
any responsibility and liability.
What now
JTM never really had a past, and it certainly isn't worth trying to revive
it as it was. Several of the features, as listed above, have been reused/reinvented
(or needed but not included) in more recent specifications. I would be
interested to hear from anyone who finds it useful or would like to discuss
this protocol-that-never-was.
Peter Furniss
peter@furniss.co.uk
8 February 2000