@ StdDefs.test
@ Version 1.6
@ Last revised by Xerox Corporation on 99-03-02.

# Copyright (c) 1998, 1999 by Xerox Corporation. All rights reserved.
# User is granted the right to modify this file for use with
# the IPP Server Test Tool, as described in the file
# LICENSE-IppTest.txt.


@
@
@ Definitions per IPP Model 980630
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
################################################################################
@



@ Defining Requests...
################################################################################

# MANDATORY
Define Request Print-Job               0x0002
Define Request Validate-Job            0x0004
Define Request Cancel-Job              0x0008
Define Request Get-Job-Attributes      0x0009
Define Request Get-Jobs                0x000A
Define Request Get-Printer-Attributes  0x000B

# OPTIONAL
Define Request Print-URI               0x0003
Define Request Create-Job              0x0005
Define Request Send-Document           0x0006
Define Request Send-URI                0x0007



@ Defining Status Codes...
################################################################################

Define Symbol    %enum%status-code%namesAndIds                \
    successful-ok                                   (0x0000), \
    successful-ok-ignored-or-substituted-attributes (0x0001), \
    successful-ok-conflicting-attributes            (0x0002), \
    client-error-bad-request                        (0x0400), \
    client-error-forbidden                          (0x0401), \
    client-error-not-authenticated                  (0x0402), \
    client-error-not-authorized                     (0x0403), \
    client-error-not-possible                       (0x0404), \
    client-error-timeout                            (0x0405), \
    client-error-not-found                          (0x0406), \
    client-error-gone                               (0x0407), \
    client-error-request-entity-too-large           (0x0408), \
    client-error-request-value-too-long             (0x0409), \
    client-error-document-format-not-supported      (0x040A), \
    client-error-attributes-or-values-not-supported (0x040B), \
    client-error-uri-scheme-not-supported           (0x040C), \
    client-error-charset-not-supported              (0x040D), \
    client-error-conflicting-attributes             (0x040E), \
    server-error-internal-error                     (0x0500), \
    server-error-operation-not-supported            (0x0501), \
    server-error-service-unavailable                (0x0502), \
    server-error-version-not-supported              (0x0503), \
    server-error-device-error                       (0x0504), \
    server-error-temporary-error                    (0x0505), \
    server-error-not-accepting-jobs                 (0x0506), \
    server-error-busy                               (0x0507)

Define Status Codes enum  $%enum%status-code%namesAndIds




@ Defining Attribute Groups...
################################################################################

Define Group Operation        0x01
Define Group Job              0x02
Define Group Printer          0x04
Define Group Unsupported      0x05




@ Defining Attributes...
################################################################################


# Operation Attributes
# ==============================================================================

Define Attribute compression                keyword
Define Attribute document-format            mimeMediaType
Define Attribute document-name              nameWithoutLanguage | nameWithLanguage
Define Attribute document-natural-language  naturalLanguage
Define Attribute document-uri               uri
Define Attribute ipp-attribute-fidelity     boolean
Define Attribute last-document              boolean
Define Attribute limit                      integer
Define Attribute message                    textWithoutLanguage | textWithLanguage
Define Attribute my-jobs                    boolean
Define Attribute printer-uri                uri
Define Attribute requested-attributes       1setOf keyword
Define Attribute requesting-user-name       nameWithoutLanguage | nameWithLanguage
Define Attribute status-message             textWithoutLanguage | textWithLanguage
Define Attribute which-jobs                 keyword


# Job Description Attributes
# ==============================================================================

Define Attribute job-impressions-completed   integer
Define Attribute job-k-octets-processed      integer
Define Attribute job-media-sheets-completed  integer
Define Attribute job-message-from-operator   textWithoutLanguage | textWithLanguage
Define Attribute job-more-info               uri
Define Attribute job-originating-user-name   nameWithoutLanguage | nameWithLanguage
Define Attribute job-printer-uri             uri
Define Attribute job-state-message           textWithoutLanguage | textWithLanguage
Define Attribute job-state-reasons           1setOf keyword
Define Attribute number-of-documents         integer
Define Attribute number-of-intervening-jobs  integer
Define Attribute output-device-assigned      nameWithoutLanguage | nameWithLanguage
Define Attribute time-at-completed           integer
Define Attribute time-at-creation            integer
Define Attribute time-at-processing          integer


# Operation & Job Description Attributes
# ==============================================================================

Define Attribute attributes-charset           charset
Define Attribute attributes-natural-language  naturalLanguage
Define Attribute job-id                       integer
Define Attribute job-impressions              integer
Define Attribute job-k-octets                 integer
Define Attribute job-media-sheets             integer
Define Attribute job-name                     nameWithoutLanguage | nameWithLanguage
Define Attribute job-uri                      uri


# Printer Description Attributes
# ==============================================================================

Define Attribute charset-configured                    charset
Define Attribute charset-supported                     1setOf charset
Define Attribute color-supported                       boolean
Define Attribute compression-supported                 1setOf keyword
Define Attribute document-format-default               mimeMediaType
Define Attribute document-format-supported             1setOf mimeMediaType
Define Attribute generated-natural-language-supported  1setOf naturalLanguage
Define Attribute job-impressions-supported             rangeOfInteger
Define Attribute job-k-octets-supported                rangeOfInteger
Define Attribute job-media-sheets-supported            rangeOfInteger
Define Attribute job-state                             enum                       \
                                                           pending(3),            \
                                                           pending-held,          \
                                                           processing,            \
                                                           processing-stopped,    \
                                                           canceled,              \
                                                           aborted,               \
                                                           completed
Define Attribute multiple-operation-time-out           integer
Define Attribute natural-language-configured           naturalLanguage

Define Symbol    %enum%operations-supported%names                                 \
                                                           print-job,             \
                                                           validate-job,          \
                                                           cancel-job,            \
                                                           get-job-attributes,    \
                                                           get-jobs,              \
                                                           get-printer-attributes
Define Symbol    %enum%operations-supported%namesAndIds                           \
                                                           print-job              (0x0002), \
                                                           validate-job           (0x0004), \
                                                           cancel-job             (0x0008), \
                                                           get-job-attributes     (0x0009), \
                                                           get-jobs               (0x000A), \
                                                           get-printer-attributes (0x000B)
Define Attribute operations-supported                  1setOf enum  \
                                                           $%enum%operations-supported%namesAndIds

Define Attribute pdl-override-supported                keyword
Define Attribute printer-current-time                  dateTime
Define Attribute printer-driver-installer              uri
Define Attribute printer-info                          textWithoutLanguage | textWithLanguage
Define Attribute printer-is-accepting-jobs             boolean
Define Attribute printer-location                      textWithoutLanguage | textWithLanguage
Define Attribute printer-make-and-model                textWithoutLanguage | textWithLanguage
Define Attribute printer-message-from-operator         textWithoutLanguage | textWithLanguage
Define Attribute printer-more-info                     uri
Define Attribute printer-more-info-manufacturer        uri
Define Attribute printer-name                          nameWithoutLanguage | nameWithLanguage
Define Attribute printer-state                         enum            \
                                                           idle(3),    \
                                                           processing, \
                                                           stopped
Define Attribute printer-state-message                 textWithoutLanguage | textWithLanguage
Define Attribute printer-state-reasons                 1setOf keyword
Define Attribute printer-up-time                       integer
Define Attribute printer-uri-supported                 1setOf uri
Define Attribute queued-job-count                      integer
Define Attribute reference-uri-schemes-supported       1setOf uriScheme
Define Attribute uri-security-supported                1setOf keyword


# Job Template (Job) Attributes
# ==============================================================================

Define Attribute copies                 integer
Define Attribute finishings             1setOf enum            \
                                            none(3),           \
                                            staple,            \
                                            punch,             \
                                            cover,             \
                                            bind
Define Attribute job-hold-until         keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute job-priority           integer
Define Attribute job-sheets             keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute media                  keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute multiple-document-handling  keyword
Define Attribute number-up              integer
Define Attribute orientation-requested  enum                   \
                                            portrait(3),       \
                                            landscape,         \
                                            reverse-landscape, \
                                            reverse-portrait
Define Attribute page-ranges            1setOf rangeOfInteger
Define Attribute printer-resolution     resolution
Define Attribute print-quality          enum          \
                                            draft(3), \
                                            normal,   \
                                            high
Define Attribute sides                  keyword


# Job Template (Printer) Attributes
# ==============================================================================

Define Attribute copies-default            integer
Define Attribute copies-supported          rangeOfInteger
Define Attribute finishings-default        1setOf enum   \
                                               none(3),  \
                                               staple,   \
                                               punch,    \
                                               cover,    \
                                               bind
Define Attribute finishings-supported      1setOf enum   \
                                               none(3),  \
                                               staple,   \
                                               punch,    \
                                               cover,    \
                                               bind
Define Attribute job-hold-until-default    keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute job-hold-until-supported  keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute job-priority-default      integer
Define Attribute job-priority-supported    integer
Define Attribute job-sheets-default        keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute job-sheets-supported      1setOf keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute media-default             keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute media-ready               1setOf keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute media-supported           1setOf keyword | nameWithoutLanguage | nameWithLanguage
Define Attribute multiple-document-handling-default    keyword
Define Attribute multiple-document-handling-supported  1setOf keyword
Define Attribute number-up-default         integer
Define Attribute number-up-supported       integer
Define Attribute orientation-requested-default  enum              \
                                               portrait(3),       \
                                               landscape,         \
                                               reverse-landscape, \
                                               reverse-portrait

Define Attribute orientation-requested-supported  1setOf enum     \
                                               portrait(3),       \
                                               landscape,         \
                                               reverse-landscape, \
                                               reverse-portrait
Define Attribute page-ranges-supported     boolean
Define Attribute printer-resolution-default    resolution
Define Attribute printer-resolution-supported  1setOf resolution
Define Attribute print-quality-default     enum          \
                                               draft(3), \
                                               normal,   \
                                               high
Define Attribute print-quality-supported   1setOf enum   \
                                               draft(3), \
                                               normal,   \
                                               high
Define Attribute sides-default             keyword
Define Attribute sides-supported           1setOf keyword




@ Defining Bogus-Operation (0x6000)
@ Defining bogus-attribute (textWithoutLanguage | textWithLanguage)
################################################################################

Define Request Bogus-Operation        0x6000
Define Attribute bogus-attribute      textWithoutLanguage | textWithLanguage

@