Skip to content

XML Schema

This section shows the XML schema that Managed Services uses to generate a report.

<?xml version="1.0" encoding="UTF-8"?>
  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
    <xs:element name="MSPortalXmlReport">
      <xs:complexType>
        <xs:sequence>
          <xs:element name="version" type="xs:int"></xs:element>
          <xs:element name="generatedAt" type="xs:datetime"></xs:element>
          <xs:element name="vulnerabilities">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="vulnerability">
                  <xs:complexType>
                    <xs:sequence>
                      <xs:element name="title"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="systemic"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="severity"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="impactDescription"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="description"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="recommendation"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="stepsToReproduce"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="note"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="contextDescription"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="pci">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="id"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="description"
                              type="xs:string">
                            </xs:element>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="cwe">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="id"
                              type="xs:int">
                                </xs:element>
                            <xs:element name="category"
                            type="xs:string">
                              </xs:element>
                            <xs:element name="flawName"
                              type="xs:string">
                            </xs:element>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="cveId"
                        type="xs:int">
                      </xs:element>
                      <xs:element name="fixLocation"
                        type="xs:string">
                      </xs:element>
                      <xs:element name="cvss">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="version"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="vector"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="score"
                              type="xs:double">
                            </xs:element>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="nist">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="version"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="impact"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="likelihood"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="classification"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="impactDescription"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="likelihoodDescription">
                            </xs:element>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="owasp">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="family"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="threatClass"
                              type="xs:string">
                            </xs:element>
                            <xs:element name="threatSubClass"
                              type="xs:string">
                            </xs:element>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="sans">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="code"
                              type="xs:string">
                            </xs:element>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="referenceUrls">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="referenceUrl"
                              maxOccurs="unbounded" type="xs:string">
                            </xs:element>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                      <xs:element name="instances">
                        <xs:complexType>
                          <xs:sequence>
                            <xs:element name="instance"
                              maxOccurs="unbounded">
                              <xs:complexType>
                                <xs:sequence>
                                  <xs:element name="id"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="targetId"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="targetName"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="targetUrl"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="serviceType"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="testType"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="type"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="url"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="state"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="parameters">
                                    <xs:complexType>
                                      <xs:element name="parameter"
                                        maxOccurs="unbounded">
                                        <xs:complexType>
                                          <xs:sequence>
                                            <xs:element name="type"
                                              type="xs:string">
                                            </xs:element>
                                            <xs:element name="name"
                                              type="xs:string">
                                            </xs:element>
                                            <xs:element name="value"
                                              type="xs:string">
                                            </xs:element>
                                          </xs:sequence>
                                        </xs:complexType>
                                      </xs:element>
                                    </xs:complexType>
                                  </xs:element>
                                  <xs:element
                                    name="instanceStepsToReproduce"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="status"
                                    type="xs:string">
                                  </xs:element>
                                  <xs:element name="occurences">
                                    <xs:complexType>
                                      <xs:sequence>
                                        <xs:element name="occurence"
                                          maxOccurs="unbounded">
                                          <xs:complexType>
                                            <xs:sequence>
                                              <xs:element name="open">
                                                <xs:complexType>
                                                  <xs:sequence>
                                                    <xs:element
                                                      name="date"
                                                      type="xs:datetime">
                                                    </xs:element>
                                                    <xs:element
                                                      name="testId"
                                                      type="xs:string">
                                                    </xs:element>
                                                  </xs:sequence>
                                                </xs:complexType>
                                              </xs:element>
                                              <xs:element name="close">
                                                <xs:complexType>
                                                  <xs:sequence>
                                                    <xs:element
                                                      name="date"
                                                      type="xs:datetime">
                                                    </xs:element>
                                                    <xs:element
                                                      name="testId"
                                                      type="xs:string">
                                                    </xs:element>
                                                  </xs:sequence>
                                                </xs:complexType>
                                              </xs:element>
                                              <xs:element name="retest">
                                                <xs:complexType>
                                                  <xs:sequence>
                                                    <xs:element
                                                      name="date"
                                                      type="xs:datetime">
                                                    </xs:element>
                                                    <xs:element
                                                      name="testId"
                                                      type="xs:string">
                                                    </xs:element>
                                                  </xs:sequence>
                                                </xs:complexType>
                                              </xs:element>
                                            </xs:sequence>
                                          </xs:complexType>
                                        </xs:element>
                                      </xs:sequence>
                                    </xs:complexType>
                                  </xs:element>
                                  <xs:element name="pocs">
                                    <xs:complexType>
                                      <xs:sequence>
                                        <xs:element name="poc">
                                          <xs:complexType>
                                            <xs:sequence>
                                              <xs:element
                                                name="description"
                                                type="xs:string">
                                              </xs:element>
                                              <xs:element name="url"
                                                type="xs:string">
                                              </xs:element>
                                            </xs:sequence>
                                          </xs:complexType>
                                        </xs:element>
                                      </xs:sequence>
                                    </xs:complexType>
                                  </xs:element>
                                </xs:sequence>
                              </xs:complexType>
                            </xs:element>
                          </xs:sequence>
                        </xs:complexType>
                      </xs:element>
                    </xs:sequence>
                  </xs:complexType>
                </xs:element>
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:sequence>
      </xs:complexType>
    </xs:element>
  </xs:schema>

Parent topic:Generating an XML Report