WebComposite and WebComponent have a common super abstract class HyperComponent. HyperComponent represents hypertext components defined in the Dexter Reference Model[]. Hypertext components are divided into atomic component, composite component and link component. They are represented by HyperAtom, HyperComposite and HyperLink respectively. Their examples are a gif file, an HTML document with text and images, and a link embedded in the anchor of a HTML document.
WebComponent and WebComposite are actually immediate subclass of HyperAtom and HyperComposite respectively. Their differences are the subclasses contain extra properties and methods used by the HTML parser.
The visual appearance of a HTML document is represented by different VisualLinks. VisualLink is a wrapper that links a VisualComponent to a HyperComponent. The details of VisualLinks are explained in latter sections.
Figure 1. An example HTML document.
The following diagram shows how the HTML document shown above is rendered by NetFish.
Figure 2. Screendump on NetFish.
The following diagram shows the internal structures of the representations of an HTML document shown in Figure1 after it is rendered. Note how the two different trees of VisualLinks and HyperComponents are connected together.
Fig.2. The internal structure..