This document records the results of running implementations against the CC/PP Test Suite which was designed to validate the CC/PP: Structure and Vocabularies specification.
The following profiles are produced by commercial implementations and pass the profile validity tests.
Although the behavior of a consumer when accepting and extracting information from an invalid profile is beyond the scope of this test suite, we show below the results of various implementations when consuming the sample invalid profiles. These results are indicated by (A) and (B).
General area of feature | Consumer Implementations | |||||
ID | Specific area of feature | Sample valid profile(s) | Sample invalid profile(s) | JSR188 Reference Implementation | Sun ONE Portal Server, Mobile Access | IBM UCP |
RDF/XML | ||||||
1 | MUST be valid RDF serialized in XML | 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 11 | passed | passed | passed | |
2 | MUST use valid syntax for namespace declarations | 01 | passed | passed | passed | |
CC/PP Profile Components | ||||||
3 | profile MUST contain one or more components | 01 | 32 | passed | passed | passed |
4 | each component MUST contain one or more attributes | 01 | 31 | passed | passed | passed |
5 | component name MAY be in rdf:about or rdf:ID attributes | 12, 13 | passed | passed | passed | |
6 | components MUST be indicated using a ccpp:component property where the namespace used to qualify component is the CC/PP namespace or a UAProf namespace | 14 | 30 | passed | (B) | passed |
7 | component names, component types, and attribute names must all refer to different URIs within a profile | 01 | 34 | passed | (A) | passed |
8 | component type given as an element name and in an rdf:type element MUST be consistent | 35 | 36 | passed | (B) | passed |
CC/PP Profile Defaults | ||||||
9 | default references MUST be valid URLs | 15, 16 | passed | passed | passed | |
10 | defaults MAY be written as ccpp:defaults or ccpp:Defaults | 15, 16 | passed | passed | passed | |
11 | defaults MUST be indicated using a ccpp:defaults or ccpp:Defaults property where the namespace used to qualify defaults or Defaults is the CC/PP namespace or a UAProf namespace | 17 | 33 | passed | (B) | passed |
12 | MAY contain both a default value and a directly applied value, directly applied value takes precedence | 18 | passed | passed | passed | |
13 | MAY contain inline defaults | 37 | passed | passed | passed | |
14 | MUST NOT contain both inline and referenced defaults | 37 | 38 | passed | (B) | passed |
15 | MAY reference a default document which does not have an rdf:type | 37 | passed | passed | passed | |
CC/PP Profile Attributes | ||||||
16 | MAY contain attributes that are sets of values (Bags) | 23, 24 | passed | passed | passed | |
17 | MAY contain attributes that are sequences of values (Seq) | 25, 26 | passed | passed | passed | |
18 | MAY contain attributes that are Text values | 27 | passed | passed | passed | |
19 | MAY contain attributes that are Integer numbers | 28 | passed | passed | passed | |
20 | MAY contain attributes that are Rational numbers | 29 | passed | passed | passed | |
21 | MUST NOT contain multiple values for the same attribute in the same component | 01 | passed | passed | passed | |
22 | MAY contain attributes of the same name in more than one component | 40 | 41 | passed | (C) | passed |
23 | MAY use multiple namespaces for attributes | 19, 20, 21, 22 | passed | passed | (C) | |
Interoperability | ||||||
24 | Openwave SDK 6.2 | passed | passed | (C) | ||
25 | Panasonic GD67 0.4 (D) | passed | passed | passed | ||
26 | Panasonic GD67 R1 (D) | passed | passed | passed | ||
27 | Panasonic GD87 R1 (D) | passed | passed | passed | ||
28 | Panasonic GD88 R1 (D) | passed | passed | passed |
passed: indicates that the implementation succesfully accepted and extracted the appropriate information from the valid profile(s) and indicated invalidity on the invalid profile(s)
(A): indicates that the consumer implementation succesfully accepted and extracted the appropriate information from the valid profile(s) but failed on the invalid profile(s)
(B): indicates that the consumer implementation succesfully accepted and extracted the appropriate information from the valid profile(s) but also accepted and extracted information from invalid profile(s) without an indication of invalidity
(C): indicates that the consumer implementation succesfully accepted but only partially extracted the appropriate information from the valid profile(s)
(D): these producer implementation profiles reference a vocabulary schema that is slightly inconsistent (the WmlScriptVersion and WmlVersion attributes are defined with inconsistent compositions) but the consumers accepted and extracted information from the profiles appropriately