Czy mogę określić, czy łańcuch jest identyfikatorem obiektu MongoDB?

Robię wyszukiwania MongoDB, konwertując ciąg znaków na BSON. Czy istnieje sposób na ustalenie, czy ciąg, który posiadam, jest prawidłowym identyfikatorem obiektu dla Mongo przed wykonaniem konwersji?

Oto coffeescript dla mojej obecnej funkcji findByID. Działa świetnie, ale chciałbym wyszukać inny atrybut, jeśli ustalę, że ciąg nie jest identyfikatorem.

db.collection "pages", (err, collection) ->
  collection.findOne
    _id: new BSON.ObjectID(id)
  , (err, item) ->
    if item
      res.send item
    else
      res.send 404

questionAnswers(10)

yourAnswerToTheQuestion