<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:element name="testResult" type="hudson.tasks.junit.TestResult"/>
  <xsd:complexType name="hudson.tasks.junit.TestResult">
    <xsd:complexContent>
      <xsd:extension base="hudson.tasks.test.MetaTabulatedResult">
        <xsd:sequence>
          <xsd:element name="duration" type="xsd:anyType"/>
          <xsd:element name="empty" type="xsd:boolean"/>
          <xsd:element name="failCount" type="xsd:int"/>
          <xsd:element name="passCount" type="xsd:int"/>
          <xsd:element name="skipCount" type="xsd:int"/>
          <xsd:element name="suite" type="hudson.tasks.junit.SuiteResult" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="hudson.tasks.junit.SuiteResult">
    <xsd:sequence>
      <xsd:element name="case" type="hudson.tasks.junit.CaseResult" minOccurs="0" maxOccurs="unbounded"/>
      <xsd:element name="duration" type="xsd:anyType"/>
      <xsd:element name="enclosingBlockName" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
      <xsd:element name="enclosingBlock" type="xsd:string" minOccurs="0" maxOccurs="unbounded"/>
      <xsd:element name="id" type="xsd:string" minOccurs="0"/>
      <xsd:element name="name" type="xsd:string" minOccurs="0"/>
      <xsd:element name="nodeId" type="xsd:string" minOccurs="0"/>
      <xsd:element name="properties" type="xsd:anyType" minOccurs="0"/>
      <xsd:element name="stderr" type="xsd:string" minOccurs="0"/>
      <xsd:element name="stdout" type="xsd:string" minOccurs="0"/>
      <xsd:element name="timestamp" type="xsd:string" minOccurs="0"/>
    </xsd:sequence>
    <xsd:attribute name="_class" type="xsd:string" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="hudson.tasks.junit.CaseResult">
    <xsd:complexContent>
      <xsd:extension base="hudson.tasks.test.TestResult">
        <xsd:sequence>
          <xsd:element name="age" type="xsd:int"/>
          <xsd:element name="className" type="xsd:string" minOccurs="0"/>
          <xsd:element name="duration" type="xsd:anyType"/>
          <xsd:element name="errorDetails" type="xsd:string" minOccurs="0"/>
          <xsd:element name="errorStackTrace" type="xsd:string" minOccurs="0"/>
          <xsd:element name="failedSince" type="xsd:int"/>
          <xsd:element name="flakyFailure" type="hudson.tasks.junit.Failure" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="name" type="xsd:string" minOccurs="0"/>
          <xsd:element name="properties" type="xsd:anyType" minOccurs="0"/>
          <xsd:element name="rerunFailure" type="hudson.tasks.junit.Failure" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="skipped" type="xsd:boolean"/>
          <xsd:element name="skippedMessage" type="xsd:string" minOccurs="0"/>
          <xsd:element name="status" type="hudson.tasks.junit.CaseResult-Status" minOccurs="0"/>
          <xsd:element name="stderr" type="xsd:string" minOccurs="0"/>
          <xsd:element name="stdout" type="xsd:string" minOccurs="0"/>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="hudson.tasks.junit.Failure">
    <xsd:sequence/>
    <xsd:attribute name="_class" type="xsd:string" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="hudson.tasks.test.TestResult">
    <xsd:complexContent>
      <xsd:extension base="hudson.tasks.test.TestObject">
        <xsd:sequence/>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="hudson.tasks.test.TestObject">
    <xsd:complexContent>
      <xsd:extension base="hudson.tasks.junit.TestObject">
        <xsd:sequence>
          <xsd:element name="testAction" type="hudson.tasks.junit.TestAction" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="hudson.tasks.junit.TestAction">
    <xsd:sequence/>
    <xsd:attribute name="_class" type="xsd:string" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="hudson.tasks.junit.TestObject">
    <xsd:sequence/>
    <xsd:attribute name="_class" type="xsd:string" use="optional"/>
  </xsd:complexType>
  <xsd:complexType name="hudson.tasks.test.MetaTabulatedResult">
    <xsd:complexContent>
      <xsd:extension base="hudson.tasks.test.TabulatedResult">
        <xsd:sequence/>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="hudson.tasks.test.TabulatedResult">
    <xsd:complexContent>
      <xsd:extension base="hudson.tasks.test.TestResult">
        <xsd:sequence/>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:simpleType name="hudson.tasks.junit.CaseResult-Status">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="PASSED"/>
      <xsd:enumeration value="SKIPPED"/>
      <xsd:enumeration value="FAILED"/>
      <xsd:enumeration value="FIXED"/>
      <xsd:enumeration value="REGRESSION"/>
    </xsd:restriction>
  </xsd:simpleType>
</xsd:schema>

