 The method applies to processing of any data structure or data stream that is describable as a hierarchical structure of sequential, optional and iterated elements.This could be a stream of messages that a process reads to invoke and coordinate other modules or objects, or it could be a string of characters in parameters passed to a single operation on an "object" coded in an object-oriented programming language.In other words, it could be either above or below the level where object-oriented methods are applied 

Michael A. Jackson originally developed JSP in the 1970s.