Skip to content

Bug in the XSD? #1128

Description

@dfbag7

Describe the bug

The quartznet/src/Quartz/Xml/job_scheduling_data_2_0.xsd file contains this code for job definition:

  <xs:complexType name="job-detailType">
    <xs:annotation>
      <xs:documentation>Define a JobDetail</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="name" type="xs:string" />
      <xs:element name="group" type="xs:string" minOccurs="0" />
      <xs:element name="description" type="xs:string" minOccurs="0" />
      <xs:element name="job-type" type="xs:string" />
      <xs:sequence minOccurs="0">
        <xs:element name="durable" type="xs:boolean" />
        <xs:element name="recover" type="xs:boolean" />
      </xs:sequence>
      <xs:element name="job-data-map" type="job-data-mapType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>

which states that the durable element must always appear before recover, and there is no way to specify the recover element without durable. I'm not sure but it looks like a bug, because I did not found any dependency between the two parameters in the code nor in the documentation.

Version used

I've fist found that in v2x, but the same code is still present in the repository.

Expected behavior

I believe it should look like this:

  <xs:complexType name="job-detailType">
    <xs:annotation>
      <xs:documentation>Define a JobDetail</xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="name" type="xs:string" />
      <xs:element name="group" type="xs:string" minOccurs="0" />
      <xs:element name="description" type="xs:string" minOccurs="0" />
      <xs:element name="job-type" type="xs:string" />
      <xs:element name="durable" type="xs:boolean" minOccurs="0"/>
      <xs:element name="recover" type="xs:boolean" minOccurs="0"/>
      <xs:element name="job-data-map" type="job-data-mapType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions