1#------------------------------------------------------------------------------
2# File:         fotoware.config
3#
4# Description:  This config file defines Fotoware XMP tags for writing.
5#
6# Notes:        Length limits are imposed according to Fotoware limitations when
7#               writing string values, but these may be disabled with the -n
8#               option or by adding a "#" to the tag name.  However, beware that
9#               longer strings may cause unpredictable results in Fotoware
10#               software.
11#
12#               Use of this file will not bring full Fotoware 'experience'.
13#               Fotostation writes these tags not only into XMP but also in IIM
14#               and even Exif spaces.  Communication with older Fotoware systems
15#               may be broken when using only XMP.
16#
17#               Also note that there are potential problems with character
18#               encoding on systems with mixed environments, depending on
19#               Fotoware software settings.
20#
21# Usage:        exiftool -config fotoware.config -FOTOWARETAG=VALUE FILE ...
22#
23# Requires:     ExifTool version 7.00 or later
24#
25# Revisions:    2012/09/19 - P. Harvey Created
26#               2016/09/24 - Mikolaj Machowski updated with new Fotostation tags
27#------------------------------------------------------------------------------
28
29%Image::ExifTool::UserDefined = (
30    'Image::ExifTool::XMP::Main' => {
31        fwl => {
32            SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::fwl' },
33        },
34        fwr => {
35            SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::fwr' },
36        },
37        fwc => {
38            SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::fwc' },
39        },
40        fwu => {
41            SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::fwu' },
42        },
43    },
44);
45
46%Image::ExifTool::UserDefined::fwl = (
47    GROUPS           => { 0 => 'XMP', 1 => 'XMP-fwl', 2 => 'Image' },
48    NAMESPACE        => { 'fwl' => 'http://ns.fotoware.com/iptcxmp-legacy/1.0/' },
49    WRITABLE         => 'string',
50    # limit maximum lengths of string values
51    CreatedTime      => { PrintConvInv => 'substr($val,0,16)' },
52    EditStatus       => { PrintConvInv => 'substr($val,0,64)' },
53    FixtureIdentifier=> { PrintConvInv => 'substr($val,0,1024)' },
54    LocalCaption     => { PrintConvInv => 'substr($val,0,2000)' },
55    ObjectCycle      => { PrintConvInv => 'substr($val,0,32)' },
56    ProgramVersion   => { PrintConvInv => 'substr($val,0,10)' },
57    ReferenceNumber  => { PrintConvInv => 'substr($val,0,256)' },
58    ReferenceService => { PrintConvInv => 'substr($val,0,256)' },
59    ReferenceDate    => {
60        Groups => { 2 => 'Time' },
61        Writable => 'date',
62        Shift => 'Time',
63        PrintConv => '$self->ConvertDateTime($val)',
64        PrintConvInv => '$self->InverseDateTime($val,undef,1)',
65    },
66    ReleaseDate    => {
67        Groups => { 2 => 'Time' },
68        Writable => 'date',
69        Shift => 'Time',
70        PrintConv => '$self->ConvertDateTime($val)',
71        PrintConvInv => '$self->InverseDateTime($val,undef,1)',
72    },
73    ReleaseTime      => { PrintConvInv => 'substr($val,0,16)' },
74);
75
76%Image::ExifTool::UserDefined::fwr = (
77    GROUPS           => { 0 => 'XMP', 1 => 'XMP-fwr', 2 => 'Image' },
78    NAMESPACE        => { 'fwr' => 'http://ns.fotoware.com/iptcxmp-reserved/1.0/' },
79    WRITABLE         => 'string',
80    Classify         => { PrintConvInv => 'substr($val,0,256)' },
81    DocumentText     => { PrintConvInv => 'substr($val,0,2000)' },
82    Exif             => { PrintConvInv => 'substr($val,0,1024)' },
83    History          => { PrintConvInv => 'substr($val,0,256)' },
84    ImageNotes       => { PrintConvInv => 'substr($val,0,256)' },
85    JobId            => { PrintConvInv => 'substr($val,0,256)' },
86    OwnerId          => { PrintConvInv => 'substr($val,0,256)' },
87    ShortUniqeId     => { PrintConvInv => 'substr($val,0,256)' },
88    ContentValue     => { PrintConvInv => 'substr($val,0,256)' },
89    UniqueId         => { PrintConvInv => 'substr($val,0,256)' },
90    MasterDocumentId => { PrintConvInv => 'substr($val,0,256)' },
91);
92
93
94%Image::ExifTool::UserDefined::fwc = (
95    GROUPS        => { 0 => 'XMP', 1 => 'XMP-fwc', 2 => 'Image' },
96    NAMESPACE     => { 'fwc' => 'http://ns.fotoware.com/iptcxmp-custom/1.0/' },
97    WRITABLE      => 'string',
98    # generate CustomField1 through CustomField20 tags
99    map { 'CustomField' . $_ => {
100        PrintConvInv => 'substr($val,0,256)',
101    } } (1 .. 20),
102);
103
104%Image::ExifTool::UserDefined::fwu = (
105    GROUPS        => { 0 => 'XMP', 1 => 'XMP-fwu', 2 => 'Image' },
106    NAMESPACE     => { 'fwu' => 'http://ns.fotoware.com/iptcxmp-user/1.0/' },
107    WRITABLE      => 'string',
108    # generate UserDefined1 through UserDefined255 tags
109    map { 'UserDefined' . $_ => {
110        PrintConvInv => 'substr($val,0,256)',
111    } } (1 .. 255),
112);
113
1141;  #end
115