The HSF Specification details the structure of the HSF format and provides a complete description of each object that may be contained in a HSF file. Developers can use this specification to create or read compatible HSFs without needing to license the HOOPS Stream Toolkit.
HSF is the format at the center of the OpenHSF Initiative, an industry-wide effort to establish a common open format for the exchange of visualization data among and between disparate applications. By supporting the HSF format, applications are able to exchange 2D/3D models with any other HSF-enabled application.
Prior to implementing from the HSF Specification, we would encourage you to send an email to info@openhsf.org so that you can be listed as a supporter of the format.
Some strengths of the HSF format include:
Richness - The HSF spec supports a comprehensive set of 2D, 3D, raster and text primitives, and includes support for a wide array of graphical attributes such as vertex color data, texture mapping, user-defined fonts, unicode text, and named views. Multi-resolution objects to faciliate streaming and large model visualization are also supported.
Compactness - HSF supports file-wide and geometry-specific compression mechanisms. These reduce file size and reduce Internet transmission times which further facilitate streaming.
Application Independence - Driven by the needs of a wide variety of engineering applications, with particular emphasis on the CAD/CAM/CAE industry, HSF specifies a generalized 2D/3D vector format which is highly tailored to engineering but applicable to many application types.
Stability - HSF remains relatively unchanged over time because it is application independent and has extensibility built in. Also, it is less likely to require major changes as it already addresses the requirements of most existing commercial systems.
Openness and Extensibility - HSF provides extensibility through the use of syntax extension mechanisms built into the specification and through a set of rules for .hsf file reading programs that allow for unforeseen syntax extensions. For example, new opcodes can be added to a .hsf file that will be gracefully ignored by older HSF-reading applications.