add BCF reporter to IDS (#2552)

* grammar

* reason not always a list

* extend readme with instruction

* remove microseconds from date

* add BCF reporter
This commit is contained in:
ArturTomczak
2022-10-30 23:16:08 +01:00
committed by GitHub
parent 0338825175
commit 31600033bf
4 changed files with 99 additions and 69 deletions
+33 -1
View File
@@ -1,3 +1,35 @@
# ifctester
Author, test, and see reports from IDS audits on the command line, as a webapp, or as a library.
With **IfcTester**, you can author and read **Information Delivery Specification** - **IDS** - files and validate your IFC models against IDS to see if your model is compliant. After the audit, you can generate reports in console, as a web page, JSON or BCF file. It works from the command line, as a web app, or as a library.
## How to use it
```
# create new IDS
my_ids = ids.Ids(title="My IDS")
# add specification to it
my_spec = ids.Specification(name="My first specification")
my_spec.applicability.append(ids.Entity(name="IFCWALL"))
property = ids.Property(
name="IsExternal",
value="TRUE",
propertySet="Pset_WallCommon",
measure="IfcBoolean",
uri="https://identifier.buildingsmart.org/uri/.../prop/LoadBearing",
instructions="Walls need to be load bearing.")
my_spec.requirements.append(property)
my_ids.specifications.append(my_spec)
# Save such IDS to file
result = my_ids.to_xml("SampleIDS.xml")
# open IFC file:
my_ifc = ifcopenshell.open("MyIfcModel.ifc")
# validate IFC model against IDS requirements:
my_ids.validate(my_ifc)
# show results:
reporter.Console(my_ids).report()
```