SIFWorks ADK 2.0
SifDtd Class
NamespacesEdustructures.SifWorksSifDtd

[This is preliminary documentation and is subject to change.]

Metadata for the Schools Interoperability Framework (SIF)
Declaration Syntax
C#Visual BasicVisual C++
public sealed class SifDtd : IDtd
Public NotInheritable Class SifDtd _
	Implements IDtd
public ref class SifDtd sealed : IDtd
Members
All MembersConstructorsMethodsPropertiesFields



IconMemberDescription
SifDtdSifDtdNew()()
static memberASSESSMENT
AvailableLibraries
Gets the names of all Sdo libraries offered with this version of the Adk (Excluding Common, DataModel, and Infra)

static memberCOMMON
CreateElementOrAttributeFromXPath(SifElement, String, IValueBuilder, SifFormatter)
Create all elements and attributes referenced by the XPath-like query string. This method is currently private in Adk 1.0.0 but could be made public in the future

CreateSIFDataObject(IElementDef)
Creates an instance of a SifDataObject given an IElementDef.

static memberDATAMODEL
static memberDW
static memberETRANSCRIPTS
static memberFOOD
GetElementTag(Int32)
GetElementType(String)
GetFormatter(SifVersion)
GetNamespace(SifVersion)
Get the SIF namespace for a given version of the specification.

static memberGRADEBOOK
static memberHRFIN
static memberINFRA
static memberINSTR
IsLibraryLoaded(SdoLibraryType)
static memberLIBRARY
LoadedLibraries
Gets an integer identifying all loaded libraries

LoadLibraries(SdoLibraryType)
Loads the SDO Libraries specified by using flags from the SdoLibraryType enum

LookupBySQP(SifDataObject, String)
Find an SifElement given a SIF Query Pattern string.

LookupByXPath(SifDataObject, String)
Find an SifElement given an XPath-like query string.

LookupByXPath(SifDataObject, String, IValueBuilder)
Find an SifElement given an XPath-like query string.

LookupElementDef(String)
Lookup an IElementDef object describing an element or attribute

LookupElementDef(IElementDef, String)
Lookup an IElementDef object describing an element or attribute

LookupElementDefBySQP(IElementDef, String)
Lookup an IElementDef given a SIF Query Pattern string.

static memberPROFDEV
static memberPROGRAMS
static memberREPORTING
static memberSIF_MESSAGE
static memberSIF_MESSAGE_VERSION
static memberSTUDENT
static memberTRANS
static memberXMLNS_BASE
Remarks

SIFDTD defines global {@linkplain com.edustructures.sifworks.ElementDef} constants that describe SIF Data Objects, elements, and attributes across all supported versions of the SIF Specification. The ADK uses this metadata internally to parse and render SIF Data Objects. In addition, many of the framework APIs require that the programmer pass an ElementDef constant from the SIFDTD class to identify an object, element, or attribute.

ElementDef constants are named [PARENT_]ENTITY, where PARENT is the name of the parent element and ENTITY is the name of the element or attribute encapsulated by the ElementDef. Some examples of ElementDef constants defined by this class include:

IElementDefDescription
SIFDTD.STUDENTPERSONAL
Identifies the StudentPersonal data object
SIFDTD.SCHOOLINFO
Identifies the SchoolInfo data object
Many of the Adk's public interfaces require an ElementDef constant to be passed as a parameter. For example, the first parameter to the SetSubscriber(ISubscriber, IElementDef, ProvisioningFlags) method is an IElementDef:
CopyC#
myZone.setSubscriber( SIFDTD.BUSINFO, this, ADKFlags.PROV_SUBSCRIBE );
ElementDef also identifies child elements and attributes as demonstrated by the Query.AddCondition method:
CopyC#
Query query = new Query( SifDtd.STUDENTPERSONAL );
query.AddCondition( SifDtd.STUDENTPERSONAL_REFID, Condition.EQ, "4A37969803F0D00322AF0EB969038483" );

SDO Libraries

ElementDef metadata is grouped into "SDO Libraries", which are organized along SIF Working Group boundaries. SDO Libraries are loaded into the SifDdt class when the Adk is initialized. All or part of the metadata is loaded into depending on the flags passed to the Initialize(SifVersion, SdoLibraryType) method, metadata from one or more SDO Libraries may be loaded. For example, the following call loads metadata for the Student Information Working Group Objects and Transportation And Geographic Information Working Group Objects (Common Elements and Infrastructure Working Group Objects metadata is always loaded

CopyC#
Adk.Initialize( SiFVersion.LATEST, SdoLibraryType.Student | SdoLibraryType.Trans )

If an given SDO Library is not loaded, all of the SIFDTD constants that belong to that library will be

CopyC#
null
and cannot be referenced. For example, given the SDO Libraries loaded above, attempting to reference the
CopyC#
SIFDTD.LIBRARYPATRONSTATUS
object from the Library Automation Working Group would result in a NullPointerException:

CopyC#
SifDtd.LIBRARYPATRONSTATUS.Name;
Inheritance Hierarchy
Object
SifDtd

Assembly: Edustructures.SifWorks.Adk (Module: Edustructures.SifWorks.Adk) Version: 2.0.0.10