##
filename => '$',
####
use strict;
use warnings;
use MooX::Struct Document => [ qw($fileID $filename @tags) ];
my $doc = Document[ 123, 'SampleFileName', [ qw(tag1 tag2 tag3) ] ];
printf "File ID: %s\n", $doc->fileID;
printf "Filename: %s\n", $doc->filename;
printf "Tags: %s\n", join(', ', @{ $doc->tags });
####
22:52 >perl 1068_SoPW.pl
File ID: 123
Filename: SampleFileName
Tags: tag1, tag2, tag3
22:52 >