ifctester
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
Command line use
.. code-block:: bash
# run console reporter
python -m ifctester example.ids example.ifc
python -m ifctester example.ids example.ifc -r Html -o report.html
Available flags:
-r/--reporter: The reporting method to view audit results. Availabe reporters: Console, Txt, Json, Html, Ods, Bcf--no-color: Disable colour output (supported by Console reporting).--excel-safe: Make sure exported ODS is safely exported for Excel.-o/--output: Output file (supported for all types of reporting except Console).
Code example
import ifcopenshell
from ifctester import ids, reporter
# 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(
baseName="IsExternal",
value="TRUE",
propertySet="Pset_WallCommon",
dataType="IfcBoolean",
uri="https://identifier.buildingsmart.org/uri/.../prop/LoadBearing",
instructions="Walls need to be load bearing.",
cardinality="required")
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()
Release files for ifctester 0.0.240423
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ifctester-0.0.240423.tar.gz | 35.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ifctester-0.0.240423-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 61.3 kB
Release files / ifctester-0.0.240423.tar.gz
| Download URL | ifctester-0.0.240423.tar.gz |
|---|---|
| Size | 35.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
27528cc33fceaecafed088c3d9ebf9256a59c231ca7112421b3cf0f7c460ab96
|
|
BLAKE2b-256 checksum How to use checksums |
859c069df486c92f9e2ae4ddfef0cc931f86b54cd8ab167fbc2c63415259f79d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.11.9
|
Release files / ifctester-0.0.240423-py3-none-any.whl
| Download URL | ifctester-0.0.240423-py3-none-any.whl |
|---|---|
| Size | 25.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4684ec7c20f2a9c9ce921073d43317883a057ffdf394acbee48bfd8b86328434
|
|
BLAKE2b-256 checksum How to use checksums |
cb5ec43f64795844308ade8fda3ee8a36a679e958e0aa46eae23f2232f9ec80e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.11.9
|