# Chapter 6 Test Suite

Last modified: 2003-07-09

## Legend

- [Level] A: MUST
- [Level] AA: SHOULD
- [Level] AAA: MAY
- [Test] (green): Passed by two or more implementations
- [Test] (yellow): Passed by one implementation
- [Test] (red): Passed by no implementation
- [Test] (white): No or partial results
- [Implementation] (full): Passed all level A tests for this test suite
- [Implementation] Pass: Passed test
- [Implementation] Fail: Failed test
- [Implementation] N/A: Not tested

## Implementation Chart

### type property

6-002-1 | Level: A | Schema types defined in XForms: primitive | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6-002-2 | Level: A | Schema types defined in XForms: derived | X-Smiles: Pass | Novell: N/A | FormsPlayer: Pass
6-002-3 | Level: A | Schema types defined in XForms: defined in xforms | X-Smiles: Pass | Novell: N/A | FormsPlayer: Pass

### readonly property

6.1.2-1 | Level: A | be false if no calculate property is present | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.1.2-2 | Level: A | be true if a calculate property is present | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.1.2-3 | Level: A | support any legal XPath boolean expression that is convertible to boolean | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.1.2-4 | Level: A | be dynamic (updated when dependencies change) | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.1.2-5 | Level: A | If an ancestor of a node is readonly, the node MUST be readonly as well | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass

### required property

6.1.3-1 | Level: A | Default value MUST be false | X-Smiles: Pass | Novell: Fail | FormsPlayer: Pass
6.1.3-2 | Level: A | required MUST support any legal XPath boolean expression that is convertible to boolean | X-Smiles: Pass | Novell: Fail | FormsPlayer: Pass
6.1.3-3 | Level: A | The required property of a node MUST be dynamic (updated when dependencies change) | X-Smiles: Pass | Novell: Fail | FormsPlayer: Pass
6.1.3-4 | Level: A | Ancestor nodes MUST have no effect on whether a node is required | X-Smiles: Pass | Novell: Fail | FormsPlayer: Pass
6.1.3-5 | Level: A | A control bound to a required node with xsi:nil=true MUST evaluate as invalid during revalidation *regardless* of the element value | X-Smiles: Pass | Novell: Fail | FormsPlayer: Pass
6.1.3-6 | Level: A | A control bound to a required node with a value that is not convertible to a non-empty string MUST evaluate as invalid during revalidation | X-Smiles: Pass | Novell: Fail | FormsPlayer: Pass
6.1.3-7 | Level: AAA | Controls bound to required nodes MAY indicate that the control is required | X-Smiles: Pass | Novell: Fail | FormsPlayer: Pass
6.1.3-8 | Level: AAA | Controls bound to required, irrelevant nodes MAY indicate that the control would be required if made relevant | X-Smiles: N/A | Novell: Fail | FormsPlayer: Pass
6.1.3-9 | Level: AAA | Controls bound to non-required nodes MAY indicate that the control is optional | X-Smiles: N/A | Novell: Fail | FormsPlayer: Pass
6.1.3-10 | Level: AAA | Controls bound to required nodes MAY provide immediate feedback including limited navigation | X-Smiles: N/A | Novell: Fail | FormsPlayer: Pass

### relevant property

6.1.4-1 | Level: A | Default value MUST be true. | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.1.4-2 | Level: A | relevant MUST support any legal XPath boolean expression that is convertible to boolean | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.1.4-3 | Level: A | The relevant property of a node MUST be dynamic (updated when dependencies change) | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.1.4-4 | Level: A | If an ancestor of a node is relevant, the node MUST be relevant as well | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.1.4-5 | Level: A | When true, associated form controls MUST be made available | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.1.4-6 | Level: AA | When false, associated form controls SHOULD be made unavailable, removed from navigation order, and not allowed focus | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass

### Schema Constraints

6.2 | Level: A | xsi:schemaLocation and xsi:noNamespaceSchemaLocation attributes in the instance MUST be ignored | X-Smiles: Pass | Novell: Fail | FormsPlayer: Pass

### Atomic Datatype

6.2.1-1 | Level: A | XML Schema facets MUST be associated with a model item using an XML Schema, xsi:type or the type attribute in a bind element | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass
6.2.1-2 | Level: A | If multiple type constraints apply to a model item, only the first, in document order, MUST be applied | X-Smiles: Pass | Novell: Pass | FormsPlayer: Pass

Thierry Michel (tmichel@w3.org), W3C staff contact for XForms