http://nagoya.apache.org/bugzilla/show_bug.cgi?id=2576

*** shadow/2576 Wed Jul 11 08:34:33 2001
--- shadow/2576.tmp.9720        Wed Jul 11 08:34:33 2001
***************
*** 0 ****
--- 1,257 ----
+ +============================================================================+
+ | Spurious restricted type error reported                                    |
+ +----------------------------------------------------------------------------+
+ |        Bug #: 2576                        Product: Xerces-J                |
+ |       Status: NEW                         Version: 1.4.1                   |
+ |   Resolution:                            Platform: PC                      |
+ |     Severity: Major                    OS/Version: Windows NT/2K           |
+ |     Priority: Other                     Component: Samples                 |
+ +----------------------------------------------------------------------------+
+ |  Assigned To: [EMAIL PROTECTED]                                  |
+ |  Reported By: [EMAIL PROTECTED]                                         |
+ |      CC list: Cc:                                                          |
+ +----------------------------------------------------------------------------+
+ |          URL:                                                              |
+ +============================================================================+
+ |                              DESCRIPTION                                   |
+ Running DOMWriter, I get the following schema error report:
+ 
+ [Error] submit.xml:7:67: Schema error: ComplexType 'http://www.CIP4.org/JDFSchem
+ a_1,SubmitQueueEntryAck_base': rcase-Recurse.2:  There is not a complete functio
+ nal mapping between the particles.
+ 
+ I believe that the restricted type definition is correct.  What may be 
+ confusing the parser is that multiple elements in the child type (QueueEntry 
+ and Queue) map to a single element (ResponseTypeObj) (whose cardinality is 
+ 0..unbounded) in the parent type:
+ 
+ <complexType name="SubmitQueueEntryAck_base">
+    <annotation>
+       <documentation>Acknowledge for a SubmitQueueEntry command.</documentation>
+    </annotation>
+    <complexContent>
+       <restriction base="jdf:Acknowledge">
+          <sequence>
+             <element ref="jdf:Comment" minOccurs="0" maxOccurs="unbounded"/>
+             <element ref="jdf:QueueEntry" minOccurs="0" maxOccurs="1">
+                <annotation>
+                   <documentation>Required if the job was successfully 
+ queued.</documentation>
+                </annotation>
+             </element>
+             <element ref="jdf:Queue" minOccurs="0" maxOccurs="1"> <!-- NON-
+ COMPLIANT: REQUIRED IN JDF -->
+                <annotation>
+                   <documentation>Optional.</documentation>
+                </annotation>
+             </element>
+             <element ref="jdf:Notification" minOccurs="1" maxOccurs="1">
+                <annotation>
+                   <documentation>Required.</documentation>
+                </annotation>
+             </element>
+          </sequence>
+ <!-- All attributes from ancestor types are inherited -->
+       </restriction>
+    </complexContent>
+ </complexType>
+ 
+ <complexType name="Acknowledge">
+    <annotation>
+       <documentation>An Acknowledge message is a response to a command issued by
+       a controller. Each acknowledge message is unidirectional and syntactically
+       equivalent to a command response, and the refID attribute of each refers
+       to the initiating command. Acknowledge messages are generated if commands
+       with long latency have been executed in order to inform the command sender
+       about the results. Acknowledge messages are only generated if the 
+ initiating
+       command has specified the attribute AcknowledgeURL. They are announced in
+       the Response message to the command by the setting the attribute
+       Acknowledged = "true".</documentation>
+    </annotation>
+    <complexContent>
+       <extension base="jdf:Message">
+          <sequence>
+             <element ref="jdf:ResponseTypeObj" minOccurs="0" 
+ maxOccurs="unbounded">
+                <annotation>
+                   <documentation>An Acknowledge contains 0 or more 
+ ResponseTypeObjs.</documentation>
+                </annotation>
+             </element>
+             <element ref="jdf:Notification">
+                <annotation>
+                   <documentation>Required.</documentation>
+                </annotation>
+             </element>
+          </sequence>
+          <attribute name="refID" type="NMTOKEN" use="required">
+             <annotation>
+                <documentation>Copy of the ID attribute of the command
+                that this message is acknowledging. Required.</documentation>
+             </annotation>
+          </attribute>
+          <attribute name="ReturnCode" type="integer" use="optional" default="0">
+             <annotation>
+                <documentation>Describes the result of the command. "0"
+                indicates success and is the default.</documentation>
+             </annotation>
+          </attribute>
+       </extension>
+    </complexContent>
+ </complexType>
+ 
+ <element name="ResponseTypeObj" type="jdf:ResponseTypeObj" abstract="true"/>
+ <complexType name="ResponseTypeObj" abstract="true">
+    <annotation>
+       <documentation>Abstract type that is the base for all types of response
+       data.</documentation>
+    </annotation>
+ </complexType>
+ 
+ <element name="QueueEntry" type="jdf:QueueEntry" 
+ substitutionGroup="jdf:ResponseTypeObj"/>
+ <complexType name="QueueEntry">
+    <annotation>
+       <documentation>Description of one entry in a queue.</documentation>
+    </annotation>
+    <complexContent>
+       <extension base="jdf:ResponseTypeObj">
+          <attribute name="JobID" type="string" use="required">
+             <annotation>
+                <documentation>JobID of the queued job. Required.</documentation>
+             </annotation>
+          </attribute>
+          <attribute name="JobPartID" type="string">
+             <annotation>
+                <documentation>If the queue entry represents a part of a job, the
+                identifier of the job part. Optional.</documentation>
+             </annotation>
+          </attribute>
+          <attribute name="Priority">
+             <annotation>
+              <documentation>An integer from 0 to 100 (inclusive), where 0 is 
+ the lowest priority
+                and 100 is the highest.  The default value is 1.</documentation>
+             </annotation>
+             <simpleType>
+                <restriction base="integer">
+                   <minInclusive value="0"/>
+                   <maxInclusive value="100"/>
+                </restriction>
+             </simpleType>
+          </attribute>
+          <attribute name="QueueEntryID" type="string" use="required">
+             <annotation>
+              <documentation>Identifier of the queue entry, generated by the 
+ controller
+                that owns the queue. Required.</documentation>
+             </annotation>
+          </attribute>
+          <attribute name="Status" use="required">
+             <annotation>
+              <documentation>Status of the queue entry.  Required.  Valid 
+ values are:&lt;P&gt;
+                Running -- The queue entry is running and is no longer 
+ represented
+                in the queue.&lt;/P&gt;&lt;P&gt;
+                Waiting -- The queue entry is waiting and will be executed when
+                resources are available.&lt;/P&gt;&lt;P&gt;
+                Held -- The queue entry is held and will not execute until
+                resumed.&lt;/P&gt;&lt;P&gt;
+                Removed -- The queue entry has been removed from the 
+ queue.&lt;/P&gt;
+                </documentation>
+             </annotation>
+             <simpleType>
+                <restriction base="string">
+                   <enumeration value="Running"/>
+                   <enumeration value="Waiting"/>
+                   <enumeration value="Held"/>
+                   <enumeration value="Removed"/>
+                </restriction>
+             </simpleType>
+          </attribute>
+          <attribute name="SubmissionTime" type="dateTime">
+             <annotation>
+              <documentation>Time when the entry was submitted to the queue. 
+ Optional.</documentation>
+             </annotation>
+          </attribute>
+       </extension>
+    </complexContent>
+ </complexType>
+ 
+ <element name="Queue" type="jdf:Queue" substitutionGroup="jdf:ResponseTypeObj"/>
+ <complexType name="Queue">
+    <annotation>
+       <documentation>Information about a queue. A device (leaf level provider) 
+ owns
+       and manages exactly one queue.  Multiple hardware devices may read from 
+ the
+       queue.</documentation>
+    </annotation>
+    <complexContent>
+       <extension base="jdf:ResponseTypeObj">
+          <sequence>
+             <element ref="jdf:Device" minOccurs="0" maxOccurs="unbounded">
+                <annotation>
+                   <documentation>0 or more hardware devices that may execute 
+ jobs from the
+                   queue.</documentation>
+                </annotation>
+             </element>
+             <element ref="jdf:QueueEntry" minOccurs="0" maxOccurs="unbounded">
+                <annotation>
+                   <documentation>0 or more QueueEntry objects that are 
+ currently queued.</documentation>
+                </annotation>
+             </element>
+          </sequence>
+          <attribute name="Status" use="required">
+             <annotation>
+                <documentation>Status of the queue. Required. Valid values 
+ are:&lt;P&gt;
+                Blocked -- Queue is completely inactive. No entries may be added 
+ and
+                no entries are executed. The queue is closed and 
+ held.&lt;/P&gt;&lt;P&gt;
+                Closed -- Queue entries that are in the queue are executed, but 
+ no new
+                entries may be submitted. The lock must be removed 
+ explicitly.&lt;/P&gt;&lt;P&gt;
+                Full -- Queue entries that are in the queue are executed but no 
+ new
+                entries may be submitted. The lock is removed by the queue
+                controller as soon as it is able to do so.&lt;/P&gt;&lt;P&gt;
+                Running -- A process is executing. Entries may be submitted but 
+ will
+                not be executed until they reach their turn in the 
+ queue.&lt;/P&gt;&lt;P&gt;
+                Waiting -- Queue accepts new entries and has free resources to
+                immediately commence processing.&lt;/P&gt;&lt;P&gt;
+                Held -- Entries may be submitted but will not be executed until 
+ the
+                queue is resumed.&lt;/P&gt;</documentation>
+             </annotation>
+             <simpleType>
+                <restriction base="string">
+                   <enumeration value="Blocked"/>
+                   <enumeration value="Closed"/>
+                   <enumeration value="Full"/>
+                   <enumeration value="Running"/>
+                   <enumeration value="Waiting"/>
+                   <enumeration value="Held"/>
+                </restriction>
+             </simpleType>
+          </attribute>
+          <attribute name="DeviceID" type="string" use="required">
+             <annotation>
+                <documentation>Identifies the queue and the device (provider 
+ service)
+                that owns it. Required.</documentation>
+             </annotation>
+          </attribute>
+       </extension>
+    </complexContent>
+ </complexType>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to