ALTifier Study project

Hello everboy

  First of all, sorry for having been quiet during some days, but restart at
university brought a lot new things to look at and chose from. Among them, I
finally chose a WAI related semester project. After consulting with my
supervisor, we agreed that an ALTifier would be more appropriate for the
time frame given for such a semester project, than the text-equiv filter
that I also suggested.

  Briefly, this ALTifier will insert ALT attributes into IMG and other HTML
tags. In "user mode", the ALT text will be "guessed" by various heuristics,
such as context, following the link if the image is one, and maybe OCR.
Three front-ends will be built around the same core engine: a) A proxy
server in "user mode" setting ALT without human intervention, b) some UNIX
command-line tools in "author mode") to set/retrieve ALT for an entire site,
then edit them manually where appropriate and c) an interactive site-wide
Windows GUI, this is also in "author-mode".

  Both "author-mode" modules (Win GUI and UNIX CLI) have a "Suggest"
function which will invoke the guess-function used in "user mode" for the
proxy server. Authors will be encouraged not to simply launch the tool using
"Suggest" for all ALTs, but interactively edit them.

  Find below an early draft of the spec of this project. It's unfinished,
but I wanted you to know about for tomorrow's phone conference.

Regards,
Michael

_______________________________
1.1 Three Front Ends and One Back End

 The  back-end core engine will provide a very simple C or  C++
calling  interface. Three front-ends will be built  around  the
same core engine:

 ·    A  proxy  server setting ALT without human  intervention.
    This is called "user mode".

 ·    UNIX command-line tools to set/retrieve ALT for an entire
    site, then edit them manually

 ·   interactive site-wide Windows GUI. This and the above tool
    are running in called "author-mode".

 Both  "author-mode"  modules (Win GUI and  UNIX  CLI)  have  a
"Suggest" function which will invoke the guess-function used in
"user  mode"  for the proxy server. Authors will be  encouraged
not to simply launch the tool using "Suggest" for all ALTs, but
interactively edit them.

 This  tool  can  currently not be used as a  browser  plug-in.
Further front-ends for the easily interchangeable system  could
consists of a CGI interface, an ISAPI filter (M$) or any  other
such  technology. Other offline post-processes in "author-mode"
that  crawl a local site and do some editing can be thought  of
as well.


1.2 Image classes

 Illustration

 Dots, Bars (horizontal rulers)

Icons/Symbole (Textergänzung oder Textersatz)
Cliparts (Illustrationen)
Thumbnails (Vorschau-Grafiken) <a href="bigpict.jpg"><img
src="minipict.gif"></a>


1.3 How To "Guess" an ALT (Used Heuristics)

These there the "heuristics" used to guess an IMG's or other
tag's ALT text, in order of priority:

   ¨   return an empty ALT="" is the IMG seems to decorative
      only. This is the case if the image is very small, like 1x1 or
      3x3, or if it is not a pure IMG link, meaning there is some
      text between IMG and /A, or ... etc. etc. ...

   ¨   If in authoring mode, and the image is inside a pure1 A-
      IMG-/A link, and the link target is an HTML document use the
      "document's short title" as defined below. The "authoring mode
      only" decision has been made having waste of bandwidth
      (fetching all linked pages) in mind. This might become a
      configurable option.

   ¨   OCR, with an Interface to "Xerox Textbridge" (???) if
      installed. (This feature is not of first priority.)

   ¨   If the tag has any of the following attributes, chose them
      as ALT, in order of priority: NAME, ID, LONGDESC, ... (did I
      forget any HTML4 stuff?)

   ¨   the filename, cutting off the path and extension of the
      file. This is based on the hope that the webmaster or graphics
      designer  gave a meaningful names to their images, like
      help.gif or options.gif etc.

   ¨   querying some ALT text server, yet to be set up, as
      outlined in http://www.w3.org/WAI/altserv.htm (This is not a
      first priority.)

  This tool could request ALT text from and submit new
descriptions to the server.

 content of the image by.

 Read / do ...

 Lang/nouns...


1.4 Tags to ALTify
 ALT and/or TITLE and/or ... ???

   ¨   IMG:

   ¨   IMG inside A/HREF Link, often Buttons, <a
      href="datei.html"><img src="button.gif" border=0></a>

   ¨   body background:

   ¨   CSS Support ?! (necc to follow and parse .css ?)

   ¨   OBJECT / APPLET ?

   ¨   Image MAPs, Client side only. (A server side image map
      could be treated by simulated clicks on a raster of every eg.
      5x5 pixels. This approach is not followed in this project
      though, partially we defined not to follow links in user mode,
      but only in author mode.)

   ¨   <embed  (Netscape specific multimedia)

   ¨   <img dynsrc="hochzeit.avi" (IE specific multimedia)

   ¨   <FRAME SRC=url TITLE=alt> Notice that frame uses TITLE
      instead ALT attribute.

   ¨   <INPUT SRC=url ALT=alt>


1.5 Platform & Environment

 The  original  version was developed under  MS  Windows  using
Visual C++ 5.0, as this system was available and the author had
prior  usage experience. Most of the code is platform  neutral,
and  a  port  to UNIX (gcc) should be possible in a  reasonable
amount  of  time. The HTML++ library uses RTTI,  but  most  C++
compilers should provide this formerly advanced C++ feature  by
now.


1.6 Modules & Components

 The   ALTifier   is  built  of  the  following   modules   and
components:
   ¨   ALTifier back end, written in platform neutral C++
      compiled by Visual C++ and gcc

   ¨   Win GUI front end, written with C++ Builder RAD tool by
      Borland/Inprise

   ¨   UNIX CLI front end, written in C with gcc

   ¨   HTTP Proxy front end, inspired by GNU wwwoffle

   ¨   Crawl engine for interactive Win & UNIX front-ends, shared
      code with KISSfp2

   ¨   OCR interface to ... TextBridge ... ??? (Win DLL?)

   ¨   Natural language recognition engine ???

   ¨   GIF toolkit to determine width and height, maybe get and
      set GIF comment, inspired by gd3

_______________________________
 1  A  "pure  A-IMG" link is in this document  defined  as  one
where  /A  directly  follows  IMG,  with  no  descriptive  text
following the image.
 2 http://www.vorburger.ch/kissfp
 3 http://www.boutell.com/gd (?)



----
Michael Vorburger <mike@vorburger.ch> & <michael.vorburger@epfl.ch>
GO DIGITAL: No more oil-based toner on flattened dead trees!
HOMEPAGE: http://www.vorburger.ch

Received on Tuesday, 3 November 1998 19:17:25 UTC