LaTeX allows the basic model described above to be extended in two ways:
User-defined macros and environments add new object types to the model described above. This will be covered in detail in s:macro-objects. Suffice it to say for the present that these new objects will extend the basic model outlined above.
The document model is an attributed tree. Cross references are represented by object cross reference that contains a pointer to the object being cross-referenced, and this link can be used to traverse the model. The label of a cross-referenceable object is represented as an attribute of that object.