Fielding, R. T. (2000), 'Architectural Styles and the Design of Network-based Software Architectures', PhD thesis, University of California, Irvine.