# Appendix B: Code Sets

Select shared and named code sets defined in SIF are included here for reference.

## Infrastructure

### Status Code

`0` | Success (ZIS ONLY). SIF_Status/SIF_Data may contain additional data.
`1` | Immediate SIF_Ack (AGENT ONLY). Message is persisted or processing is complete. Discard the referenced message.
`2` | Intermediate SIF_Ack (AGENT ONLY). Only valid in response to SIF_Event delivery. Invokes Selective Message Blocking. The event referenced must still be persisted, and no other events must be delivered, until the agent sends a "Final" SIF_Ack at a later time.
`3` | Final SIF_Ack (AGENT ONLY). Sent (a SIF_Ack with this value is never returned by an agent in response to a delivered message) by an agent to the ZIS to end Selective Message Blocking. Discard the referenced event and allow for delivery of other events.
`7` | Already have a message with this SIF_MsgId from you.
`8` | Receiver is sleeping.
`9` | No messages available. This is returned when an agent is trying to pull messages from a ZIS and there are no messages available.

### Error Category

The following table describes the functional areas where an error may occur in SIF. When a `SIF_Error` element is returned within a `SIF_Ack` message, the `SIF_Error/SIF_Category` element MUST contain one of the values from the table.

The next tables present the error codes that must be used when constructing a `SIF_Error` element. The value of `SIF_Error/SIF_Code` must come from these lists unless the functional category is `System` where error codes not defined in these tables can be included.

`0` | Unknown (This should NEVER be used if possible)
`1` | XML Validation
`2` | Encryption
`3` | Authentication
`4` | Access and Permissions
`5` | Registration
`6` | Provision
`7` | Subscription
`8` | Request and Response
`9` | Event Reporting and Processing
`10` | Transport
`11` | System (OS, Database, Vendor localized, etc.)
`12` | Generic Message Handling
`13` | SMB Handling

### XML Validation Error

`1` | Generic error
`2` | Message is not well-formed
`3` | Generic validation error
`4` | Invalid value for element/attribute
`6` | Missing mandatory element/attribute

### Encryption Error

`1` | Generic error

### Authentication Error

`1` | Generic error
`2` | Generic authentication error (with signature)
`3` | Missing sender's certificate
`4` | Invalid certificate
`5` | Sender's certificate is not trusted
`6` | Expired certificate
`7` | Invalid signature
`8` | Invalid encryption algorithm (only accepts MD4)
`9` | Missing public key of the receiver (when decrypting message)
`10` | Missing receiver's private key (when decrypting message)

### Access and Permission Error

`1` | Generic error
`2` | No permission to register
`3` | No permission to provide this object
`4` | No permission to subscribe to this SIF_Event
`5` | No permission to request this object
`6` | No permission to respond to this object request
`7` | No permission to publish SIF_Event
`8` | No permission to administer policies
`9` | SIF_SourceId is not registered
`10` | No permission to publish SIF_Event Add
`11` | No permission to publish SIF_Event Change
`12` | No permission to publish SIF_Event Delete

### Registration Error

`1` | Generic error
`2` | The SIF_SourceId is invalid
`3` | Requested transport protocol is unsupported
`4` | Requested SIF_Version(s) not supported.
`6` | Requested SIF_MaxBufferSize is too small
`7` | ZIS requires a secure transport
`9` | Agent is registered for push mode (returned when a push-mode agent sends a SIF_GetMessage).

### Provision Error

`1` | Generic error
`3` | Invalid object
`4` | Object already has a provider (SIF_Provide message)

### Subscription Error

`1` | Generic error
`3` | Invalid object

### Request and Response Error

`1` | Generic error
`3` | Invalid object
`4` | No provider
`7` | Responder does not support requested SIF_Version
`8` | Responder does not support requested SIF_MaxBufferSize
`9` | Unsupported query in request
`10` | Invalid SIF_RequestMsgId specified in SIF_Response
`11` | SIF_Response is larger than requested SIF_MaxBufferSize
`12` | SIF_PacketNumber is invalid in SIF_Response
`13` | SIF_Response does not match any SIF_Version from SIF_Request
`14` | SIF_DestinationId does not match SIF_SourceId from SIF_Request
`15` | No support for SIF_ExtendedQuery

### Event Reporting and Processing Error

`1` | Generic error
`3` | Invalid event

### Transport Error

`1` | Generic error
`2` | Requested protocol is not supported
`3` | Secure channel requested and no secure path exists
`4` | Unable to establish connection

### System Error

`1` | Generic error

### Generic Message Handling Error

`1` | Generic error
`2` | Message not supported
`3` | Version not supported
`4` | Context not supported
`5` | Protocol error
`6` | No such message (as identified by SIF_OriginalMsgId)
`7` | Multiple contexts not supported

### SMB Error

`1` | Generic error
`2` | SMB can only be invoked during a SIF_Event acknowledgement
`3` | Final SIF_Ack expected from Push-Mode Agent
`4` | Incorrect SIF_MsgId in final SIF_Ack

## SIF_LogEntry

### Agent Error Condition

`1` | An exception has occurred in the agent (generic error)

### Data Issues with Failure Result

`1` | Insufficient information in message
`2` | Cannot process change due to business rule
`3` | Related information unavailable

### Data Issues with Success Result

`1` | Data was changed to complete request successfully
`2` | Data was added to complete request successfully

### Success Category

`1` | Success

### ZIS Error Condition

`1` | An exception has occurred in the ZIS (generic error)
`2` | Message could not be delivered due to buffer size limitations
`3` | Message could not be delivered due to minimum security requirements
`4` | Message could not be delivered due to destination agent not supporting SIF_Version
`5` | Message could not be delivered due to SIF_Response validation

## StudentPlacement

### Other Types of Transportation

`S101` | Homeless transportation
`S102` | Choice transportation

### Title I Services

`S001` | Reading / language program
`S002` | Mathematics program
`S003` | Science program
`S004` | Social studies program
`S005` | Economics program
`S006` | Computers program
`S007` | Vocational / career program
`S008` | Support guidance / advocacy program
`S009` | Study skills program
`S010` | After-school tutoring program
`S011` | Summer school program
`S012` | 4-year-old program
`S013` | 3-year-old program
`S014` | Extended kindergarten program (beyond half day)
`S015` | Health / dental / eye care service
`S016` | Extended instruction time program
`S017` | Supplemental outside provider instructional services

## TestAccommodation

### Scheduling

`S182` | Additional supervised test breaks for English Learners within testing day or following each section provided that test section is completed within a testing day
`S183` | Frequent breaks
`S184` | Multi-day administration
`S185` | Multiple test sessions
`S186` | Scheduled extended time
`S187` | Student-requested extended time
`S188` | Supervised test breaks
`S189` | Terminate session when student indicates they have completed all items they can
`S190` | Test administered at best time of day for student
`S191` | Untimed

### Setting

`S192` | Carrel
`S193` | Facing examiner / proctor
`S194` | Front of room near examiner / proctor
`S195` | Hospital / home testing
`S196` | Individual
`S197` | Resource room
`S198` | Separate room
`S199` | Separate room with other English Learners under supervision of district employee
`S200` | Small group
`S201` | Small group in separate room
`S202` | Special ed classroom
`S203` | Special furniture
`S204` | Special lighting
`S205` | Specialized setting

### Student Equipment and Technology

`S135` | Adjustable swivel arm
`S136` | Adjustable table height
`S137` | Audio cassette player / tape recorder
`S138` | Colored lenses
`S139` | Enlarged keyboard
`S140` | Enlarged monitor view / screen display
`S141` | Laptop / computer
`S142` | Magnification device
`S143` | Physical supports
`S144` | Technological aid
`S145` | Track ball
`S146` | Video cassette player

### Test Administration

`S105` | Amplification equipment
`S106` | Audiotape or CD
`S107` | Braille Reader
`S108` | Clarify directions
`S109` | Computer administration
`S110` | Cueing
`S111` | Examiner familiar with / to student
`S112` | Examiner fluent in sign language
`S113` | Font enlarged beyond large print version requirements
`S114` | Foreign language interpreter
`S115` | Foreign language interpreter for instructions, ask questions
`S116` | Format
`S117` | Graph paper
`S118` | Manipulatives for math items
`S119` | Mask portion of answer booklet
`S120` | Mask portion of test booklet
`S121` | Paraphrasing
`S122` | Provide reading windows
`S123` | Provide written directions on separate sheet / transparency
`S124` | Repeat / reword / clarify directions
`S125` | Sign language / cued speech interpreter
`S126` | Simplified language
`S127` | Student reads aloud
`S128` | Tactile cues
`S129` | Test administrator reads test directions aloud
`S130` | Test administrator reads test questions aloud
`S131` | Unlisted accommodation or modification
`S132` | Video cassette
`S133` | Visual cues
`S134` | Word processor

### Test Material

`S101` | Braille
`S102` | Foreign Language
`S103` | Large print booklet
`S104` | Manually coded English or American sign Language to present test questions

### Test Response

`S147` | Access to translation glossaries / word lists (english-to-primary language). Shall not include definitions of formulas
`S148` | Arithmetic table (math or science)
`S149` | Assistive device that does interfere with independent work of the student
`S150` | Assistive device that does not interfere with independent work of the student
`S151` | Augmentative communication device
`S152` | Braille writer
`S153` | Braille writer, no thesaurus, spell-or grammar-checker
`S154` | Brailler ruler
`S155` | Calculator (math or science)
`S156` | Cassette player / tape recorder
`S157` | Computer administration
`S158` | Cranmer abacus
`S159` | Dictated oral response to proctor / transcriber
`S160` | Dictionary
`S161` | Essay responses dictated to a scribe orally, in manually coded English or in American Sign Language; and scribe provides spelling, grammar and language conventions
`S162` | Grammar checker
`S163` | Large face calculator
`S164` | Larger diameter pencil
`S165` | Mask portion of answer folder
`S166` | Math manipulatives (math or science)
`S167` | Modified specil grip pencil
`S168` | Qualified foreign language interpreter for LEP student
`S169` | Response dictated in American Sign Language / Manually coded English
`S170` | Separate additional continuation pages for writing tasks
`S171` | Sign responses to sign language interpreter
`S172` | Speech recognition system
`S173` | Spell-checker
`S174` | Student marked in test booklet
`S175` | Talking calculator
`S176` | Test administrator marked / wrote test at student's direction due to student handwriting issues
`S177` | Thesaurus
`S178` | Translation dictionary for LEP student
`S179` | Verbalized problem-solving
`S180` | Word processor / typewriter / computer with thesaurus / spell-checker / grammar-checker enabled on essay responses writing portion of test
`S181` | Word processor / typewriter / computer with thesaurus / spell-checker / grammar-checker turned off