![]()  | 
 
  
  | 
||||
![]() ![]() ![]() ![]() ![]() ![]() ![]()  | 
    |||||
| 
 | 
|||||
| Related Syntax | |||||
| built-in data type | 
markup-region-event | 
||||
Purpose
 A markup-region-event triggers a rule when encountered by do markup-parse in a
        markup source. It is a markup-event that includes content; the most common example is
        an element with data content. A markup-region-event can be signalled as an argument of a pair of
        catch labels:
        
A markup region always starts with a #markup-start signal, and ends with a
        #markup-end signal. The markup-region-event argument of a pair of signals must be
         reference-equal. All data between the #markup-start and
        #markup-end signals is the markup region's content.
      
The following markup constructs are all represented by region events:
If a rule is fired from a markup region (using do markup-parse) the
        markup-region-event will be available from the rule as #current-markup-event, and the
        region's content as #content.
      
 Function wrap-content produces a new markup source from the markup source argument
          region-content and the markup-region-event argument region-boundary. The two
          arguments are combined into a new markup region, where region-content forms its content.
          
  define markup source function
     wrap-content           value markup source       region-content
                  in-region value markup-region-event region-boundary
  as
     signal throw #markup-start region-boundary
     output region-content
     signal throw #markup-end region-boundary
  
  
  ; This process rule prepares a markup-region-event for wrapping content.
  
  global markup-region-event root-element
  process
     using group "capture root element"
     do xml-parse scan "<wrapper/>"
        suppress
     done
  
  
  ; This process rule demonstrates a use of wrap-content
  
  process
     do xml-parse scan #main-input
        using group "process wrapped document"
        do markup-parse wrap-content #content in-region root-element
           output "%c"
        done
     done
  
  
  group "capture root element"
  element #implied
     set root-element to #current-markup-event
     suppress
  
  group "process wrapped document"
  element #implied
     output "<%q>%c></%q>%n"
 
    
| 
Related Syntax | 
Copyright © Stilo International plc, 1988-2008.