Hypertext links and formatting |
||
![]() |
||
\ ![]() |
![]() |
basic problemmismatch between processing phasesLInks are made to documents before presentationLink presentations are made afterwardspresentations are arbitrarily complex transformations that insert, delete and rearrange datalink anchors are not necessarily hierarchicalThe transformation models we've examined so far don't really deal with thatXML and its ilk are also inherently hierarchicalwe may need different processing and representation models...Some possible data modelsStick with hierarchy, and make it easy to push overlapping elements into lower, hierarchically acceptable placesadopt a model that looks like overlapping spans -- think multicolored highlightersuse a hybrid of these approacheshack around the problem, by using things like empty tags as delimiters for formats that aren't hierarchicalProcessing model implicationsData dependencies must be trackedThis requires similar techniques to those used by LilacIn presenting the output of a transformation, the source of the data must be known to know if it's a linkIt is also possible to represent links to output documents directlyadvantagessimplicityallows linking to generated text, or other presentation-derived aspects of a textdisadvantageLinks can't easily persist across changes to the source documentlinks won't apply to other presentations (without a 2-way tracking operation, similar to the one we're trying to avoidStructure and processing model interactionsThe processing models we've seen are basically tree-rewriting systems (as we saw at the beginning)These models won't apply to non-tree-structured itemsEvent-based processing models may be simplerHIerarchies can map to sets of boundaries, but explicit boundaries may be more expressive |