{%- set seenProps = {"@id": true,"@type": true} %}
{%- for group in layout %}
{%- set hasContent = false %}
{%- for input in group.inputs %}
{%- if item.props[input] %}
{%- set hasContent = true %}
{%- set seenProps = seenProps | setProp(input) %}
{%- endif %}
{%- endfor %}
{%- if hasContent %}
{{ group.name }}
{%- endif %}
{%- for input in group.inputs %}
{%- if item.props[input] %}
{{ displayProp(input, item.props[input]) }}
{%- endif %}
{%- endfor %}
{%- endfor %}
{%- set hasContent = false %}
{%- for input, val in item.props %}
{%- if not seenProps[input] %}
{%- set hasContent = true %}
{%- endif %}
{%- endfor %}
{%- if hasContent %}
Other properties
{%- endif %}
{%- for input, val in item.props %}
{%- if not seenProps[input] %}
{{ displayProp(input, item.props[input]) }}
{%- endif %}
{%- endfor %}
{%- endmacro %}
{{ display(data.ids[data.entryPoint], "root") }}
{%- for id, entity in data.ids %}
{%- if id != data.entryPoint %}
{{ display(entity, "entity") }}
{%- endif %}
{%- endfor %}