The Global ARCHICAD Community

Stay informed. Get help. Share your knowledge.

Import/Export to other CAD/BIM formats (DWG/DXF, IFC, SketchUp, 3DS etc.), spreadsheets, databases etc.

Moderators: Karl Ottenstein, LaszloNagy, ejrolon, Barry Kelly, gkmethy

User avatar
By Tomek Piatek
#300733
I want to create, programmatically, a new classification file that uses MasterSpec's CBI classification system. This would need to follow the schema that was used to generate similar files available from Graphisoft (https://www.graphisoft.com/downloads/ar ... _Data.html). My question is this: what is the XML schema that was used to generate those files?

I am very new to ArchiCAD so I don't really know where to find any of this information yet. I'd appreciate any pointers I can get.

cheers.
-tomek
User avatar
By Tomek Piatek
#300743
A little searching and I came up with this handy web service: https://www.freeformatter.com/xsd-generator.html. The service can take some XML, and assuming it's sane and well formatted, will generate a XSD schema for you. Of course that is not the same as having the actual schema used by Graphisoft, or whoever created those classification flies, as there is no way to know if the sample documents contain all the possible fields. But it's good enough for me.

I can now use the XSD and some python to parse a CSV file containing codes and values of the MasterSpec CBI classification and generate a valid input file for ArchiCAD. I'll post it here once I've done it. Maybe some of you will find it useful/interesting. My main interest is to be able to create a simple element-based keynoting system that will tie in with MasterSpec.

cheers,
-tomek
User avatar
By Tomek Piatek
#300998
If anyone is interested I've attached a zip file with Masterspec CBI classifications, both level 2 and level 4. You can import it into ArchiCAD using Classification Manager. Turns out I didn't really need a schema, although it was helpful in verifying that I was generating correct XML.

This classification is useful in and of itself but I think that the true power lies in being able to use classifications as a key noting mechanism. Unfortunately there is no way to get at the "description" field from within any of the smart labels. That is the one thing that is stopping my idea from working. Hopefully someone from GS is reading this and will realise just how awesome this idea is and how pure is the implementation. It's a not-so-basic key noting solution that can be implemented in ArchiCAD only. No third party add-ons required!

Read my related wish post if you want to know more about this idea.
Attachments
(50.82 KiB) Downloaded 18 times
User avatar
By Gyuri Nyitrai
#301077
Tomek Piatek wrote:
Fri Aug 23, 2019 1:45 pm
This classification is useful in and of itself but I think that the true power lies in being able to use classifications as a key noting mechanism. Unfortunately there is no way to get at the "description" field from within any of the smart labels. That is the one thing that is stopping my idea from working. Hopefully someone from GS is reading this and will realise just how awesome this idea is and how pure is the implementation.
Tomek,

Thank you for sharing the CBI classification XML files!
Regarding the classification description field I can say that it was already requested from other markets too, so this enhancement is on our product backlog. Until it will be available you can list this field via Interactive Schedule only.

Regards,
Gyuri
Attachments
Classification description field.jpg
User avatar
By Tomek Piatek
#301079
@gyuri Thanks for that. It's really nice to know that you guys are listening. Thanks for the tip on how to get it to display in a schedule. I had actually figured it out and I'm using this already. It works really well for me.

Also, while I've got you here paying attention, it would be awesome if GS switched from a single annual release to say quarterly minor releases. This would allow you to deploy simple features more often. I bet it would make a whole lot of people really happy. You already have the mechanism for this with your patches/hotfixes for bugs. Why not extend it to small enhancements.

Anyway, you're doing a great job. Thanks!