How To: Extend the Ed-Fi XML Schema (Part 1)

This series of four how-to exercises will walk you through the various methods available to extend the Ed-Fi XML Schema. The techniques outlined in the Ed-Fi Extensions Framework are applied to create a single extended core from which many interchanges may be derived, as depicted below.

 

Extended Core Schema

All restricted types, extended types, and new types are encapsulated in a new extended core XSD file.

Getting Started: Create a Base XSD File to House Extensions 

To get started with this how-to example, create a base XSD file to house the extended core. Name the file EXTENSION-Ed-Fi-Extended-Core.xsd, include the Ed-Fi-Core.xsd using the following code: 

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://ed-fi.org/0210" xmlns:ann="http://ed-fi.org/annotation" targetNamespace="http://ed-fi.org/0210" elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:import namespace="http://ed-fi.org/annotation" schemaLocation="SchemaAnnotation.xsd"/>
<xs:include schemaLocation="Ed-Fi-Core.xsd"/>
 	. . .
</xs:schema>

Extensions created in the following steps will be built in this file.