Subject: PWG-ANNOUNCE> Prototype PWG Job Ticket schema - 17 June 2003

From: "McDonald, Ira" <[email-masked]>
Date: Tue, 17 Jun 2003 19:55:21 -0700

Hi folks,                                         Tuesday (17 June 2003)

Earlier today, I suggested that writing a PWG Job Ticket compatible with
the FSG Job Ticket API was a small effort.  Apropos, I wrote one...

It's appended below and also posted at:

    ftp://ftp.pwg.org/pub/pwg/Semantic-Model/JobTicket-20030617.xsd

Also below is a complete mapping from the JobTicketInfo object in the
latest UML diagrams of the FSG Job Ticket API to objects and elements
defined in the latest (0.93) PWG Semantic Model.

My source documents for this mapping and prototype schema were:

ftp://ftp.pwg.org//pub/pwg/fsg/jobticket/JTAPI_Diagrams/06Jun2003/
- file '03_JobTicketInfo.png'
- JTAPI UML diagram

ftp://ftp.pwg.org/pub/pwg/fsg/jobticket/IPP_Mapping/
- file 'ippjdf-mapping-06-Jun-2003.pdf'
- IPP/JDF mapping table

Comments?

Cheers,
- Ira McDonald
  High North Inc

PS - This PWG Job Ticket schema validates without errors with the (free)
XSV schema validator from University of Edinburgh (see the W3C site
under 'XML Schema' for the link for a Win32 self-installing download).

------------------------------------------------------------------------

FSG Job Ticket Element      Mapping to PWG SM Object and Element
----------------------      ------------------------------------

-- JT API metadata --
jt-api-charset              [not applicable]
                            - JTAPI methods charset
jt-api-version              [not applicable]
                            - JTAPI version

-- JT instance metadata --
jt-author-name              JobTicket.JTAuthorName
                            - e.g., instance author "Ira McDonald"

jt-version                  JobTicket.JTVersion
                            - e.g., instance version "1.14"

jt-syntax-version           JobTicket.JTSyntaxVersion
                            - e.g., PWG SM version "0.93"

jt-type                     [not applicable]
                            - hard-wired to PWG SM Job Ticket

-- JT instance data --
jt-id                       JobTicket.JTId
                            - e.g., identifier "uuid:blah..."

jt-comment                  JobTicket.JTComment
                            - e.g., "Weekly Accounts"

jt-mandatory-attributes     JobDescription.JobMandatoryElements
                            - e.g., "media"

jt-job                      JobTicket.Job and JobTicket.Document
                            - contained job and document(s)

jt-charset                  [XML 'encoding' attribute]
                            - e.g., encoding="UTF-8"

jt-length-units             [not applicable??]
                            - millimeters, points, etc.

------------------------------------------------------------------------

<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:annotation>
    <xsd:documentation xml:lang="en">
        PWG Job Ticket schema - prototype 17 June 2003 - IEM

        NOTE: To use this schema you MUST include Job.xsd, Document.xsd,
        and all of their schema dependencies (see their documentation).
    </xsd:documentation>
</xsd:annotation>

<xsd:complexType name="JobTicket">
    <xsd:annotation>
        <xsd:documentation xml:lang="en">
            Job Ticket Type definition
        </xsd:documentation>
    </xsd:annotation>
    <xsd:sequence>
        <!-- Job Ticket metadata elements -->
        <xsd:element ref="JTAuthorName" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="JTVersion" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="JTSyntaxVersion" minOccurs="0" maxOccurs="1"/>

        <!-- Job Ticket data elements -->
        <xsd:element ref="JTId" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="JTComment" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="Job" minOccurs="0" maxOccurs="1"/>
        <xsd:element ref="Document" minOccurs="0"/>
    </xsd:sequence>
</xsd:complexType>

<xsd:element name="JTAuthorName">
    <xsd:annotation>
        <xsd:documentation xml:lang="en">
            Job Ticket instance author, e.g. 'Joe Smith'
        </xsd:documentation>
    </xsd:annotation>
    <xsd:simpleType>
        <xsd:restriction base="xsd:string">
            <xsd:maxLength value="255"/>
        </xsd:restriction>
    </xsd:simpleType>
</xsd:element>

<xsd:element name="JTVersion">
    <xsd:annotation>
        <xsd:documentation xml:lang="en">
            Job Ticket instance version, e.g. '1.14'
        </xsd:documentation>
    </xsd:annotation>
    <xsd:simpleType>
        <xsd:restriction base="xsd:string">
            <xsd:maxLength value="255"/>
        </xsd:restriction>
    </xsd:simpleType>
</xsd:element>

<xsd:element name="JTSyntaxVersion">
    <xsd:annotation>
        <xsd:documentation xml:lang="en">
            PWG Semantic Model syntax version, e.g. '0.93'
        </xsd:documentation>
    </xsd:annotation>
    <xsd:simpleType>
        <xsd:restriction base="xsd:string">
            <xsd:maxLength value="255"/>
        </xsd:restriction>
    </xsd:simpleType>
</xsd:element>

<xsd:element name="JTId">
    <xsd:annotation>
        <xsd:documentation xml:lang="en">
            Job Ticket id, e.g. 'urn:uuid:f81d4fae-7dec-11d0-a765'
        </xsd:documentation>
    </xsd:annotation>
    <xsd:simpleType>
        <xsd:restriction base="xsd:string">
            <xsd:maxLength value="255"/>
        </xsd:restriction>
    </xsd:simpleType>
</xsd:element>

<xsd:element name="JTComment">
    <xsd:annotation>
        <xsd:documentation xml:lang="en">
            Job Ticket comment, e.g. 'Weekly Accounts'
        </xsd:documentation>
    </xsd:annotation>
    <xsd:simpleType>
        <xsd:restriction base="xsd:string">
            <xsd:maxLength value="255"/>
        </xsd:restriction>
    </xsd:simpleType>
</xsd:element>

<xsd:element name="JobTicket" type="JobTicket">
    <xsd:annotation>
        <xsd:documentation xml:lang="en">
            Job Ticket Element
        </xsd:documentation>
    </xsd:annotation>
</xsd:element>

</xsd:schema>