attachment-0001
<br><font size=2 face="sans-serif">Ira, first, thanks for sketching the
proposal.</font>
<br>
<br><font size=2 face="sans-serif">I see pro's and con's to leveraging
this much of the existing semantic model.</font>
<br>
<br><font size=2 face="sans-serif">PROs</font>
<br><font size=2 face="sans-serif">1. The document object is directly applicable</font>
<br><font size=2 face="sans-serif">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 size=2 face="sans-serif">CONs</font>
<br><font size=2 face="sans-serif">1. I REALLY wish PSI had used "target"
in place of "targetDevice" (everywhere)! </font>
<br><font size=2 face="sans-serif">2. Where do we describe the transform
specific attributes such as HoldUntil, KillAfter?</font>
<br><font size=2 face="sans-serif"> - Are you suggesting we extend
IPP Job Template Attributes?</font>
<br><font size=2 face="sans-serif"> - But what if we run into some
very transform specific attributes (ex. OCR level)?</font>
<br><font size=2 face="sans-serif">3. How does an application discover
and/or distinguish between a Transform Service and a Print Service?</font>
<br><font size=2 face="sans-serif">----------------------------------------------
<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%>
<tr valign=top>
<td width=40%><font size=1 face="sans-serif"><b>"McDonald, Ira"
<imcdonald@sharplabs.com></b> </font>
<p><font size=1 face="sans-serif">05/31/2004 02:48 PM</font>
<td width=59%>
<table width=100%>
<tr>
<td>
<div align=right><font size=1 face="sans-serif">To</font></div>
<td valign=top><font size=1 face="sans-serif">"'pwg@pwg.org'"
<pwg@pwg.org></font>
<tr>
<td>
<div align=right><font size=1 face="sans-serif">cc</font></div>
<td valign=top><font size=1 face="sans-serif">Harry Lewis/Boulder/IBM@IBMUS</font>
<tr>
<td>
<div align=right><font size=1 face="sans-serif">Subject</font></div>
<td valign=top><font size=1 face="sans-serif">TFM Svc as strict subset
of PSI/1.0</font></table>
<br>
<table>
<tr valign=top>
<td>
<td></table>
<br></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>