Skip to content

Story 53 - Magento extracts image meta data from file #1183

Closed
@tkacheva

Description

@tkacheva

Story

As a Merchant I want Magento Media Storage to parse image meta data that is available in the file and expose it on image details page so that I can manage it and use for filtering images

Business Value

Images can be organized and later filtered and searched by their meta data

Preconditions

  • Admin User is logged into Admin Panel
  • Admin User initiates image uploading into Media Gallery
  • Images that user uploads contain meta data in XMP or IPTC Metadata Standard

Acceptance Criteria

  • User sees uploaded image in the image grid, Image title, extracted from meta data displayed in the grid
  • User opens image details and sees image attributes extracted from meta data listed there:
    -- title
    -- description
    -- keywords
  • User can edit values of these fields
  • User sees updated values in row image meta data

Example of XMP Image Meta data

<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c148 79.164036, 2019/08/13-01:06:57        ">
   <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
      <rdf:Description rdf:about=""
            xmlns:dc="http://purl.org/dc/elements/1.1/"
            xmlns:pur="http://prismstandard.org/namespaces/prismusagerights/2.1/"
            xmlns:xmp="http://ns.adobe.com/xap/1.0/"
            xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"
            xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEvent#"
            xmlns:xmpRights="http://ns.adobe.com/xap/1.0/rights/"
            xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/"
            xmlns:tiff="http://ns.adobe.com/tiff/1.0/"
            xmlns:exif="http://ns.adobe.com/exif/1.0/">
         <dc:description>
            <rdf:Alt>
               <rdf:li xml:lang="x-default">Group of People Relaxing and Doing Yoga. Practicing Downward Dog. Wellness and Healthy Lifestyle. </rdf:li>
            </rdf:Alt>
         </dc:description>
         <dc:format>image/jpeg</dc:format>
         <dc:rights>
            <rdf:Alt>
               <rdf:li xml:lang="x-default">EpicStockMedia</rdf:li>
            </rdf:Alt>
         </dc:rights>
         <dc:subject>
            <rdf:Bag>
               <rdf:li>stretch</rdf:li>
               <rdf:li>meditating</rdf:li>
               <rdf:li>natural</rdf:li>
               <rdf:li>deck</rdf:li>
               <rdf:li>calm</rdf:li>
               <rdf:li>sitting</rdf:li>
               <rdf:li>peace</rdf:li>
               <rdf:li>pose</rdf:li>
               <rdf:li>wellness</rdf:li>
               <rdf:li>life</rdf:li>
               <rdf:li>adult</rdf:li>
               <rdf:li>bright</rdf:li>
               <rdf:li>fit</rdf:li>
               <rdf:li>studio</rdf:li>
               <rdf:li>active</rdf:li>
               <rdf:li>light</rdf:li>
               <rdf:li>spiritual</rdf:li>
               <rdf:li>lotus</rdf:li>
               <rdf:li>fitness</rdf:li>
               <rdf:li>serene</rdf:li>
               <rdf:li>people</rdf:li>
               <rdf:li>female</rdf:li>
               <rdf:li>class</rdf:li>
               <rdf:li>mat</rdf:li>
               <rdf:li>recreation</rdf:li>
               <rdf:li>zen</rdf:li>
               <rdf:li>yoga</rdf:li>
               <rdf:li>women</rdf:li>
               <rdf:li>lifestyle</rdf:li>
               <rdf:li>healthy</rdf:li>
               <rdf:li>girl</rdf:li>
               <rdf:li>young</rdf:li>
               <rdf:li>room</rdf:li>
               <rdf:li>training</rdf:li>
               <rdf:li>group</rdf:li>
               <rdf:li>gym</rdf:li>
               <rdf:li>relax</rdf:li>
               <rdf:li>quiet</rdf:li>
               <rdf:li>style</rdf:li>
               <rdf:li>exercise</rdf:li>
               <rdf:li>indoors</rdf:li>
               <rdf:li>peaceful</rdf:li>
               <rdf:li>meditation</rdf:li>
               <rdf:li>purity</rdf:li>
               <rdf:li>yoga class</rdf:li>
               <rdf:li>fitness studio</rdf:li>
               <rdf:li>leisure activity</rdf:li>
               <rdf:li>wellbeing</rdf:li>
            </rdf:Bag>
         </dc:subject>
         <dc:title>
            <rdf:Alt>
               <rdf:li xml:lang="x-default">People Practicing Downward Dog Pose in Yoga Class</rdf:li>
            </rdf:Alt>
         </dc:title>
         <pur:creditLine>
            <rdf:Bag>
               <rdf:li>EpicStockMedia - stock.adobe.com</rdf:li>
            </rdf:Bag>
         </pur:creditLine>
         <xmp:CreatorTool>Adobe Photoshop CC 2015 (Macintosh)</xmp:CreatorTool>
         <xmp:Label>Select</xmp:Label>
         <xmp:MetadataDate>2015-08-22T12:59:19-10:00</xmp:MetadataDate>
         <xmp:ModifyDate>2015-08-22T12:50:35</xmp:ModifyDate>
         <xmp:CreateDate>2015-08-20T15:53:34</xmp:CreateDate>
         <xmpMM:DocumentID>adobe:docid:photoshop:9fe5fe5d-89ae-1178-84e5-b837f6bfd71a</xmpMM:DocumentID>
         <xmpMM:History>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:33a862ec-8abf-4725-8bde-827e093d42b8</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop CC 2015 (Macintosh)</stEvt:softwareAgent>
                  <stEvt:when>2015-08-20T16:09:45-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/metadata</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:f819afcb-0b47-4b9a-9c1a-f979418e4910</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop Camera Raw 9.1</stEvt:softwareAgent>
                  <stEvt:when>2015-08-20T16:09:53-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/metadata</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:090c6a98-4427-4241-aa52-d822e563fa1b</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop Camera Raw 9.1.1 (Macintosh)</stEvt:softwareAgent>
                  <stEvt:when>2015-08-22T12:09:09-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:8aa499cf-6ed6-48b9-a563-61761ea62d56</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop CC 2015 (Macintosh)</stEvt:softwareAgent>
                  <stEvt:when>2015-08-22T12:24:57-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:3bc7509d-93b4-4ae6-a241-7a058f40cbcf</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop CC 2015 (Macintosh)</stEvt:softwareAgent>
                  <stEvt:when>2015-08-22T12:35:45-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/metadata</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:17393bcd-933d-46ec-a096-75d5162991bb</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop Camera Raw 9.1</stEvt:softwareAgent>
                  <stEvt:when>2015-08-22T12:49:49-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/metadata</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:25cd1334-2c14-40ff-b420-f7512f2bcef5</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop Camera Raw 9.1.1 (Macintosh)</stEvt:softwareAgent>
                  <stEvt:when>2015-08-22T12:49:49-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:5514ef47-aa04-43aa-9a79-cd1daedee095</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop CC 2015 (Macintosh)</stEvt:softwareAgent>
                  <stEvt:when>2015-08-22T12:50:35-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>converted</stEvt:action>
                  <stEvt:parameters>from image/tiff to image/jpeg</stEvt:parameters>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:e0c2c141-39d4-443b-b04d-bdd7e5e7076b</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop CC 2015 (Macintosh)</stEvt:softwareAgent>
                  <stEvt:when>2015-08-22T12:50:35-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/metadata</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:2b9f9313-16b5-4766-9ccc-720451ab01b5</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop Camera Raw 9.1</stEvt:softwareAgent>
                  <stEvt:when>2015-08-22T12:59:19-10:00</stEvt:when>
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
                  <stEvt:action>saved</stEvt:action>
                  <stEvt:changed>/metadata</stEvt:changed>
                  <stEvt:instanceID>xmp.iid:286f8149-35eb-4554-aaa1-90c5066beef9</stEvt:instanceID>
                  <stEvt:softwareAgent>Adobe Photoshop Camera Raw 9.1.1 (Macintosh)</stEvt:softwareAgent>
                  <stEvt:when>2015-08-22T12:59:19-10:00</stEvt:when>
               </rdf:li>
            </rdf:Seq>
         </xmpMM:History>
         <xmpMM:InstanceID>xmp.iid:286f8149-35eb-4554-aaa1-90c5066beef9</xmpMM:InstanceID>
         <xmpMM:OriginalDocumentID>E9945114712E346337A6C2E375D3CEFC</xmpMM:OriginalDocumentID>
         <xmpRights:Marked>True</xmpRights:Marked>
         <xmpRights:UsageTerms>
            <rdf:Alt>
               <rdf:li xml:lang="x-default"/>
            </rdf:Alt>
         </xmpRights:UsageTerms>
         <photoshop:LegacyIPTCDigest>53D62D91B85C8528D6ED455F3755748C</photoshop:LegacyIPTCDigest>
         <photoshop:Country>United States of America</photoshop:Country>
         <photoshop:Credit>EpicStockMedia - stock.adobe.com</photoshop:Credit>
         <photoshop:Source>89739880</photoshop:Source>
         <photoshop:ColorMode>3</photoshop:ColorMode>
         <photoshop:ICCProfile>sRGB IEC61966-2.1</photoshop:ICCProfile>
         <tiff:ImageWidth>5200</tiff:ImageWidth>
         <tiff:ImageLength>3481</tiff:ImageLength>
         <tiff:BitsPerSample>
            <rdf:Seq>
               <rdf:li>8</rdf:li>
               <rdf:li>8</rdf:li>
               <rdf:li>8</rdf:li>
            </rdf:Seq>
         </tiff:BitsPerSample>
         <tiff:PhotometricInterpretation>2</tiff:PhotometricInterpretation>
         <tiff:Orientation>1</tiff:Orientation>
         <tiff:SamplesPerPixel>3</tiff:SamplesPerPixel>
         <tiff:YCbCrPositioning>1</tiff:YCbCrPositioning>
         <tiff:XResolution>300/1</tiff:XResolution>
         <tiff:YResolution>300/1</tiff:YResolution>
         <tiff:ResolutionUnit>2</tiff:ResolutionUnit>
         <exif:ExifVersion>0221</exif:ExifVersion>
         <exif:FlashpixVersion>0100</exif:FlashpixVersion>
         <exif:ColorSpace>1</exif:ColorSpace>
         <exif:PixelXDimension>5200</exif:PixelXDimension>
         <exif:PixelYDimension>3481</exif:PixelYDimension>
      </rdf:Description>
   </rdf:RDF>
</x:xmpmeta>

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions