From 5c26abeabe88827af5e798443d1130933ebf452f Mon Sep 17 00:00:00 2001 From: Robin Mills Date: Tue, 15 Feb 2022 23:26:41 -0800 Subject: [PATCH] I don't know why test_issue_1959.py was removed in b318b9d. I'm restoring it, adding to test_reference_files and evading the TZ issue discussed in #2083. --- test/data/issue_1959_poc.xmp | 1 - test/data/issue_1959_poc.xmp.out | 226 ++++++++++++++++++ .../issue_1959_poc.xmp.out | 3 - tests/bugfixes/github/test_issue_1959.py | 21 ++ 4 files changed, 247 insertions(+), 4 deletions(-) create mode 100644 test/data/issue_1959_poc.xmp.out create mode 100644 tests/bugfixes/github/test_issue_1959.py diff --git a/test/data/issue_1959_poc.xmp b/test/data/issue_1959_poc.xmp index ddd44e16d2..bd017c5442 100644 --- a/test/data/issue_1959_poc.xmp +++ b/test/data/issue_1959_poc.xmp @@ -33,7 +33,6 @@ exif:ExifVersion="0232" exif:FlashpixVersion="0100" exif:ColorSpace="65535" - photoshop:DateCreated="2022-01-04T09:41:01+00:00" photoshop:Instructions="Test Instructions" photoshop:AuthorsPosition="Test Creator's Job Title" photoshop:City="Test City" diff --git a/test/data/issue_1959_poc.xmp.out b/test/data/issue_1959_poc.xmp.out new file mode 100644 index 0000000000..c386957fc3 --- /dev/null +++ b/test/data/issue_1959_poc.xmp.out @@ -0,0 +1,226 @@ +Exif.Image.YCbCrPositioning 1 Centered +Exif.Image.XResolution 72/1 72 +Exif.Image.YResolution 72/1 72 +Exif.Image.ResolutionUnit 2 inch +Exif.Image.ImageDescription Test file for the IPTC XMP tags Test file for the IPTC XMP tags +Exif.Image.Artist postscript-dev postscript-dev +Exif.Image.Copyright Copyright Exiv2 Copyright Exiv2 +Exif.Photo.ExifVersion 48 50 51 50 2.32 +Exif.Photo.FlashpixVersion 48 49 48 48 1.00 +Exif.Photo.ColorSpace 65535 Uncalibrated +Exif.Photo.ComponentsConfiguration 1 Y +Iptc.Application2.ObjectName Test IPTC XMP file Test IPTC XMP file +Iptc.Envelope.CharacterSet %G %G +Iptc.Application2.Keywords Test Test +Iptc.Application2.SubLocation Test Sublocation Test Sublocation +Iptc.Application2.SpecialInstructions Test Instructions Test Instructions +Iptc.Application2.Byline postscript-dev postscript-dev +Iptc.Application2.BylineTitle Test Creator's Job Title Test Creator's Job Title +Iptc.Application2.City Test City Test City +Iptc.Application2.ProvinceState Test Province/State) Test Province/State) +Iptc.Application2.CountryCode GBR GBR +Iptc.Application2.CountryName Test Country Test Country +Iptc.Application2.TransmissionReference Test Job ID Test Job ID +Iptc.Application2.Headline Test Headline Test Headline +Iptc.Application2.Credit Test Credit Line Test Credit Line +Iptc.Application2.Source Test Source Test Source +Iptc.Application2.Copyright Copyright Exiv2 Copyright Exiv2 +Iptc.Application2.Caption Test file for the IPTC XMP tags Test file for the IPTC XMP tags +Iptc.Application2.Writer Test Name Test Name +Xmp.iptc.IntellectualGenre Test Genre Test Genre +Xmp.iptc.Location Test Sublocation Test Sublocation +Xmp.iptc.CountryCode GBR GBR +Xmp.iptc.AltTextAccessibility lang="x-default" Alternative text description for accessibility lang="x-default" Alternative text description for accessibility +Xmp.iptc.CreatorContactInfo type="Struct" +Xmp.iptc.CreatorContactInfo/Iptc4xmpCore:CiAdrCity Test Creator's City Test Creator's City +Xmp.iptc.CreatorContactInfo/Iptc4xmpCore:CiAdrCtry Test Creator's Country Test Creator's Country +Xmp.iptc.CreatorContactInfo/Iptc4xmpCore:CiAdrExtadr Test Creator's Address Test Creator's Address +Xmp.iptc.CreatorContactInfo/Iptc4xmpCore:CiAdrPcode TE5 5ST TE5 5ST +Xmp.iptc.CreatorContactInfo/Iptc4xmpCore:CiAdrRegion Test Creator's Address Region Test Creator's Address Region +Xmp.iptc.CreatorContactInfo/Iptc4xmpCore:CiEmailWork ciworkemail_aweoi4mg02349m@example.com ciworkemail_aweoi4mg02349m@example.com +Xmp.iptc.CreatorContactInfo/Iptc4xmpCore:CiTelWork +1 (123) 456789 +1 (123) 456789 +Xmp.iptc.CreatorContactInfo/Iptc4xmpCore:CiUrlWork http://www.example.com/workurl/3w94kjngi9mn50gj0mg34jire http://www.example.com/workurl/3w94kjngi9mn50gj0mg34jire +Xmp.iptc.ExtDescrAccessibility lang="x-default" Test Extended Accessibility Description lang="x-default" Test Extended Accessibility Description +Xmp.iptc.Scene 010100, 010200, 010300, 010400, 010500, 010600, 010700, 010800, 010900, 011000, 011100, 011200, 011300, 011400, 011500, 011600, 011700, 011800, 011900, 012000, 012100, 012200, 012300, 012400, 900000 Headshot, Half-length, Full-length, Profile, rear view, Single, Couple, Two, Group, General view, Panoramic view, Aerial view, Under-water, Night scene, Satellite, Exterior view, Interior view, Close-up, Action, Performing, Posing, Symbolic, Off-beat, Movie scene, (900000) +Xmp.iptc.SubjectCode 01000000, 01001000, 01002000, 01003000, 01004000, 01005000, 01005001, 01006000, 01007000, 01007001, 01008000, 01009000, 01010000, 01010001, 01010002, 01011000, 01011001, 01011002, 01011003, 01011004, 01011005, 01011006, 01011007, 01012000, 01013000, 01014000, 01015000, 01015001, 01016000, 01016001, 01017000, 01017001, 01018000, 01018001, 01019000, 01020000, 01021000, 01021001, 01022000, 01022001, 01023000, 01024000, 01025000, 01026000, 01026001, 01026002, 01026003, 01026004, 01027000, 01028000, 02000000, 02001000, 02001001, 02001002, 02001003, 02001004, 02001005, 02001006, 02001007, 02001008, 02001009, 02001010, 02002000, 02002001, 02002002, 02002003, 02003000, 02003001, 02003002, 02003003, 02004000, 02004001, 02004002, 02005000, 02006000, 02006001, 02006002, 02007000, 02007001, 02008000, 02008001, 02008002, 02008003, 02009000, 02009001, 02009002, 02010000, 02011000, 02011001, 02011002, 02012000, 02012001, 02012002, 02012003, 02012004, 02012005, 02012006, 02012007, 02013000, 02014000, 02015000, 02016000, 03000000, 03001000, 03002000, 03003000, 03004000, 03005000, 03006000, 03006001, 03007000, 03007001, 03008000, 03009000, 03010000, 03010001, 03010002, 03010003, 03010004, 03011000, 03012000, 03013000, 03014000, 03014001, 03015000, 03015001, 03015002, 03016000, 03017000, 04000000, 04001000, 04001001, 04001002, 04001003, 04001004, 04001005, 04001006, 04002000, 04002001, 04002002, 04002003, 04002004, 04002005, 04002006, 04002007, 04003000, 04003001, 04003002, 04003003, 04003004, 04003005, 04003006, 04003007, 04003008, 04003009, 04004000, 04004001, 04004002, 04004003, 04004004, 04004005, 04004006, 04004007, 04005000, 04005001, 04005002, 04005003, 04005004, 04005005, 04005006, 04005007, 04005008, 04005009, 04005010, 04005011, 04005012, 04005013, 04005014, 04006000, 04006001, 04006002, 04006003, 04006004, 04006005, 04006006, 04006007, 04006008, 04006009, 04006010, 04006011, 04006012, 04006013, 04006014, 04006015, 04006016, 04006017, 04006018, 04006019, 04006020, 04006021, 04006022, 04007000, 04007001, 04007002, 04007003, 04007004, 04007005, 04007006, 04007007, 04007008, 04007009, 04007010, 04007011, 04007012, 04008000, 04008001, 04008002, 04008003, 04008004, 04008005, 04008006, 04008007, 04008008, 04008009, 04008010, 04008011, 04008012, 04008013, 04008014, 04008015, 04008016, 04008017, 04008018, 04008019, 04008020, 04008021, 04008022, 04008023, 04008024, 04008025, 04008026, 04008027, 04008028, 04008029, 04008030, 04008031, 04008032, 04008033, 04008034, 04008035, 04008036, 04009000, 04009001, 04009002, 04009003, 04009004, 04010000, 04010001, 04010002, 04010003, 04010004, 04010005, 04010006, 04010007, 04010008, 04010009, 04010010, 04010011, 04011000, 04011001, 04011002, 04011003, 04011004, 04011005, 04011006, 04011007, 04011008, 04011009, 04012000, 04012001, 04012002, 04012003, 04012004, 04012005, 04013000, 04013001, 04013002, 04013003, 04013004, 04013005, 04013006, 04013007, 04013008, 04014000, 04014001, 04014002, 04014003, 04014004, 04014005, 04015000, 04015001, 04015002, 04015003, 04015004, 04016000, 04016001, 04016002, 04016003, 04016004, 04016005, 04016006, 04016007, 04016008, 04016009, 04016010, 04016011, 04016012, 04016013, 04016014, 04016015, 04016016, 04016017, 04016018, 04016019, 04016020, 04016021, 04016022, 04016023, 04016024, 04016025, 04016026, 04016027, 04016028, 04016029, 04016030, 04016031, 04016032, 04016033, 04016034, 04016035, 04016036, 04016037, 04016038, 04016039, 04016040, 04016041, 04016042, 04016043, 04016044, 04016045, 04016046, 04016047, 04016048, 04016049, 04016050, 04016051, 04016052, 04016053, 04016054, 04016055, 04016056, 04016057, 04017000, 04017001, 04018000, 04018001, 04019000, 04019001, 05000000, 05001000, 05002000, 05003000, 05004000, 05005000, 05005001, 05005002, 05005003, 05006000, 05007000, 05008000, 05009000, 05010000, 05010001, 05010002, 05010003, 05010004, 05011000, 05011001, 05011002, 05011003, 05011004, 06000000, 06001000, 06002000, 06002001, 06002002, 06003000, 06004000, 06005000, 06005001, 06005002, 06006000, 06006001, 06006002, 06006003, 06006004, 06006005, 06006006, 06006007, 06006008, 06006009, 06007000, 06007001, 06008000, 06009000, 06010000, 06011000, 06012000, 06013000, 07000000, 07001000, 07001001, 07001002, 07001003, 07001004, 07001005, 07001006, 07001007, 07001008, 07001009, 07002000, 07003000, 07003001, 07003002, 07003003, 07003004, 07003005, 07004000, 07005000, 07006000, 07006001, 07006002, 07007000, 07007001, 07007002, 07007003, 07007004, 07008000, 07008001, 07009000, 07010000, 07011000, 07011001, 07011002, 07012000, 07013000, 07013001, 07014000, 07014001, 07014002, 07014003, 07014004, 07014005, 07015000, 07016000, 07017000, 07017001, 07017002, 07017003, 07018000, 07019000, 08000000, 08001000, 08002000, 08003000, 08003001, 08003002, 08003003, 08003004, 08003005, 08004000, 08005000, 08005001, 08005002, 08005003, 08005004, 08005005, 08006000, 08006001, 08007000, 08008000, 09000000, 09001000, 09002000, 09002001, 09002002, 09002003, 09003000, 09003001, 09003002, 09003003, 09003004, 09004000, 09005000, 09006000, 09007000, 09008000, 09009000, 09010000, 09011000, 09011001, 09011002, 09012000, 09013000, 09014000, 09015000, 09016000, 10000000, 10001000, 10001001, 10001002, 10001003, 10001004, 10002000, 10003000, 10003001, 10004000, 10004001, 10004002, 10004003, 10005000, 10006000, 10007000, 10007001, 10008000, 10009000, 10010000, 10011000, 10012000, 10013000, 10014000, 10015000, 10016000, 10017000, 10018000, 11000000, 11001000, 11001001, 11001002, 11001003, 11001004, 11001005, 11001006, 11001007, 11001008, 11001009, 11002000, 11002001, 11002002, 11002003, 11002004, 11003000, 11003001, 11003002, 11003003, 11003004, 11003005, 11003006, 11003007, 11003008, 11003009, 11003010, 11004000, 11005000, 11005001, 11006000, 11006001, 11006002, 11006003, 11006004, 11006005, 11006006, 11006007, 11006008, 11006009, 11006010, 11006011, 11006012, 11006013, 11007000, 11008000, 11009000, 11009001, 11009002, 11010000, 11010001, 11011000, 11012000, 11013000, 11013001, 11014000, 11014001, 11014002, 11014003, 11015000, 11016000, 11016001, 11016002, 11016003, 11016004, 11016005, 11016006, 11016007, 11017000, 11018000, 11019000, 11020000, 11021000, 11022000, 11023000, 11024000, 11024001, 11024002, 11024003, 11025000, 11026000, 11027000, 11028000, 12000000, 12001000, 12002000, 12002001, 12002002, 12003000, 12004000, 12004001, 12004002, 12004003, 12004004, 12004005, 12005000, 12005001, 12006000, 12006001, 12006002, 12007000, 12008000, 12009000, 12009001, 12009002, 12009003, 12009004, 12009005, 12009006, 12009007, 12009009, 12009010, 12009011, 12009012, 12009013, 12010000, 12011000, 12012000, 12013000, 12014000, 12014001, 12014002, 12014003, 12014004, 12014005, 12015000, 12015001, 12016000, 12017000, 12018000, 12019000, 12020000, 12021000, 12022000, 12023000, 12023001, 12023002, 12023003, 12024000, 12025000, 12025001, 12025002, 12025004, 12026000, 12027000, 13000000, 13001000, 13001001, 13001002, 13001003, 13001004, 13002000, 13002001, 13003000, 13003001, 13003002, 13003003, 13003004, 13003005, 13004000, 13004001, 13004002, 13004003, 13004004, 13004005, 13004006, 13004007, 13004008, 13005000, 13006000, 13006001, 13007000, 13008000, 13009000, 13010000, 13010001, 13010002, 13011000, 13012000, 13013000, 13014000, 13015000, 13016000, 13017000, 13018000, 13019000, 13020000, 13021000, 13022000, 13023000, 14000000, 14001000, 14002000, 14003000, 14003001, 14003002, 14003003, 14003004, 14004000, 14005000, 14005001, 14006000, 14006001, 14006002, 14006003, 14006004, 14006005, 14006006, 14007000, 14008000, 14009000, 14010000, 14010001, 14010002, 14011000, 14012000, 14013000, 14014000, 14015000, 14016000, 14017000, 14017001, 14018000, 14019000, 14020000, 14021000, 14022000, 14023000, 14024000, 14024001, 14024002, 14024003, 14024004, 14024005, 14025000, 14025001, 14025002, 14025003, 14025004, 14025005, 14026000, 14027000, 15000000, 15001000, 15001001, 15001002, 15002000, 15002001, 15002002, 15002003, 15002004, 15002005, 15003000, 15003001, 15003002, 15003003, 15004000, 15004001, 15004002, 15005000, 15005001, 15005002, 15005003, 15005004, 15005005, 15005006, 15005007, 15005008, 15005009, 15005010, 15005011, 15005012, 15005013, 15005014, 15005015, 15005016, 15005017, 15005018, 15005019, 15005020, 15005021, 15005022, 15005023, 15005024, 15005025, 15005026, 15005027, 15005028, 15005029, 15005030, 15005031, 15005032, 15005033, 15005034, 15005035, 15005036, 15005037, 15005038, 15005039, 15005040, 15005041, 15005042, 15005043, 15005044, 15005045, 15005046, 15005047, 15005048, 15005049, 15005050, 15005051, 15005052, 15005053, 15005054, 15005055, 15005056, 15005057, 15005058, 15005059, 15005060, 15005061, 15005062, 15005063, 15005064, 15005065, 15005066, 15005067, 15005068, 15005069, 15006000, 15007000, 15007001, 15007002, 15007003, 15007004, 15007005, 15007006, 15008000, 15008001, 15008002, 15008003, 15008004, 15008005, 15009000, 15009001, 15009002, 15009003, 15009004, 15009005, 15009006, 15010000, 15010001, 15010002, 15010003, 15010004, 15010005, 15010006, 15011000, 15011001, 15011002, 15012000, 15013000, 15014000, 15014001, 15014002, 15014003, 15014004, 15014005, 15014006, 15014007, 15014008, 15014009, 15014010, 15014011, 15014012, 15014013, 15014014, 15014015, 15014016, 15014017, 15014018, 15014019, 15014020, 15014021, 15014022, 15014023, 15014024, 15015000, 15015001, 15015002, 15015003, 15015004, 15015005, 15015006, 15015007, 15015008, 15015009, 15015010, 15015011, 15015012, 15016000, 15016001, 15016002, 15017000, 15018000, 15018001, 15019000, 15019001, 15019002, 15019003, 15019004, 15019005, 15019006, 15019007, 15019008, 15019009, 15019010, 15019011, 15019012, 15019013, 15019014, 15019015, 15019016, 15019017, 15019018, 15019019, 15019020, 15019021, 15020000, 15021000, 15021001, 15021002, 15021003, 15021004, 15021005, 15021006, 15022000, 15022001, 15022002, 15022003, 15022004, 15023000, 15023001, 15023002, 15023003, 15024000, 15024001, 15025000, 15025001, 15025002, 15025003, 15026000, 15026001, 15026002, 15026003, 15027000, 15028000, 15028001, 15028002, 15028003, 15028004, 15028005, 15028006, 15028007, 15028008, 15028009, 15028010, 15028011, 15028012, 15028013, 15028014, 15028015, 15029000, 15030000, 15030001, 15030002, 15030003, 15030004, 15031000, 15031001, 15031002, 15032000, 15032001, 15032002, 15032003, 15032004, 15032005, 15032006, 15032007, 15032008, 15032009, 15032010, 15032011, 15032012, 15033000, 15033001, 15033002, 15033003, 15033004, 15033005, 15033006, 15033007, 15034000, 15034001, 15034002, 15035000, 15036000, 15036001, 15036002, 15037000, 15038000, 15038001, 15038002, 15038003, 15038004, 15038005, 15039000, 15039001, 15039002, 15039003, 15039004, 15039005, 15039006, 15039007, 15039008, 15040000, 15040001, 15040002, 15040003, 15041000, 15041001, 15041002, 15041003, 15041004, 15041005, 15041006, 15041007, 15041008, 15041009, 15041010, 15041011, 15041012, 15041013, 15041014, 15042000, 15043000, 15043001, 15043002, 15043003, 15043004, 15043005, 15043006, 15043007, 15043008, 15043009, 15043010, 15043011, 15043012, 15043013, 15043014, 15043015, 15043016, 15043017, 15044000, 15044001, 15045000, 15046000, 15046001, 15046002, 15047000, 15047001, 15047002, 15047003, 15047004, 15047005, 15047006, 15047007, 15048000, 15049000, 15049001, 15050000, 15050001, 15050002, 15050003, 15050004, 15050005, 15050006, 15050007, 15050008, 15050009, 15050010, 15050011, 15050012, 15050013, 15050014, 15050015, 15050016, 15051000, 15051001, 15051002, 15051003, 15051004, 15051005, 15051006, 15051007, 15051008, 15051009, 15051010, 15051011, 15051012, 15052000, 15052001, 15052002, 15052003, 15053000, 15053001, 15053002, 15054000, 15055000, 15056000, 15056001, 15056002, 15056003, 15056004, 15056005, 15056006, 15056007, 15056008, 15056009, 15056010, 15056011, 15056012, 15056013, 15056014, 15057000, 15058000, 15058001, 15058002, 15058003, 15058004, 15058005, 15059000, 15060000, 15061000, 15062000, 15062001, 15062002, 15062003, 15062004, 15062005, 15062006, 15062007, 15062008, 15062009, 15062010, 15062011, 15062012, 15062013, 15062014, 15062015, 15062016, 15062017, 15062018, 15062019, 15062020, 15062021, 15062022, 15062023, 15062024, 15062025, 15062026, 15063000, 15064000, 15064001, 15064002, 15064003, 15064004, 15064005, 15064006, 15064007, 15064008, 15065000, 15065001, 15066000, 15066001, 15066002, 15066003, 15067000, 15067001, 15068000, 15069000, 15069001, 15069002, 15069003, 15069004, 15070000, 15070001, 15070002, 15070003, 15070004, 15070005, 15070006, 15070007, 15070008, 15070009, 15070010, 15070011, 15070012, 15070013, 15070014, 15070015, 15070016, 15071000, 15071001, 15071002, 15071003, 15071004, 15072000, 15072001, 15072002, 15072003, 15072004, 15072005, 15072006, 15072007, 15072008, 15072009, 15072010, 15072011, 15072012, 15073000, 15073001, 15073002, 15073003, 15073004, 15073005, 15073006, 15073007, 15073008, 15073009, 15073010, 15073011, 15073012, 15073013, 15073014, 15073015, 15073016, 15073017, 15073018, 15073019, 15073020, 15073021, 15073022, 15073023, 15073024, 15073025, 15073026, 15073027, 15073028, 15073029, 15073030, 15073031, 15073032, 15073033, 15073034, 15073035, 15073036, 15073037, 15073038, 15073039, 15073040, 15073041, 15073042, 15073043, 15073044, 15073045, 15073046, 15073047, 15074000, 15074001, 15074002, 15074003, 15074004, 15074005, 15074006, 15074007, 15075000, 15076000, 15077000, 15077001, 15077002, 15077003, 15077004, 15077005, 15077006, 15077007, 15077008, 15077009, 15077010, 15078000, 15079000, 15080000, 15081000, 15082000, 15082001, 15082002, 15083000, 15084000, 15085000, 15086000, 15087000, 15088000, 15089000, 15090000, 15091000, 15092000, 15093000, 15094000, 15095000, 15096000, 15097000, 15098000, 15099000, 15100000, 15101000, 15102000, 15103000, 16000000, 16001000, 16002000, 16003000, 16003001, 16003002, 16003003, 16003004, 16003005, 16004000, 16005000, 16005001, 16005002, 16006000, 16006001, 16007000, 16008000, 16009000, 16009001, 16009002, 16009003, 16010000, 16010001, 16011000, 16012000, 17000000, 17001000, 17002000, 17003000, 17003001, 17004000, 17005000 arts, culture and entertainment, archaeology, architecture, bullfighting, festive event (including carnival), cinema, film festival, dance, fashion, jewelry, language, library and museum, literature, fiction, poetry, music, classical music, folk music, jazz music, popular music, country music, rock and roll music, hip-hop, painting, photography, radio, sculpture, plastic art, television, soap opera, theatre, music theatre, monument and heritage site, institution-DEPRECATED, customs and tradition, arts (general), entertainment (general), entertainment award, culture (general), cultural development, nightclub, cartoon, animation, mass media, periodicals, news media, newspapers, reviews, internet, history, crime, law and justice, crime, homicide, computer crime, theft, drug trafficking, sexual assault, assault (general), kidnapping, arson, gang activity, terrorism, judiciary (system of justice), lawyer, judge, court administration, police, law enforcement, investigation, arrest, punishment, fine, execution, prison, laws, criminal, civil, justice and rights, civil rights, trials, litigation, arbitration, court preliminary, prosecution, defendant, witness, organized crime, international law, international court or tribunal, extradition, corporate crime, fraud, embezzlement, restraint of trade, breach of contract, anti-trust crime, corruption, bribery, war crime, inquest, inquiry, tribunal, disaster and accident, drought, earthquake, famine, fire, flood, industrial accident, structural failures, meteorological disaster, windstorms, nuclear accident, pollution, transport accident, road accident, railway accident, air and space accident, maritime accident, volcanic eruption, relief and aid organisation, accident (general), emergency incident, explosion, disaster (general), natural disasters, avalanche/landslide, emergency planning, rescue, economy, business and finance, agriculture, arable farming, fishing industry, forestry and timber, livestock farming, viniculture, aquaculture, chemicals, biotechnology, fertiliser, health and beauty product, inorganic chemical, organic chemical, pharmaceutical, synthetic and plastic, computing and information technology, hardware, networking, satellite technology, semiconductors and active components, software, telecommunication equipment, telecommunication service, security, wireless technology, construction and property, heavy construction, house building, real estate, farms, land price, renovation, design and engineering, energy and resource, alternative energy, coal, oil and gas - downstream activities, oil and gas - upstream activities, nuclear power, electricity production and distribution, waste management and pollution control, water supply, natural resources (general), energy (general), natural gas, petrol, diesel fuel, kerosene/paraffin, financial and business service, accountancy and auditing, banking, consultancy service, employment agency, healthcare provider, insurance, legal service, market research, stock broking, personal investing, market trend, shipping service, personal service, janitorial service, funeral parlour and crematorium, rental service, wedding service, personal finance, personal income, auction service, printing/promotional service, investment service, consumer goods, clothing, department store, food, mail order, retail, speciality store, wholesale, beverage, electronic commerce, luxury good, non-durable good, toy, macro economics, central bank, consumer issue, debt market, economic indicator, emerging market, foreign exchange market, government aid, government debt, interest rate, international economic institution, international (foreign) trade, loan market, economic organization, consumer confidence, trade dispute, inflation and deflation, prices, currency values, budgets and budgeting, credit and debt, loans, mortgages, financial markets, commodity markets, investments, stocks, bonds, mutual funds, derivative securities, imports, exports, trade agreements, trade policy, business enterprises, tariff, trade balance, market and exchange, energy, metal, securities, soft commodity, media, advertising, book, cinema industry, news agency, newspaper and magazine, online, public relation, radio industry, satellite and cable service, television industry, music industry, manufacturing and engineering, aerospace, automotive equipment, defence equipment, electrical appliance, heavy engineering, industrial component, instrument engineering, shipbuilding, machine manufacturing, metal and mineral, building material, gold and precious material, iron and steel, non ferrous metal, mining, process industry, distiller and brewer, food, furnishings and furniture, paper and packaging product, rubber product, soft drinks, textile and clothing, tobacco, tourism and leisure, casino and gambling, hotel and accommodation, recreational and sporting goods, restaurant and catering, tour operator, transport, air transport, railway, road transport, waterway and maritime transport, company information, accounting and audit, annual and special corporate meeting, annual report, antitrust issue, merger, acquisition and takeover, analysts' comment, bankruptcy, board of directors (appointment and change), buyback, C.E.O. interview, corporate officer, corporate profile, contract, defence contract, dividend announcement, earnings forecast, financially distressed company, earnings, financing and stock offering, government contract, global expansion, insider trading, joint venture, leveraged buyout, layoffs and downsizing, licensing agreement, litigation and regulation, management change, marketing, new product, patent, copyright and trademark, plant closing, plant opening, privatisation, proxy filing, rating, research and development, quarterly or semiannual financial statement, restructuring and recapitalisation, spin-off, stock activity, industrial production, productivity, inventories, sales, corporations, shareholders, corporate performance, losses, credit ratings, stock splits, stock options, recalls (products), globalization, consumers, purchase, new service, economy (general), economic policy, business (general), institution, finance (general), money and monetary policy, education, adult education, further education, parent organisation, preschool, school, elementary schools, middle schools, high schools, teachers union, university, upbringing, entrance examination, teaching and learning, students, teachers, curriculum, test/examination, religious education, parochial school, seminary, yeshiva, madrasa, environmental issue, renewable energy, conservation, endangered species, ecosystem, energy saving, environmental politics, environmental pollution, air pollution, water pollution, natural resources, land resources, parks, forests, wetlands, mountains, rivers, oceans, wildlife, energy resources, nature, invasive species, population, waste, water, global warming, hazardous materials, environmental cleanup, health, disease, communicable diseases, virus diseases, AIDS, cancer, heart disease, alzheimer's disease, animal diseases, plant diseases, retrovirus, epidemic and plague, health treatment, prescription drugs, dietary supplements, diet, medical procedure/test, therapy, health organisations, medical research, medical staff, primary care physician, health-workers union, medicine, herbal, holistic, western, traditional Chinese, preventative medicine, vaccines, injury, hospital and clinic, government health care, medicare, medicaid, private health care, healthcare policy, food safety, medical specialisation, geriatric, pediatrics, reproduction, genetics, obstetrics/gynecology, medical service, physical fitness, illness, mental illness, eating disorder, obesity, medical conditions, patient, human interest, animal, curiosity, people, advice, celebrity, accomplishment, human mishap, fortune-telling, mystery, society, ceremony, death, funeral, estate bestowal, memorial, award and prize, record, imperial and royal matters, plant, labour, apprentices, collective contract, contract issue-wages, contract issue-healthcare, contract issue-work rules, employment, labor market, job layoffs, child labor, occupations, labour dispute, labour legislation, retirement, retraining, strike, unemployment, unions, wage and pension, employee benefits, social security, work relations, health and safety at work, advanced training, employer, employee, lifestyle and leisure, game, Go, chess, bridge, shogi, gaming and lottery, gastronomy, organic foods, hobby, DIY, shopping, gardening, holiday or vacation, tourism, travel and commuting, traffic, club and association, lifestyle (house and home), leisure (general), public holiday, hunting, fishing, auto trends, adventure, beauty, consumer issue, wedding, politics, defence, veterans affairs, national security, security measures, armed Forces, military equipment, firearms, biological and chemical weapons, missile systems, nuclear weapons, diplomacy, summit, international relations, peace negotiations, alliances, election, political candidates, political campaigns, campaign finance, national elections, regional elections, local elections, voting, poll, european elections, primary, espionage and intelligence, foreign aid, economic sanction, government, civil and public service, safety of citizens, think tank, national government, executive (government), heads of state, government departments, public officials, ministers (government), public employees, privatisation, nationalisation, impeachment, human rights, local authority, parliament, upper house, lower house, parties and movements, non government organizations (NGO), refugee, regional authority, state budget and tax, public finance, treaty and international organisation-DEPRECATED, international relations-DEPRECATED, peace negotiations-DEPRECATED, alliances-DEPRECATED, constitution, interior policy, data protection, housing and urban planning, pension and welfare, personal weapon control, indigenous people, personal data collection, planning inquiries, migration, citizens initiative and recall, referenda, nuclear policy, lobbying, regulatory policy and organisation, censorship, politics (general), political systems, democracy, political development, freedom of the press, freedom of religion, treaty, international organisation, religion and belief, cult and sect, belief (faith), unificationism, scientology, freemasonry, religion-DEPRECATED, christianity-DEPRECATED, islam-DEPRECATED, judaism-DEPRECATED, buddhism-DEPRECATED, hinduism-DEPRECATED, church (organisation)-DEPRECATED, religious facilities-DEPRECATED, values, ethics, corrupt practices, church and state relations, philosophy, christianity, protestant, lutheran, reformed, anglican, methodist, baptist, mennonite, mormon, roman catholic, old catholic, orthodoxy, salvation army, islam, judaism, buddhism, hinduism, religious festival or holiday, christmas, easter, pentecost, ramadan, yom kippur, religious leader, pope, nature religion, taoism, shintoism, sikhism, jainism, parsasm, confucianism, religious text, bible, qur'an, torah, interreligious dialogue, religious event, catholic convention, protestant convention, ritual, concordat, ecumenism, science and technology, applied science, physics, chemistry, cosmology, particle physics, engineering, material science, human science, social sciences, history, psychology, sociology, anthropology, natural science, geology, paleontology, geography, botany, zoology, physiology, astronomy, biology, philosophical science, research, survey, scientific exploration, space programme, science (general), technology (general), rocketry, laser, standards, animal science, micro science, marine science, weather science, electronics, identification technology, mathematics, biotechnology, agricultural research and technology, nanotechnology, IT/computer sciences, scientific institutions, social issue, addiction, charity, demographics, population and census, immigration, illegal immigrants, emigrants, disabled, euthanasia (also includes assisted suicide), suicide, family, parent and child, adoption, marriage, divorce, sex, courtship, family planning, health insurance, homelessness, minority group, gays and lesbians, national or ethnic minority, pornography, poverty, prostitution, racism, welfare, abortion, missing person, missing due to hostilities, long term care, juvenile delinquency, nuclear radiation victims, slavery, abusive behaviour, death and dying, people, children, infants, teen-agers, adults, senior citizens, social issues (general), social conditions, social problems, discrimination, social services, death penalty policies, ordnance clearance, reconstruction, sport, aero and aviation sport, parachuting, sky diving, alpine skiing, downhill, giant slalom, super G, slalom, combined, American football, (US) National Football League (NFL) (North American), CFL, AFL-DEPRECATED, archery, FITA / Outdoor target archery, crossbow shooting, athletics, track and field, 100 m, 200 m, 400 m, 800 m, 1000 m, 1500 m, mile, 2000 m, 3000 m, 5000 m, 10,000 m, 20 km, one hour, 25000, 30000, 110 m hurdles, 400 m hurdles, 3000 m steeplechase, high jump, pole vault, long jump, triple jump, shot put, discus throw, hammer throw, javelin throw, decathlon, 4x100 m, 4x200 m, 4x400 m, 4x800 m, 4x1500 m, walk 1 h, walk 2 h, 10 km walk, 15 km walk, 20 km walk, 30 km walk, 50 km walk, 100 m hurdles, 5 km walk, heptathlon, 1500 m walk, 2000 m walk, 3000 m walk, 50 m, 50 m hurdles, 50 yards, 50 yard hurdles, 60 m, 60 m hurdles, 60 yards, 60 yard hurdles, 100 yards, 100 yard hurdles, 300 m, 300 yards, 440 yards, 500 m, 500 yards, 600 m, 600 yards, 880 yards, 1000 yards, 2 miles, 3 miles, 6 miles, 4x1 mile, pentathlon, badminton, baseball, Major League Baseball (North American Professional) - American League, Major League Baseball (North American Professional) - National League, Major League Baseball (North American Professional) - Special (e.g. All-Star, World Series), rubberball baseball, Major League Baseball Playoffs, World Series, basketball, National Basketball Association (North American Professional), professional - Women general, Swiss netball, German netball, Dutch netball, biathlon, 7.5 km, 10 km, 15 km, 20 km, 4x7.5 km relay, 12.5 km pursuit, billiards, snooker and pool, 8 ball, 9 ball, 14.1, continuous-DEPRECATED, other-DEPRECATED, snooker, bobsleigh, two-man sled, four-man sled, bowling, bowls and petanque, boxing, super-heavyweight, heavyweight, cruiserweight, light-heavyweight, super-middleweight, middleweight, light-middleweight, welterweight, light-welterweight, lightweight, super-featherweight, featherweight, super-bantamweight, bantamweight, super-flyweight, flyweight, light flyweight, straw, IBF, WBA, WBC, WBO, French boxing, Thai boxing, canoeing and kayaking, Slalom, 200 m, 500 m, 1000 m, K1, K2, K4, C1, C2, C4, canoe sailing, pontoniering, climbing, mountaineering, sport climbing, cricket, curling, icestock sport, cycling, track, pursuit, Olympic sprint, sprint, Keirin, points race, Madison race, 500 m time trial, 1 km time trial, one hour, road race, road time trial, staging race, cyclo-cross, Vtt, Vtt-cross, Vtt-downhill, bi-crossing, trial, artistic cycling, cycle ball, dancing, diving, 10 m platform, 10 m platform synchronised, 3 m springboard, 3 m springboard synchronised, subaquatics, scuba diving, equestrian, three-day event, dressage, jumping, cross country, fencing, epee, foil, sabre, field Hockey, roll hockey, figure Skating, singles, pairs, ice dance, freestyle Skiing, moguls, aerials, artistic skiing, golf, gymnastics, floor exercise, vault, pommel horse, uneven bars, parallel bars, horizontal bar, rings, beam, rhythmic, clubs, hoop, ribbon, rope, ball, trampoline, handball (team), horse racing, harness racing, flat racing, steeple chase, trotting, cross country, ice hockey, National Hockey League (North American), sledge hockey, Jai Alai (Pelota), fronton, jai-alai, left wall, trinquet, rebot, chistera ancha, chistera corta, bare hand, pala-ancha, pala-corta, pasaka, xare, judo, heavyweight, half-heavyweight, middleweight, half-middleweight, half-lightweight, lightweight, extra lightweight, karate, sparring, formal exercise-DEPRECATED, lacrosse, luge, singles, doubles, marathon, modern pentathlon, running, shooting, swimming, fencing, showjumping, motor racing, Formula One, F3000, endurance, Indy, CART, NHRA, NASCAR, TRUCKI, motor rallying, rallying, pursuit, rallycross, motorcycling, speed-Grand-Prix, enduro, grass-track, moto-ball, moto-cross, rallying, trial, endurance, superbike, 125 cm3, 250 cm3, 500 cm3, side-cars, motoGP, netball, nordic skiing, cross-country, 5 km classical time, 10 km classical style, 10 km pursuit free style, 15 km classical style, 15 km pursuit free style, 10 km + 15 km combined, 30 km classical style, 30km free style, 50 km free style, 4x5 km relay, 4x10 km relay, nordic combined, raid, 5 km pursuit free style, 1.5 km sprint free, 50 km classic style, orienteering, ski orienteering, polo, power boating, F1, F2, rowing, single sculls, double sculls, quadruple sculls, coxless pair, coxless four, eight, lightweight, rugby league, rugby union, rugby 7, sailing, Tornado, soling, 49er, Europe, Laser, 470, Finn, Star, flying dutchmann, 505, staging race, around the world, monohull, multihulls, yngling, mistral, shooting, 10 m air rifle, 10 m air pistol, 10 m running target, 25 m rapid fire pistol, 25 m sport pistol, 50 m free pistol, 50 m free rifle prone, 50 m free rifle 3x40, 50 m sport rifle 3x20, trap, double trap, skeet, ski jumping, K90 jump, K120 jump, K180 (flying jump), snow boarding, giant slalom, half-pipe, soccer, softball, speed skating, 500 m, 1000 m, 1500 m, 3000 m, 5000 m, 10000 m, Short-track, st 500 m, st 1000m, st 1500m, st 3000m, st 3000m relay, st 5000m, st 5000m relay, speedway, sports organisations, IOC, international federation, continental federation, national federation, GAISF, squash, sumo wrestling, surfing, swimming, 50 m freestyle, 100 m freestyle, 200 m freestyle, 400 m freestyle, 800 m freestyle, 1500 m freestyle, relay 4x50 m freestyle, relay 4x100 m freestyle, relay 4x200 m freestyle, 50 m backstroke, 100 m backstroke, 200 m backstroke, 50 m breaststroke, 100 m breaststroke, 200 m breaststroke, 50 m butterfly, 100 m butterfly, 200 m butterfly, 100 m medley, 200 m medley, 400 m medley, relay 4x50 m medlay, relay4x100 m medley, short course, synchronised technical routine, synchronised free routine, table tennis, Taekwon-Do, under 49 kg, under 58 kg, 49-57 kg, 58-68 kg, 57-67 kg, 68-80 kg, over 67 kg, over 80 kg, tennis, soft tennis, triathlon, triathlon swimming, triathlon cycling, triathlon run, volleyball, beach volleyball, water polo, water skiing, slalom, trick, jump, combined, weightlifting, snatch, clean and jerk, 48 kg, 53 kg, 63 kg, 75 kg, over 75 kg, 56 kg, 62 kg, 69 kg, 77 kg, 85 kg, 94 kg, 105 kg, over 105 kg, powerlifting, windsurfing, ocean, lake, river, land, wrestling, freestyle, greco-roman, over 130 kg, 130 kg, 97 kg, 85 kg, 76 kg, 69 kg, 63 kg, 58 kg, 54 kg, Swiss wrestling, sports event, Summer Olympics, Winter Olympics, Summer universiade, Winter Universiade, Commonwealth Games, Winter Goodwill Games, Summer Asian Games, Winter Asian Games, Panamerican Games, African Games, Mediterranean Games, SouthEast Asiatic Games, PanPacific Games, SouthPacific Games, PanArabic Games, Summer Goodwill Games, World games, World Cup, intercontinental cup, continental cup, international cup, National Cup, interregional cup, regional cup, league cup, world championship, intercontinental championship, continental championship 1st level, continental championship 2nd level, continental championship 3rd level, national championship 1st level, national championship 2nd level, national championship3rdlevel, national championship 4th level, regional championship, Grand Prix, intercontinental tournament, continental tournament, international tournament, national tournament, inter-nations competition, inter-clubs competition, friendly competition, all-stars competition, exhibition, Super Bowl, paralympic games, rodeo, barrel racing, calf roping, bull riding, bulldogging, saddle bronc, bareback, goat roping, mini golf sport, bandy, flying disc, ultimate, guts, overall, distance, discathon, DDC, SCF, freestyle, accuracy, disc golf, floorball, casting, tug-of-war, croquette, dog racing, sled, oval track, skeleton, Australian rules football, Canadian football, duathlon, hornuss, fist ball, inline skating, grass ski, snowbiking, twirling, kendo, jukendo, naginata, kyudo, kabaddi, sepak takraw, wushu, darts, bodybuilding, sports disciplinary action, sports awards, unrest, conflicts and war, act of terror, armed conflict, civil unrest, revolutions, rebellions, political dissent, religious conflict, social conflict, coup d'etat, guerrilla activity, bioterrorism, bombings, massacre, genocide, riots, demonstration, war, civil war, international military intervention, prisoners and detainees, conflict (general), peacekeeping force, crisis, weaponry, weather, forecast, global change, report, weather news, statistic, warning +Xmp.iptcExt.AddlModelInfo Test Model Info Test Model Info +Xmp.iptcExt.DigImageGUID nq394uihqtj085jh0qj5h034jhq905mtrjh nq394uihqtj085jh0qj5h034jhq905mtrjh +Xmp.iptcExt.DigitalSourceType http://cv.iptc.org/newscodes/digitalsourcetype/softwareImage The digital image was created by computer software +Xmp.iptcExt.MaxAvailHeight 250 250 +Xmp.iptcExt.MaxAvailWidth 250 250 +Xmp.iptcExt.AboutCvTerm type="Bag" +Xmp.iptcExt.AboutCvTerm[1] type="Struct" +Xmp.iptcExt.AboutCvTerm[1]/Iptc4xmpExt:CvId http://example.com/cv/test http://example.com/cv/test +Xmp.iptcExt.AboutCvTerm[1]/Iptc4xmpExt:CvTermId http://example.com/2489rtuj35i5gon3509hg http://example.com/2489rtuj35i5gon3509hg +Xmp.iptcExt.AboutCvTerm[1]/Iptc4xmpExt:CvTermRefinedAbout http://example.com/eopihjg30mhn0q4emn09 http://example.com/eopihjg30mhn0q4emn09 +Xmp.iptcExt.AboutCvTerm[1]/Iptc4xmpExt:CvTermName lang="x-default" Test CV-Term Name lang="x-default" Test CV-Term Name +Xmp.iptcExt.ArtworkOrObject type="Bag" +Xmp.iptcExt.ArtworkOrObject[1] type="Struct" +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOCircaDateCreated 2022-01-04 2022-01-04 +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOCopyrightNotice Copyright Exiv2 Copyright Exiv2 +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOCurrentCopyrightOwnerId http://www.example.com/userID/q30w4jyg34nh0h4j0934jh http://www.example.com/userID/q30w4jyg34nh0h4j0934jh +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOCurrentCopyrightOwnerName Exiv2 Exiv2 +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOCurrentLicensorId http://www.example.com/licensorID/j70948tjg308jgn093q4 http://www.example.com/licensorID/j70948tjg308jgn093q4 +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOCurrentLicensorName Licensor Licensor +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AODateCreated 2022-01-04T09:41:01+00:00 2022-01-04T09:41:01+00:00 +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOSource Exiv2 Exiv2 +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOSourceInvNo 3984u1tIAEUshjg03j409 3984u1tIAEUshjg03j409 +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOSourceInvURL http://www.example.com/sourceID/309g30qm00ginm55-hj0 http://www.example.com/sourceID/309g30qm00ginm55-hj0 +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOContentDescription lang="x-default" Test data lang="x-default" Test data +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOContributionDescription lang="x-default" None lang="x-default" None +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOCreator postscript-dev postscript-dev +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOCreatorId http://www.example.com/userID/q3049jq09mn0hq39m5h http://www.example.com/userID/q3049jq09mn0hq39m5h +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOPhysicalDescription lang="x-default" Test data lang="x-default" Test data +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOStylePeriod Art Deco Art Deco +Xmp.iptcExt.ArtworkOrObject[1]/Iptc4xmpExt:AOTitle lang="x-default" Xmp.iptc.* and Xmp.iptcExt.* test data lang="x-default" Xmp.iptc.* and Xmp.iptcExt.* test data +Xmp.iptcExt.EmbdEncRightsExpr type="Bag" +Xmp.iptcExt.EmbdEncRightsExpr[1] type="Struct" +Xmp.iptcExt.EmbdEncRightsExpr[1]/Iptc4xmpExt:EncRightsExpr Exiv2 project license: https://raw.githubusercontent.com/Exiv2/exiv2/main/COPYING Exiv2 project license: https://raw.githubusercontent.com/Exiv2/exiv2/main/COPYING +Xmp.iptcExt.EmbdEncRightsExpr[1]/Iptc4xmpExt:RightsExprEncType text/plain text/plain +Xmp.iptcExt.EmbdEncRightsExpr[1]/Iptc4xmpExt:RightsExprLangId http://www.example.com/rightsID/lkjusahgnoie439j9340 http://www.example.com/rightsID/lkjusahgnoie439j9340 +Xmp.iptcExt.Event lang="x-default" None lang="x-default" None +Xmp.iptcExt.EventId https://example.com/eventID/39085yjinmhq09043h https://example.com/eventID/39085yjinmhq09043h +Xmp.iptcExt.Genre type="Bag" +Xmp.iptcExt.Genre[1] type="Struct" +Xmp.iptcExt.Genre[1]/Iptc4xmpExt:CvId http://example.com/cvID/380940jeokjhinthrstn http://example.com/cvID/380940jeokjhinthrstn +Xmp.iptcExt.Genre[1]/Iptc4xmpExt:CvTermId http://example.com/cvtermID/dfjkhng93jqg03jrs0hm http://example.com/cvtermID/dfjkhng93jqg03jrs0hm +Xmp.iptcExt.Genre[1]/Iptc4xmpExt:CvTermRefinedAbout http://example.com/cvtermrefinedabout/fjh3n809jn0q3jh5q09hjrojh3509 http://example.com/cvtermrefinedabout/fjh3n809jn0q3jh5q09hjrojh3509 +Xmp.iptcExt.Genre[1]/Iptc4xmpExt:CvTermName lang="x-default" Test CvTermName lang="x-default" Test CvTermName +Xmp.iptcExt.ImageRegion type="Bag" +Xmp.iptcExt.ImageRegion[1] type="Struct" +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:rId testregion testregion +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:Name lang="x-default" Test Region lang="x-default" Test Region +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:OrganisationInImageName Exiv2 Exiv2 +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:PersonInImage None None +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:RegionBoundary type="Struct" +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:RegionBoundary/Iptc4xmpExt:rbH 0.35 0.35 +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:RegionBoundary/Iptc4xmpExt:rbShape rectangle rectangle +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:RegionBoundary/Iptc4xmpExt:rbUnit relative relative +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:RegionBoundary/Iptc4xmpExt:rbW 0.15 0.15 +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:RegionBoundary/Iptc4xmpExt:rbX 0.25 0.25 +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:RegionBoundary/Iptc4xmpExt:rbY 0.25 0.25 +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:rCtype type="Bag" +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:rCtype[1] type="Struct" +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:rCtype[1]/Iptc4xmpExt:Name lang="x-default" Somewhere lang="x-default" Somewhere +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:rCtype[1]/xmp:Identifier https://example.org/GUID/q3094jg304ng3049jhtio4j3 https://example.org/GUID/q3094jg304ng3049jhtio4j3 +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:rRole type="Bag" +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:rRole[1] type="Struct" +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:rRole[1]/Iptc4xmpExt:Name lang="x-default" Test name lang="x-default" Test name +Xmp.iptcExt.ImageRegion[1]/Iptc4xmpExt:rRole[1]/xmp:Identifier https://example.org/GUID/ioehg03q94jh0935nhq3hj9 https://example.org/GUID/ioehg03q94jh0935nhq3hj9 +Xmp.iptcExt.LinkedEncRightsExpr type="Bag" +Xmp.iptcExt.LinkedEncRightsExpr[1] type="Struct" +Xmp.iptcExt.LinkedEncRightsExpr[1]/Iptc4xmpExt:LinkedRightsExpr http://example.org/linkedrightsexpression/034j093jhn0erihjmkjnh034 http://example.org/linkedrightsexpression/034j093jhn0erihjmkjnh034 +Xmp.iptcExt.LinkedEncRightsExpr[1]/Iptc4xmpExt:RightsExprEncType text/xml text/xml +Xmp.iptcExt.LinkedEncRightsExpr[1]/Iptc4xmpExt:RightsExprLangId http://example.org/rightsexprlangid/3098jnyqgh03jnh0jw45uj65yh http://example.org/rightsexprlangid/3098jnyqgh03jnh0jw45uj65yh +Xmp.iptcExt.LocationCreated type="Bag" +Xmp.iptcExt.LocationCreated[1] type="Struct" +Xmp.iptcExt.LocationCreated[1]/Iptc4xmpExt:City Test City Test City +Xmp.iptcExt.LocationCreated[1]/Iptc4xmpExt:CountryCode GBR GBR +Xmp.iptcExt.LocationCreated[1]/Iptc4xmpExt:CountryName Test Country Test Country +Xmp.iptcExt.LocationCreated[1]/Iptc4xmpExt:ProvinceState Test Province/State Test Province/State +Xmp.iptcExt.LocationCreated[1]/Iptc4xmpExt:Sublocation Test Sublocation Test Sublocation +Xmp.iptcExt.LocationCreated[1]/Iptc4xmpExt:WorldRegion Test Region Test Region +Xmp.iptcExt.LocationCreated[1]/exif:GPSAltitude 25/1 25/1 +Xmp.iptcExt.LocationCreated[1]/exif:GPSLatitude 51,30.30N 51,30.30N +Xmp.iptcExt.LocationCreated[1]/exif:GPSLongitude 0,07.32W 0,07.32W +Xmp.iptcExt.LocationCreated[1]/Iptc4xmpExt:LocationId http://example.org/locationId/3409j0ijm3fgldsgjk2 http://example.org/locationId/3409j0ijm3fgldsgjk2 +Xmp.iptcExt.LocationCreated[1]/Iptc4xmpExt:LocationName lang="x-default" Test Location lang="x-default" Test Location +Xmp.iptcExt.LocationShown type="Bag" +Xmp.iptcExt.LocationShown[1] type="Struct" +Xmp.iptcExt.LocationShown[1]/Iptc4xmpExt:City Test City Test City +Xmp.iptcExt.LocationShown[1]/Iptc4xmpExt:CountryCode GBR GBR +Xmp.iptcExt.LocationShown[1]/Iptc4xmpExt:CountryName Test Country Test Country +Xmp.iptcExt.LocationShown[1]/Iptc4xmpExt:ProvinceState Test Province/State Test Province/State +Xmp.iptcExt.LocationShown[1]/Iptc4xmpExt:Sublocation Test Sublocation Test Sublocation +Xmp.iptcExt.LocationShown[1]/Iptc4xmpExt:WorldRegion Test Region Test Region +Xmp.iptcExt.LocationShown[1]/exif:GPSAltitude 25/1 25/1 +Xmp.iptcExt.LocationShown[1]/exif:GPSLatitude 51,30.30N 51,30.30N +Xmp.iptcExt.LocationShown[1]/exif:GPSLongitude 0,07.32W 0,07.32W +Xmp.iptcExt.LocationShown[1]/Iptc4xmpExt:LocationId http://example.org/locationId/3409j0ijm3fgldsgjk2 http://example.org/locationId/3409j0ijm3fgldsgjk2 +Xmp.iptcExt.LocationShown[1]/Iptc4xmpExt:LocationName lang="x-default" Test Location lang="x-default" Test Location +Xmp.iptcExt.ModelAge 25 25 +Xmp.iptcExt.OrganisationInImageCode Test code:code Test code:code +Xmp.iptcExt.OrganisationInImageName None None +Xmp.iptcExt.PersonInImage Nobody Nobody +Xmp.iptcExt.PersonInImageWDetails type="Bag" +Xmp.iptcExt.PersonInImageWDetails[1] type="Struct" +Xmp.iptcExt.PersonInImageWDetails[1]/Iptc4xmpExt:PersonCharacteristic type="Bag" +Xmp.iptcExt.PersonInImageWDetails[1]/Iptc4xmpExt:PersonCharacteristic[1] type="Struct" +Xmp.iptcExt.PersonInImageWDetails[1]/Iptc4xmpExt:PersonCharacteristic[1]/Iptc4xmpExt:CvId http://example.com/cvid/0q349ji3mg30gme45h4 http://example.com/cvid/0q349ji3mg30gme45h4 +Xmp.iptcExt.PersonInImageWDetails[1]/Iptc4xmpExt:PersonCharacteristic[1]/Iptc4xmpExt:CvTermId http://example.com/cvtermid/0249jtgmn3wopmhpmklfmnh5 http://example.com/cvtermid/0249jtgmn3wopmhpmklfmnh5 +Xmp.iptcExt.PersonInImageWDetails[1]/Iptc4xmpExt:PersonCharacteristic[1]/Iptc4xmpExt:CvTermRefinedAbout http://example.com/cvtermrefinedabout/0294jgmionmheohknmm5ohtyk http://example.com/cvtermrefinedabout/0294jgmionmheohknmm5ohtyk +Xmp.iptcExt.PersonInImageWDetails[1]/Iptc4xmpExt:PersonCharacteristic[1]/Iptc4xmpExt:CvTermName lang="x-default" Nobody lang="x-default" Nobody +Xmp.iptcExt.PersonInImageWDetails[1]/Iptc4xmpExt:PersonDescription lang="x-default" None lang="x-default" None +Xmp.iptcExt.PersonInImageWDetails[1]/Iptc4xmpExt:PersonId http://www.example.com/personid/039nmkojnsrgaioj4g04ew4gm http://www.example.com/personid/039nmkojnsrgaioj4g04ew4gm +Xmp.iptcExt.PersonInImageWDetails[1]/Iptc4xmpExt:PersonName lang="x-default" Nobody lang="x-default" Nobody +Xmp.iptcExt.ProductInImage type="Bag" +Xmp.iptcExt.ProductInImage[1] type="Struct" +Xmp.iptcExt.ProductInImage[1]/Iptc4xmpExt:ProductGTIN 12345678901234 12345678901234 +Xmp.iptcExt.ProductInImage[1]/Iptc4xmpExt:ProductDescription lang="x-default" None lang="x-default" None +Xmp.iptcExt.ProductInImage[1]/Iptc4xmpExt:ProductName lang="x-default" None lang="x-default" None +Xmp.iptcExt.RegistryId type="Bag" +Xmp.iptcExt.RegistryId[1] type="Struct" +Xmp.iptcExt.RegistryId[1]/Iptc4xmpExt:RegEntryRole http://www.example.com/regentryrole/09mnwergomng409mg049 http://www.example.com/regentryrole/09mnwergomng409mg049 +Xmp.iptcExt.RegistryId[1]/Iptc4xmpExt:RegItemId aeijt0293jtg0in340g0gh aeijt0293jtg0in340g0gh +Xmp.iptcExt.RegistryId[1]/Iptc4xmpExt:RegOrgId awring049j0gm4i03jh340 awring049j0gm4i03jh340 +Xmp.plus.ImageCreatorImageID Test Image Creator Image ID Test Image Creator Image ID +Xmp.plus.ImageSupplierImageID Test Image Supplier Image ID Test Image Supplier Image ID +Xmp.plus.MinorModelAgeDisclosure http://ns.useplus.org/ldf/vocab/AG-A25 Age 25 or Over +Xmp.plus.ModelReleaseStatus http://ns.useplus.org/ldf/vocab/MR-NAP Not Applicable +Xmp.plus.PropertyReleaseStatus http://ns.useplus.org/ldf/vocab/PR-NAP Not Applicable +Xmp.plus.CopyrightOwner type="Seq" +Xmp.plus.CopyrightOwner[1] type="Struct" +Xmp.plus.CopyrightOwner[1]/plus:CopyrightOwnerID http://www.example.com/copyrightownerid/0n4w3g0m409mg04dalnowun9 http://www.example.com/copyrightownerid/0n4w3g0m409mg04dalnowun9 +Xmp.plus.CopyrightOwner[1]/plus:CopyrightOwnerName Exiv2 Exiv2 +Xmp.plus.ImageCreator type="Seq" +Xmp.plus.ImageCreator[1] type="Struct" +Xmp.plus.ImageCreator[1]/plus:ImageCreatorID http://www.example.com/imagecreatorid/09n4mg09jreokrmhglwkmgdv http://www.example.com/imagecreatorid/09n4mg09jreokrmhglwkmgdv +Xmp.plus.ImageCreator[1]/plus:ImageCreatorName postscript-dev postscript-dev +Xmp.plus.ImageSupplier type="Seq" +Xmp.plus.ImageSupplier[1] type="Struct" +Xmp.plus.ImageSupplier[1]/plus:ImageSupplierID http://www.example.com/imagesupplierid/09gmn0pamwpomgnhtuhn50 http://www.example.com/imagesupplierid/09gmn0pamwpomgnhtuhn50 +Xmp.plus.ImageSupplier[1]/plus:ImageSupplierName Exiv2 Exiv2 +Xmp.plus.Licensor type="Seq" +Xmp.plus.Licensor[1] type="Struct" +Xmp.plus.Licensor[1]/plus:LicensorCity Test City Test City +Xmp.plus.Licensor[1]/plus:LicensorCountry Test Country Test Country +Xmp.plus.Licensor[1]/plus:LicensorEmail testlicensoremail_q23048jtn042@example.com testlicensoremail_q23048jtn042@example.com +Xmp.plus.Licensor[1]/plus:LicensorExtendedAddress Test Licensor Extended Address Test Licensor Extended Address +Xmp.plus.Licensor[1]/plus:LicensorID http://www.example.com/licensorid/0iaskrgmnowim4g0934m90gm43 http://www.example.com/licensorid/0iaskrgmnowim4g0934m90gm43 +Xmp.plus.Licensor[1]/plus:LicensorName Someone Someone +Xmp.plus.Licensor[1]/plus:LicensorPostalCode Test Licensor Postcode Test Licensor Postcode +Xmp.plus.Licensor[1]/plus:LicensorRegion Test Licensor Region Test Licensor Region +Xmp.plus.Licensor[1]/plus:LicensorStreetAddress Test Licensor Street Address Test Licensor Street Address +Xmp.plus.Licensor[1]/plus:LicensorTelephone1 +1 (234) 567890 +1 (234) 567890 +Xmp.plus.Licensor[1]/plus:LicensorTelephone2 +1 (345) 678901 +1 (345) 678901 +Xmp.plus.Licensor[1]/plus:LicensorTelephoneType1 http://ns.useplus.org/ldf/vocab/work http://ns.useplus.org/ldf/vocab/work +Xmp.plus.Licensor[1]/plus:LicensorTelephoneType2 http://ns.useplus.org/ldf/vocab/cell http://ns.useplus.org/ldf/vocab/cell +Xmp.plus.Licensor[1]/plus:LicensorURL http://www.example.com/licensorurl/okng0934j9jkrg0430gjn0mn03 http://www.example.com/licensorurl/okng0934j9jkrg0430gjn0mn03 +Xmp.plus.ModelReleaseID http://www.example.com/modelreleaseid/jhgmw3m0932mg0943mh32 http://www.example.com/modelreleaseid/jhgmw3m0932mg0943mh32 +Xmp.plus.PropertyReleaseID http://www.example.com/propertyreleaseid/wii09mng290mg0b3mgb0ebebt http://www.example.com/propertyreleaseid/wii09mng290mg0b3mgb0ebebt +Xmp.xmp.Rating 5.0 5.0 +Xmp.xmpRights.WebStatement http://www.example.com/WebStatement/testing123 http://www.example.com/WebStatement/testing123 +Xmp.xmpRights.UsageTerms lang="x-default" See https://github.com/Exiv2/exiv2/blob/main/COPYING lang="x-default" See https://github.com/Exiv2/exiv2/blob/main/COPYING +Xmp.tiff.YCbCrPositioning 1 Centered +Xmp.tiff.XResolution 72/1 72 +Xmp.tiff.YResolution 72/1 72 +Xmp.tiff.ResolutionUnit 2 inch +Xmp.exif.ExifVersion 0232 2.32 +Xmp.exif.FlashpixVersion 0100 1.00 +Xmp.exif.ColorSpace 65535 Uncalibrated +Xmp.exif.ComponentsConfiguration 1 Y +Xmp.photoshop.Instructions Test Instructions Test Instructions +Xmp.photoshop.AuthorsPosition Test Creator's Job Title Test Creator's Job Title +Xmp.photoshop.City Test City Test City +Xmp.photoshop.State Test Province/State) Test Province/State) +Xmp.photoshop.Country Test Country Test Country +Xmp.photoshop.TransmissionReference Test Job ID Test Job ID +Xmp.photoshop.Headline Test Headline Test Headline +Xmp.photoshop.Credit Test Credit Line Test Credit Line +Xmp.photoshop.Source Test Source Test Source +Xmp.photoshop.CaptionWriter Test Name Test Name +Xmp.dc.title lang="x-default" Test IPTC XMP file lang="x-default" Test IPTC XMP file +Xmp.dc.subject Test Test +Xmp.dc.creator postscript-dev postscript-dev +Xmp.dc.rights lang="x-default" Copyright Exiv2 lang="x-default" Copyright Exiv2 +Xmp.dc.description lang="x-default" Test file for the IPTC XMP tags lang="x-default" Test file for the IPTC XMP tags diff --git a/test/data/test_reference_files/issue_1959_poc.xmp.out b/test/data/test_reference_files/issue_1959_poc.xmp.out index 6cd740af66..5464d5e0cc 100644 --- a/test/data/test_reference_files/issue_1959_poc.xmp.out +++ b/test/data/test_reference_files/issue_1959_poc.xmp.out @@ -9,13 +9,11 @@ Exif.Photo.ExifVersion Undefined 4 48 50 51 50 2.32 Exif.Photo.FlashpixVersion Undefined 4 48 49 48 48 1.00 Exif.Photo.ColorSpace Short 1 65535 Uncalibrated Exif.Photo.ComponentsConfiguration Undefined 1 1 Y -Exif.Photo.DateTimeOriginal Ascii 20 2022:01:04 17:41:01 2022:01:04 17:41:01 Iptc.Application2.ObjectName String 18 Test IPTC XMP file Test IPTC XMP file Iptc.Envelope.CharacterSet String 3 %G %G Iptc.Application2.Keywords String 4 Test Test Iptc.Application2.SubLocation String 16 Test Sublocation Test Sublocation Iptc.Application2.SpecialInstructions String 17 Test Instructions Test Instructions -Iptc.Application2.DateCreated Date 8 2022-01-04 2022-01-04 Iptc.Application2.Byline String 14 postscript-dev postscript-dev Iptc.Application2.BylineTitle String 24 Test Creator's Job Title Test Creator's Job Title Iptc.Application2.City String 9 Test City Test City @@ -211,7 +209,6 @@ Xmp.exif.ExifVersion XmpText 4 0232 2.32 Xmp.exif.FlashpixVersion XmpText 4 0100 1.00 Xmp.exif.ColorSpace XmpText 5 65535 Uncalibrated Xmp.exif.ComponentsConfiguration XmpSeq 1 1 Y -Xmp.photoshop.DateCreated XmpText 25 2022-01-04T09:41:01+00:00 2022-01-04T09:41:01+00:00 Xmp.photoshop.Instructions XmpText 17 Test Instructions Test Instructions Xmp.photoshop.AuthorsPosition XmpText 24 Test Creator's Job Title Test Creator's Job Title Xmp.photoshop.City XmpText 9 Test City Test City diff --git a/tests/bugfixes/github/test_issue_1959.py b/tests/bugfixes/github/test_issue_1959.py new file mode 100644 index 0000000000..99c66388ce --- /dev/null +++ b/tests/bugfixes/github/test_issue_1959.py @@ -0,0 +1,21 @@ +# -*- coding: utf-8 -*- + +from system_tests import CaseMeta, path, check_no_ASAN_UBSAN_errors + +class XmpIptcStandardsTest(metaclass=CaseMeta): + """ + Regression test for the issue described in: + https://github.com/Exiv2/exiv2/issues/1959 + """ + url = "https://github.com/Exiv2/exiv2/issues/1959" + + def setUp(self): + self.stdout = [open(self.expand_variables("$filename_ref"),'r').read()] + + filename = path("$data_path/issue_1959_poc.xmp") + filename_ref = path("$data_path/issue_1959_poc.xmp.out") + + commands = ["$exiv2 -Pkvt $filename"] + + stderr = [""] + retval = [0]