Peter Krogh describes a technique in his book for moving ratings made in Adobe Bridge into the Expression Media (iView) catalog. Here's the outline of a different, script-based technique that uses the DOM and an XPath expression to read the ratings element from the XMP file:
Dim objDoc, objNodeList, objNode, strVal, intVal
Set objDoc = CreateObject("MSXML2.DOMDocument.6.0")
objDoc.load(path)Â Â 'path to xmp file
objDoc.SetProperty "SelectionNamespaces", "xmlns:xmp=""
http://ns.adobe.com/xap/1.0/"""
Set objNodeList = objDoc.selectNodes("//xmp:Rating")Â Â 'XPath expression
Set objNode = objNodeList(0)
strVal = objNode.nodeTypedValue
intVal = CInt(strVal)
'now intVal is in range [-1, 5]
'-1 means "reject" in Bridge CS3
'0 means "unrated"
'1-5 is actual rating
I've also done this using the XMP Toolkit SDK from Adobe. Using the DOM and XPath expressions is probably easier, though, since I can use the DOM directly from a script.
You could incorporate this algorithm into an xMedia script to synchronize the ratings in the xMedia catalog to the ratings made in Adobe Bridge.
My next step is to be able to modify the XMP file to add (or modify) a rating. This will allow me to sync ratings made in xMedia back into Bridge.
-Matt