Methods, programs (120) and apparatus (100) are disclosed for accessing and heterogenous data sources (150-153) and presenting information obtained therefrom. Specifically, the data sources may have hierarchical data, which may be presented by identifying a 
context data node from the data, the 
context data node having one or more 
descendent data nodes. At least one data pattern is determined in the 
descendent data nodes. At least one display type is assigned to the current 
context data node on the basis of the at least one data pattern. Thereafter, the method presents at least a subset of the 
descendent data nodes according to one of the assigned display types. Also disclosed is a method of browsing an hierarchically-represented 
data source. A user operation is interpreted to identify a context 
data node from the 
data source, the context 
data node having one or more descendent data nodes. At least one data pattern in the descendent data nodes is then determined and at least one display type is assigned to the current context 
data node on the basis of the at least one data pattern. A subset of the descendent data nodes is then presented according to one of the assigned display types, the subset including at least one 
hyperlink (3401,3402) having as its target a descendant data node of the current context data node. A further user operation is then interpreted to select the at least one 
hyperlink, the selection resulting in the current context data node being replaced with the data node corresponding to the target of the selected 
hyperlink. These steps may be repeated until no further hyperlinks to descendent data nodes are included in the subset. Other methods associated with access and presentation are also disclosed.