Maybe is not a light read (I did not read it all myself) but I point it anyway.
Design Patterns in XML Applications. (via PHP everywhere)
Several design patterns (Command, Flyweight, Wrapper, and Iterator) in the context of XML processing. You don't use the same patterns in all languages (cf. patterns in dynamic languages), so it would be interesting to think about the best way to implement the examples in the article in Python or Scheme as opposed to Java/C++. [Lambda the Ultimate]