The eLog library was initially developed as a research prototype and later published for lifelogging researchers in 2010 to help them easily analyze heterogenous data and complex visualization. It has been kept growing with the progress of mobile computing environments and recently its UI part is released with GPL v3 license for wider usage. The eLog UI library is optimized for mobile environment and can get easily integrated with existing Web services.

Who We Are

The original work was proposed by Pil Ho and later extended the work with collaboration with 28 researchers around the world who contributed their lifelogs, collaborated for lifelog analysis and share research results to build up an open lifelogging platform for the public. Pil Ho has been keeping the development updating the library following up the progress in mobile computing.


  • Nov. 2014: Change the web page skin using bootstrap.
  • Nov. 2014: Published elog UI library as GPL v3.
  • Oct. 2014: Version up eLog library and documentation.


EML (First version -- Kept for records)

EML stands for the E-model language designed for the general purpose event query. It is based on the triple-type e-node graph and its syntax will be the extension of SPARQL and SQL. EML is based on the hyper graph data structure (See the E-model database structure.) Currently it supports MySQL database and this labs defines the BNF specification of EML and its parser. 

This is a working draft -- June 26th, 2011

EML Namespaces

Name Notation Comments
All sets _* Search all objects in the E-model database
Parent object _parent, _parent[i] [i] means the ith parent object
Child object _child, _child[i] [i] means ith child object
Name _name Object name
Value _value Object value
Raw data type _type Object raw data type
Timestamp _timestamp Object transaction time
Temporal constraint WHEN Temporal search of associated time predicates
Relation _R(,,) Query object relation
Graph path (%d, _EPATH, *) _EPATH specifies edges to walk. %d denotes the dth slected field.
Populatiry _Popularity() Used to order results by popularity