Specifying temporal data models for semistructured data by a constraint-based approach