A computer implemented and computer controlled method of manipulating data comprising a plurality of ordered data elements, said method performed by a computer implemented and computer controlled data processing platform comprising a plurality of communicatively interconnected data processing devices operating a plurality of data processing layers (21, 22, 23), said data processing platform configured for processing and storing said data at a data storage engine (26, 27, 28, 29) by performing the steps of: - receiving, by a first data processing layer, in a computer readable format, said data comprising a plurality of ordered data elements; - identifying, by a second data processing layer data elements in said received data and allocating to each of said identified data elements a unique data element identifier (DataElementID) representing a respective data element, characterized in that said data processing platform is configured for manipulating identifiers comprising data element identifiers (DataElementID), action identifiers (ActionID), action topology identifiers (ActionTopologyID), topology identifiers (TopologyID), data category identifiers (DataCategoryID) and action topology instance identifiers (ActionTopologyInstanceID) and associations between said identifiers stored at said data storage engine, said identifiers and associations between said identifiers being obtained by performing the steps of: - assigning, by said second data processing layer, to said received data, an action from a plurality of actions represented by a respective unique action identifier (ActionID) and a unique action topology identifier (ActionTopologyID) specifying an association between data elements of an action according to a respective topology comprised of an ordered plurality of data categories including a subject data category, an object data category, a spatial data category and a temporal data category, said topology being represented by a unique topology identifier ( TopologyID) and each data category being represented by a respective data category identifier ( DataCategoryID); - matching, by said second data processing layer said identified data elements with said assigned action topology combination in accordance with said action topology and said order of said data elements, such that one data element is matched with one data category of said topology; - supplementing, by said second data processing layer instance information to matched action topology combinations and allocating an action topology instance identifier (ActionTopologyInstanceID) to said supplemented action topology combination, and - storing, by a third data processing layer, in a computer readable format, at said data storage engine (26, 27, 28, 29) said identified data elements, said instance information, said identifiers ( DataElementID; ActionID; ActionTopologyID; TopologyID; DataCategoryID; ActionTopologyInstanceID) and associations between identifiers resulting from said steps of identifying, assigning, matching and supplementing. - receiving, by a first data processing layer, in a computer readable format, said data comprising a plurality of ordered data elements; - identifying, by a second data processing layer data elements in said received data and allocating to each of said identified data elements a unique data element identifier (DataElementID) representing a respective data element, - assigning, by said second data processing layer, to said received data, an action from a plurality of actions represented by a respective unique action identifier (ActionID) and a unique action topology identifier (ActionTopologyID) specifying an association between data elements of an action according to a respective topology comprised of an ordered plurality of data categories including a subject data category, an object data category, a spatial data category and a temporal data category, said topology being represented by a unique topology identifier ( TopologyID) and each data category being represented by a respective data category identifier ( DataCategoryID); - matching, by said second data processing layer said identified data elements with said assigned action topology combination in accordance with said action topology and said order of said data elements, such that one data element is matched with one data category of said topology; - supplementing, by said second data processing layer instance information to matched action topology combinations and allocating an action topology instance identifier (ActionTopologyInstanceID) to said supplemented action topology combination, and - storing, by a third data processing layer, in a computer readable format, at said data storage engine (26, 27, 28, 29) said identified data elements, said instance information, said identifiers ( DataElementID; ActionID; ActionTopologyID; TopologyID; DataCategoryID; ActionTopologyInstanceID) and associations between identifiers resulting from said steps of identifying, assigning, matching and supplementing.