package MyDocument @ISA = qw() sub Document sub Document { return return shift; sub Doc sub Doc { return return shift; sub FilePath return shift->{'FilePath'}; sub SetFilePath my ($this, $path) = @_; return $this->{'FilePath'} = $path; sub BEGIN sub new my ($module, $path) = @_; return $this; sub DESTROY my $this = shift; # $this->SUPER::DESTROY(