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 fields it contains, are stored and indexed. For instance, use mappings to define: ‣ which string fields should be treated as full text fields. ‣ which fields contain numbers, dates, or geolocations. ‣ the format of date values. ‣ custom rules to control the mapping for dynamically added fields.