Prototype for One-to-Many Links Using HTML
One-to-Many HTML Links, Prototyped
Date: Sat, 18 Jan 2003 18:43:31 -0500 From: Bob DuCharme <bobdc@snee.com> To: xml-hypertext@xmlhack.com, xml-dev@lists.xml.org Subject: 1-to-many HTML links, prototyped
While reading Micah's SkunkLink proposal, I was struck by the simplicity of using an 'a' element to represent one-to-many links in HTML. I remember seeing an argument against this somewhere, but don't remember it, so I went ahead and prototyped an implementation. If you go to http://www.snee.com/xml/linking/1toMdemo.xml you should see a page where the green links are 1-to-many links. A View Source will show that the file is basic XHMTL, except that the green links are marked up as nested 'a' links. View Source will also show that an XSLT stylesheet is used, http://www.snee.com/xml/linking/1toM.xml (1toMdemo.xml explains why the stylesheet has an "xml" extension) that just copies all elements through but converts 'a' elements with 'a' children to menus implemented with some JavaScript code that I learned about from a Netscape DevEdge article at http://developer.netscape.com/viewsource/smith_menu/smith_menu.html.
Changing the XHTML content model for the 'a' element to allow nesting of them is an awfully small change to make to its DTD. (What would you with with deeper nesting levels? Turn them into submenus.)
For 1-to-many linking in more generalized linking constructs outside of XHTML (e.g., XLink and any of the successors cropping up), this combination of XSLT plus the DevEdge menuing code makes prototyping of the linking surprisingly easy.
Bob DuCharme www.snee.com/bob <bob@ snee.com> "The elements be kind to thee, and make thy spirits all of comfort!" Anthony and Cleopatra, III ii (NOTE: bobdc e-mail address used only for mailing lists; please send private e-mail to bob@)
Prepared by Robin Cover for The XML Cover Pages archive. General references in "XML Linking Language."