Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/content/60/9972860/html/smf/Sources/Load.php(225) : runtime-created function on line 3
Shock!!! xMedia better than iView...
The DAM Forum
Welcome, Guest. Please login or register.
November 16, 2019, 02:11:09 PM

Login with username, password and session length
Search:     Advanced search
28033 Posts in 5147 Topics by 2904 Members
Latest Member: kbroch
* Home Help Search Login Register
+  The DAM Forum
|-+  Software Discussions
| |-+  Media Pro & Expression Media
| | |-+  Shock!!! xMedia better than iView...
« previous next »
Pages: [1] Print
Author Topic: Shock!!! xMedia better than iView...  (Read 4571 times)
ianw
Full Member
***
Posts: 162


View Profile
« on: July 20, 2007, 02:14:26 PM »

I'm currently part-way through a large DVD burn & verify session, so to kill a bit of time I thought I would see if a 'bug' I had raised a while ago about the XML import function in iView had been fixed in xMedia.

The answer is... sort of!

In iView the XML Import is nothing more than a restore of an XML Export.  This makes it a different way of backing up your catalogue, as the XML file is much smaller than a .ivc file.  The downside is that when you import the XML file it has to rebuild all the thumbnails, so could take some time to do.  This feature, providing you've created an export, is only useful in case you get a corrupt catalogue that won't open - it's much harder to corrupt a readable text file.

I didn't think that this function was added just to restore backups so I had a bit of play.  I hoped that it would be possible to 'add' information to the XML so that this was included in the catalogue when imported.  For example you could add keywords to images.  This would be painful to do manually but much easier using scripts – primarily XSL.  For example you could have an XSL script that converted catalogue sets into keywords when exported.  Then when imported you would have a new catalogue with catalogue sets and matching keywords.  This approach would be platform independent.

The problem was that it didn't work.  It did import the images, but took all annotation data direct from the image and ignored everything from the XML file.


In xMedia this is 'sort of' fixed - although of course this could actually be a 'bug' introduced in the xMedia re-write!

Now you can add meta-data to images.  You can even trim the XML file down so that apart from the new meta-data the only other data item is the file path - after all you've got to tell xMedia which image to put the meta-data against!

For example here is an XML file which will associate all of the possible meta-data allowed by xMedia to a single image.  For meta-data where multiple values are allowed there are three different values listed.  Note that some of the fields go by different names than you may expect – there is no 'Title' field, rather it is called 'Headline'.  The format of all the fields appears to be free text except the EventDate, which must be in YYYY:MM:DD format (a totally non-standard format in the XML world).

Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?expression media exportversion="1.0" appversion="1.0" ?>
<CatalogType>
 <Catalog pathType="DOS">Test</Catalog>
 <MediaItemList>
  <MediaItem>
   <AssetProperties>
    <Filepath>T:\Test\image001.dng</Filepath>
   </AssetProperties>
   <AnnotationFields>
    <Headline>Headline</Headline>
    <Product>Product</Product>
    <Classification>Classification</Classification>
    <IntellectualGenre>IntellectualGenre</IntellectualGenre>
    <Fixture>Fixture</Fixture>
    <EventDate>2007:07:20</EventDate>
    <Author>Author</Author>
    <AuthorTitle>AuthorTitle</AuthorTitle>
    <CreatorAddress>CreatorAddress</CreatorAddress>
    <CreatorCity>CreatorCity</CreatorCity>
    <CreatorState>CreatorState</CreatorState>
    <CreatorPostcode>CreatorPostcode</CreatorPostcode>
    <CreatorCountry>CreatorCountry</CreatorCountry>
    <CreatorPhone>CreatorPhone</CreatorPhone>
    <CreatorEmail>CreatorEmail</CreatorEmail>
    <CreatorURL>CreatorURL</CreatorURL>
    <Credit>Credit</Credit>
    <Source>Source</Source>
    <Copyright>Copyright</Copyright>
    <Transmission>Transmission</Transmission>
    <Rights>Rights</Rights>
    <URL>URL</URL>
    <Location>Location</Location>
    <City>City</City>
    <State>State</State>
    <Country>Country</Country>
    <CountryCode>CountryCode</CountryCode>
    <Instructions>Instructions</Instructions>
    <Status>Status</Status>
    <Writer>Writer</Writer>
    <Caption>Caption</Caption>
    <People>People1</People>
    <People>People2</People>
    <People>People3</People>
    <Keyword>Keyword1</Keyword>
    <Keyword>Keyword2</Keyword>
    <Keyword>Keyword3</Keyword>
    <Category>Category1</Category>
    <Category>Category2</Category>
    <Category>Category3</Category>
    <Scene>Scene1</Scene>
    <Scene>Scene2</Scene>
    <Scene>Scene3</Scene>
    <SubjectReference>SubjectReference1</SubjectReference>
    <SubjectReference>SubjectReference2</SubjectReference>
    <SubjectReference>SubjectReference3</SubjectReference>
   </AnnotationFields>
  </MediaItem>
 </MediaItemList>
</CatalogType>

You could create the above XML file, changing only the file path on line 8 to match an image on your computer.  In xMedia you select the 'Import from XML...' option and select the file and then OK.  Of course to really add this data to your image you'd need to sync it out.

On the line 4 of the XML file is an element called 'pathtype' which has a value of DOS.  As I'm Windows only I don't know if this is the correct value when on a MAC.  You'd need to export to an XML file and view that to see – someone let me know!

I said the bug was only 'sort of' fixed.  The only issue I've found so far in limited playing is that if the XML file doesn't contain any of the MediaProperties section of the XML then any rotation information is lost.

This functionality could be really useful, but it needs an improvement to be made by the xMedia developers.  Ideally the Import function would ask you if you wanted to create a new catalogue on import or whether to 'add' anything from the XML to an existing (the open) catalogue. This would need, like the 'Sync Annotations' function, the choice of preferring the XML file, or the catalogue value, or, for appropriate fields, merging the values.  For example, if your catalogue already has a location value for an image then should this be replaced by the value in the XML file or not?  For keywords, where more than one value is allowed, should any values be replaced by those in the XML file or should they be merged into one list or should the values in the catalogue only be altered if they were previously blank?

There is still some value in the function as it currently stands, but only if you are creating a catalogue from scratch.  This would be particularly useful if you had key-worded some images in Excel for example.  It would be simple to go from Excel to an XML file to do this.  The XML file doesn't have to be formatted as neatly as above.  You could put everything for an image on one line e.g.

Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?expression media exportversion="1.0" appversion="1.0" ?>
<CatalogType>
<Catalog pathType="DOS">Test</Catalog>
<MediaItemList>
<MediaItem><AssetProperties><Filepath>T:\Test\image001.dng</Filepath></AssetProperties><AnnotationFields><Keyword>Keyword1</Keyword></AnnotationFields></MediaItem>
<MediaItem><AssetProperties><Filepath>T:\Test\image001.dng</Filepath></AssetProperties><AnnotationFields><Keyword>Keyword2</Keyword><Keyword>Keyword3</Keyword></AnnotationFields></MediaItem>
</MediaItemList>
</CatalogType>

Import this and you have a starting place for cataloguing your images.

All this is meant as food for thought to the iView / xMedia community.  I'm going to carry on playing and make a recommendation or three to Microsoft.  I might try and see if you can import ratings and labels, or even GPS information – these are just held in different parts of the XML file.

Ian
Logged
mikeseb
Guest
« Reply #1 on: July 21, 2007, 11:43:36 AM »

Here's what's generated by exporting XML from an image in Expression Media on the Mac:

Code:
<?xpacket begin="Ôªø" id="W5M0MpCehiHzreSzNTczkc9d"?>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Public XMP Toolkit Core 4.0">
   <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
      <rdf:Description rdf:about=""
            xmlns:photoshop="http://ns.adobe.com/photoshop/1.0/">
         <photoshop:City>Frankfort</photoshop:City>
         <photoshop:State>Kentucky</photoshop:State>
         <photoshop:Country>United States</photoshop:Country>
         <photoshop:CaptionWriter>Michael Sebastian</photoshop:CaptionWriter>
         <photoshop:AuthorsPosition>Photographer</photoshop:AuthorsPosition>
         <photoshop:DateCreated>2007-07-16</photoshop:DateCreated>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:dc="http://purl.org/dc/elements/1.1/">
         <dc:creator>
            <rdf:Seq>
               <rdf:li>Michael Sebastian</rdf:li>
            </rdf:Seq>
         </dc:creator>
         <dc:description>
            <rdf:Alt>
               <rdf:li xml:lang="x-default">Friday morning commute to work, I-64 eastbound</rdf:li>
            </rdf:Alt>
         </dc:description>
         <dc:rights>
            <rdf:Alt>
               <rdf:li xml:lang="x-default">¬©2007 Michael Sebastian</rdf:li>
            </rdf:Alt>
         </dc:rights>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:xapRights="http://ns.adobe.com/xap/1.0/rights/">
         <xapRights:WebStatement>www.mikesebastianphoto.com</xapRights:WebStatement>
         <xapRights:UsageTerms>
            <rdf:Alt>
               <rdf:li xml:lang="x-default">All Rights Reserved</rdf:li>
            </rdf:Alt>
         </xapRights:UsageTerms>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:Iptc4xmpCore="http://iptc.org/std/Iptc4xmpCore/1.0/xmlns/">
         <Iptc4xmpCore:Location>I-64 ramp onto US 127</Iptc4xmpCore:Location>
         <Iptc4xmpCore:CountryCode>US</Iptc4xmpCore:CountryCode>
         <Iptc4xmpCore:CreatorContactInfo rdf:parseType="Resource">
            <Iptc4xmpCore:CiAdrExtadr>PO BOX 1069</Iptc4xmpCore:CiAdrExtadr>
            <Iptc4xmpCore:CiAdrCity>Prospect</Iptc4xmpCore:CiAdrCity>
            <Iptc4xmpCore:CiAdrRegion>Kentucky</Iptc4xmpCore:CiAdrRegion>
            <Iptc4xmpCore:CiAdrPcode>40059-1069</Iptc4xmpCore:CiAdrPcode>
            <Iptc4xmpCore:CiAdrCtry>United States</Iptc4xmpCore:CiAdrCtry>
            <Iptc4xmpCore:CiTelWork>502-123-4567</Iptc4xmpCore:CiTelWork>
            <Iptc4xmpCore:CiEmailWork>info@mikesebastianphoto.com</Iptc4xmpCore:CiEmailWork>
            <Iptc4xmpCore:CiUrlWork>www.mikesebastianphoto.com</Iptc4xmpCore:CiUrlWork>
         </Iptc4xmpCore:CreatorContactInfo>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:expressionmedia="http://ns.microsoft.com/expressionmedia/1.0/">
         <expressionmedia:UserFields>
            <rdf:Bag>
               <rdf:li>Camera=Contax-645</rdf:li>
               <rdf:li>FilmFormat=Digital</rdf:li>
               <rdf:li>Film=Digital</rdf:li>
               <rdf:li>ImageStatus=original</rdf:li>
            </rdf:Bag>
         </expressionmedia:UserFields>
      </rdf:Description>
      <rdf:Description rdf:about=""
            xmlns:mediapro="http://ns.iview-multimedia.com/mediapro/1.0/">
         <mediapro:UserFields>
            <rdf:Bag>
               <rdf:li>Camera=Contax-645</rdf:li>
               <rdf:li>FilmFormat=Digital</rdf:li>
               <rdf:li>Film=Digital</rdf:li>
               <rdf:li>ImageStatus=original</rdf:li>
            </rdf:Bag>
         </mediapro:UserFields>
      </rdf:Description>
   </rdf:RDF>
</x:xmpmeta>
<?xpacket end="w"?>

Does this help you?

« Last Edit: July 21, 2007, 12:01:33 PM by mikeseb » Logged
ianw
Full Member
***
Posts: 162


View Profile
« Reply #2 on: July 22, 2007, 06:47:31 AM »

Mike,

Thanks, but no!  What you have posted is the contents of an XMP sidecar file.

What I was looking for was an XML file created by either the 'Export to XML...' or 'Make XML Data File...' options.  This should always start with...

Code:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?expression media exportversion="1.0" appversion="1.0" ?>
<CatalogType>
 <Catalog pathType="DOS">Test</Catalog>
  <MediaItemList>
   <MediaItem>
    etc...

The fourth line of this file appears to be Windows specific.  I was just curious as to what the Mac version may look like.

The second line will vary according to whether the file was generated by iView or xMedia, and what version did it but that is less important.

One day Microsoft may issue a schema for this file that will fully explain its contents.  Until then it is guess work.  They must have this information as I expect the other parts of the Expression suite to link more directly to xMedia in future versions, although this is only of benefit to Windows users.  They have released a DTD for it, but this is an old standard that can never fully explain the content.  You can see this DTD if you opt to include it in the XML output.  They also have it as a stand alone file somewhere in the installation - but this file is not a valid DTD!

If posting a full file beware of what you will reveal as there's more information in there than most people are aware of - http://entertainment.timesonline.co.uk/tol/arts_and_entertainment/books/article2104250.ece  You are ruled out as your camera isn't a Canon Rebel 350!

Thanks,

Ian
Logged
peterkrogh
Administrator
Hero Member
*****
Posts: 5682


View Profile Email
« Reply #3 on: July 22, 2007, 07:31:10 AM »

Ian,
Beardy, Robert Edwards and I were in Redmond a few weeks ago, and this was one type of function we strongly requested.  I doubt we'll see it before V2, but they definitely understood how much this functionality could bring to the program.
Peter
Logged
ianw
Full Member
***
Posts: 162


View Profile
« Reply #4 on: July 22, 2007, 10:34:54 AM »

Peter,

Thanks for that.  It's good to know there is some sort of direction behind xMedia.

I still wish they'd get current functions to work as expected as well as moving things forward.  Of course if there was a suitable level of documentation for the application then maybe our expectations would be more realistic...

Ian
Logged
Pages: [1] Print 
« previous next »
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!