HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 1766 Details

Help Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges

This page provides all information on Problem Report 1766.


Report 1766 Actions


    Problem Report Number 1766
    Submitter's Classification Minor System Fault
    State Resolved
    Resolution Permanent Interpretation (PIN)
    Problem Resolution ID PIN.X.0212
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1998-10-05 08:00
    Product Standard Window System Application Interface V2
    Certification Program The Open Brand certification program
    Test Suite VSW version 5.0.1
    Test Identification Xlib14/XDestroyIC 1
    Specification Window Management (X11R5): Xlib - C Language Binding
    Location in Spec See Problem Text
    Problem Summary PIN4W.00025 This request claims that not supporting input contexts in the C locale is acceptable IUT behavior.
    Problem Text
    We have previously been refused a waiver request for this failure (See PG4W.00094)
    We would like to appeal against this decision and request a 14 day review
    of this refusal.

    The following is an extract from the consultants' review of the original request ...

    "IMs were designed to allow application developers to create
    internationalized applications. An application that uses IMs is
    designed to be used in a variety of locales.

    We believe that an IUT which does not support IMs in the C locale
    is likely to be incapable of running internationalized programs."


    We tend to agree with the consultants' response and the final
    statement seems to be reasonable enough on the surface. However,
    the reality of the situation is that there are many internationalised
    applications which run fine on our platform and the fact that we
    cannot create an IC for the C locale does not appear to have any
    significant impact.

    Test Output
    TEST CASE: XDestroyIC

    TEST PURPOSE #1
    Assertion XDestroyIC-1.(C)
    If the implementation is X11R5 or later: A call to
    XDestroyIC shall destroy the input context, ic, to the input
    method server.
    METH: There is not a good way to test XDestroyIC. We rely on capturing any
    METH: errors from the server during calls to XDestroyIC. Loop through all
    METH: the input method styles for all the locales, creating and destroying
    METH: Input Contexts.
    REPORT: Unable to create input context for locale, C
    1 FAIL

    TEST CASE: XGetICValues

    TEST PURPOSE #1
    Assertion XGetICValues-1.(C)
    If the implementation is X11R5 or later: A call to
    XGetICValues shall fetch the values specified by ic_names
    into the variable ic_val associated with the input context,
    ic. XICValues returns NULL if no error occured, otherwise it
    returns a pointer to the first argument that could not be
    set.
    METH: For all locales, create an input method and for all supported styles
    METH: create an input context, then fetch the general ic values.
    REPORT: Unable to create input context for locale, C
    1 FAIL

    TEST PURPOSE #2
    Assertion XGetICValues-2.(C)
    If the implementation is X11R5 or later: A call to
    XGetICValues shallfetch the values specified by ic_names
    into the variable ic_val associated with the input context,
    ic. XICValues returns NULL if no error occured, otherwise it
    returns a pointer to the first argument that could not be
    set.
    METH: For all locales, create an input method and for all supported styles
    METH: create an input context, then fetch the preedit ic values.
    REPORT: Unable to create input context for locale, C
    2 FAIL

    TEST PURPOSE #3
    Assertion XGetICValues-3.(C)
    If the implementation is X11R5 or later: A call to
    XGetICValues shall fetch the values specified by ic_names
    into the variable ic_val associated with the input context,
    ic. XICValues returns NULL if no error occured, otherwise it
    returns a pointer to the first argument that could not be
    set.
    METH: For all locales, create an input method and for all supported styles
    METH: create an input context, then fetch the status ic values.
    REPORT: Unable to create input context for locale, C
    3 FAIL

    TEST CASE: XIMOfIC

    TEST PURPOSE #1
    Assertion XIMOfIC-1.(C)
    If the implementation is X11R5 or later: A call to XIMOfIC
    shall return the input method, im of the input context, ic
    which was used to create the ic.
    METH: Loop through all the input method styles for all the locales, create an
    METH: input context, call XIMOfIC and check to see if this is the same input
    METH: method that was used for creating the input context.
    REPORT: Unable to create input context for locale, C
    1 FAIL

    TEST CASE: XmbLookupString

    TEST PURPOSE #1
    Assertion XmbLookupString-1.(C)
    If the implementation is X11R5 or later: A call to
    XmbLookupString shall return the string from the input
    method specified in the buffer_return argument. If no string
    is returned the buffer_return argument shall remain
    unchanged. The KeySym into which the KeyCode from the event
    was mapped shall be returned in the keysym_return argument
    if it is non-NULL and the status_return argument indicates
    that a KeySym was returned. If both a string and a KeySym
    are returned, the KeySym value does not necessarily
    correspond to the string returned. XmbLookupString returns
    the length of the string in bytes. The text is returned in
    the encoding of the locale bound to the input method of the
    specified input context, ic.
    METH: For all locales, create an input method and
    METH: for all supported styles create an input context,
    METH: Obtain the keycode corresponding to the keysym XK_b using XKeysymToKeycode.
    METH: Obtain the string and keysym bound to that keycode using XmbLookupString.
    METH: Verify that the returned string is correct.
    METH: Obtain the string and keysym bound to that keycode using XmbLookupString with state = S
    hiftMask.
    METH: Verify that the returned string is correct.
    REPORT: Unable to create input context for locale, C
    1 FAIL

    TEST CASE: XSetICValues

    TEST PURPOSE #1
    Assertion XSetICValues-1.(C)
    If the implementation is X11R5 or later: A call to
    XSetICValues shall set the values specified by ic_names into
    the variable ic_val associated with the input context, ic.
    XICValues returns NULL if no error occured, otherwise it
    returns a pointer to the first argument that could not be
    set.
    METH: For all locales, create an input method and for all supported styles
    METH: create an input context, for all generic ic values set the value, then
    METH: get the value to see if was set correctly.
    REPORT: Unable to create input context for locale, C
    1 FAIL

    TEST PURPOSE #2
    Assertion XSetICValues-2.(C)
    If the implementation is X11R5 or later: A call to
    XSetICValues shall set the values specified by ic_names into
    the variable ic_val associated with the input context, ic.
    XICValues returns NULL if no error occured, otherwise it
    returns a pointer to the first argument that could not be
    set.
    METH: For all locales, create an input method and for all supported styles
    METH: create an input context, for all the preedit ic values set the value, then
    METH: get the value to see if was set correctly.
    REPORT: Unable to create input context for locale, C
    2 FAIL

    TEST PURPOSE #3
    Assertion XSetICValues-3.(C)
    If the implementation is X11R5 or later: A call to
    XSetICValues shall set the values specified by ic_names into
    the variable ic_val associated with the input context, ic.
    XICValues returns NULL if no error occured, otherwise it
    returns a pointer to the first argument that could not be
    set.
    METH: For all locales, create an input method and for all supported styles
    METH: create an input context, for all the status ic values set the value, then
    METH: get the value to see if was set correctly.
    REPORT: Unable to create input context for locale, C
    3 FAIL

    TEST PURPOSE #2
    Assertion XVaCreateNestedList-2.(C)
    If the implementation is X11R5 or later: A call to
    XVaCreateNestedList shall build and return a pair wise list
    of parameters from an variable length list.
    METH: For all locales, build a variable list of one element,
    METH: verify that a nested list is returned.
    TEST: XVaCreateNestedList succeeds with one member
    REPORT: Unable to create input context for locale, C
    2 FAIL

    TEST PURPOSE #3
    Assertion XVaCreateNestedList-3.(C)
    If the implementation is X11R5 or later: A call to
    XVaCreateNestedList shall build and return a list of
    parameters from an variable length list.
    METH: For all locales, build a variable list of two elements,
    METH: verify that a nested list is returned.
    TEST: XVaCreateNestedList succeeds with two members
    REPORT: Unable to create input context for locale, C
    3 FAIL

    TEST PURPOSE #4
    Assertion XVaCreateNestedList-4.(C)
    If the implementation is X11R5 or later: A call to
    XVaCreateNestedList shall build and return a list of
    parameters from an variable length list.
    METH: For all locales, build a variable list of one element, and use this
    METH: argument as a parameter to a second nested list, verify that a nested
    METH: list is returned.
    TEST: XVaCreateNestedList succeeds with a VaNestedList as parameter
    REPORT: Unable to create input context for locale, C
    4 FAIL

    TEST CASE: XwcLookupString

    TEST PURPOSE #1
    Assertion XwcLookupString-1.(C)
    If the implementation is X11R5 or later: A call to
    XwcLookupString shall return the string from the input
    method specified in the buffer_return argument. If no string
    is returned the buffer_return argument shall remain
    unchanged. The KeySym into which the KeyCode from the event
    was mapped shall be returned in the keysym_return argument
    if it is non-NULL and the status_return argument indicates
    that a KeySym was returned. If both a string and a KeySym
    are returned, the KeySym value does not necessarily
    correspond to the string returned. XwcLookupString returns
    the length of the string in bytes. The text is returned in
    the encoding of the locale bound to the input method of the
    specified input context, ic.
    METH: For all locales, create an input method and
    METH: for all supported styles create an input context,
    METH: Obtain the keycode corresponding to the keysym XK_b using XKeysymToKeycode.
    METH: Obtain the string and keysym bound to that keycode using XwcLookupString.
    METH: Verify that the returned string is correct.
    METH: Obtain the string and keysym bound to that keycode using XwcLookupString with state = S
    hiftMask.
    METH: Verify that the returned string is correct.
    REPORT: Unable to create input context for locale, C
    1 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    Our opinion remains the same.

    We recommend this request be refused.

    The submitter's statement that Input Contexts (ICs) have little
    use in the C locale is correct. In fact, Input Methods (IMs),
    which require ICs before they may be used, provide no benefit in
    the C locale.

    But this is not the issue here.

    IMs were designed to allow application developers to create
    internationalized applications. An application that uses IMs is
    designed to be used in a variety of locales.

    We believe that an IUT which does not support IMs in the C locale
    is likely to be incapable of running internationalized programs.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    The customer has appealed against the refusal, this is therefore
    being sent for a 14 day anonymous review.

    Review Type Expert Group Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    The current X specifications are silent on this issue. There is no
    requirement for an Input Method to have to support the C locale or even
    for an X application to have to support the C locale. The members do
    not agree with the assertion by the consultant that an "IUT which does
    not support Input Methods in the C locale is likely to be incapable of
    running internationalized programs"

    We therefore recommend that a waiver be granted.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Permanent Interpretation (PIN)
    Review Conclusion
    A Permanent Interpretation is granted.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority