FAQ


  1. What is IIIM?
     
     Internet/Intranet Input Method (IIIM) is a distributed Input
     Method solution that provides Input support for Java & X11 clients
     via Internet/Intranet.
 
  2. Can you provide a list of acronyms with definitions?
     
      - Internet/Intranet Input Method Framework (IIIMF) 
        Server framework(IIIMSF) Server Component which supports pluggable Language Engines  
      - Client framework(IIIMCF) Client component with multiscript support and 
	downloadable GUI objects from Server
      - IIIM Protocol (IIIMP) Protocol to interact between Server & Client components
      - IIIM X11 client framework (IIIMXCF)
      - IIIM Java2 client framework (IIIMJCF), 
      - X/Window Input Method (XIM)
      - Service Provider Interface(SPI) interface which allows Language Engines or
        Input method support that can be plugged in 
      - Light Weight Engine(LWE)
      - Primary Composition Engine(PCE) a syntax based Light Weight Engine to support all scripts.
 
  3. What is IIIMP & IIIMF?
    
     Internet/Intranet Input Method Framework (IIIMF) consists
     of Server Framework (IIIMSF), Client Framework (IIIMCF) and
     IIIM Protocol (IIIMP).
     
     IIIMCF enables an IIIM client to access the IMEs resident on the
     IIIM server host via IIIM protocol (IIIMP). It is designed to be
     independent of the operating system the client or server  
     is running on. IIIMSF allows IME providers to leverage their existing
     IMEs to operate under the distributed input method paradigm.
     IIIMF offers Input Method Services across platform boundaries
     via platform independent Distributed Input Method Protocol (IIIMP). 
  
  4. How can ISVs or developers use IIIM SDK 1?
     
     IIIM SDK 1 contains an early snapshot of IIIMSF, which has the 
     IIIM Protocol driver for IIIM Protocol Version 1 and Unix
     dependent Server Framework. Both these drivers will become obsolete when IIIM
     SDK 2 is released in the near future.
     
     IIIM SDK 1 is a preview of IIIM SDK 2. All these interfaces are subject
     to change and should only be used for the purposes of evaluating IIIM 
     Protocol Version 1.
 
  5. What will the next the version of IIIM SDK (2) support?
     
     IIIM SDK 2 contains IIIMF source and documents including:
     
      - IIIM Server Framework
      - Client Framework
      - IIIM Protocol Version 2
     
     IIIMCF consists of IIIM Java2 Client Framework and IIIM X11
     Client Framework. Java Client Framework is written as 100% pure Java IM
     for Java2. X11 Client Framework is written in C and uses the X11R6
     Xlib enhancement.
     
     IIIM platform independent Server Framework is written in C++ and
     supports the New Language Engine SPI which allows for plugging in existing Language Engines. 
     IME providers can write an interface module to IMEs using this new SPI. IIIM Unix dependent
     Server Framework that is bundled in this distribution as SDK 1 will become obsolete
     in IIIM SDK 2.
     
     IIIMJCF can be built as is using Javac. It can then be plugged into Java2 installed
     image without having to change Java2. The IIIMXCF requires
     X11R6 source to rebuild Xlib with IIIM Protocol support.
      
  6. How can I get feedback on IIIM to Sun?
     
     You can contact Sun via email or web site.

  7. Which IIIM SDK components can be modified?
     
     SDK2 consists of several interfaces which they must remain
     compatible. The components cannot be modified without the consent of Sun Microsystems.
     The interfaces are:
      - IIIM engine SPI in IIIMSF
      - XSunIM engine SPI in IIIMSF
      - IIIM Protocol
      - IIIMJCF LWE manager syntax
      - IIIMJCF PCE1 syntax.
      - IIIMJCF LWE SPI
      - IIIMJCF GUI object SPI
     
     Any modifications to these interfaces must be approved by
     Sun Microsystems, Inc.

  8. How can I use IIIM SDK?
     
     IME providers can:
      - Port/implement Input Method Engines by using IIIM engine SPI in the
        server.
      - Port/implement Input Method Collaborative Frontend on the
        client side using IIIMJCF SPIs  
      - Port/implement Customized Input Method GUIs by using
        IIIMJCF GUI object SPIs
      - Contribute to IIIM community by providing feedback

     Platform vendors can (in addition to all the above):
      - Port/implement IIIMSF onto existing Windows NT and AIX platforms
      - Port/implement IIIMCF onto existing Java 2 & JavaOS4B platforms

  9. What is the objective of IIIM?
     
     The goal of IIIM is to provide users's and Input Method Service
     Providers with an opportunity to design an Input Method solution that
     can scale from PDA to Internet/Intranet based NC's. This flexible and scalable 
     framework removes the barriers of operating systems, platforms,
     implementation languages and windowing systems.
     Users can access their preferred input method irrespective of the
     operating system/platform they are running on. It also allows Input Method
     Service Providers to supply solutions that provide Input Method needs of
     platforms ranging from small devices to Internet/Intranet NC's without 
     compromising performance, footprint size or functionality.

 10. What kinds of Language Engines will the IIIM SDK provide?
     
     SDK1 and SDK2 do not include any industry quality Language
     Engines on the server side. They do provide an interface to which Language Engines
     can be written. We expect Input Method Vendors to provide
     Language Engines that can be plugged in via SPI interface. 
     IIIMSF in SDK2 provides a sample Language Engine for Japanese which
     will demonstrate the use of the IIIM Language Engine SPI on the server.
     
 11. What are the current commercial products of IIIM from Sun?
      
      - JavaOS for Business designed for Network Computer has
        implemented a subset of IIIMJCF
      - Netra-J/Solaris has implemented a subset of IIIMSF using IIIM SDK 1
      - Java2 supports IIIMP using the IIIMP Adapter

 12. How can I plug in my own Language Engine on the server side?
      
      A Language Engine based on the Language Engine Adaptor Interface 
      library should plug into the IIIM core server.  Locate the build library on UNIX in 
      
      /opt/SUNWiiimf/lib/{script}/{}.so
     
      Configure the server option file to use this
      engine for the script support.

 13. How is Java2's IIIMP client-side adapter architected? What are
      the differences between the JavaOS1.1 implementation and IIIMJCF implementation in
      SDK2?
     
      In functional terms, Java2's IIIMP Client-Side adapter is
      a subset of the JavaOS1.1 implementation. The JavaOS1.1 implementation
      is a subset of IIIMJCF in SDK2.
      
      Java2's IIIMP Client-Side Adapter implementation
      consists of the IIIMP protocol driver only. It fits under
      Java Input Method Framework and interfaces via Input Method Engine SPI
      (which is a private SPI of Java2).
      
      The JavaOS1.1 implementation consists of JavaOS1.x Light Weight Engine,
      an engine switcher for Disconnected Mode, and an IIIMP protocol driver.
      The implementation fits under JavaOS1.x private Input Method Framework.
      Since Java2's IIIMP Client-Side adapter only provides a protocol driver, 
      there is no support for client/server collaborative
      operations similar to those that are available in IIIMJCF in SDK2.

  14. How is Input Method support architected for Java Client in SDK2?
      
      IIIMCF consists of IIIM Java2 Client Framework (IIIMJCF) and is
      capable of providing Input Method support in:
      - full server based operation mode
      - server/client collaborative mode
      - disconnected mode
      by using a syntax rule driven Primary Composition Engine (PCE),
      a Light Weight Engine (LWE), and LWE Manager.
      The manager on the client side is capable of switching and
      stacking among PCE, LWE and the server side Language Engines. It 
      provides a flexible mechanism that adopts to a variety of input
      method needs.  

  15. What is a Lightweight Engine?

      Light Weight Engine (LWE) is an Input Method Engine written in
      Java. LWE resides completely on the client side at run time
      and can be loaded from the server on demand. LWE provides
      Collaborative Input Method support with the server.

  16. What is a cascade adapter?
      
      The cascade adapter is a special interface driver module,
      which dynamically plugs into IIIMP input method server. It
      acts like a bridge between this IIIMP input method server and
      another IIIMP input method server.
 
      While a regular interface driver module is mainly prepared
      for serving a particular language engine, the cascade adaptor does
      not have a direct relationship to any language engine, but
      connects to the other IIIMP input method server as an IIIMP client
      and gets the input method service from that secondary server,
      and returns it to the first input method server which is loading
      the cascade adaptor.
  
  17. How can I test IM SDK 2?

      Testing should be done on component levels as below:
      
      - Testing 100% server based engines.
        Requires an IIIM server based on IIIMSF. Unless the engines
        use functionalities require IIIMP2. The client can be
        Java2, IIIMXCF, or JavaOS commercial products.

      - Testing Collaborative Engines.
        Requires an IIIM server based on IIIMSF, Java2 and IIIMJCF.

      - Testing your standalone but downloadable LWEs.
        Requires an IIIM server based on IIIMSF, Java2 and IIIMJCF.
        Install your LWEs in separate jar format, and place in
        TBD.
      
      - Testing 100% standalone LWEs.
        Does not require any server. Install Java2 and repackage IIIMJCF
        (iiimp.jar) with your LWEs and updated LWE manager rules.
        Run IMFdemo (Java2 Input Method Demo program).
  
         
  18. How is IIIMF installed to work with Java2?
      
      IIIMJCF in SDK2 works well with Java2 Install IIIMF by replacing 
      
      $JDK_HOME/lib/ext/iiimp.jar 
      
      with SDK2's iiimp.jar. This installation can be added to the standard Java IM
      installation process for future installations.
  
  19. What clients are currently supported in IIIM?
      
      Java2 based Java environment and IIIMP supported X11 environment.

  20. How do we specify server options and what options are configurable?
     
      The server side parameters can be configured using a config
      file located in /opt/SUNWiiimf/server.config. The config parameters
      include 1) type of protocol 2) script support 3) choice of engine for
      script support. Other options are TBD.
      On other platforms, options are TBD.

Sun Microsystems, Inc.
Copyright © 1995-2000 Sun Microsystems, Inc.
All Rights Reserved. Terms of Use. Privacy Policy.
inserted by FC2 system