Given a static array of n totally ordered objects, the range minimum query problem is to build a data structure that allows us to answer efficiently subsequent on-line queries of the form "what is the position of a minimum element in the subarray ranging from i to j?". We focus oil two settings, where (1) the input array is available at query time, and (2) the input array is available only at construction time. In setting (1), we show new data structures (a) of size 2n/c(n) - Θ (n lg lg n/c(n) lg n) bits and query time O(c(n)) for any positive integer function c(n) ∈ O (nε for an arbitrary constant 0 < ε < 1, or (b) with O(nHk) + o(n) bits and O(1) query time, where Hk denotes the empirical entropy of kth order of the input array. In setting (2), we give a data structure of size 2n + o(n) bits and query time O(1). All data structures can be constructed in linear time and almost in-place. [ABSTRACT FROM AUTHOR]