mvdXML
mvdXML copied to clipboard
Concept rules for referenced templates
Now that it's possible to chain templates together, where an EntityRule on a ConceptTemplate can reference another ConceptTemplate, there needs to be a corresponding way to indicate parameter values for these "partial concept templates".
Propose adding a "References" element to TemplateRule which contains 0:N Concept objects (in parallel to EntityRule having References of 0:N ConceptTemplate). The Name of each Concept would identify the specific EntityRule by parameter ID.
[Alternatively, we could get by with the existing Concept.Subconcepts, however we would need a way to link each sub-concept to a particular TemplateRule and EntityRule (via parameter ID)].
This would then support unlimited nesting of chained concepts. Several examples: a) Property Sets at the outer level, and individual properties at the inner level (though perhaps not a real use case since we already have IfcPropertySetTemplate and PSD format) b) Defining constraints on objects within a parametric model view, where the first level may define IfcMetric linked to an IfcTable, and the next level specifying each IfcTableColumn. c) Specifying units at IfcProject, where components of each conversion unit can be specified explicitly.