<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
  <!--
    log_fe_details.rnc
      relaxng schema for CodeSonar's XML output
      generated via template fe_details.xml
  -->
  <xs:element name="compilation_details">
    <xs:complexType>
      <xs:sequence>
        <xs:element ref="parse_errors"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="issue"/>
        <xs:element minOccurs="0" maxOccurs="unbounded" ref="diag"/>
        <xs:element minOccurs="0" ref="cmdline"/>
        <xs:element ref="native_cmdline"/>
        <xs:element minOccurs="0" ref="environment"/>
        <xs:element minOccurs="0" ref="preproc"/>
      </xs:sequence>
      <xs:attribute name="native_url" use="required"/>
      <xs:attribute name="sf_url" use="required"/>
      <xs:attribute name="created" use="required"/>
      <xs:attribute name="filename" use="required"/>
      <xs:attribute name="status" use="required"/>
      <xs:attribute name="language" use="required"/>
      <xs:attribute name="working_directory"/>
      <xs:attribute name="uid" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="parse_errors" type="xs:integer"/>
  <xs:element name="cmdline" type="xs:string"/>
  <xs:element name="native_cmdline" type="xs:string"/>
  <xs:element name="environment" type="xs:string"/>
  <xs:element name="preproc" type="xs:string"/>
  <xs:element name="issue">
    <xs:complexType mixed="true">
      <xs:attribute name="created" use="required"/>
      <xs:attribute name="filename" use="required"/>
      <xs:attribute name="line" use="required"/>
      <xs:attribute name="severity" use="required"/>
      <xs:attribute name="errorcode" use="required"/>
    </xs:complexType>
  </xs:element>
  <xs:element name="diag" type="xs:string"/>
</xs:schema>
