mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-15 18:14:08 +00:00
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:
+33
-1
@@ -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()
|
||||
```
|
||||
Reference in New Issue
Block a user