Data often needs to be grouped together, for example, consider a list of icons. Sometimes a trick like arranging little images into a big raster works, but generally they'll need to be structured as a first class group. The objects "list" and "cat " are iff-universal mechanisms for this purpose. Note: list and cat are advanced topics the first time reader will want to skip. Property settings sometimes need to be shared over a list of similar objects. E.g., a list of icons may share one color map. list provides a means called "prop" to do this. one purpose of a list is to define the scope of a PROP. A "cat ", on the other hand, is simply a concatenation of objects. Simpler programs may skip lists and props altogether and just handle forms and cat s. all "fully-conforming" iff programs also know about "cat ", "LIST", and "PROP". Any program that reads a form inside a list must process shared PROPs to correctly interpret that FORM. group cat group list group prop properties for list