buildingSMART / IDS

Computer interpretable (XML) standard to define Information Delivery Specifications for BIM (mainly used for IFC)
Other
167 stars 52 forks source link

Enumerated property not being tested #238

Closed atomczak closed 2 months ago

atomczak commented 3 months ago

Those three test cases appear to be checking the enumerated property, which I understand should be the XSD restriction on the value, allowing one of a few possible values. Those restrictions are not applied in any of the three IDS files:

https://github.com/buildingSMART/IDS/blob/master/Documentation/testcases/property/pass-any_matching_value_in_an_enumerated_property_will_pass_1_3.ids

https://github.com/buildingSMART/IDS/blob/master/Documentation/testcases/property/pass-any_matching_value_in_an_enumerated_property_will_pass_2_3.ids

https://github.com/buildingSMART/IDS/blob/master/Documentation/testcases/property/fail-any_matching_value_in_an_enumerated_property_will_pass_3_3.ids

I was expecting to see something like this:

<ids:property minOccurs="1" maxOccurs="unbounded" datatype="IFCTEXT">
    <ids:propertySet>
        <ids:simpleValue>test_set</ids:simpleValue>
    </ids:propertySet>
    <ids:name>
        <ids:simpleValue>PropName</ids:simpleValue>
    </ids:name>
    <ids:value>
        <xs:restriction>
            <xs:enumeration value="ValueA"/>
            <xs:enumeration value="ValueB"/>
        </xs:restriction>
    </ids:value>
</ids:property>
CBenghi commented 2 months ago

Hello @atomczak,

I think in those examples the enumeration is in the IFC file.

#7=IFCWALL('2nJrDaLQfJ1QPhdJR0o97J',$,$,$,$,$,$,$,$);
#8=IFCPROPERTYSET('16MocU_IDOF8_x3Iqllz0d',$,'Pset_WallCommon',$,(#11));
#9=IFCRELDEFINESBYPROPERTIES('1xdwj8qGXK4hzoNbvMdXJW',$,$,$,(#7),#8);
#10=IFCPROPERTYENUMERATION('Status',(IFCLABEL('NEW'),IFCLABEL('EXISTING'),IFCLABEL('DEMOLISH'),IFCLABEL('TEMPORARY'),IFCLABEL('OTHER'),IFCLABEL('NOTKNOWN'),IFCLABEL('UNSET')),$);
#11=IFCPROPERTYENUMERATEDVALUE('Status',$,(IFCLABEL('EXISTING'),IFCLABEL('DEMOLISH')),#10);