/**
 * Auto-generated schema from XSD
 * 
 * DO NOT EDIT - Generated by ts-xsd codegen
 * Source: xsd/custom/acoverageStatements.xsd
 */

import adtcore from '../sap/adtcore';
import atom from '../sap/atom';

export default {
  $xmlns: {
    xsd: 'http://www.w3.org/2001/XMLSchema',
    cov: 'http://www.sap.com/adt/cov',
    adtcore: 'http://www.sap.com/adt/core',
    atom: 'http://www.w3.org/2005/Atom',
  },
  $imports: [
    adtcore,
    atom,
  ],
  targetNamespace: 'http://www.sap.com/adt/cov',
  attributeFormDefault: 'unqualified',
  elementFormDefault: 'qualified',
  element: [
    {
      name: 'statementsBulkResponse',
      type: 'cov:StatementsBulkResponse',
    },
  ],
  complexType: [
    {
      name: 'StatementsBulkResponse',
      sequence: {
        element: [
          {
            name: 'statementsResponse',
            type: 'cov:StatementsResponse',
            minOccurs: '0',
            maxOccurs: 'unbounded',
          },
        ],
      },
    },
    {
      name: 'StatementsResponse',
      sequence: {
        element: [
          {
            ref: 'atom:link',
            minOccurs: '0',
            maxOccurs: 'unbounded',
          },
          {
            name: 'procedure',
            type: 'cov:ProcedureEntry',
            minOccurs: '0',
            maxOccurs: 'unbounded',
            form: 'unqualified',
          },
          {
            name: 'statement',
            type: 'cov:StatementEntry',
            minOccurs: '0',
            maxOccurs: 'unbounded',
            form: 'unqualified',
          },
        ],
      },
      attribute: [
        {
          name: 'name',
          type: 'xsd:string',
        },
      ],
    },
    {
      name: 'ProcedureEntry',
      sequence: {
        element: [
          {
            ref: 'adtcore:objectReference',
            minOccurs: '0',
            maxOccurs: '1',
          },
        ],
      },
      attribute: [
        {
          name: 'executed',
          type: 'xsd:int',
        },
      ],
    },
    {
      name: 'StatementEntry',
      sequence: {
        element: [
          {
            ref: 'adtcore:objectReference',
            minOccurs: '0',
            maxOccurs: '1',
          },
          {
            name: 'branch',
            type: 'cov:BranchEntry',
            minOccurs: '0',
            maxOccurs: 'unbounded',
            form: 'unqualified',
          },
        ],
      },
      attribute: [
        {
          name: 'executed',
          type: 'xsd:int',
        },
      ],
    },
    {
      name: 'BranchEntry',
      sequence: {
        element: [
          {
            ref: 'adtcore:objectReference',
            minOccurs: '0',
            maxOccurs: '1',
          },
        ],
      },
      attribute: [
        {
          name: 'kind',
          type: 'xsd:string',
        },
        {
          name: 'executedTrue',
          type: 'xsd:string',
        },
        {
          name: 'executedFalse',
          type: 'xsd:string',
        },
      ],
    },
  ],
} as const;
