<!-- Fragment document type declaration subset:
Arbortext, Inc., 1988-2008, v.4002
<!DOCTYPE SOLBOOK PUBLIC "-//Sun Microsystems//DTD SolBook 3.1//EN" [
<!ENTITY % TCKentities SYSTEM "TCKentities.ent">
%TCKentities;
]>
-->
<?Pub UDT _bookmark _target>
<?Pub CX solbook(book(title()subtitle()bookinfo()chapter()>
<sect2 id="GBFSC"><title>Rules for &TechnologyFullName; Products</title>
<para>The following rules apply for each version of an operating system, software
component, and hardware platform Documented as supporting the Product:</para>
<orderedlist>
<listitem><para>The Product must be able to satisfy all applicable compatibility
requirements, including passing all Conformance Tests, in every Product Configuration
and in every combination of Product Configurations, except only as specifically
exempted by these Rules.</para><para>For example, if a Product provides distinct
Operating Modes to optimize performance, then that Product must satisfy all
applicable compatibility requirements for a Product in each Product Configuration,
and combination of Product Configurations, of those Operating Modes.</para>
<orderedlist>
<listitem><para>If an Operating Mode controls a Resource necessary for the
basic execution of the Test Suite, testing may always use a Product Configuration
of that Operating Mode providing that Resource, even if other Product Configurations
do not provide that Resource. Notwithstanding such exceptions, each Product
must have at least one set of Product Configurations of such Operating Modes
that is able to pass all the Conformance Tests.</para><para>For example, a
Product with an Operating Mode that controls a security policy (i.e., Security
Resource) which has one or more Product Configurations that cause Conformance
Tests to fail may be tested using a Product Configuration that allows all
Conformance Tests to pass.</para></listitem>
<listitem><para>A Product Configuration of an Operating Mode that causes the
Product to report only version, usage, or diagnostic information is exempted
from these compatibility rules.</para></listitem>
<listitem><para>A Product may contain an Operating Mode that provides compatibility
with previous versions of the Product that would not otherwise meet these
compatibility requirements. The previous versions of the Product must have
been shipped in a final form to customers before Jan. 1, 2001. At least the
default Product Configuration of this Operating Mode must meet these compatibility
requirements without invoking this rule; testing may always use such a Product
Configuration. This Operating Mode must affect no smaller unit of execution
than an entire Application. Any Product Configuration that invokes this rule
must be clearly Documented as not meeting the requirements of the Specifications.
</para></listitem>
<listitem><para>A Product may contain an Operating Mode that selects the Edition
with which it is compatible. The Product must meet the compatibility requirements
for the corresponding Edition for all Product Configurations of this Operating
Mode. This Operating Mode must affect no smaller unit of execution than an
entire Application.</para></listitem>
</orderedlist>
</listitem>
<listitem><para>Some Compatibility Tests may have properties that may be changed.
Properties that can be changed are identified in the TCK configuration interview.
Apart from changing such properties and other allowed modifications described
in this User's Guide (if any), no source or binary code for a Compatibility
Test may be altered in any way without prior written permission. Any such
allowed alterations to the Compatibility Tests would be posted to the Java
Licensee Engineering web site and apply to all licensees.</para></listitem>
<listitem><para>The testing tools supplied as part of the Test Suite or as
updated by the Maintenance Lead must be used to certify compliance.</para>
</listitem>
<listitem><para>The Exclude List associated with the Test Suite cannot be
modified.</para></listitem>
<listitem><para>The Maintenance Lead can define exceptions to these Rules.
Such exceptions would be made available to and apply to all licensees.</para>
</listitem>
<listitem><para>All hardware and software component additions, deletions,
and modifications to a Documented supporting hardware/software platform, that
are not part of the Product but required for the Product to satisfy the compatibility
requirements, must be Documented and available to users of the Product.</para>
<para>For example, if a patch to a particular version of a supporting operating
system is required for the Product to pass the Compatibility Tests, that patch
must be Documented and available to users of the Product.</para></listitem>
<listitem><para>The Product m<?Pub Caret>ust contain the full set of public
and protected classes and interfaces for all the Libraries. Those classes
and interfaces must contain exactly the set of public and protected methods,
constructors, and fields defined by the Specifications for those Libraries.
No subsetting, supersetting, or modifications of the public and protected
API of the Libraries are allowed except only as specifically exempted by these
Rules.</para></listitem>
<listitem><para>Except for tests specifically required by this TCK to be rebuilt
(if any), the binary Compatibility Tests supplied as part of the Test Suite
or as updated by the Maintenance Lead must be used to certify compliance.</para>
</listitem>
<listitem><para>The functional programmatic behavior of any binary class or
interface must be that defined by the Specifications.</para></listitem>
</orderedlist>
</sect2>
<?Pub *0000005641 0>
