Food hierarchies¶
Reading and dealing with food hierarchy data¶
Within MCRA, the following hierarchy related aspects are accounted for:
Reading food hierarchy data
Using hierarchical data for conversion of foods
Using hierarchy data in the output
Reading food hierarchy data¶
A new data group named Foods is added. In this group, a new table for FoodHierarchies is used for input of food hierarchies. This table contains food hierarchy node-definition records that reflect a hierarchical structure. For foods that are not in this list as idFood, it is implicitly assumed that these foods are root items.
Note: It is common practice to describe hierarchies using tree structures. Here, the elements of the tree are named nodes, the lines connecting the nodes are named branches, and nodes without children are leaf nodes/end-nodes. This terminology is also used throughout the remainder of this document.
Using food hierarchies for food conversion¶
The introduction of the hierarchy structure allows for integration with step 4 and step 5 of the food conversion algorithm; the subtype and supertype linking steps. That is, when no concentration data is found for a certain product, the concentration data of a (according to the hierarchy) related product could be used. In MCRA, the supertype conversion step also contains a hierarchy-supertype step based on the food hierarchy.
Supertype link (step 5):
Supertype: Try to find supertypes base on ‘$’-coded strings, e.g., ‘xxx$yyy’ is converted to ‘xxx’
Hierarchy-supertype: try to find the supertype of the current food based on the food hierarchy (i.e., convert the current food to its parent).
Note 1: the supertype conversion step is optional and should be specified in the conversion settings panel.
Note 2: the hierarchy-supertype step only applies for foods-without-facets. The reason for this is that for the conversion, the base type of a food-with-facets can be considered as a better conversion candidate than the parent food with the same facets.
Using hierarchy data in the output¶
Food hierarchy information could be used in presentation of various tables of the output of MCRA. That is, in the tables in which foods data is presented, these records could be grouped based on the hierarchy and/or a tree-like display can be built for the presentation of this data. Tables that are candidate for being extended are, for example, the input data tables foods-as-eaten/foods-as-measured and the exposure by food-as-eaten/food-as-measured output tables.
Summarizing over the food hierarchy is many cases not a straightforward task. Consider, for instance, the statistic number of consumption days given the artificial hierarchy of Citrus Fruits containing two child-nodes Mandarin and King Mandarin: the number of consumption of Citrus Fruits is not “just” the sum of the consumption day of Mandarin and King Mandarin. A difficulty for summarizing based on a hierarchy arises when a node contains both data and child-nodes with data. E.g., concentrations are defined on the level of Citrus Fruits and on the level of Mandarin. In this case, the hierarchy view should ideally summarize for both Citrus Fruits as data record and Citrus Fruits as summary node. An additional complication is the status of facet-coded foods within the hierarchy. In a hierarchical view, foods-with-facets should ideally be added to their base-foods for visualization.
In MCRA, an alternative view (treetable) is added that can display hierarchical data. This alternative view is used to present a hierarchical view based on the foods hierarchy for the consumption input summary tables food as eaten and food as measured. The data summary methods for these tables are updated such that the data is also summarized per hierarchy-node.
If a node contains both data and a child record, then this node is split-up in two nodes: a summary node that summarizes the data of the node and all of its child nodes, and a data record with the string “(unspecified)” added as a child of this summary node. See Figure 10 for an example (Citrus Fruits versus Citrus Fruits (unspecified)). In MCRA, foods-with-facets are added as child nodes of the foods-without-facets.