cases, I would recommend to never use it for anything else than optimistic locking of updates. In particular, versions do not carry any meaning: they might look like the number of times a document has been modified but it is not always the case (for instance if you create a new document which has the same ID as a document that you just deleted, the version number of the new document will not be 1), and more importantly it is an implementation detail, this behaviour might change in the future. Versioning
and the ﬁelds it contains, are stored and indexed. For instance, use mappings to deﬁne: ‣ which string ﬁelds should be treated as full text ﬁelds. ‣ which ﬁelds contain numbers, dates, or geolocations. ‣ the format of date values. ‣ custom rules to control the mapping for dynamically added ﬁelds.