It doesn't appear you need any machine learning, just retrieval. The most straightforward way is to create a feature vector where each dimension is a property.
Vector position and property:
Position #0, property 2374
Position #1, property 8455
Position #2, property 744
Position #3, property 5435
Position #4, property 544
For each item fill in vector values.
Item #1 is represented as [23783, 5783, 2438, ?, ?]
Item #2 is represented as [ ?, 54654, ?, 23783, 9778]
Item #x is represented as [ ?, ?, 2438, 23783, 9778]
Item #x has most common values with Item #2 whose position #1 is 54654. Basically you find the best intersection with an item that has the position value you're interested in. It gets more interesting if you want values for several properties that can only be suggested by several items, but you haven't talked about the nature of the data.