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.240418
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.240418.tar.gz | 35.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ifctester-0.0.240418-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 61.3 kB
Release files / ifctester-0.0.240418.tar.gz
| Download URL | ifctester-0.0.240418.tar.gz |
|---|---|
| Size | 35.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
09bdd85892098dea317356596ec3ea06fb745e87db5e468e6403323c4cf13347
|
|
BLAKE2b-256 checksum How to use checksums |
355ff47c18561bbc4eedcbf4fd07d8e79eb8092a1abf1c4e4c3bcba35af1cc66
|
| 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.240418-py3-none-any.whl
| Download URL | ifctester-0.0.240418-py3-none-any.whl |
|---|---|
| Size | 25.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1109d6f0be9f99b17eb44bcd5e02f6c950bb05f1687400e9f9d54d9bf09ab1d5
|
|
BLAKE2b-256 checksum How to use checksums |
8c851f3c0b140cfa92d39b583d56c9a620536a28dc1ddcd6aa5392f417f3c5df
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.11.9
|