Intensional HTML

Intensional HTML is a high-level Web authoring language that makes practical (using standard client and server software) the specification of pages and sites that exist in many different versions or variants. Each page of IHTML defines an intension -- an indexed family of actual (extensional) HTML pages which varies over a multi-dimensional author-specified version space. The version space is partially ordered by a refinement/specialization ordering. For example, platform:mac can be refined to platform:mac+language:french or to platform:mac%k68 and the last two both refine to platform:mac%k68+language:french. Authors can create multiple labeled versions of the IHTML source for a given page. Requests from clients specify both a page and a version, and the server software selects the appropriate source page and uses it to generate the requested actual HTML page. Authors do not, however, have to provide separate source for each version. If the server-side software cannot find a source page with the exact version requested, it uses the page whose label most closely approximates the requested version. In other words, it treats the refinement ordering as a (reverse) inheritance ordering. Thus different versions can share source, and authors can write generic, multi-version code.

[1]  John Plaice,et al.  A New Approach to Version Control , 1993, IEEE Trans. Software Eng..