# Are there any programs that can visualize IFC4 files in the ifcxml format?

**URL:** <https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658>\
**Category:** IFC\
**Tags:** ifc4, xml\
**Created:** [April 30, 2020, 1:25am UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658 "2020-04-30T01:25:21Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![giovanniv](https://avatars.discourse-cdn.com/v4/letter/g/ea666f/32.png) [@giovanniv](https://forums.buildingsmart.org/u/giovanniv)\
**Post date:** [April 30, 2020, 1:25am UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658/1 "2020-04-30T01:25:21Z")

</div>

I’ve tried opening [this file](https://standards.buildingsmart.org/IFC/RELEASE/IFC4/ADD2_TC1/HTML/annex/annex-e/extruded-solid.ifcxml) with the following programs, and none were able to visualize the 3D model: Trimble Connect (successor of Tekla BIMsight), Autodesk Revit 2019 (but even newer versions don’t support opening IFC4 files), usBIM.viewer+, DDS-CAD Viewer, FZKViewer, xBIM Xplorer, [https://ifc-view.com/](https://ifc-view.com/), and probably some others which I don’t remember at the moment.  
Does anybody know if there are any programs that can visualize 3D models stored in version IFC4\_ADD2\_TC1 of the specification and in the .ifcxml format?

---

<div class="post-metadata">

**Author:** ![Moult](https://sea2.discourse-cdn.com/flex016/user_avatar/forums.buildingsmart.org/moult/32/196_2.png) [@Moult](https://forums.buildingsmart.org/u/Moult)\
**Post date:** [April 30, 2020, 4:39am UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658/2 "2020-04-30T04:39:27Z")

</div>

I think GeometryGym has _some_ support, but I’m not sure the extent.

IfcOpenShell-based viewers, like the BlenderBIM Add-on and FreeCAD have just started with a bit of experimental support, but I wouldn’t call it ready it.

---

<div class="post-metadata">

**Author:** ![PeterBonsma](https://avatars.discourse-cdn.com/v4/letter/p/ac8455/32.png) [@PeterBonsma](https://forums.buildingsmart.org/u/PeterBonsma)\
**Post date:** [April 30, 2020, 6:55am UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658/3 "2020-04-30T06:55:43Z")

</div>

The IFC Engine and most of the applications that use this library support import and export of ifcXML for IFC4 / IFC4x1 / IFC4x2 draft (from next week also for IFC4x3 draft). See also [ifcviewer.com](http://ifcviewer.com).

---

<div class="post-metadata">

**Author:** ![giovanniv](https://avatars.discourse-cdn.com/v4/letter/g/ea666f/32.png) [@giovanniv](https://forums.buildingsmart.org/u/giovanniv)\
**Post date:** [April 30, 2020, 3:57pm UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658/4 "2020-04-30T15:57:40Z")

</div>

Thank you so much! I can’t believe I wasted so many hours trying all these bloated programs when something so simple does the job perfectly fine.

---

<div class="post-metadata">

**Author:** ![andreas.geiger](https://avatars.discourse-cdn.com/v4/letter/a/5daacb/32.png) [@andreas.geiger](https://forums.buildingsmart.org/u/andreas.geiger)\
**Post date:** [May 6, 2020, 1:41pm UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658/5 "2020-05-06T13:41:37Z")

</div>

Hello,  
please check again your ifcXML instance dokument. I have tried to validate the file with a standard XML tool and your file is not valid. Attached you will find a valid version.  
[extruded-solid\_ag\_ADD2TC1.ifcxml](https://forums.buildingsmart.org/uploads/short-url/qJlp95pi4mTNRhyg9GkozXYce5U.ifcxml) (4.1 KB)

---

<div class="post-metadata">

**Author:** ![giovanniv](https://avatars.discourse-cdn.com/v4/letter/g/ea666f/32.png) [@giovanniv](https://forums.buildingsmart.org/u/giovanniv)\
**Post date:** [May 6, 2020, 3:22pm UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658/6 "2020-05-06T15:22:13Z")

</div>

Ironically, the file I linked is from the IFC4 documentation. The program suggested by @PeterBonsma opens it with no issues.  
Running `diff` on the files shows the following differences (the first one is yours, the second is the one I linked):

```xml
2c2
< <ifcXML xsi:schemaLocation="https://standards.buildingsmart.org/IFC/RELEASE/IFC4/Add2TC1 http://standards.buildingsmart.org/IFC/RELEASE/IFC4/ADD2_TC1/XML/IFC4.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://standards.buildingsmart.org/IFC/RELEASE/IFC4/Add2TC1">
---
> <ifc:ifcXML xsi:schemaLocation="http://www.buildingsmart-tech.org/ifcXML/IFC4/Add2 IFC4_ADD2_TC1.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ifc="http://www.buildingsmart-tech.org/ifcXML/IFC4/Add2" xmlns="http://www.buildingsmart-tech.org/ifcXML/IFC4/Add2">
76c76
< <IfcPlaneAngleMeasure-wrapper>0.017453293</IfcPlaneAngleMeasure-wrapper>
---
> <IfcPlaneAngleMeasure-wrapper>0,017453293</IfcPlaneAngleMeasure-wrapper>
86c86
< </ifcXML>
---
> </ifc:ifcXML>

```

I don’t understand why your file has 2 URLs in the `xsi:schemaLocation` attribute, but except for that it’s clear that yours is correct and the one from the documentation is wrong.

---

<div class="post-metadata">

**Author:** ![andreas.geiger](https://avatars.discourse-cdn.com/v4/letter/a/5daacb/32.png) [@andreas.geiger](https://forums.buildingsmart.org/u/andreas.geiger)\
**Post date:** [May 6, 2020, 3:40pm UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658/7 "2020-05-06T15:40:46Z")

</div>

You will find your answer to the attribute schemLocation for example here:  
[https://docs.microsoft.com/en-us/previous-versions/dotnet/netframework-4.0/ms256100(v%3Dvs.100)](https://docs.microsoft.com/en-us/previous-versions/dotnet/netframework-4.0/ms256100(v%3Dvs.100))  
“The location of a schema that contains qualified (a schema with a namespace) schema constructs. The first URI reference in each pair is a namespace name, and the second is the location of a schema that describes that namespace.”

---

<div class="post-metadata">

**Author:** ![PeterBonsma](https://avatars.discourse-cdn.com/v4/letter/p/ac8455/32.png) [@PeterBonsma](https://forums.buildingsmart.org/u/PeterBonsma)\
**Post date:** [May 6, 2020, 4:04pm UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658/8 "2020-05-06T16:04:59Z")

</div>

The location of the schema is indeed changed, something to adapt in the examples (also there is a broken ifcxml file in the example set that should be repaired). The reason why the IFC Engine loads the XML file independent of its referenced location is because we create the XSD internally (or something similar) on-the-fly based on the loaded .exp file according to the rules that were used to process the XSD from an .exp file and load it against this. This would even allow you to export / import IFC2x3 files against the XML / XSD structure as used within IFC4 or ifcXML files for IFC4 against the XSD’s structured against the rules defining how IFC2x3 XSD’s are created. I am curious how others parse the ifcXML, how do you process the ifcXML Andreas?

---

<div class="post-metadata">

**Author:** ![Moult](https://sea2.discourse-cdn.com/flex016/user_avatar/forums.buildingsmart.org/moult/32/196_2.png) [@Moult](https://forums.buildingsmart.org/u/Moult)\
**Post date:** [May 6, 2020, 9:59pm UTC](https://forums.buildingsmart.org/t/are-there-any-programs-that-can-visualize-ifc4-files-in-the-ifcxml-format/2658/9 "2020-05-06T21:59:39Z")

</div>

Just to add to the discussion I have found similar broken IFC XML files from the documentation examples here: [Any examples of IFCXML (IFC4) files?](https://forums.buildingsmart.org/t/any-examples-of-ifcxml-ifc4-files/1030/17)

I am parsing the IfcXML with IfcOpenShell.
