Equivalent of created and modified properties for a taxonomy term I am trying to do a query (using EntityFieldQuery) to get taxonomy terms created or modified in the last day.

for nodes, I use $query->propertyCondition('changed',$time_interval, '>=');
but I can't find the corresponding property for a taxonomy term.

Any suggestion ?
I need to be able to detect creation and modification of terms.
That data isn't stored for taxonomy terms, if you want to add it you'll need to write a small custom module to do so. You could look at implementing hook_entity_info_alter() or hook_field_extra_fields_alter() to actually add the extra property to the taxonomy term entity, but I haven't had much luck using that method before.

Instead I would define a table using hook_schema() in the .install file of your module:

function MYMODULE_schema() {
  $schema['taxonomy_term_extra'] = array(
    'fields' =&gt; array(
      'tid' =&gt; array(
        'type' =&gt; 'int',
        'unsigned' =&gt; TRUE,
        'not null' =&gt; TRUE
      ),
      'created' =&gt; array(
        'type' =&gt; 'int',
        'unsigned' =&gt; TRUE,
        'not null' =&gt; TRUE
      ),
      'modified' =&gt; array(
        'type' =&gt; 'int',
        'unsigned' =&gt; TRUE,
        'not null' =&gt; TRUE
      )
    ),
    'primary key' =&gt; array('tid')
  );

  return $schema;
}


Then in your module file implement the taxonomy CRUD hooks:

function MYMODULE_taxonomy_term_insert($term) {
  db_insert('taxonomy_term_extra')-&gt;fields(array(
    'tid' =&gt; $term-&gt;tid,
    'created' =&gt; REQUEST_TIME,
    'modified' =&gt; REQUEST_TIME
  ))
  -&gt;execute();
}

function MYMODULE_taxonomy_term_update($term) {
  db_update('taxonomy_term_extra')
    -&gt;fields(array('modified' =&gt; REQUEST_TIME))
    -&gt;condition('tid', $term-&gt;tid)
    -&gt;execute();
}

function MYMODULE_taxonomy_term_load($terms) {
  $result = db_query('SELECT * FROM taxonomy_term_extra WHERE tid IN (:tids)', array(':tids' =&gt; array_keys($terms)));
  foreach ($result as $record) {
    $terms[$record-&gt;tid]-&gt;created = $record-&gt;created;
    $terms[$record-&gt;tid]-&gt;modified = $record-&gt;modified;
  }
}

function MYMODULE_taxonomy_term_delete($term) {
  db_delete('taxonomy_term_extra')-&gt;condition('tid', $term-&gt;tid)-&gt;execute();
}


Now whenever you have a loaded taxonomy term you'll have access to $term-&gt;created and $term-&gt;modified. You can also use a normal db_query(), which is much faster than an EntityFieldQuery to get your filtered terms:

$args = array(':time' =&gt; strtotime('-1 day'));
$tids = db_query('SELECT tid FROM {taxonomy_term_extra} WHERE modified &gt;= :time', $args)-&gt;fetchCol();

$terms = taxonomy_term_load_multiple($tids);