(my apologies for the second email. As I was thinking about
this I realized that my diagrams needed some clearification)
All,
I find natual language in IPP somewhat confusing. Usually,
drawing a picture helps me to clearify the issues. Do the
following diagrams accurately describe the way natural
language is supposed to be used in IPP?
Key:
NL = Natural Language (MOD section 3.1.4.1)
NLO = Natural Language Override (MOD section 4.1.1.2
4.1.2.2)
JNL = Job Natural Language (MOD section 3.2.6.2)
Example 1: Both client and server are English (en)
request = print-job
Client (en) Server (en)
--------+ +--------
| request NL=en | (job 1)
| -----------------> |
| |
| response NL=en |
| <---------------- |
Request = get-jobs
Client (en) Server (en)
--------+ +--------
| request NL=en |
| -----------------> |
| |
| response NL=en |
| <---------------- | (job 1)
Example 2: Client is French (fr) and server is English (en)
request = print-job
Client (fr) Server (en)
--------+ +--------
| request NL=fr |
| -----------------> | (job 1)
| |
| response NL=en |
| JNL=fr |
| <---------------- |
request = get-jobs
Client (fr) Server (en)
--------+ +--------
| request NL=fr |
| -----------------> |
| |
| response NL=en |
| JNL=fr |
| <---------------- | (job 1)
Example 3: Client1 is English (en), client2 is French (fr),
and server is English (en)
request = print-job
Client1 (en) Server (en)
--------+ +--------
| request NL=en |
| -----------------> | (job 1)
| |
| response NL=en |
| <---------------- |
request = get-jobs
Client2 (fr) Server (en)
--------+ +--------
| request NL=fr |
| -----------------> |
| |
| response NL=en |
| JNL=fr |
| NLO=en: for |
| attrs that need |
| it. |
| <---------------- | (job 1)
Example 4: Client is French (fr) and server is English (en).
In addition the client uses NLO=el (Greek) for
requesting-user-name
request = print-job
Client (fr) Server (en)
--------+ +--------
| request NL=fr |
| user name: NLO=el|
| -----------------> | (job 1)
| |
| response NL=en |
| JNL=fr |
| user name: NLO=el|
| <---------------- |
request = get-jobs
Client (fr) Server (en)
--------+ +--------
| request NL=fr |
| -----------------> |
| |
| response NL=en |
| JNL=fr |
| user name: NLO=el|
| <---------------- | (job 1)
Note that all attributes returned are in the JNL language
(French in this case) except the user name (job-originating-
user-name) which is in Greek.
Example 5: Client1 is French (fr) and server is English (en).
In addition the client uses NLO=el (Greek) for
requesting-user-name. Client2 is Greek (el).
Client3 is German (de)
request = print-job
Client1 (fr) Server (en)
--------+ +--------
| request NL=fr |
| user name: NLO=el| (job 1)
| -----------------> |
| |
| response NL=en |
| JNL=fr |
| user name: NLO=el|
| <---------------- |
request = get-jobs
Client2 (el) Server (en)
--------+ +--------
| request NL=el |
| -----------------> |
| |
| response NL=en |
| JNL=el |
| <---------------- | (job 1)
request = get-jobs
Client3 (de) Server (en)
--------+ +--------
| request NL=de |
| -----------------> |
| |
| response NL=en |
| JNL=de |
| user name: NLO=el|
| <---------------- | (job 1)
Note how client2 and client3 differ in their need for NLO.
Example 6: Client is French (fr) and server is English (en)
Request = get-printer-attributes
Client (fr) Server (en)
--------+ +--------
| request NL=fr |
| -----------------> |
| |
| response NL=en |
| <---------------- |
Carl stated in a previous email:
>There is a precedence hierarchy here:
>> 1. Natural Language Override
> 2. Job object's "attributes-natural-language" value
> 3. "attributes-natural-language" operation attribute of the response.
>> 1 overrides 2 and 3, 2 overrides 3.
Stated with regards to my diagrams:
1) all response attributes are returned in the language
specified by the "response NL"
2) Number 1 above is true unless a JNL is being returned
and then all response attributes are returned in the
language specified by the JNL.
3) Number 1 and 2 above are true unless a NLO is used for
a specific attribute.
Does this look correct?
Brian
--
=============================================================
Brian R. Glass Tektronix, Inc
26600 SW Parkway
Color Printing & Imaging Division PO Box 1000
MS 60-368
mailto:Brian.Glass at tek.com Wilsonville, OR 97070-1000
http://www.tek.com/Color_Printers (503) 685-2456
=============================================================