IDS icon indicating copy to clipboard operation
IDS copied to clipboard

documentation test case correctness

Open CBenghi opened this issue 2 years ago • 5 comments

Hello @Moult,

as I'm progressively improving the auditing features of the ids-tool, I've spotted a few issues in the testcases listed below.

Some errors are obvious; the ones that are less clear, probably depend on the scope of the test (e.g. classes missing in Ifc2x3, if it's one of the valid scopes for the specification).

I know these files are generated programmatically. I'd be happy to help with that if you can share access to the generating repository.

Best, Claudio

info: idsTool.Program[0] Auditing file: `Documentation\testcases\attribute\pass-an_optional_facet_always_passes_regardless_of_outcome_2_2.ids`.
fail: idsTool.Program[0] Invalid value `Rabbit` in simpleValue to match `attribute names` at line 17, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\attribute\pass-attributes_referencing_an_object_should_pass.ids`.
fail: idsTool.Program[0] Invalid value `TaskTime` in simpleValue to match `attribute names` at line 17, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\attribute\pass-attributes_with_a_boolean_false_should_pass.ids`.
fail: idsTool.Program[0] Invalid value `IFCTASKTIME` in simpleValue to match `entity names` at line 10, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\attribute\pass-attributes_with_a_boolean_true_should_pass.ids`.
fail: idsTool.Program[0] Invalid value `IFCTASKTIME` in simpleValue to match `entity names` at line 10, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\attribute\pass-attributes_with_a_zero_duration_should_pass.ids`.
fail: idsTool.Program[0] Invalid value `IFCTASKTIME` in simpleValue to match `entity names` at line 10, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\attribute\pass-durations_are_treated_as_strings_1_2.ids`.
fail: idsTool.Program[0] Invalid value `IFCTASKTIME` in simpleValue to match `entity names` at line 10, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\attribute\pass-integers_follow_the_same_rules_as_numbers_2_2.ids`.
fail: idsTool.Program[0] Invalid value `NumberOfRisers` in simpleValue to match `attribute names` at line 17, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\attribute\pass-integers_follow_the_same_rules_as_numbers.ids`.
fail: idsTool.Program[0] Invalid value `NumberOfRisers` in simpleValue to match `attribute names` at line 17, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\entity\pass-a_matching_predefined_type_should_pass.ids`.
fail: idsTool.Program[0] Invalid value `SOLIDWALL` in simpleValue to match `PredefinedTypes` at line 20, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\entity\pass-a_predefined_type_may_specify_a_user_defined_element_type.ids`.
fail: idsTool.Program[0] Invalid value `WALDO` in simpleValue to match `PredefinedTypes` at line 20, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\entity\pass-a_predefined_type_may_specify_a_user_defined_object_type.ids`.
fail: idsTool.Program[0] Invalid value `WALDO` in simpleValue to match `PredefinedTypes` at line 20, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\entity\pass-a_predefined_type_may_specify_a_user_defined_process_type.ids`.
fail: idsTool.Program[0] Invalid value `IFCTASKTYPE` in simpleValue to match `entity names` at line 10, position 26.
fail: idsTool.Program[0] Invalid value `IFCTASKTYPE` in simpleValue to match `entity names` at line 17, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\entity\pass-inherited_predefined_types_should_pass.ids`.
fail: idsTool.Program[0] Invalid value `X` in simpleValue to match `PredefinedTypes` at line 20, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\entity\pass-overridden_predefined_types_should_pass.ids`.
fail: idsTool.Program[0] Invalid value `X` in simpleValue to match `PredefinedTypes` at line 20, position 26.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\entity\pass-restrictions_an_be_specified_for_the_predefined_type_1_3.ids`.
fail: idsTool.Program[0] Invalid value `FOO.*` in pattern to match `PredefinedTypes` at line 21, position 30.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\entity\pass-restrictions_an_be_specified_for_the_predefined_type_2_3.ids`.
fail: idsTool.Program[0] Invalid value `FOO.*` in pattern to match `PredefinedTypes` at line 21, position 30.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\ids\pass-a_prohibited_specification_and_a_prohibited_facet_results_in_a_double_negative.ids`.
fail: idsTool.Program[0] Invalid schema version 'IfcNoVersion' in specification at line 6, position 10.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\ids\pass-a_specification_passes_only_if_all_requirements_pass_2_2.ids`.
fail: idsTool.Program[0] Invalid schema version 'IfcNoVersion' in specification at line 6, position 10.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\ids\pass-multiple_specifications_are_independent_of_one_another.ids`.
fail: idsTool.Program[0] Invalid schema version 'IfcNoVersion' in specification at line 6, position 10.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\ids\pass-optional_specifications_may_still_pass_if_nothing_is_applicable.ids`.
fail: idsTool.Program[0] Invalid schema version 'IfcNoVersion' in specification at line 6, position 10.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\ids\pass-prohibited_specifications_fail_if_at_least_one_entity_passes_all_requirements_1_3.ids`.
fail: idsTool.Program[0] Invalid schema version 'IfcNoVersion' in specification at line 6, position 10.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\ids\pass-prohibited_specifications_fail_if_at_least_one_entity_passes_all_requirements_2_3.ids`.
fail: idsTool.Program[0] Invalid schema version 'IfcNoVersion' in specification at line 6, position 10.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\ids\pass-required_specifications_need_at_least_one_applicable_entity_1_2.ids`.
fail: idsTool.Program[0] Invalid schema version 'IfcNoVersion' in specification at line 6, position 10.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\ids\pass-specification_optionality_and_facet_optionality_can_be_combined.ids`.
fail: idsTool.Program[0] Invalid schema version 'IfcNoVersion' in specification at line 6, position 10.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\partof\pass-a_group_predefined_type_must_match_exactly_2_2.ids`.
fail: idsTool.Program[0] Invalid value `BUNNY` in simpleValue to match `PredefinedTypes` at line 21, position 30.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\partof\pass-nesting_may_be_indirect.ids`.
fail: idsTool.Program[0] Invalid value `IFCFURNITURE` in simpleValue to match `entity names` at line 18, position 30.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\partof\pass-the_container_predefined_type_must_match_exactly_2_2.ids`.
fail: idsTool.Program[0] Invalid value `BURROW` in simpleValue to match `PredefinedTypes` at line 21, position 30.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\partof\pass-the_nest_entity_must_match_exactly_2_2.ids`.
fail: idsTool.Program[0] Invalid value `IFCFURNITURE` in simpleValue to match `entity names` at line 18, position 30.

info: idsTool.Program[0] Auditing file: `Documentation\testcases\partof\pass-the_nest_predefined_type_must_match_exactly_2_2.ids`.
fail: idsTool.Program[0] Invalid value `IFCFURNITURE` in simpleValue to match `entity names` at line 18, position 30.

CBenghi avatar Apr 02 '23 09:04 CBenghi

I was under the impression that the schema version was purely as a comment but didn't actually have any impact on the running of the IDS.

Moult avatar Apr 03 '23 03:04 Moult

If we want to be able to audit IDSs, the declaration of the schema should be meaningful, and have an impact on the running.

CBenghi avatar Apr 03 '23 12:04 CBenghi

I was under the impression that the schema version was purely as a comment but didn't actually have any impact on the running of the IDS.

Sorry, what?

EDIT: It is being voted on as a bSI standard, so your comment surprises me.

SergejMuhic avatar Apr 03 '23 15:04 SergejMuhic

I was under the impression that the schema version was purely as a comment but didn't actually have any impact on the running of the IDS.

Is this documented somewhere? I fail to find any mention of this in this repository. Can you point me to the location to educate myself?

pjanck avatar Apr 03 '23 18:04 pjanck

https://github.com/buildingSMART/IDS/blob/master/Documentation/testcases-ids.md#pass-specification-version-is-purely-metadata-and-does-not-impact-pass-or-fail-result

^ I can't remember who I asked or who told me that this should be the case, I merely documented it.

Moult avatar Apr 03 '23 23:04 Moult