What is HotLinks?

HotLinks is Soft-LogikUs data interchange environment.  It allows any HotLinks
aware program to exchange data with any other HotLinks aware program.  Although
the HotLinks interface was developed by Soft-Logik, we are opening it up to the
whole Amiga community in much the way ARexx or IFF is open the community.  In
fact the data formats used by HotLinks all follow established IFF guidelines.
What HotLinks offers is a method for documented data interchange via a document
database and live update.
Having said that mouth full, what does it all mean.  To best answer that, here
are some of the most asked questions about HotLinks:

Q: Is HotLinks the same as ARexx?
A: No.  HotLinks is designed around the idea of data interchange, not command
interchange.  HotLinks is perfectly suited for exchanging large bitmap files and
word processing documents.  It does not send commands to programs other than to
let them know the HotLinks edition they have subscribed to has been updated.  In
feel and operation, it is much more like the DOS library than ARexx.  Together
though, ARexx and HotLinks are a powerful team.

Q: Is HotLinks proprietary?
A: No.  We want everyone to use HotLinks and help shape its future.  The actual
HotLinks library, resident code and support programs however are copyrighted by
Soft-Logik.

Q: Do I have to license HotLinks from Soft-Logik?
A: No.  We are making information about HotLinks freely available.  The HotLinks
resident code itself is a product from Soft-Logik, much like ARexx is a product
from William Hawes.  Currently the HotLinks resident code is sold with two
HotLinks compatible programs, BME and PageLiner.

Q: What sort of support will Soft-Logik offer, and to whom?
A: We are interested in supporting all developers who wish to include HotLinks
in their products.  In some ads, we have restricted this to those registered
with CATS.  We do not require this, but would encourage any Amiga developer to
be registered with Commodore in their native country or region.  
As for the support itself, we will be sending a developers kit to those who
request it.  This kit includes example code in the C language for interacting
with HotLinks, all associated includes, development tools and a complete set of
libs and programs that make up the HotLinks environment.  It also includes a
paper manual full of HotLinks programming and development information.
Soft-Logik also wants to ensure those products that claim to be Hot-Links
compatible, are.  To this end, Soft-Logik asks that those developers that
integrate HotLinks into their products provide Soft-Logik with two copies of the
product.  This is so Soft-Logik may validate, demonstrate and better answer
questions about supporting products.  Furthermore Soft-Logik intends on
including lists of HotLinks compatible products in its ads and producing a
RHotLinks CompatibleS sticker much like the green 2.0 sticker.  This is
necessary to assure users that a program that claims to be HotLinks compatible,
truly is.
Q: How does HotLinks compare to similar systems on other platforms?
A: HotLinks is often compared to systems like DDE and OLE on DOS platforms,
Publish and Subscribe in Macintosh System 7 and NeXt step 3.0Us Linking.
HotLinks uses a Publish and Subscribe metaphor, not unlike the Apple Macintosh
System 7.  Also like DDE and System 7, HotLinks uses the operating systemUs
standard message passing system.  
HotLinks functions are accessed via a disk based library called
HotLinks.library.  The library packages up your messages and sends them to the
HotLinks resident program, and returns to your program the results.  Furthermore
the library provides a uniform interface, with the new 2.0 look, for all
HotLinks interaction.  

Q: How does the Publish and Subscribe metaphor in HotLinks work?
A: When you wish to make a block of data available to HotLink users, you Publish
it.  If you make changes to that data and want to give users the new data, you
Update it.  If at any point you no longer want users to receive further changes
from your document, you can break the link that associates your data with the
HotLinks Edition.  At this point people could still subscribe to the old data
and update it, unless you delete the Edition.  
If you wish to use the data that HotLinks has to offer, you may Subscribe to an
Edition.  When you Subscribe, you can: (1) link the data and ask for
notification, (2) link the data and not ask for notification, or (3)receive the
data and immediately break the link.  Each case it has its own uses.  In the
event that you save a file with a HotLink in it, that file will not be updated
until it is reopened.  When a file is reopened, you can check to see if you have
the most recent version of the Edition.  If not, you can update at that time.  

Q: How does HotLinks physically interchange the data?
A: In all cases an actual disk based file is created when data is exchanged.
This file contains the data as well as security and audit information.  
Currently HotLinks maintains a special directory where HotLinked files are kept.
Files in the HotLinks directory are not meant to be accessed by the normal OS,
but can be as they are normal Amiga files.  In the future however, files may be
kept in many places, possibly across networks.  By using the calls in the
HotLinks library, the program does not need to know where the file is physically
located.
The files are written by the program, via HotLinks, in much the same manner as
if using the DOS library.  Open, Read, Write, Seek and Close calls all have
HotLink equivalents.  For this reason, implementing HotLinks is very similar to
implementing traditional file I/O.  

Q: What kind of data can be exchanged?
A: Eventually, everything.  At this time, only the formats for bitmapped
graphics and formatted text have been defined.  The bitmapped format is a simple
extension of the existing IFF ILBM format, and the text format is IFF DTXT.  It
is our intention that wherever possible, any existing approved IFF format will
be used.  In this way, a minimal amount of redevelopment will need to be done.
Of course many kinds of data that will be exchanged do not yet have an
established IFF format.  We will work with any developer or group of developers
to establish new standards.  This will expand the IFF standard as well as focus
program data interchange in and out of HotLinks.  We also want to include those
members of the Amiga community that are involved in the BIX amiga.dev/iff
section, as they have helped shape several standards.

Q: Can you give me an example of how HotLinks is used?
A: Here are a few examples:
A user scans in an image using HotLinks aware software.  The user has the choice
of saving the image as a normal file, and/or publishing it to HotLinks.  They
publishes it to HotLinks, then switches into a page layout program.  Next, the
user subscribes to the image, places, rotates and scales the image.  After
having done this they realize that there is a minor problem with the image, not
enough to require re-scanning, just touch up.  The user then enters the touch up
program and subscribes to the file, touches it up and updates it.  Now when they
flip back to the page layout program the file has updated, but none of the
position, rotation, scaling information has been lost.
Another example could involve text.   A user may first create a body of text in
a fast text or word processor, then publish the file to HotLinks.  From here the
file could be grammar checked, flowed into page layout, re-edited, re-checked
and re-flowed.  The document could make many trips around the loop without
losing any important information.  In each case the subscribing program only
changes the information it understands, and passes on the rest.
Finally, HotLinks would be an excellent way to update parts of a multi-media
presentation without disturbing the whole.  Each part, text, sounds, animations,
graphics, could be Hot-Linked editions.  The user could work on these while
maintaining the originals in the presentation.  When the user feels that the
updated version is now better, then they can choose to update that portion.  In
the meantime, the integrity of the whole presentation is maintained.

Q: What do I have to do to support HotLinks?
A: At its heart, HotLinks merely enhances the file I/O environment.  To use a
HotLinks edition, you will have to do the equivalent of reading and writing a
standard file.  For the most part this means treating HotLinks like another
format you import or export.  The major difference is that you get HotLinks
edition requesters when asking for an edition instead of the standard ASL or ARP
requester.  There is also an edition information requester available.  Depending
on what options you support, you may want to add a HotLinks menu or sub-menu.

Q: What is in the future for HotLinks?
A: One of the biggest things in the future of HotLinks is network support.  The
real power of HotLinks can be unleashed when multiple users on a network can be
collaborating on a single venture, each providing the other with different parts
of the whole.  The current version of HotLinks is not network compatible, but
due to the multi-tasking nature of the Amiga, it offers a powerful way for
programs to interact.
Also we foresee the integration of ARexx, for seamless computer control of the
whole environment.