On Apr 7, 2010, at 9:25 AM, Yorik van Havre wrote: > Extremely interesting explanation Sean, thanks a lot. > These ones look basically the most interesting parts to me > (architecture & > pure 2D work): AP201 and AP202 are the parts that focus on 2D CADD (drafting). Most prevalent for 3D CAD and solid modeling are AP203 and AP214, which feature-wise have been leap-frogging each other with amendments. They basically cover the description of parts and assemblies. Across the commercial CAD systems, by far, most have implemented support for AP203 data in part 21 format (i.e., Express text files). After that is AP214 support (advanced 3D) followed by AP201 (2D), at least from what I've seen. That is mostly because they capture the most data and were among the first parts to be released. Then there are a variety of vendors that specialize in support for other APs or multiple APs specific to a particular niche. > And the XML-way a step file is written looks pretty easy to read: > http://www.steptools.com/support/stdev_docs/express/ap202/demos/ > geometry_out_p28.html Support for STEP-XML (i.e., part 28) format files is still pretty non- existent and development has been very slow, at least among the commercial vendors, but it's slowly gaining adoption. Most of the existing implementations are basically a means to represent an Express schema in XML format (early binding), still utilizing the Express engine for in-memory management. The reason for the slow adoption stems from early design decisions regarding why Express was chosen over XML in the first place due in part to various limitations and concerns regarding compactness, non-opaque binary data, parsing complexity, associativity, and data validation. > Now, in freecad we have pretty good step import/export (it's built- > in with > opencascade). I know it behaves fine with brep 3D things ( which is > the > main focus of opencascade) but I'd be curious to do some tests with > step files containing 2D data formatted as in the AP202... The > difficulty will probably be to find such files... If anyone happens to > encounter one, I'd be interested to have a look at it. The engine can undoubtedly read files for a variety of other APs, as the core parsing is for part 21 format (Express) files. It will basically just ignore the entities that it doesn't recognize. More than likely, it will either abort when it sees the AP202 conformance declaration or it'll pull in the minimal subset of entities that have overlapping application modules with the APs it does support. Their site states that they have read/write support for AP203, AP214, and AP209 (which is the AP "soup" needed to describe most electro- mechanical systems). Cheers! Sean