Date: Sat, 12 Jul 1997 05:50:57 PDT From: Richard_Ishida.firstname.lastname@example.org (Ishida,Richard) To: email@example.com (w3c html) Subject: Auxiliary document data, pop-ups and range links Message-Id: <"<AF69C63381AF667C>AF69C63381AF667C@RXL-WGCMS02.RX"@-SMF-> Cc: Richard_Ishida.firstname.lastname@example.org (Ishida,Richard) Proposals for: access to ?auxiliary document data? provision of ?pop-up display boxes? the ability to specify ranges of HTML text for includes, auxiliary document data, etc. From: Richard Ishida DISCLAIMER These are intial thoughts. I would like to test the water before spending more time on this, and if it is a good idea others could probably take it forward more effectively. I don?t think what I am proposing can currently be achieved with HTML 4 without the use of scripting - please, tell me if I?m wrong. My feeling is that this should be core HTML functionality, and not subject to the current variable reliability and vendor dependent nature of scripting implementations. If this has already been proposed before, please excuse me. EXAMPLES OF INTENDED USE: 1 I am reading a document about translation technology. I come across the term ?source matching? which is highlighted (let us say by a dashed underline, but that is user definable). I click on the highlighted term and a small box pops up on top of the document I?m reading containing a definition of the term. The definition could contain just a single sentence of text, or may contain several paragraphs with embedded objects or images - ie. a mini HTML page). I click on the box or hit carriage return, the pop-up disappears and I continue reading. This has significant benefits over loading a complete new page in that I can maintain my visual context in the original document. Because I had told my user agent to preload the auxiliary data into the cache, it would also make it much faster than loading an additional page. 2 I am using an HTML document which includes non-textual icons for navigation or other purposes. The text has been removed and the icons made internationally acceptable because this reduces the work involved in localising this page. As my mouse moves over the icons a small pop-up appears containing a prompt. This is better than a tool-tip approach, because the pop-up contains real HTML, and it is application independent. It can be large-sized for accessibility purposes using stylesheets, and could even contain additional images and text (eg. a warning triangle and an associated message). As I move my mouse away from the icon the pop-up disappears. 3 I?m in the middle of reading a boring document and I want to look quickly at the contents, to see how much further I have to go. Again I don?t want to lose my visual context on the original page. Perhaps my user agent makes available the contents page, defined in a LINK statement, via a menu selection, or perhaps a contents icon is available in another frame, etc.. Because I told my user agent to cache the contents page in the background, it pops up straight away in a scrollable pop-up on the screen (defined by the author in terms of screen width and location). The pop-up idea is different from that of creating a new window, because I can control the size and placement, and it doesn?t carry all the buttons, headers, etc., so it can be used inobtrusively. It is also easier to dismiss. SUGGESTIONS FOR STORAGE OF THE AUXILIARY DATA 4 Auxiliary data is data which supports the current page, but is only displayed on request. 5 Auxiliary data could be stored inline (say, within a POPUP element), could be declared elsewhere in the current document (say, within an AUXIL element - rather like a script declaration contains functions - see below for the range selection concept), or could be accessed via a URL from another document (again with the possibility of identifying only a selected range of text within that document). 6 I would like to see the user agent preload into the cache any external files containing auxiliary data as soon as it has loaded the file which refers to it (although this could be made user definable). This could make a POPUP work quite quickly once the user reached the prompt. 7 An elegant way of doing this may be to have a link type ?Auxiliary? in the LINK element, but the user agent should probably also parse the document for other references. I think it would help to have an attribute for the LINK element which the author could use to explicitly specify that a file be cached (of course if the file was already in the cache, this wouldn?t provoke any action). 8 We should be able to specify lang and charset info as we call in or define the auxiliary data. SUGGESTIONS FOR ACCESS TO RANGES OF DATA 9 I would like to see the possibility of accessing a RANGE of data within a larger set for display either via a POPUP element, as included text, or as a new page. Maybe this could be accomplished using the DIV element or a new RANGE element with an ID attribute. Any link or reference to this id would pick up all the text included in the element describing the range. The range could be specified within the AUXIL element of the current page (see above), within the body text of the current page, or within the body or AUXIL text of another page accessed via a URL. BENEFITS: Start with the glossary example above, and assume that all my glossary information is held in a gloss.htm file which I could also display as ?THE glossary?. I don?t want to write a term definition more than once, but I may also want to access JUST that term definition on other pages. In this case, I can identify a specific range of the glossary document associated with the term I need and display/include just that. Keeping all snippets of auxiliary text in one or a small number of files to service a large set of HTML pages, rather than having them as separate files, would benefit in the following ways: - it would be easier to create the material - it would be easier to manage configuration control - it may be significantly easier and faster to localise the data (especially when it comes to configuration control across five, ten or more languages!) - if the whole document was cached once, it could give faster access to specific items of auxiliary data. 10 It may also make sense to extend this idea of ranges to data which is not strictly speaking auxiliary data. For example, any short phrase which is repeated a number of times on a particular page could be referred to using a range element the first time it is used and called in to the text where needed further down the page. This could concievably carry benefits in terms of consistency, reduced file size and productivity in page creation. 11 Then, of course, we could look at extending our idea of accessing small amounts of a larger corpus so that we could access data records in a database. SUGGESTIONS FOR IMPLEMENTATION OF THE POPUP 12 A POPUP element would need to provide access to the ?auxiliary data? which will be displayed, and enclose a stretch of HTML which serves as the prompt. 13 Style rules could be used to indicate how the prompt would be highlighted, although a default may be appropriate. 14 The author should be able to specify the event which causes the pop-up to appear and be dismissed (eg. click, mouseover, etc.). There may be a case for a new ?CR/Enter? event used to dismiss an open pop-up?? 15 We should be able to set the border of the pop-up, it?s background colour, margins, it?s size and location on the screen and/or browser window, etc. 16 If there is insufficient space to display all the data in a pop-up, scroll bars should appear by default. The author should be able to create pop-ups of a specific size, whether or not all the text fits. Should NOSCROLL or NOWRAP options be available?? 17 Should we allow pop-ups within pop-ups? 18 If we allow links within a pop-up, do we use a TARGET-like approach to decide where the new data will go? Should we just neutralise links within HTML when it is displayed in a pop-up?? 19 Older browsers which don?t provide pop-ups may do best to ignore the auxiliary data. (?) Thoughts?