SAX.setDocumentLocator()
SAX.startDocument()
SAX.startElement(html)
SAX.ignorableWhitespace(
, 2)
SAX.startElement(head)
SAX.ignorableWhitespace(
, 2)
SAX.startElement(base, target='contents')
SAX.endElement(base)
SAX.ignorableWhitespace(
, 2)
SAX.endElement(head)
SAX.ignorableWhitespace(
, 2)
SAX.startElement(body)
SAX.startElement(a, name='ProblemDomain.Package')
SAX.startElement(h2)
SAX.characters(Component Package diagram Prob, 39)
SAX.endElement(h2)
SAX.characters(
, 2)
SAX.endElement(a)
SAX.startElement(p)
SAX.endElement(p)
SAX.startElement(hr)
SAX.endElement(hr)
SAX.error: Unexpected end tag : p
SAX.characters(
, 2)
SAX.startElement(dl)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(b)
SAX.characters(Stereotype , 11)
SAX.endElement(b)
SAX.characters(problem domain, 14)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(b)
SAX.characters(Alias , 6)
SAX.endElement(b)
SAX.characters(Problem Domain, 14)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(b)
SAX.characters(Note , 5)
SAX.endElement(b)
SAX.endElement(dt)
SAX.startElement(dd)
SAX.characters(The Problem Domain package is , 59)
SAX.startElement(dd)
SAX.characters(Interface, thats stores and ma, 58)
SAX.endElement(dd)
SAX.endElement(dd)
SAX.endElement(dl)
SAX.characters(
, 2)
SAX.startElement(p)
SAX.endElement(p)
SAX.startElement(hr)
SAX.endElement(hr)
SAX.error: Unexpected end tag : p
SAX.characters(
, 2)
SAX.startElement(dl)
SAX.characters(

, 4)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='HumanInterface.FamilyFrame.html#HumanInterface.FamilyFrame')
SAX.characters(HumanInterface.FamilyFrame, 26)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Birth.html#ProblemDomain.Birth')
SAX.characters(ProblemDomain.Birth, 19)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Death.html#ProblemDomain.Death')
SAX.characters(ProblemDomain.Death, 19)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Divorce.html#ProblemDomain.Divorce')
SAX.characters(ProblemDomain.Divorce, 21)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Family.html#ProblemDomain.Family')
SAX.characters(ProblemDomain.Family, 20)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Individual.html#ProblemDomain.Individual')
SAX.characters(ProblemDomain.Individual, 24)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.LifeEvent.html#ProblemDomain.LifeEvent')
SAX.characters(ProblemDomain.LifeEvent, 23)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Marriage.html#ProblemDomain.Marriage')
SAX.characters(ProblemDomain.Marriage, 22)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.startElement(dt)
SAX.startElement(h4)
SAX.characters(Class , 6)
SAX.startElement(a, href='ProblemDomain.Note.html#ProblemDomain.Note')
SAX.characters(ProblemDomain.Note, 18)
SAX.endElement(a)
SAX.endElement(h4)
SAX.endElement(dt)
SAX.characters(
, 2)
SAX.endElement(dl)
SAX.characters(

, 4)
SAX.startElement(h4)
SAX.startElement(b)
SAX.characters(Links, 5)
SAX.error: Opening and ending tag mismatch: h4 and b
SAX.endElement(b)
SAX.endElement(h4)
SAX.error: Unexpected end tag : b
SAX.characters(
, 2)
SAX.startElement(ul)
SAX.startElement(li)
SAX.startElement(b)
SAX.characters(Link to , 8)
SAX.endElement(b)
SAX.startElement(a, href='HumanInterface.Package.html#HumanInterface.Package')
SAX.characters(HumanInterface, 14)
SAX.endElement(a)
SAX.endElement(li)
SAX.endElement(ul)
SAX.characters(
, 2)
SAX.startElement(dir)
SAX.endElement(dir)
SAX.characters(
, 2)
SAX.startElement(ul)
SAX.startElement(li)
SAX.startElement(b)
SAX.characters(Link to , 8)
SAX.endElement(b)
SAX.startElement(a, href='DataManagement.FlatFile.Package.html#DataManagement.FlatFile.Package')
SAX.characters(DataManagement.FlatFile, 23)
SAX.endElement(a)
SAX.endElement(li)
SAX.endElement(ul)
SAX.characters(
, 2)
SAX.startElement(dir)
SAX.endElement(dir)
SAX.characters(
, 2)
SAX.startElement(ul)
SAX.startElement(li)
SAX.startElement(b)
SAX.characters(Link to , 8)
SAX.endElement(b)
SAX.startElement(a, href='DataManagement.Package.html#DataManagement.Package')
SAX.characters(DataManagement, 14)
SAX.endElement(a)
SAX.endElement(li)
SAX.endElement(ul)
SAX.characters(
, 2)
SAX.startElement(dir)
SAX.endElement(dir)
SAX.characters(
, 2)
SAX.endElement(body)
SAX.endElement(html)
SAX.ignorableWhitespace(
, 2)
SAX.endDocument()
