attachment-0001
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1276" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>Hi
Harry,</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>Thanks
for your feedback. Comments on your CONS
below:</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>(1)
'target' versus 'targetDevice'</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>- I
suggest that TFM _remove_ the parameter from CreateJob</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>
(and any other redundant parameters in PSI operations that we
</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>
reuse)</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>- the
'target' is the TFM service, period</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004></SPAN> </DIV>
<DIV><SPAN class=097444117-03062004>(2) New Transform attributes</SPAN></DIV>
<DIV><SPAN class=097444117-03062004>- Define their names and semantics in the
new TFM Service spec</SPAN></DIV>
<DIV><SPAN class=097444117-03062004>- For OCR, perhaps define an OCR Subunit??
(too specific??)</SPAN></DIV>
<DIV><SPAN class=097444117-03062004>- Unfortunately, all the
current Service default/ready/supported</SPAN></DIV>
<DIV><SPAN class=097444117-03062004> attributes are only in the Printer
object in the SM schema</SPAN></DIV>
<DIV><SPAN class=097444117-03062004>- TFM _really_ needs to define 'Transform'
and/or 'Service' objects</SPAN></DIV>
<DIV><SPAN class=097444117-03062004> that then (oddly) include many
attributes where the term 'Printer'</SPAN></DIV>
<DIV><SPAN class=097444117-03062004> is meant to be read as
'Service'</SPAN></DIV>
<DIV><SPAN class=097444117-03062004>- Or we could redefine all those</SPAN><SPAN
class=097444117-03062004> attributes with better names, but</SPAN></DIV>
<DIV><SPAN class=097444117-03062004> that is a BIG job</SPAN></DIV>
<DIV><SPAN class=097444117-03062004>- Definitely, we should not define new
IPP/1.1 attributes for</SPAN></DIV>
<DIV><SPAN class=097444117-03062004> non-print services</SPAN></DIV>
<DIV><SPAN class=097444117-03062004></SPAN> </DIV></FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff
size=2>(3) Distinguishing between TFM versus PSI
interface</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff
size=2>- A TFM Service interface must NOT run on PSI's port 3800,
but</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>
rather (just like IPPFAX) on a brand new IANA-registered
port.</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>- Just
like IPPFAX, there is no ambiguity. You are talking to a
</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>
TFM port or you are talking to a PSI port. No mixing,
ever.</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff
size=2></FONT></SPAN> </DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT> </DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff
size=2>Cheers,</FONT></SPAN></DIV>
<DIV><SPAN class=097444117-03062004><FONT face=Arial color=#0000ff size=2>-
Ira</FONT></SPAN></DIV>
<P><FONT size=2>Ira McDonald (Musician / Software Architect)<BR>Blue Roof Music
/ High North Inc<BR>PO Box 221 Grand Marais, MI 49839<BR>phone:
+1-906-494-2434<BR>email: imcdonald@sharplabs.com</FONT> </P>
<DIV class=OutlookMessageHeader dir=ltr align=left><FONT face=Tahoma
size=2>-----Original Message-----<BR><B>From:</B> Harry Lewis
[mailto:harryl@us.ibm.com]<BR><B>Sent:</B> Wednesday, June 02, 2004 11:53
PM<BR><B>To:</B> McDonald, Ira<BR><B>Cc:</B> 'pwg@pwg.org'<BR><B>Subject:</B>
Re: TFM Svc as strict subset of PSI/1.0<BR><BR></FONT></DIV><BR><FONT
face=sans-serif size=2>Ira, first, thanks for sketching the proposal.</FONT>
<BR><BR><FONT face=sans-serif size=2>I see pro's and con's to leveraging this
much of the existing semantic model.</FONT> <BR><BR><FONT face=sans-serif
size=2>PROs</FONT> <BR><FONT face=sans-serif size=2>1. The document object is
directly applicable</FONT> <BR><FONT face=sans-serif size=2>2. The CreateJob,
ValidateJob etc. operations are general enough that it seems appropriate to
leverage them rather than define new (similar) ops (CreateTransform)</FONT>
<BR><BR><FONT face=sans-serif size=2>CONs</FONT> <BR><FONT face=sans-serif
size=2>1. I REALLY wish PSI had used "target" in place of "targetDevice"
(everywhere)! </FONT><BR><FONT face=sans-serif size=2>2. Where do we describe
the transform specific attributes such as HoldUntil, KillAfter?</FONT> <BR><FONT
face=sans-serif size=2> - Are you suggesting we extend IPP Job Template
Attributes?</FONT> <BR><FONT face=sans-serif size=2> - But what if we run
into some very transform specific attributes (ex. OCR level)?</FONT> <BR><FONT
face=sans-serif size=2>3. How does an application discover and/or distinguish
between a Transform Service and a Print Service?</FONT> <BR><FONT
face=sans-serif size=2>---------------------------------------------- <BR>Harry
Lewis <BR>Chairman - IEEE-ISTO Printer Working
Group<BR>http://www.pwg.org<BR>IBM Printing Systems
<BR>http://www.ibm.com/printers<BR>303-924-5337<BR>----------------------------------------------
</FONT><BR><BR><BR>
<TABLE width="100%">
<TBODY>
<TR vAlign=top>
<TD width="40%"><FONT face=sans-serif size=1><B>"McDonald, Ira"
<imcdonald@sharplabs.com></B> </FONT>
<P><FONT face=sans-serif size=1>05/31/2004 02:48 PM</FONT> </P>
<TD width="59%">
<TABLE width="100%">
<TBODY>
<TR>
<TD>
<DIV align=right><FONT face=sans-serif size=1>To</FONT></DIV>
<TD vAlign=top><FONT face=sans-serif size=1>"'pwg@pwg.org'"
<pwg@pwg.org></FONT>
<TR>
<TD>
<DIV align=right><FONT face=sans-serif size=1>cc</FONT></DIV>
<TD vAlign=top><FONT face=sans-serif size=1>Harry
Lewis/Boulder/IBM@IBMUS</FONT>
<TR>
<TD>
<DIV align=right><FONT face=sans-serif size=1>Subject</FONT></DIV>
<TD vAlign=top><FONT face=sans-serif size=1>TFM Svc as strict subset
of PSI/1.0</FONT></TR></TBODY></TABLE><BR>
<TABLE>
<TBODY>
<TR vAlign=top>
<TD>
<TD></TR></TBODY></TABLE><BR></TR></TBODY></TABLE><BR><BR><BR><FONT
size=2><TT>Hi folks,
Monday (31 May 2004)<BR><BR>PSI/1.0 _already_ supports very
precise document transforms, via the<BR>'requestedTargetDeviceDataType :
DocumentFormatDetails' parameter<BR>of the CreateJob method. This is
the _same_ functionality incorporated<BR>into the latest JDF/1.2 spec. A
PSI client uses FetchDocumentDataByPull<BR>or FetchDocumentDataByValue later to
retrieve the transformed output.<BR><BR>
ftp://ftp.pwg.org/pub/pwg/ps/wd/wd-psi10-20040113.pdf<BR><BR>Thus, here's
a proposal to define a PWG Transform Service (TFM) as a<BR>strict _subset_ of
PSI/1.0 without Target Devices (and without _any_ new<BR>features or
Job/Document elements). The proposal is summarized by the<BR>commented
table of contents from the latest PSI/1.0 draft.<BR><BR><BR>Rationale for
proposal, from section 5.5.2 CreateJob of PSI/1.0
spec:<BR><BR>"targetDeviceIdentifier : URI<BR><BR>A URI that defines the Target
Device that is to be associated with a<BR>Job. See definition in section
7.2.<BR><BR><...><BR><BR>If the client specifies the Print Service's
Service Root URL as the<BR>targetDeviceIdentifier, then the Print Service is
considered the final<BR>destination, and the Print Service can perform all job
processing. For<BR>example, document transformation."<BR>
^^^^^^^^^^^^^^^^^^^^^^^<BR><BR><BR>and later in section
5.5.2:<BR><BR>"requestedTargetDeviceDataType : DocumentFormatDetails<BR><BR>If
this parameter is specified, then the Print Service shall transform<BR>
^^^^^^^^^^^^^^^<BR>the source Document into the data
type requested. If the specified<BR>Target Device does not support the
requestedTargetDeviceDataType, the<BR>Print Service shall throw a
ProcessingRequestUnsupported
exception."<BR><BR><BR>Comments?<BR><BR>Cheers,<BR>- Ira<BR><BR><BR>Ira McDonald
(Musician / Software Architect)<BR>Blue Roof Music / High North Inc<BR>PO Box
221 Grand Marais, MI 49839<BR>phone: +1-906-494-2434<BR>email:
imcdonald@sharplabs.com<BR><BR>------------------------------------------------------------------------<BR>[Transform
Service (TFM) subset of PSI/1.0 - per TOC of PSI/1.0]<BR><BR>5 Interface
Definition<BR><BR>5.1 PSI Service Root URL<BR>5.2 Negotiating a secure PSI
connection<BR><BR>5.3 QueryEndPointsInterface<BR>5.3.1 Interface Usage
Examples<BR>5.3.2 QuerySupportedInterfaces<BR>5.3.3
QueryInterfaceDefinition<BR><BR>5.4 ServiceCapabilitiesInterface<BR>5.4.1
Interface Usage Examples<BR>5.4.2 GetTargetDeviceElements -- needed to query TFM
Service elements<BR>** delete ** 5.4.3 GetKnownTargetDevices -- TFM Service is
only endpoint<BR>5.4.4 ValidateReference<BR><BR>5.5 JobControlInterface<BR>5.5.1
Interface Usage Examples<BR>5.5.2 CreateJob<BR>5.5.3 CloseJob<BR>5.5.4
AddDocumentByReference<BR>5.5.5 AddDocumentByPush<BR>5.5.6
PushDocumentDataDelivered<BR>5.5.7 AddDocumentByValue<BR>5.5.8 GetJobs<BR>5.5.9
GetJobElements<BR>** delete ** 5.5.10 SetJobElements -- passive Jobs
only<BR>5.5.11 CancelJob<BR>5.5.12 GetDocuments<BR>5.5.13
GetDocumentElements<BR>** delete ** 5.5.14 SetDocumentElements -- passive
Documents only<BR>5.5.15 CancelDocument<BR>5.5.16 FetchDocumentDataByPull --
needed for client to retrieve output<BR>5.5.17 PullDocumentDataFetched -- needed
for client to retrieve output<BR>5.5.18 FetchDocumentDataByValue -- needed for
client to retrieve output<BR>** delete ** 5.5.19 FetchJobs -- no Target Device
support<BR><BR>------------------------------------------------------------------------<BR></TT></FONT><BR></BODY></HTML>