Ron,
With xpath in Mendix this is not possible AFAIK. An option I see is that you retrieve all and then create a list that will hold the objects with the unique subjects. Then loop through the list, check if you can find the subject in the new list. If found continue else add to the list and continue. This way you'll get a unique list of items with regard to the subject. Not very efficient but....
Second option would be to use OQL to get a distinct list of values, and use this in a java action to return a distinct list. Efficiency improved, but complexity increased...
I guess the reason this is impossible in Mendix is that it's not always clear what (e.g.) the 'first' object is. In XML (which the XPath language is designed for) there is a clear 'first' child in the file text, but in Mendix there is no such thing, since it uses a database.
So you would have to add a (unique) sorting as well, which would really complicate your query and be detrimental to the low barrier of entry for using Mendix. For a feature that's very rarely needed (this is the first time I've seen someone request it), that's a high price to pay.
For suggestions on how to implement this anyway, I'd look at Erwins suggestions.