September 15, 2017
Summary
SIF Data Model Implementation Specification (NA) 2.8 contains only the data elements of SIF 2.7M and is, except for details noted below, identical to them. Elements supporting the SIF 2 infrastructure have been removed. This optional version is not intended for users of ZIS and other SIF 2 infrastructure components. It provides a path forward by enabling SIF 2 data to flow through a SIF 3 infrastructure system. Tool support is improved with a comprehensive restructuring of the XML to reflect the ‘venetian blind’ design pattern.
Dropped Dependent on Infrastructure Zone (Functional) Services Vertical Reporting Objects Available in SIF 3 (NA) data modals SIF 3 Assessment Objects
Full 2.7M to 2.8 Delta
A few fixes are included in SIF (NA) 2.8, they are noted below. For a full set of structural differences the .txt file is provided below.
Corrections StudentContacts can now have an Other relationship flag. SpecialEducation's OtherCodeLists now follow convention. EnergyUsage's @IntervalIndex characteristics corrected. Structural Delta
License
SIF (NA) 2.8 is the specification released under a Creative Commons license (CC BY-SA). Details are available on this release's main page.
September 15, 2017
Errata
Code Generation
One of the primary motivations for creating the SIF (NA) 2.8 release is to allow developers to create data model objects using the included schemas. Below you will find a few notes, helping you to do this for some popular platforms. Each will use a SIF_Message.xsd as input. If you would like to try a SIF 3 style collections file, you may; however this interacts with the SIF 2 style schemas, resulting in an invalid state that works with some tools and not others.
.NET
Creating C# classes with xsd.exe is a straightforward process. Simply run something like the below example from the Developer Command Prompt for Visual Studio.
xsd /c SIF_Message.xsd
Java
Due to the extensive nature the SIF (NA) 2.8 schemas a separate binding file is required to generate Java classes with xjc. The below example outputs the resulting source code to the "src" directory.
xjc -d src -b binding.xml SIF_Message.xsd