{
    // vm$Comment=
    /*
     * This file is used by the com.symantec.itools.lang.Platform
     * class to do its "magic" for abstracting System property info
     * that is related to the platform.
     *
     * You are free (expected actualy) to add information to this
     * file when you encounter a platform that is unknown.
     * Symantec will happily take your changes back (we might
     * modify the keys though) and incorporate them into future
     * releases.  This way everyone can benefit.
     */

    /*
     * This section abstracts the Java Virtual Machine (JVM).
     */
    vm=
    {
        // vendors$Comment=
        /*
         * This section abstracts the JVM Vendors (java.vendor).
         * The vendor key is used many places (each section
         * is further broken down into vendor areas).
         *
         * If you want to add new vendors please follow the
         * convention of using the short name (Symantec)
         * or the initials (SGI).
         */
        vendors=
        {
            vendors=(Apple,IBM,Microsoft,Netscape,SGI,Sun,Symantec,DEC,HP,LinuxPort,Compaq);
            Apple=("Apple Computer, Inc.");
            IBM=(IBM,IBM Corporation);
            Microsoft=(Microsoft Corp.);
            Netscape=(Netscape Communications Corporation);
            SGI=(Silicon Graphics Inc.);
            Sun=(Sun Microsystems Inc.);
            Symantec=(Symantec Corporation);
            DEC=(Digital Equipment Corp.);
            HP=(Hewlett Packard Co.);
            LinuxPort=("Sun Microsystems Inc., ported by Randy Chapman and Steve Byrne","Sun Microsystems Inc., ported by Sergey Nikitin (1997)");
            Compaq=(Compaq Computer Corp.);
        };

        // versions$Comment=
        /*
         * This section abstracts the JVM Versions (java.version).
         * Only major.minor releases (1.1, 1.2, etc) are supported
         * because not all vendors report the maintainance release
         * numbers (!).
         *
         * If you want to add new versions please follow the convention
         * of major-minor as is done below.
         */
        versions=
        {
            versions=(1-1,1-2);
            1-1.Symantec=(11,1.1.5,1.1.7,1.1.7A,1.1.7B);
            1-1.Sun=(1.1_Final,1.1.1,1.1.2,1.1.3,1.1.4,1.1.5,1.1.6,1.1.7,1.1.7B);
            1-1.Netscape=(1.1.5);
            1-1.DEC=(1.1.6-2);
            1-1.HP=(HP-UX Java C.01.13.04,HP-UX Java C.01.15.04 07/07/98,HP-UX Java C.01.16.00 98/10/05);
            1-1.LinuxPort=(1.1.6,JDK_1.1.6_for_Linux_maintained_by_M_and_S_Group_sergey@m-and-s.com:05/19/98-13:38);
            1-1.Microsoft=(1.1);
            1-1.IBM=(1.1.6);
            1-1.Compaq=(1.1.7-beta1);
            1-2.Sun=(1.2fcs,1.2.1,1.2.2);
            1-2.Symantec=(1.2.1J.SymcA,1.2.2U.SymcB,1.2.2.Symc);
            1-1.Apple=(1.1.6);
        };
    };

    // os$Comment=
    /*
     * This section abstracts the Operating System (OS).
     */
    os=
    {
        // names$Comment=
        /*
         * This section abstracts the OS Name (os.name).
         *
         * If you want to add new names please follow the convention
         * of supplying a name that contains no spaces (eg: BEOS for
         * the Be OS).
         */
        names=
        {
            names=(WindowsNT,Windows95,Macintosh,Solaris,Irix,DigitalUnix,AIX,HPUX,Linux);
            WindowsNT.Symantec=(Windows NT);
            WindowsNT.Sun=(Windows NT);
            WindowsNT.Netscape=(Windows NT);
            WindowsNT.Microsoft=(Windows NT);
            WindowsNT.IBM=(Windows NT);
            Windows95.Symantec=(Windows 95);
            DigitalUnix.DEC=(Digital UNIX);
            DigitalUnix.Compaq=(Compaq's Digital UNIX);
            Irix.SGI=(Irix);
            AIX.IBM=(AIX);
            HPUX.HP=(HP-UX);
            Linux.LinuxPort=(Linux);
            Solaris.Sun=(Solaris);
            Macintosh.Apple=(Mac OS);
        };

        // versions$Comment=
        /*
         * This section abstracts the OS Version (os.version).
         *
         * If you want to add new versions please follow the convention
         * of major.minor as is done below.
         */
        versions=
        {
            WindowsNT=(4.0,5.0);
            WindowsNT.4.0.Symantec=(4.0);
            WindowsNT.4.0.Sun=(4.0);
            WindowsNT.4.0.Netscape=(4.0);
            WindowsNT.4.0.Microsoft=(4.0);
            WindowsNT.4.0.IBM=(4.0 build 1381 Service Pack 3);
            WindowsNT.5.0.Symantec=(5.0);
            WindowsNT.5.0.Sun=(5.0);
            Windows95=(4.0,4.10);
            Windows95.4.0.Symantec=(4.0);
            Windows95.4.0.Sun=(4.0);
            Windows95.4.10.Symantec=(4.10);
            Windows95.4.10.Sun=(4.10);
            Irix=(6.2);
            Irix.SGI.6.2=(6.2);
            DigitalUnix=(4.0);
            DigitalUnix.4.0.DEC=(V4.0);
            DigitalUnix.4.0.Compaq=(V4.0);
            Solaris=(2);
            Solaris.2.Sun=(2.x);
            AIX=(4.1,4.2);
            AIX.4.1.IBM=(4.1);
            AIX.4.2.IBM=(4.2);
            HPUX=(A.10.20,B.11.00,B.10.20);
            HPUX.A.10.20.HP=(A.10.20);
            HPUX.B.10.20.HP=(B.10.20);
            HPUX.B.11.00.HP=(B.11.00);
            Linux=(2.0.32,2.0.34);
            Linux.2.0.32.LinuxPort=(2.0.32);
            Linux.2.0.34.LinuxPort=(2.0.34);
            Macintosh=(8.1);
            Macintosh.8.1.Apple=(8.1);
        };

        // types$Comment=
        /*
         * This section provides the abstraction for the OS family.
         * There is no System property for this - but it is very
         * usefull!
         *
         * If you want to add new types please follow the convention
         * of supplying a name that has no spaces.
         */
        types=
        {
            types=(MacOS,Windows,Unix);
            MacOS=(Macintosh);
            Windows=(WindowsNT,Windows95);
            Unix=(Solaris,Irix,DigitalUnix,AIX,HPUX,Linux);
        };
    };

    // machine$Comment=
    /*
     * This section abstracts the architecture (os.arch)
     *
     * If you want to add new architectures please follow the convention
     * of using no spaces in the name.
     */
    machine=
    {
        machines=(MIPS,x86,ALPHA,SPARC,PA-RISC,PowerPC);
        MIPS.SGI=(mips);
        x86.Symantec=(x86);
        x86.Sun=(x86);
        x86.LinuxPort=(x86);
        x86.Netscape=(x86);
        x86.Microsoft=(x86);
        x86.IBM=(x86);
        ALPHA.DEC=(alpha);
        ALPHA.Compaq=(alpha);
        SPARC.Sun=(sparc);
        PA-RISC.HP=(PA-RISC);
        PowerPC.IBM=(POWER_PC);
        PowerPC.Apple=(PowerPC);
    };
}

############################## Raw Data ######################################
# java.vendor
# java.version
# os.name
# os.version
# os.arch
##############################
# Compaq Computer Corp.
# 1.1.7-beta1
# Compaq's Digital UNIX
# V4.0
# alpha
##############################
# Hewlett Packard Co.
# HP-UX Java C.01.15.04 07/07/98
# HP-UX
# B.11.00
# PA-RISC
##############################
# IBM Corporation
# 1.1.6
# AIX
# 4.2
# POWER_PC
##############################
# Sun Microsystems Inc.
# 1.1.5
# Solaris
# 2.x
# sparc
##############################
# Apple Computer, Inc.
# 1.1.6
# Mac OS
# 8.1
# PowerPC
##############################
