buildingSMART / ifc-gherkin-rules

MIT License
11 stars 18 forks source link

IVS-79 - LAY000 #281

Closed Ghesselink closed 2 months ago

Ghesselink commented 2 months ago

Superceding https://github.com/buildingSMART/ifc-gherkin-rules/pull/256

Note; in some cases the attribute LayerAssignment is singular ('LayerAssignment' as opposed to the plural 'LayerAssignments') as is the case in IfcExtrudedAreaSolid. This is handled by Scenario Outlines.

Furthermore, since we have four scenarios (two outlines with two examples each). The two outlines are for layer assignments added to the representation and items.

There is one additional consideration, that's a bit in detail, but actually you can have layer assignment on the representation but also on the items. This is missing in the concept template, but is rendered in the documentation.

image

It also would be nice to quickly pinpoint the scenario activating the rule. Currently, we have to navigate and set pinpoints within the gherkin repository to retrace this. Embedding validation_outcomes to JSON in environment.py works, but everything is handled together in after_feature which the embeds the Outcome to the feature rather than the last step or scenario. Two ways of handling this:

aothms commented 2 months ago

Note; in some cases ...

But these cases are already different scenarios. 2nd scenario through items is singular (not only attribute name, also max cardinality of the set). 1st scenario on representation directly is plural. So these different scenarios don't need to be outlines with examples.

afbeelding

afbeelding

aothms commented 2 months ago

adding a last_step and scenario entry in the datamodel (e.g. to ValidationOutcome)

can we solve this in a single number? Like the nth step from the file counting downwards.

Ghesselink commented 2 months ago

But these cases are already different scenarios. 2nd scenario through items is singular (not only attribute name, also max cardinality of the set). 1st scenario on representation directly is plural. So these different scenarios don't need to be outlines with examples.

I was unsure whether singular/plural was consistent, so thought just to be on the safe side. The outlines are removedfrom the feature, so there are only two separate scenarios.