<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-lehmann-idmefv2-00" ipr="trust200902" consensus="true" obsoletes="4765">
  <front>
    <title abbrev="IDMEFv2">The Incident Detection Message Exchange Format version 2 (IDMEFv2)</title>
    <author fullname="Gilles Lehmann">
      <organization>Telecom Sud Paris</organization>
      <address>
        <postal>
          <postalLine>France</postalLine>
        </postal>
        <email>gilles.lehmann@telecom-sudparis.eu</email>
      </address>
    </author>
    <author fullname="Thomas Andrejak" asciiFullname="Thomas Andrejak">
      <organization>CS GROUP</organization>
      <address>
        <postal>
          <postalLine>France</postalLine>
        </postal>
        <email>thomas.andrejak@csgroup.eu</email>
      </address>
    </author>
    <author fullname="Francois Poirotte" asciiFullname="Francois Poirotte">
      <organization>CS GROUP</organization>
      <address>
        <postal>
          <postalLine>France</postalLine>
        </postal>
        <email>francois.poirotte@csgroup.eu</email>
      </address>
    </author>
    <date day="15" month="October" year="2022"/>
    <keyword>RFC4765</keyword>
    <keyword>RFC4766</keyword>
    <keyword>IDMEF</keyword>
    <abstract>
      <t>The Incident Detection Message Exchange Format version 2 (IDMEFv2) provides a
        way to describe any incidents detected on cyber and/or physical
        infrastructures.</t>
      <t>The format is agnostic so it can be used in standalone or combined cyber (SIEM),
        physical (PSIM) and availability (NMS) monitoring systems. IDMEFv2 can also be used to
        describe cyber and physical potential threats (CTI/PTI).</t>
      <t>IDMEFv2 improves situational awareness by facilitating correlation of multiple types
        of events using the same base format thus enabling efficient detection of complex
        and combined cyber and physical attacks on critical infrastructures.</t>
      <t>If approved this draft will obsolete RFC4765.</t>
    </abstract>
  </front>
  <middle>
    <section>
      <name>Introduction</name>
      <t>Today's threats are a result of hybrid attacks targeting both physical
            and cyber assets. The adoption and integration of Internet of Things (IoT)
            and Industrial Internet of Things (IIoT) devices have led to an increasingly
            interconnected mesh of cyber-physical systems (CPS), which expands
            the attack surface and blurs the once clear functions of cybersecurity
            and physical security. Meanwhile, efforts to build cyber resilience and
            accelerate the adoption of advanced technologies can also introduce or
            exacerbate security risks in this evolving threat landscape.</t>
      <t>In the meantime, although security is often presented as the
            Confidentiality-Integrity-Availability triad, performance and availability
            management systems are still run independently from security management systems
            making global correlation difficult.</t>
      <t>The Incident Detection Message Exchange Format (IDMEF) is intended to be a
            standard data format that incident detection systems can use to report alerts
            about events that they deem noticeable. The format enables interoperability
            among commercial, open source, and research systems, allowing users
            to mix-and-match the deployment of these systems according to their strong
            and weak points to obtain an optimal implementation.</t>
      <t>The Incident Detection Message Exchange Format is a format for representing
            different types of events:</t>
      <ul>
            <li>
                <t>Cyber-security events (e.g. authentication failure/success, virus/malware
                    detection, bruteforce/scan detection, etc.)</t>
            </li>
            <li>
                <t>Physical security events (e.g. intrusion detection, object detection,
                    face or activity recognition, fire/smoke/noise/rain detection, etc.)</t>
            </li>
            <li>
                <t>Availability/observability/performance events (e.g. system failure, service malfunction,
                    performance decrease, etc.)</t>
            </li>
            <li>
                <t>Natural hazards events (e.g. wildfires, avalanches, droughts, earthquakes,
                    etc.)</t>
            </li>
        </ul>
      <figure anchor="global_view">
        <name>IDMEF Use Architecture</name>
        <artwork type="ascii-art" align="center">                   +-----------------------------+    +---------+
                   |      "Universal" SI(E)M     |&lt;---| PTI/CTI |
                   +-----------------------------+    +---------+
                       |          |         |
                    +------+   +-----+   +------+
    Managers        | PSIM |   | NMS |   | SIEM |
                    +------+   +-----+   +------+
                       |          |         |
                   +--------+ +----------+ +-----+
Detectors/Sensors  |Physical| |Monitoring| |Cyber|
                   +--------+ +----------+ +-----+
                       |           |          |
                  +-------------------------------+
                  |   Critical Infrastructure     |
                  +-------------------------------+</artwork>
      </figure>
      <t>IDMEF improves situational awareness by enabling correlation of multiple types
            of events using the same base format.</t>
      <t>This document defines a model for the purpose of describing these events. It
            also defines serialization methods so that such messages can be exchanged
            between Computer Security Incident Response Teams (CSIRTs) or those responsible
            for security incident handling for service providers (SPs). The defined
            serializations make it easy for CSIRTs to exchange data in a way that is both
            easy and secure for machines to parse.</t>
      <section>
        <name>Issues and limitations in RFC 4765</name>
        <t>The original IDMEF (version 1) RFC <xref target="RFC4765"/> was specifically designed
                to describe alerts related to cyber intrusions. As such, its data model makes
                it hard to describe other types of (cyber) incidents.</t>
        <t>IDMEF v1 defines many classes and attributes, adding a lot of complexity.
                Some constructs (e.g. use of recursive Analyzer instances, unlimited usage
                of the Linkage class, etc.) make the implementators' job hard.</t>
        <t>RFC 4765 uses the Extensible Markup Language (XML) to describe IDMEF classes
                and attributes, using an XML Document Type Definition. It does not specify
                however if the XML representation of IDMEF messages must be used when exchanging
                messages with other systems/tools. In practice, this lack of a requirement
                means that competiting implementations may use incompatible protocols to
                do so.</t>
        <t>In addition, XML suffers from a number of specific flaws which can be easy to
                overlook and difficult to address depending on the tooling used:</t>
        <ul>
                <li>
                    <t>XML External Entity (XXE) vulnerabilities may be used to include external
                        (potentially remote) content inside the XML document during processing.
                        This may impact the integrity of the IDMEF messages, result in unintentional
                        information disclosure, etc.</t>
                </li>
                <li>
                    <t>XInclude processing may result in the inclusion of potentially remote content,
                        similar to the XXE vulnerability above.</t>
                </li>
                <li>
                    <t>XML Entity bombs like the so-called "Billion laughs" attack can result
                        in a denial of service against IDMEF processors by exhausting the system's
                        CPU and memory resources.</t>
                </li>
            </ul>
        <t>As such, the use of XML as an exchange format can be problematic.</t>
      </section>
      <section>
        <name>Changes from RFC 4765</name>
        <t>Several changes have been made compared to the original IDMEF v1 RFC
                <xref target="RFC4765"/>:</t>
        <ul>
                <li>
                    <t>The first version of IDMEF (i.e. the Intrusion Detection Message Exchange Format)
                        was specifically designed to describe only alerts related to cyber intrusions.
                        This document redefines IDMEF as the "Incident Detection Message Exchange Format".</t>
                    <t>This change is made to include other sources of incidents that may impact a
                        company's security. For instance, the failure of a service may be due
                        to a physical intrusion followed by sabotage, some hardware failure,
                        a natural disaster, etc., or to a combination of several types of incidents.</t>
                    <t>As an intrusion is only part of the incidents that IDMEF v2 intends to describe,
                        it makes sense to allow IDMEF to address a broader scope.
                        In addition, this means that this documents is semantically backward compatible
                        with the former RFC.</t>
                </li>
                <li>
                    <t>Simplicity and ease of adoption have been preferred over completeness and
                        complexity. As a result of this simplification, the number of classes and
                        attributes has been reduced. Moreover, the model has been reworked to limit
                        the depth of classes to two levels.</t>
                </li>
                <li>
                    <t>A "Sensor" class has been added to help distinguish detection systems made
                        of a separate detector and analyzer (e.g. a camera recording a video feed
                        and the backend server/software component analyzing this feed).</t>
                </li>
                <li>
                    <t>An "Attachment" class has been added to attach additional data to the alert
                        (e.g. a video clip, a malware sample, etc.).</t>
                </li>
                <li>
                    <t>The "Observable" and "Vector" classes have been added to describe the attack
                        vectors and observable effects/measurements related to the incident.</t>
                </li>
                <li>
                    <t>The Hearbeat class has been abandonned.</t>
                </li>
            </ul>
      </section>
      <section>
        <name>About the JSON serialization method</name>
        <t>Although the IDMEF data model strives to be independent from any
                particular representation, such a serialization is necessary if IDMEF
                is to be used as an exchange format.  Moreover, an interoperable
                serialization scheme is required for compatibility reasons.</t>
        <t>This document describes a serialization method for IDMEF messages
                based on the JavaScript Object Notation [RFC8259].  This choice is
                motivated by the following factors:</t>
        <ul>
                <li>
                    <t>The format is already largely used inside the cybersecurity
                        community, e.g. to replace the syslog format for log shopping. It
                        thus lowers the level of entry for implementors.</t>
                </li>
                <li>
                    <t>JSON is often seen as a simpler format compared to XML, from both
                        an implementor's and user's point of view.  Because of the way XML
                        works, XML documents are usually larger than JSON ones when
                        representing the same content, due for example to the use of
                        namespaces and the repetition of the elements' tag name inside the
                        markup.</t>
                </li>
                <li>
                    <t>An effort has been made to make IDMEF useable from end to end,
                        i.e. from the incident detectors to the operator. IDMEF messages
                        must therefore be easy to store in a database, especially NoSQL
                        databases which are often used to store very large amounts of
                        data. JSON is a good format for native NoSQL storage.</t>
                </li>
            </ul>
        <t>In contrast, the authors acknowledge that:</t>
        <ul>
                <li>
                    <t>JSON may suffer from issues of its own. For instance, string
                        processing may require additional normalization steps (e.g. when
                        comparing two JSON strings).  and two JSON parsers may handle
                        duplicate members inside a JSON object differently.  These
                        concerns are largely covered in [RFC8259] and in this document's
                        Security Considerations (Section 6).</t>
                </li>
                <li>
                    <t>Other formats similar to JSON could also fit this role (e.g. YAML, TOML).
                        Those formats are less widely used by incident management tools and operators.
                        They may also introduce vulnerabilities and incompatibilities of their own
                        (e.g. there are multiple versions of YAML, a YAML document may call
                        implementation-specific functions used "tags", etc.). In addition, most of
                        those formats focus on human-readability, while for the purpose of IDMEF, the
                        main objectives are performance and security.</t>
                </li>
            </ul>
      </section>
      <section>
        <name>Relationship between IDMEFv2 and other event/incident formats</name>
        <t>IDMEFv1 : IDMEFv2 (Incident Detection) replaces and obsoletes IDMEFv1
                (Intrusion Detection) by covering a wider spectrum.</t>
        <t>IODEFv2 : IDMEFv2 helps detect incident that will after be fully described with
                IODEFv2. IDMEF is used upstream IODEFv2.</t>
        <t>Syslog : IDMEFv2 can be used as an alternative to syslog for detectors needing
                to log detailed information of an event and/or an incident.</t>
        <t>SNMP : SNMP polls information from devices which is then compared to thresholds
                to detect incident. IDMEFv2 can be used when incident is detected downstream of
                SNMP. IDMEFv2 can have a similar role as SNMP Traps.</t>
        <t>STIX : IDMEFv2 can help gathering information for creation of CTI.</t>
        <t>SIEM propriatory formats (CEF, LEEF, ECS, CIM, ...) : By covering physical and
                monitoring incident type, IDMEFv2 offers a wider spectrum than those formats.
                Gateways between IDMEFv2 and those formats can be developped.</t>
      </section>
    </section>
    <section>
      <name>Terminology</name>
      <section>
        <name>Keywords</name>
        <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
                "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
                document are to be interpreted as described in <xref target="RFC2119"/>.</t>
      </section>
      <section>
        <name>Normative sections</name>
        <t>Implementations of IDMEFv2 are REQUIRED to fully implement:</t>
        <ul>
                <li>
                    <t>The data types defined in <xref target="data-types"/></t>
                </li>
                <li>
                    <t>The data model defined in <xref target="model"/></t>
                </li>
                <li>
                    <t>The JavaScript Object Notation (JSON) serialization method <xref target="json-sm"/>.</t>
                </li>
            </ul>
      </section>
      <section>
        <name>Concepts related to event processing</name>
        <section>
          <name>Event</name>
          <t>An event is something that triggered a notice. Any incident starts off as an event
                    or a combination of events, but not all events result in an incident.
                    An event need not be an indication of wrongdoing. E.g. someone successfully logging in
                    or entering a building is an event.</t>
        </section>
        <section>
          <name>Incident</name>
          <t>An incident is an event that compromises or has a significant probability of compromising
                    at least one of the organization's security criteria such as Confidentiality, Integrity
                    or Availability.
                    An incident may affect a production tool, personnel, etc.
                    It may be logical, physical or organizational in nature.
                    Last but not least, an incident may be caused on purpose or by accident.</t>
        </section>
        <section>
          <name>Alert</name>
          <t>An alert is a notification/message that a particular event/incident (or series of events/incidents)
                    has occurred.</t>
        </section>
        <section>
          <name>Attack</name>
          <t>An attack is an attempt to destroy, expose, alter, disable, steal or gain unauthorized access
                    to or make unauthorized use of a cyber or physical asset. An attack is one or many kinds of
                    incidents.</t>
        </section>
        <section>
          <name>Correlation</name>
          <t>Correlation is the identification of relationships between two or more events.</t>
        </section>
        <section>
          <name>Aggregation</name>
          <t>Aggregation is the consolidation of similar events into a single event.</t>
        </section>
      </section>
    </section>
    <section anchor="data-types">
      <name>The IDMEF Data Types</name>
      <t>Each object inside the IDMEF data model has an associated data type.
            This type may be used to validate the content of incoming IDMEF messages.</t>
      <section>
        <name>Classes</name>
        <t>The classes are meant to group related attributes together.
                Some of the classes may be instanciated multiple times (e.g. Source, Target, etc.)
                while others may only appear once in an IDMEF message (e.g. Analyzer).</t>
      </section>
      <section>
        <name>Numbers</name>
        <section anchor="data-types-integers">
          <name>Integers</name>
          <t>Integers inside the IDMEF data model are expressed using the following ABNF <xref target="RFC5234"/>
                    grammar:</t>
          <sourcecode type="none">integer         =  *1minus int
int             =  zero / ( digit1-9 *DIGIT )
minus           =  %x2D                           ; -
zero            =  %0x30                          ; 0
digit1-9        =  %x31-39                        ; 1-9</sourcecode>
          <t>E.g. 123.</t>
          <t>Such values are indicated with the "INT" type annotation in the model.</t>
        </section>
        <section>
          <name>Floating-point values</name>
          <t>Floating-point values inside the IDMEF data model are expressed using
                    the following ABNF grammar:</t>
          <sourcecode type="none">float           =  integer *1frac
frac            =  decimal-point 1*DIGIT
decimal-point   =  %x2E                            ; .</sourcecode>
          <t>This grammar reuses some of the production rules listed in <xref target="data-types-integers"/>.</t>
          <t>E.g. 12.34.</t>
          <t>Such values are indicated with the "FLOAT" type annotation in the model.</t>
        </section>
      </section>
      <section>
        <name>Strings</name>
        <t>Strings are series of characters from the <xref target="UNICODE"/> standard
                and are used to represent a text.</t>
        <t>For readability, this document uses quotes (") to delimit strings, but please note
                that these quotes are not syntactically part of the actual strings.</t>
        <t>E.g. "Hello world".</t>
        <t>Some of the strings used in the IDMEFv2 data model follow a stricter syntax.
                These are included below for completeness.</t>
        <t>Such values are indicated with the "STRING" type annotation in the model.</t>
        <section anchor="data-types-enums">
          <name>Enumerations</name>
          <t>Enumerations are special strings used when valid values for an IDMEF attribute
                    are restricted to those present in a predefined list.</t>
          <t>Such values are indicated with the "ENUM" type annotation in the model.</t>
        </section>
        <section>
          <name>Timestamps</name>
          <t>Timestamps are used to indicate a specific moment in time.
                    The timestamps used in the IDMEF data model follow the syntax defined by the
                    "date-time" production rule of the grammar in <xref target="RFC3339"/> ch 5.6.</t>
          <t>E.g. "1985-04-12T23:59:59.52Z" represents a moment just before April 5th, 1985
                    in Coordinated Universal Time (UTC).</t>
          <t>Such values are indicated with the "TIMESTAMP" type annotation in the model.</t>
        </section>
        <section>
          <name>Geographical Locations</name>
          <t>Some attributes inside the IDMEF data model may refer to geographical locations
                    using a set of coordinates. The reference system for all geographical coordinates
                    is a geographic coordinate reference system, using the World Geodetic System 1984
                    <xref target="WGS84"/>. The reference system used is the same as for the Global Positioning
                    System (GPS).</t>
          <t>The format for such values can be either "latitude,longitude" or "latitude,longitude,altitude".
                    Each of these coordinates is represented as a floating-point value. The latitude and longitude
                    are expressed in degrees while the altitude is expressed in meters.</t>
          <t>E.g. "48.8584,2.2945,276.13" matches the (3-dimensional) geographical location
                    for the top floor or the Eiffel Tower located in Paris, France, while "48.8584,2.2945"
                    matches the same location in two dimensions (with the altitude removed).</t>
          <t>Such values are indicated with the "GEOLOC" type annotation in the model.</t>
        </section>
        <section>
          <name>UNECE Location Codes (UN/LOCODE)</name>
          <t>Some attributes inside the IDMEF data model may refer to geographical locations
                    using Locations Codes. These codes can be assimilated to an enumeration, where the
                    list of possible values is defined in the United Nations Economic Commission
                    for Europe (UNECE) Codes for Trade <xref target="UN-LOCODE"/>.</t>
          <t>E.g. "FR PAR" is the Location Code for the city of Paris, France.</t>
          <t>Such values are indicated with the "UNLOCODE" type annotation in the model.</t>
        </section>
        <section>
          <name>Uniform Resource Identifiers (URIs)</name>
          <t>The IDMEF data model uses Uniform Resource Identifiers (URIs), as defined in
                    <xref target="RFC3986"/>, when referring to external resources.
                    Unless otherwise specified, either a Uniform Resource Location (URL) or
                    a Uniform Resource Name (URN) may be used where a URI is expected.</t>
          <t>E.g. both "https://example.com/resource" and "urn:myapp:resource" are valid
                    Uniform Resource Identifiers.</t>
          <t>Such values are indicated with the "URI" type annotation in the model.</t>
        </section>
        <section>
          <name>IP Addresses</name>
          <t>IP addresses inside the IDMEF data model are expressed as strings using the
                    traditionnal dotted-decimal notation for IPv4 addresses (defined by the
                    "dotnum" production rule in the grammar in <xref target="RFC5321"/>),
                    while IPv6 addresses are expressed using the text representation defined in
                    <xref target="RFC4291"/> ch 2.2.</t>
          <t>E.g. "192.0.2.1" represents a valid IPv4 address, while "::1/128" represents
                    a valid IPv6 address.</t>
          <t>It is RECOMMENDED that implementations follow the recommendations for IPv6
                    text representation stated in <xref target="RFC5952"/>.</t>
          <t>Such values are indicated with the "IP" type annotation in the model.</t>
        </section>
        <section>
          <name>E-mail addresses</name>
          <t>E-mail addresses inside the IDMEF data model are expressed as strings
                    using the address specification syntax defined in <xref target="RFC5322"/> ch 3.4.1.</t>
          <t>E.g. "root@example.com".</t>
          <t>Such values are indicated with the "EMAIL" type annotation in the model.</t>
        </section>
        <section>
          <name>Attachment and Observable names</name>
          <t>Attachments and Observables inside the IDMEF data model are identified using
                    a unique name, composed of a string whose character set is limited to the ASCII
                    letters (A-Z a-z) and digits (0-9).</t>
          <t>E.g. "state" is a valid name for an attachment or an observable.</t>
          <t>The constraint on name unicity is enforced per class. That is, it is perfectly
                    okay for an attachment and an observable to use the same name, but it is not
                    possible for two attachments or two observables to share the same name.</t>
          <t>Such values are indicated with the "ID" type annotation in the model.</t>
        </section>
        <section>
          <name>Media types</name>
          <t>Media types are used in the IDMEF data model to describe an attachment's content.
                    The syntax for such values is defined in <xref target="RFC2046"/>.</t>
          <t>IANA keeps a list of all currently registered media types in the Media Types
                    registry .</t>
          <t>E.g. "application/xml" or "text/plain; charset=utf-8".</t>
          <t>Such values are indicated with the "MEDIATYPE" type annotation in the model.</t>
        </section>
        <section>
          <name>Universally Unique IDentifiers (UUIDs)</name>
          <t>Universally Unique Identifiers (UUIDs) are used to uniquely identify IDMEF messages.
                    It is also possible for an IDMEF message to reference other IDMEF messages using
                    their UUIDs. The syntax for UUIDs is defined in <xref target="RFC4122"/>.</t>
          <t>To limit the risk of UUID collisions, implementors SHOULD NOT generate version 4
                    UUIDs (randomly or pseudo-randomly generated UUIDs).</t>
          <t>E.g. "ba2e4ef4-8719-42bb-a712-d6e8871c5c5a".</t>
          <t>UUIDs are case-insensitive when used in comparisons.</t>
          <t>Such values are indicated with the "UUID" type annotation in the model.</t>
        </section>
        <section>
          <name>Protocol Names</name>
          <t>Such values are indicated with the "PROTOCOL" type annotation in the model.</t>
        </section>
        <section>
          <name>IDMEF Paths</name>
          <t>This document defines a way to represent the path to every possible attribute
                    inside an IDMEF message. For conciseness, the top-level "Alert" class is omitted
                    from the path.</t>
          <t>This representation can be used in contexts where the path to an IDMEF attribute
                    is expected. An example of such usage can be seen in the definition of the
                    "AggrCondition" attribute inside the <xref target="class_alert">Alert class</xref>.</t>
          <t>The syntax for these IDMEF paths is expressed in the following ABNF grammar:</t>
          <sourcecode type="none">class-name      =  "Analyzer" / "Sensor" / "Source" / "Target" /
                   "Vector" / "Observable" / "Attachment"
attribute-name  =  1*ALPHA
class-reference =  class-name "."
num             =  *1"-" 1*DIGIT
list-index      =  "(" num ")"
path            =  *1class-reference attribute-name *1list-index</sourcecode>
          <t>Valid attribute names are limited to those defined for the specified
                    class-reference (or in the top-level "Alert" class if class-reference
                    is omitted).</t>
          <t>For example, the following path refers to the "CeaseTime" attribute
                    of the top-level "Alert" class: "CeaseTime".</t>
          <t>Likewise, the following path refers to the "Name" attribute of the
                    "Analyzer" class: "Analyzer.Name".</t>
          <t>For attributes defined as lists (see <xref target="data-types-lists"/>), the path may
                    include the (0-based) index for an entry inside the list.
                    The index defaults to 0 if omitted.
                    This means that several (valid) representations may be used to reference
                    the same IDMEF attribute when list attributes are involved.</t>
          <t>For example, both of the following paths refer to the IP address of the first
                    source associated with an IDMEF message:</t>
          <sourcecode type="none">Source.IP
Source(0).IP</sourcecode>
          <t>Compatible implementations MUST reject paths that reference an unknown
                    class, an unknown attribute, or use a list-index for an IDMEF field
                    which is not defined as a list.</t>
          <t>A compatible implementation MUST also normalize paths before comparing them
                    (e.g. by stripping the text "(0)" from paths referring to list attributes).</t>
        </section>
        <section>
          <name>Hashes</name>
          <t>Hashes are sometimes used inside the data model to protect the integrity
                    (and optionally, authenticity) of attachments.</t>
          <t>The syntax for these values is "function:hash_result", where "function" refers to
                    one of the hashing function names listed in 
                    and "hash_result" contains the hexadecimal notation for the hash result obtained
                    by calling the specified hash function on the input value.</t>
          <t>In the context of IDMEF, either a keyless or keyed hash function may be used
                    to process the raw input value.</t>
          <t>E.g. "sha256:a02735ed8b10ad432d557bd4849c0dac3b23d64706e0618716d6df2def338374"</t>
          <t>Hashes are case-insensitive when used in comparisons.</t>
          <t>Such values are indicated with the "HASH" type annotation in the model.</t>
        </section>
      </section>
      <section anchor="data-types-lists">
        <name>Lists</name>
        <t>Some attributes of the IDMEF data model accept ordered lists of values.</t>
        <t>Such ordered lists are indicated with the "X[]" type annotation in the model.
                where "X" refers to one of the data types defined in <xref target="data-types"/>.
                For example, "ENUM[]" refers to an ordered list of enumeration values.</t>
      </section>
    </section>
    <section anchor="model">
      <name>The IDMEF Data Model</name>
      <t>In this section, the individual components of the IDMEF data model will be discussed in detail.  For each class, the semantics will be described.</t>
      <section>
        <name>Overview</name>
        <t>An IDMEF message is composed of an instance of the <xref target="class_alert">Alert class</xref> representing
                the overall properties of the message. It also contains exactly one instance of the
                <xref target="class_analyzer">Analyzer class</xref> and zero or more instances of the <xref target="class_sensor">Sensor class</xref>.</t>
        <t>The message may also describe various aspects of an incident using the <xref target="class_source">Source</xref>,
                <xref target="class_target">Target</xref> and <xref target="class_vector">Vector</xref> classes.</t>
        <t>Last but not least, it may also include zero or more instances of the
                <xref target="class_attachment">Attachment class</xref>, e.g. captured files or network packets related
                to the event, as well as zero or more instances of the <xref target="class_observable">Observable class</xref>
                containing information that may help in understanding and analyzing the event, such as
                a description of running processes at the time the event occurred, a description of
                the targeted machine's configuration, etc.</t>
        <t>The relationship between the main Alert class and other classes of the data model
                is shown in <xref target="diagram-classes"/> (attributes are omitted for clarity).</t>
        <figure anchor="diagram-classes">
          <name>IDMEFv2 Classes</name>
          <artwork type="ascii-art" align="center">+-------+            +-------------
| Alert |&lt;&gt;----------|  Analyzer  |
+-------+            +------------+
|       |       0..* +------------+
|       |&lt;&gt;----------|   Sensor   |
|       |            +------------+
|       |       0..* +------------+
|       |&lt;&gt;----------|   Source   |
|       |            +------------+
|       |       0..* +------------+
|       |&lt;&gt;----------|   Target   |
|       |            +------------+
|       |       0..* +------------+
|       |&lt;&gt;----------|   Vector   |
|       |            +------------+
|       |       0..* +------------+
|       |&lt;&gt;----------| Observable |
|       |            +------------+
|       |       0..* +------------+
|       |&lt;&gt;----------| Attachment |
+-------+            +------------+</artwork>
        </figure>
        <t>It is important to note that the data model does not specify how an alert
                should be categorized or identified.
                For example, an attacker scanning a network for machines listening on a specific
                port may be identified by one analyzer as a single attack against multiple targets,
                while another analyzer may identify it as multiple attacks from a single source.
                However, once an analyzer has determined the type of alert it plans on sending,
                the data model dictates how that alert should be formatted.</t>
      </section>
      <section anchor="class_alert">
        <name>The Alert Class</name>
        <t>The Alert class contains high level information about the event that triggered the alert.</t>
        <figure anchor="class_alert_diagram">
          <name>The Alert class</name>
          <artwork type="ascii-art" align="center">+---------------------------+
|           Alert           |
+---------------------------+
| STRING      Version       |
| UUID        ID            |
| STRING      Entity        |
| ENUM[]      Category      |
| ENUM        Cause         |
| STRING      Description   |
| ENUM        Status        |
| ENUM        Severity      |
| FLOAT       Confidence    |
| STRING      Note          |
| TIMESTAMP   CreateTime    |
| TIMESTAMP   StartTime     |
| TIMESTAMP   CeaseTime     |
| TIMESTAMP   DeleteTime    |
| STRING[]    AltNames      |
| STRING[]    AltCategory   |
| URI[]       Ref           |
| UUID[]      CorrelID      |
| CONDITION[] AggrCondition |
| UUID[]      PredID        |
| UUID[]      RelID         |
+---------------------------+</artwork>
        </figure>
        <t>The aggregate classes that make up Alert are:</t>
        <dl newline="true">
                    <dt>Analyzer</dt>
                    <dd>
                        <t>Exactly one.
                            An instance of the <xref target="class_analyzer">Analyzer class</xref> that describes the
                            tool/device responsible for the analysis that resulted in the alert being
                            sent.</t>
                    </dd>
                
                    <dt>Sensor</dt>
                    <dd>
                        <t>Zero or more.
                            Instances of the <xref target="class_sensor">Sensor class</xref> used to describe the sensor(s)
                            that captured the information used during the analysis.</t>
                        <t>Depending on the tools/devices used to detect incidents, an Analyzer may rely
                            on the output from a single sensor or from multiple sensors to generate alerts.
                            In addition, the Analyzer and Sensor may actually be part of the same physical
                            device and may share some of their attributes (e.g. IP, Hostname, Model, etc.).</t>
                    </dd>
                
                    <dt>Source</dt>
                    <dd>
                        <t>Zero or more.
                            Instances of the <xref target="class_source">Source class</xref> used to describe the source(s)
                            of the incident (e.g. attackers, faulty device, etc.).</t>
                    </dd>
                
                    <dt>Target</dt>
                    <dd>
                        <t>Zero or more.
                            Instances of the <xref target="class_target">Target class</xref> used to describe the target(s)
                            of the incident, i.e. the impacted devices/users/services.</t>
                    </dd>
                
                    <dt>Vector</dt>
                    <dd>
                        <t>Zero or more.
                            Instances of the <xref target="class_vector">Vector class</xref> used to describe the means
                            which were employed by the sources to disrupt the targets.</t>
                        <t>E.g. to describe a car crashing into a building and resulting in service loss.</t>
                    </dd>
                
                    <dt>Observable</dt>
                    <dd>
                        <t>Zero or more.
                            Instances of the <xref target="class_observable">Observable class</xref> used to describe
                            a feature or phenomenon that can be observed or measured for the purposes
                            of detecting malicious behavior.</t>
                        <t>This may include anything that may help security analysts in their understanding
                            and analysis of the incident.</t>
                        <t>If the information is available as an electronic file,
                            the <xref target="class_attachment">Attachment class</xref> SHOULD be used instead.</t>
                    </dd>
                
                    <dt>Attachment</dt>
                    <dd>
                        <t>Zero or more.
                            Instances of the <xref target="class_attachment">Attachment class</xref> used to describe
                            the electronic artifacts captured in relation with the incident.</t>
                        <t>The intent of the Attachment class is to keep track of the electronic files
                            left as a trail during the incident.
                            This may include things like on-disk files (e.g. malware samples), network
                            packet captures, videos or still images from a camera feed, etc.</t>
                        <t>If the information is not readily-available as an electronic file,
                            consider using the <xref target="class_observable">Observable class</xref> instead.</t>
                    </dd>
                </dl>
        <t>The Alert class has the following attributes:</t>
        <dl newline="true">
                    <dt>Version</dt>
                    <dd>
                        <t>Mandatory.
                            The version of the IDMEF format in use by this alert.</t>
                        <t>For this version of the IDMEF specification, this is the constant string "2.0".</t>
                    </dd>
                
                    <dt>ID</dt>
                    <dd>
                        <t>Mandatory.
                            Unique identifier for the alert.</t>
                    </dd>
                
                    <dt>Entity</dt>
                    <dd>
                        <t>Optional.
                            Tenant ID to support multi-tenancy (e.g. decentralized infrastructure,
                            local agency, subsidiary  company, etc.).</t>
                        <t>Should be used when there are multiple sites/locations or multiple tenants
                            (e.g. by Managed Security Services Providers).</t>
                    </dd>
                
                    <dt>Category</dt>
                    <dd>
                        <t>Optional.
                            The incident's category &amp; subcategory as listed in <xref target="ENISA-RIST"/>
                            using the format "category.subcategory" (e.g. "Attempt.Exploit").</t>
                        <table anchor="enum-alert-category"><name>Incident taxonomy</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>Abusive.Spam</t>
                                        </td>
                                        <td>
                                            <t>Or 'Unsolicited Bulk Email', this means that the recipient has not granted verifiable permission for the message to be sent and that the message is sent as part of a larger collection of messages, all having a functionally comparable content. This IOC refers to resources, which make up a SPAM infrastructure, be it a harvesters like address verification, URLs in spam e-mails etc.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>Abusive.Harassment</t>
                                        </td>
                                        <td>
                                            <t>Discretization or discrimination of somebody, e.g. cyber stalking, racism or threats against one or more individuals.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>2</t>
                                        </td>
                                        <td>
                                            <t>Abusive.Illicit</t>
                                        </td>
                                        <td>
                                            <t>Child Sexual Exploitation (CSE), Sexual content, glorification of violence, etc.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>3</t>
                                        </td>
                                        <td>
                                            <t>Malicious.System</t>
                                        </td>
                                        <td>
                                            <t>System infected with malware, e.g. PC, smartphone or server infected with a rootkit. Most often this refers to a connection to a sinkholed C2 server</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>4</t>
                                        </td>
                                        <td>
                                            <t>Malicious.Botnet</t>
                                        </td>
                                        <td>
                                            <t>Command-and-control server contacted by malware on infected systems.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>5</t>
                                        </td>
                                        <td>
                                            <t>Malicious.Distribution</t>
                                        </td>
                                        <td>
                                            <t>URI used for malware distribution, e.g. a download URL included in fake invoice malware spam or exploit-kits (on websites).</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>6</t>
                                        </td>
                                        <td>
                                            <t>Malicious.Configuration</t>
                                        </td>
                                        <td>
                                            <t>URI hosting a malware configuration file, e.g. web-injects for a banking trojan.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>7</t>
                                        </td>
                                        <td>
                                            <t>Recon.Scanning</t>
                                        </td>
                                        <td>
                                            <t>Attacks that send requests to a system to discover weaknesses. This also includes testing processes to gather information on hosts, services and accounts. Examples: fingerd, DNS querying, ICMP, SMTP (EXPN, RCPT, ...), port scanning.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>8</t>
                                        </td>
                                        <td>
                                            <t>Recon.Sniffing</t>
                                        </td>
                                        <td>
                                            <t>Observing and recording of network traffic (wiretapping).</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>9</t>
                                        </td>
                                        <td>
                                            <t>Recon.SocialEngineering</t>
                                        </td>
                                        <td>
                                            <t>Gathering information from a human being in a non-technical way (e.g. lies, tricks, bribes, or threats).</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>10</t>
                                        </td>
                                        <td>
                                            <t>Attempt.Exploit</t>
                                        </td>
                                        <td>
                                            <t>An attempt to compromise a system or to disrupt any service by exploiting vulnerabilities with a standardised identifier such as CVE name (e.g. buffer overflow, backdoor, cross site scripting, etc.)</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>11</t>
                                        </td>
                                        <td>
                                            <t>Attempt.Login</t>
                                        </td>
                                        <td>
                                            <t>Multiple login attempts (Guessing / cracking of passwords, brute force). This IOC refers to a resource, which has been observed to perform brute-force attacks over a given application protocol.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>12</t>
                                        </td>
                                        <td>
                                            <t>Attempt.NewSignature</t>
                                        </td>
                                        <td>
                                            <t>An attack using an unknown exploit.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>13</t>
                                        </td>
                                        <td>
                                            <t>Intrusion.AdminCompromise</t>
                                        </td>
                                        <td>
                                            <t>Compromise of a system where the attacker gained administrative privileges.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>14</t>
                                        </td>
                                        <td>
                                            <t>Intrusion.UserCompromise</t>
                                        </td>
                                        <td>
                                            <t>Compromise of a system using an unprivileged (user/service) account.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>15</t>
                                        </td>
                                        <td>
                                            <t>Intrusion.AppCompromise</t>
                                        </td>
                                        <td>
                                            <t>Compromise of an application by exploiting (un-)known software vulnerabilities, e.g. SQL injection.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>16</t>
                                        </td>
                                        <td>
                                            <t>Intrusion.SysCompromise</t>
                                        </td>
                                        <td>
                                            <t>Compromise of a system, e.g. unauthorised logins or commands. This includes compromising attempts on honeypot systems.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>17</t>
                                        </td>
                                        <td>
                                            <t>Intrusion.Burglary</t>
                                        </td>
                                        <td>
                                            <t>Physical intrusion, e.g. into corporate building or data-centre.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>18</t>
                                        </td>
                                        <td>
                                            <t>Availability.DoS</t>
                                        </td>
                                        <td>
                                            <t>Denial of Service attack, e.g. sending specially crafted requests to a web application which causes the application to crash or slow down.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>19</t>
                                        </td>
                                        <td>
                                            <t>Availability.DDoS</t>
                                        </td>
                                        <td>
                                            <t>Distributed Denial of Service attack, e.g. SYN-Flood or UDP-based reflection/amplification attacks.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>20</t>
                                        </td>
                                        <td>
                                            <t>Availability.Misconf</t>
                                        </td>
                                        <td>
                                            <t>Software misconfiguration resulting in service availability issues, e.g. DNS server with outdated DNSSEC Root Zone KSK.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>21</t>
                                        </td>
                                        <td>
                                            <t>Availability.Theft</t>
                                        </td>
                                        <td>
                                            <t>Physical theft, e.g. stolen laptop computer, stolen USB key, stolen paper document, etc.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>22</t>
                                        </td>
                                        <td>
                                            <t>Availability.Sabotage</t>
                                        </td>
                                        <td>
                                            <t>Physical sabotage, e.g cutting wires or malicious arson.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>23</t>
                                        </td>
                                        <td>
                                            <t>Availability.Outage</t>
                                        </td>
                                        <td>
                                            <t>Outage caused e.g. by air condition failure or natural disaster.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>24</t>
                                        </td>
                                        <td>
                                            <t>Availability.Failure</t>
                                        </td>
                                        <td>
                                            <t>Failure, malfunction (e.g. : bug, wear, faults, etc.)</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>25</t>
                                        </td>
                                        <td>
                                            <t>Information.
                                                UnauthorizedAccess</t>
                                        </td>
                                        <td>
                                            <t>Unauthorised access to information, e.g. by abusing stolen login credentials for a system or application, intercepting traffic or gaining access to physical documents.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>26</t>
                                        </td>
                                        <td>
                                            <t>Information.
                                                UnauthorizedModification</t>
                                        </td>
                                        <td>
                                            <t>Unauthorised modification of information, e.g. by an attacker abusing stolen login credentials for a system or application or a ransomware encrypting data. Also includes defacements.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>27</t>
                                        </td>
                                        <td>
                                            <t>Information.DataLoss</t>
                                        </td>
                                        <td>
                                            <t>Loss of data, e.g. caused by harddisk failure or physical theft.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>28</t>
                                        </td>
                                        <td>
                                            <t>Information.DataLeak</t>
                                        </td>
                                        <td>
                                            <t>Leaked confidential information like credentials or personal data.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>29</t>
                                        </td>
                                        <td>
                                            <t>Fraud.UnauthorizedUsage</t>
                                        </td>
                                        <td>
                                            <t>Using resources for unauthorised purposes including profit-making ventures, e.g. the use of e-mail to participate in illegal profit chain letters or pyramid schemes.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>30</t>
                                        </td>
                                        <td>
                                            <t>Fraud.Copyright</t>
                                        </td>
                                        <td>
                                            <t>Offering or Installing copies of unlicensed commercial software or other copyright protected materials (Warez).</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>31</t>
                                        </td>
                                        <td>
                                            <t>Fraud.Masquerade</t>
                                        </td>
                                        <td>
                                            <t>Type of attack in which one entity illegitimately impersonates the identity of another in order to benefit from it.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>32</t>
                                        </td>
                                        <td>
                                            <t>Fraud.Phishing</t>
                                        </td>
                                        <td>
                                            <t>Masquerading as another entity in order to persuade the user to reveal private credentials. This IOC most often refers to a URL, which is used to phish user credentials.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>33</t>
                                        </td>
                                        <td>
                                            <t>Vulnerable.Crypto</t>
                                        </td>
                                        <td>
                                            <t>Publicly accessible services offering weak crypto, e.g. web servers susceptible to POODLE/FREAK attacks.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>34</t>
                                        </td>
                                        <td>
                                            <t>Vulnerable.DDoS</t>
                                        </td>
                                        <td>
                                            <t>Publicly accessible services that can be abused for conducting DDoS reflection/amplification attacks, e.g. DNS open-resolvers or NTP servers with monlist enabled.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>35</t>
                                        </td>
                                        <td>
                                            <t>Vulnerable.Surface</t>
                                        </td>
                                        <td>
                                            <t>Potentially unwanted publicly accessible services, e.g. Telnet, RDP or VNC.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>36</t>
                                        </td>
                                        <td>
                                            <t>Vulnerable.Disclosure</t>
                                        </td>
                                        <td>
                                            <t>Publicly accessible services potentially disclosing sensitive information, e.g. SNMP or Redis.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>37</t>
                                        </td>
                                        <td>
                                            <t>Vulnerable.System</t>
                                        </td>
                                        <td>
                                            <t>A system which is vulnerable to certain attacks. Example: misconfigured client proxy settings (example: WPAD), outdated operating system version, XSS vulnerabilities, etc.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>38</t>
                                        </td>
                                        <td>
                                            <t>Geophysical.Earthquake</t>
                                        </td>
                                        <td>
                                            <t>A hazard originating from solid earth. This term is used interchangeably with the term geological hazard.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>39</t>
                                        </td>
                                        <td>
                                            <t>Geophysical.MassMovement</t>
                                        </td>
                                        <td>
                                            <t>A hazard originating from solid earth. This term is used interchangeably with the term geological hazard.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>40</t>
                                        </td>
                                        <td>
                                            <t>Geophysical.Volcanic</t>
                                        </td>
                                        <td>
                                            <t>A hazard originating from solid earth. This term is used interchangeably with the term geological hazard.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>41</t>
                                        </td>
                                        <td>
                                            <t>Meteorological.
                                                Temperature</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by short-lived, micro- to meso-scale extreme weather and atmospheric conditions that last from minutes to days.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>42</t>
                                        </td>
                                        <td>
                                            <t>Meteorological.Fog</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by short-lived, micro- to meso-scale extreme weather and atmospheric conditions that last from minutes to days.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>43</t>
                                        </td>
                                        <td>
                                            <t>Meteorological.Storm</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by short-lived, micro- to meso-scale extreme weather and atmospheric conditions that last from minutes to days.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>44</t>
                                        </td>
                                        <td>
                                            <t>Hydrological.Flood</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by the occurrence, movement, and distribution of surface and subsurface freshwater and saltwater.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>45</t>
                                        </td>
                                        <td>
                                            <t>Hydrological.Landslide</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by the occurrence, movement, and distribution of surface and subsurface freshwater and saltwater.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>46</t>
                                        </td>
                                        <td>
                                            <t>Hydrological.Wave</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by the occurrence, movement, and distribution of surface and subsurface freshwater and saltwater.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>47</t>
                                        </td>
                                        <td>
                                            <t>Climatological.Drought</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by long-lived, meso- to macro-scale atmospheric processes ranging from intra-seasonal to multi-decadal climate variability.​</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>48</t>
                                        </td>
                                        <td>
                                            <t>Climatological.
                                                LakeOutburst</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by long-lived, meso- to macro-scale atmospheric processes ranging from intra-seasonal to multi-decadal climate variability.​</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>49</t>
                                        </td>
                                        <td>
                                            <t>Climatological.Wildfire</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by long-lived, meso- to macro-scale atmospheric processes ranging from intra-seasonal to multi-decadal climate variability.​</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>50</t>
                                        </td>
                                        <td>
                                            <t>Biological.Epidemic</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by the exposure to living organisms and their toxic substances (e.g. venom, mold) or vector-borne diseases that they may carry. Examples are venomous wildlife and insects, poisonous plants, and mosquitoes carrying disease-causing agents such as parasites, bacteria, or viruses (e.g. malaria).</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>51</t>
                                        </td>
                                        <td>
                                            <t>Biological.Insect</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by the exposure to living organisms and their toxic substances (e.g. venom, mold) or vector-borne diseases that they may carry. Examples are venomous wildlife and insects, poisonous plants, and mosquitoes carrying disease-causing agents such as parasites, bacteria, or viruses (e.g. malaria).</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>52</t>
                                        </td>
                                        <td>
                                            <t>Biological.Animal</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by the exposure to living organisms and their toxic substances (e.g. venom, mold) or vector-borne diseases that they may carry. Examples are venomous wildlife and insects, poisonous plants, and mosquitoes carrying disease-causing agents such as parasites, bacteria, or viruses (e.g. malaria).</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>53</t>
                                        </td>
                                        <td>
                                            <t>Extraterrestrial.Impact</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by asteroids, meteoroids, and comets as they pass near-earth, enter the Earth’s atmosphere, and/or strike the Earth, and by changes in interplanetary conditions that effect the Earth’s magnetosphere, ionosphere, and thermosphere.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>54</t>
                                        </td>
                                        <td>
                                            <t>Extraterrestrial.
                                                SpaceWeather</t>
                                        </td>
                                        <td>
                                            <t>A hazard caused by asteroids, meteoroids, and comets as they pass near-earth, enter the Earth’s atmosphere, and/or strike the Earth, and by changes in interplanetary conditions that effect the Earth’s magnetosphere, ionosphere, and thermosphere.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>55</t>
                                        </td>
                                        <td>
                                            <t>Other.Uncategorised</t>
                                        </td>
                                        <td>
                                            <t>All incidents which don't fit in one of the given categories should be put into this class or the incident is not categorised.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>56</t>
                                        </td>
                                        <td>
                                            <t>Other.Undetermined</t>
                                        </td>
                                        <td>
                                            <t>The categorisation of the incident is unknown/undetermined.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>57</t>
                                        </td>
                                        <td>
                                            <t>Test.Test</t>
                                        </td>
                                        <td>
                                            <t>Meant for testing.</t>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>Cause</dt>
                    <dd>
                        <t>Optional.
                            Alert cause, if known at the time of detection.</t>
                        <t>If unknown, this key SHOULD NOT be defined by the analyzer and may
                            be filled later on by a manager or a human operator.</t>
                        <table anchor="enum-alert-cause"><name>Incident causes</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>Normal</t>
                                        </td>
                                        <td>
                                            <t>The event is related to an expected phenomenon or to a
                                                phenomenon that does not qualify as out of the ordinary.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>Error</t>
                                        </td>
                                        <td>
                                            <t>The event is related to a human error.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>2</t>
                                        </td>
                                        <td>
                                            <t>Malicious</t>
                                        </td>
                                        <td>
                                            <t>The event is related to malicious code or malicious actions.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>3</t>
                                        </td>
                                        <td>
                                            <t>Malfunction</t>
                                        </td>
                                        <td>
                                            <t>The event is related to a device or service malfunction.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>4</t>
                                        </td>
                                        <td>
                                            <t>Natural</t>
                                        </td>
                                        <td>
                                            <t>The event is related to a natural phenomenon.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>5</t>
                                        </td>
                                        <td>
                                            <t>Unknown</t>
                                        </td>
                                        <td>
                                            <t>The cause of the event is unknown.</t>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>Description</dt>
                    <dd>
                        <t>Optional.
                            Short free text human-readable description.</t>
                    </dd>
                
                    <dt>Status</dt>
                    <dd>
                        <t>Optional.
                            Alert state in the overall alert lifecycle.</t>
                        <table anchor="enum-alert-status"><name>Incident statuses</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>Event</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>Incident</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>Severity</dt>
                    <dd>
                        <t>Optional.
                            Severity of the alert.</t>
                        <table anchor="enum-alert-severity"><name>Incident severities</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>Unknown</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>Info</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>2</t>
                                        </td>
                                        <td>
                                            <t>Low</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>3</t>
                                        </td>
                                        <td>
                                            <t>Medium</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>4</t>
                                        </td>
                                        <td>
                                            <t>High</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>Confidence</dt>
                    <dd>
                        <t>Optional.
                            A floating-point value between 0 and 1 indicating the analyzer's confidence
                            in its own reliability of this particular detection, where 0 means
                            that the detection is surely incorrect while 1 means there is no doubt
                            about the detection made.</t>
                    </dd>
                
                    <dt>Note</dt>
                    <dd>
                        <t>Optional.
                            Free text human-readable additional note, possibly a longer description
                            of the incident if is not already obvious.</t>
                    </dd>
                
                    <dt>CreateTime</dt>
                    <dd>
                        <t>Mandatory.
                            Timestamp indicating when the message was created.
                            May point out delay between detection and processing of the events.</t>
                    </dd>
                
                    <dt>StartTime</dt>
                    <dd>
                        <t>Optional.
                            Timestamp indicating the deduced start of the event.</t>
                        <t>In case the event is not part of a series, this attribute MAY instead
                            be set to the timestamp initially present in the event (if any).</t>
                    </dd>
                
                    <dt>CeaseTime</dt>
                    <dd>
                        <t>Optional.
                            Timestamp indicating the deduced end of the event.</t>
                    </dd>
                
                    <dt>DeleteTime</dt>
                    <dd>
                        <t>Optional.
                            Timestamp indicating when the message must be deleted.</t>
                        <t>This attribute MUST be specified if the message has to be deleted after
                            this date, e.g. for technical, organizational or ethical reasons.</t>
                    </dd>
                
                    <dt>AltNames</dt>
                    <dd>
                        <t>Optional.
                            Alternative identifiers; strings which help pair the event to internal
                            systems' information (for example ticket IDs inside a request tracking
                            systems).</t>
                    </dd>
                
                    <dt>AltCategory</dt>
                    <dd>
                        <t>Optional.
                            Alternate categories from a reference other than <xref target="ENISA-RIST"/>
                            (e.g. MISP, MITRE ATT@CK or another proprietary/internal reference).</t>
                    </dd>
                
                    <dt>Ref</dt>
                    <dd>
                        <t>Optional.
                            References to sources of information related to the alert and/or
                            vulnerability, and specific to this alert.</t>
                        <t>This MAY be a URL to additional info, or a URN in a registered or
                            unregistered ad-hoc namespace bearing reasonable information value
                            and uniqueness, such as "urn:cve:CVE-2013-2266".</t>
                    </dd>
                
                    <dt>CorrelID</dt>
                    <dd>
                        <t>Optional.
                            Identifiers for the  messages which were used as information sources
                            to create this message, in case the message has been created based on
                            correlation/analysis/deduction from other messages.</t>
                    </dd>
                
                    <dt>AggrCondition</dt>
                    <dd>
                        <t>Optional.
                            A list of IDMEF fields used to aggregate events. The values for these
                            fields will be the same in all aggregated events.</t>
                        <t>This attribute should mostly be set by intermediary nodes, which detect
                            duplicates, or aggregate events, spanning multiple detection windows,
                            into a longer one.</t>
                        <t>The "StartTime" and "CeaseTime" attributes are used in conjunction
                            with this attribute to describe the aggregation window.</t>
                    </dd>
                
                    <dt>PredID</dt>
                    <dd>
                        <t>Optional.
                            A list containing the identifiers of previous messages
                            which are obsoleted by this message.</t>
                        <t>The obsoleted alerts SHOULD NOT be used anymore.
                            This field can be used to "update" an alert.</t>
                    </dd>
                
                    <dt>RelID</dt>
                    <dd>
                        <t>Optional.
                            A list containing the identifiers of other messages related
                            to this message.</t>
                    </dd>
                </dl>
      </section>
      <section anchor="class_analyzer">
        <name>The Analyzer Class</name>
        <t>The Analyzer class describes the module that has analyzed the data
                captured by the sensors, identified an event of interest and decided
                to create an alert.</t>
        <figure anchor="class_analyzer_diagram">
          <name>The Analyzer class</name>
          <artwork type="ascii-art" align="center">+----------------------+
|       Analyzer       |
+----------------------+
| IP       IP          |
| STRING   Name        |
| STRING   Hostname    |
| STRING   Model       |
| ENUM[]   Type        |
| ENUM[]   Category    |
| ENUM[]   Data        |
| ENUM[]   Method      |
| GEOLOC   GeoLocation |
| UNLOCODE UnLocation  |
| STRING   Location    |
+----------------------+</artwork>
        </figure>
        <t>The Analyzer class has the following attributes:</t>
        <dl newline="true">
                    <dt>IP</dt>
                    <dd>
                        <t>Mandatory. Analyzer IP address.</t>
                    </dd>
                
                    <dt>Name</dt>
                    <dd>
                        <t>Mandatory. Name of the analyzer, which must be reasonably unique, however still bear some meaningful sense.</t>
                        <t>This attribute usually denotes the hierarchy of organizational units
                            the detector belongs to and its own name.
                            It MAY also be used to distinguish multiple analyzers running with
                            the same IP address.</t>
                    </dd>
                
                    <dt>Hostname</dt>
                    <dd>
                        <t>Optional. Hostname of this analyzer.</t>
                        <t>SHOULD be a fully-qualified domain name.</t>
                    </dd>
                
                    <dt>Model</dt>
                    <dd>
                        <t>Mandatory. Analyzer model description (usually its generic name,
                            brand and version).</t>
                    </dd>
                
                    <dt>Type</dt>
                    <dd>
                        <t>Optional. Analyzer type.</t>
                        <table anchor="enum-analyzer-type"><name>Analyzer types</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>Cyber</t>
                                        </td>
                                        <td>
                                            <t>The analyzer specializes in the detection of cyber incidents</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>Physical</t>
                                        </td>
                                        <td>
                                            <t>The analyzer specializes in the detection of physical incidents</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>2</t>
                                        </td>
                                        <td>
                                            <t>Availability</t>
                                        </td>
                                        <td>
                                            <t>The analyzer specializes in the detection of availability incidents</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>3</t>
                                        </td>
                                        <td>
                                            <t>Combined</t>
                                        </td>
                                        <td>
                                            <t>The analyzer specilizes in detections that combine data from multiple
                                                domains (e.g. a combination of Cyber and Availability data)</t>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>Category</dt>
                    <dd>
                        <t>Mandatory. Analyzer categories.</t>
                        <table anchor="enum-analyzer-category"><name>Analyzer categories</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>1DLiS</t>
                                        </td>
                                        <td>
                                            <t>1D LIDAR Sensor</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>2DLiS</t>
                                        </td>
                                        <td>
                                            <t>2D LIDAR Sensor</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>2</t>
                                        </td>
                                        <td>
                                            <t>3DLiS</t>
                                        </td>
                                        <td>
                                            <t>3D LIDAR Sensor</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>3</t>
                                        </td>
                                        <td>
                                            <t>1DLaS</t>
                                        </td>
                                        <td>
                                            <t>1D Laser Sensor</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>4</t>
                                        </td>
                                        <td>
                                            <t>2DLaS</t>
                                        </td>
                                        <td>
                                            <t>2D Laser Sensor</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>5</t>
                                        </td>
                                        <td>
                                            <t>3DLaS</t>
                                        </td>
                                        <td>
                                            <t>3D Laser Sensor</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>6</t>
                                        </td>
                                        <td>
                                            <t>VAD</t>
                                        </td>
                                        <td>
                                            <t>Voice Activity Detection</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>7</t>
                                        </td>
                                        <td>
                                            <t>HAR</t>
                                        </td>
                                        <td>
                                            <t>Human Activity Detection</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>8</t>
                                        </td>
                                        <td>
                                            <t>FRC</t>
                                        </td>
                                        <td>
                                            <t>Face Recognition Camera</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>9</t>
                                        </td>
                                        <td>
                                            <t>VNIR</t>
                                        </td>
                                        <td>
                                            <t>Visible and Near-InfraRed</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>10</t>
                                        </td>
                                        <td>
                                            <t>SWIR</t>
                                        </td>
                                        <td>
                                            <t>Short Wavelength InfraRed</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>11</t>
                                        </td>
                                        <td>
                                            <t>MWIR</t>
                                        </td>
                                        <td>
                                            <t>Middle Wavelength InfraRed</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>12</t>
                                        </td>
                                        <td>
                                            <t>LWIR</t>
                                        </td>
                                        <td>
                                            <t>Long Wavelength InfraRed</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>13</t>
                                        </td>
                                        <td>
                                            <t>ADS</t>
                                        </td>
                                        <td>
                                            <t>Anti-Drone System</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>14</t>
                                        </td>
                                        <td>
                                            <t>ODC</t>
                                        </td>
                                        <td>
                                            <t>Object Detection Camera</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>15</t>
                                        </td>
                                        <td>
                                            <t>DDOS</t>
                                        </td>
                                        <td>
                                            <t>Anti-DDoS (Distributed Denial of Service) protection</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>16</t>
                                        </td>
                                        <td>
                                            <t>SPAM</t>
                                        </td>
                                        <td>
                                            <t>Spam detection, phishing detection, etc.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>17</t>
                                        </td>
                                        <td>
                                            <t>AV</t>
                                        </td>
                                        <td>
                                            <t>Signature-based virus/malware detection</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>18</t>
                                        </td>
                                        <td>
                                            <t>EDR</t>
                                        </td>
                                        <td>
                                            <t>Endpoint Detection and Response</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>19</t>
                                        </td>
                                        <td>
                                            <t>FW</t>
                                        </td>
                                        <td>
                                            <t>Firewall</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>20</t>
                                        </td>
                                        <td>
                                            <t>NIDS</t>
                                        </td>
                                        <td>
                                            <t>Network Intrusion Detection System</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>21</t>
                                        </td>
                                        <td>
                                            <t>HIDS</t>
                                        </td>
                                        <td>
                                            <t>Host Intrusion Detection System</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>22</t>
                                        </td>
                                        <td>
                                            <t>WIDS</t>
                                        </td>
                                        <td>
                                            <t>Wi-Fi Intrusion Detection System</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>23</t>
                                        </td>
                                        <td>
                                            <t>PROX</t>
                                        </td>
                                        <td>
                                            <t>Proxy, e.g. detection of violations to the company's security policy</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>24</t>
                                        </td>
                                        <td>
                                            <t>WAF</t>
                                        </td>
                                        <td>
                                            <t>Web Application Firewall</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>25</t>
                                        </td>
                                        <td>
                                            <t>HPT</t>
                                        </td>
                                        <td>
                                            <t>Honeypot</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>26</t>
                                        </td>
                                        <td>
                                            <t>LOG</t>
                                        </td>
                                        <td>
                                            <t>Log analyzer</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>27</t>
                                        </td>
                                        <td>
                                            <t>IAM</t>
                                        </td>
                                        <td>
                                            <t>Identity and Access Management tool</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>28</t>
                                        </td>
                                        <td>
                                            <t>VPN</t>
                                        </td>
                                        <td>
                                            <t>Devices/tools related to Virtual Private Network</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>29</t>
                                        </td>
                                        <td>
                                            <t>ETL</t>
                                        </td>
                                        <td>
                                            <t>Extract-Transform-Load tools</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>30</t>
                                        </td>
                                        <td>
                                            <t>RASP</t>
                                        </td>
                                        <td>
                                            <t>Runtime Application Self-Protection</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>31</t>
                                        </td>
                                        <td>
                                            <t>BAST</t>
                                        </td>
                                        <td>
                                            <t>Clientless Remote Desktop Gateway / administration bastions</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>32</t>
                                        </td>
                                        <td>
                                            <t>NAC</t>
                                        </td>
                                        <td>
                                            <t>Devices/tools related to Network Access Control</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>33</t>
                                        </td>
                                        <td>
                                            <t>SIEM</t>
                                        </td>
                                        <td>
                                            <t>Security Information and Event Management systems</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>34</t>
                                        </td>
                                        <td>
                                            <t>NMS</t>
                                        </td>
                                        <td>
                                            <t>Network Management Systems</t>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>Data</dt>
                    <dd>
                        <t>Mandatory. Type of data analyzed during the detection.</t>
                        <table anchor="enum-analyzer-data"><name>Analyzer data</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>Light</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>Noise</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>2</t>
                                        </td>
                                        <td>
                                            <t>Touch</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>3</t>
                                        </td>
                                        <td>
                                            <t>Images</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>4</t>
                                        </td>
                                        <td>
                                            <t>Vibrations</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>5</t>
                                        </td>
                                        <td>
                                            <t>Lidar</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>6</t>
                                        </td>
                                        <td>
                                            <t>Thermic</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>7</t>
                                        </td>
                                        <td>
                                            <t>Seismic</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>8</t>
                                        </td>
                                        <td>
                                            <t>Temperature</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>9</t>
                                        </td>
                                        <td>
                                            <t>Rain</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>10</t>
                                        </td>
                                        <td>
                                            <t>Water</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>11</t>
                                        </td>
                                        <td>
                                            <t>Humidity</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>12</t>
                                        </td>
                                        <td>
                                            <t>Particles</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>13</t>
                                        </td>
                                        <td>
                                            <t>Contact</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>14</t>
                                        </td>
                                        <td>
                                            <t>MagneticField</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>15</t>
                                        </td>
                                        <td>
                                            <t>Acoustics</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>16</t>
                                        </td>
                                        <td>
                                            <t>Fog</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>17</t>
                                        </td>
                                        <td>
                                            <t>External</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>18</t>
                                        </td>
                                        <td>
                                            <t>Reporting</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>19</t>
                                        </td>
                                        <td>
                                            <t>Connection</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>20</t>
                                        </td>
                                        <td>
                                            <t>Datagram</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>21</t>
                                        </td>
                                        <td>
                                            <t>Content</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>22</t>
                                        </td>
                                        <td>
                                            <t>Data</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>23</t>
                                        </td>
                                        <td>
                                            <t>File</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>24</t>
                                        </td>
                                        <td>
                                            <t>Flow</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>25</t>
                                        </td>
                                        <td>
                                            <t>Log</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>26</t>
                                        </td>
                                        <td>
                                            <t>Protocol</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>27</t>
                                        </td>
                                        <td>
                                            <t>Host</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>28</t>
                                        </td>
                                        <td>
                                            <t>Network</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>29</t>
                                        </td>
                                        <td>
                                            <t>Alert</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>30</t>
                                        </td>
                                        <td>
                                            <t>Relay</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>31</t>
                                        </td>
                                        <td>
                                            <t>Auth</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>32</t>
                                        </td>
                                        <td>
                                            <t>SNMP</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>Method</dt>
                    <dd>
                        <t>Mandatory. Detection method.</t>
                        <table anchor="enum-analyzer-method"><name>Analyzer methods</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>Biometric</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>Policy</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>2</t>
                                        </td>
                                        <td>
                                            <t>Heat</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>3</t>
                                        </td>
                                        <td>
                                            <t>Movement</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>4</t>
                                        </td>
                                        <td>
                                            <t>Blackhole</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>5</t>
                                        </td>
                                        <td>
                                            <t>Signature</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>6</t>
                                        </td>
                                        <td>
                                            <t>Statistical</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>7</t>
                                        </td>
                                        <td>
                                            <t>Heuristic</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>8</t>
                                        </td>
                                        <td>
                                            <t>Integrity</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>9</t>
                                        </td>
                                        <td>
                                            <t>Honeypot</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>10</t>
                                        </td>
                                        <td>
                                            <t>Tarpit</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>11</t>
                                        </td>
                                        <td>
                                            <t>Recon</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>12</t>
                                        </td>
                                        <td>
                                            <t>Correlation</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>13</t>
                                        </td>
                                        <td>
                                            <t>Monitor</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>14</t>
                                        </td>
                                        <td>
                                            <t>AI</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>15</t>
                                        </td>
                                        <td>
                                            <t>Threshold</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>GeoLocation</dt>
                    <dd>
                        <t>Optional. GPS coordinates for the analyzer.</t>
                    </dd>
                
                    <dt>UnLocation</dt>
                    <dd>
                        <t>Optional. Standard UN/Locode for the analyzer.</t>
                    </dd>
                
                    <dt>Location</dt>
                    <dd>
                        <t>Optional. Internal name for the location of the analyzer.</t>
                    </dd>
                </dl>
      </section>
      <section anchor="class_sensor">
        <name>The Sensor Class</name>
        <t>The Sensor class describes the module that captured the data before sending
                it to an analyzer. The Sensor may be a subpart of the Analyzer.</t>
        <figure anchor="class_sensor_diagram">
          <name>The Sensor class</name>
          <artwork type="ascii-art" align="center">+----------------------+
|        Sensor        |
+----------------------+
| IP       IP          |
| STRING   Name        |
| STRING   Hostname    |
| STRING   Model       |
| UNLOCODE UnLocation  |
| STRING   Location    |
| STRING   CaptureZone |
+----------------------+</artwork>
        </figure>
        <t>The Sensor class has the following attributes:</t>
        <dl newline="true">
                    <dt>IP</dt>
                    <dd>
                        <t>Mandatory. The sensor's IP address.</t>
                    </dd>
                
                    <dt>Name</dt>
                    <dd>
                        <t>Mandatory. Name of the sensor, which must be reasonably unique,
                            however still bear some meaningful sense.</t>
                        <t>This attribute usually denotes the hierarchy of organizational units
                            the sensor belongs to and its own name.
                            It MAY also be used to distinguish multiple sensors running with
                            the same IP address.</t>
                    </dd>
                
                    <dt>Hostname</dt>
                    <dd>
                        <t>Optional. The sensor's hostname.</t>
                        <t>This SHOULD be a fully qualified domain name, but may not conform
                            exactly because values extracted from logs, messages, DNS, etc.
                            may themselves be malformed.</t>
                        <t>An empty string MAY be used to explicitly state that this value
                            was inquired but not found (missing DNS entry).</t>
                    </dd>
                
                    <dt>Model</dt>
                    <dd>
                        <t>Mandatory. The sensor model's description (usually its generic name,
                            brand and version).</t>
                    </dd>
                
                    <dt>UnLocation</dt>
                    <dd>
                        <t>Optional. Standard UN/Locode for the sensor.</t>
                    </dd>
                
                    <dt>Location</dt>
                    <dd>
                        <t>Optional. Internal name for the location of the sensor.</t>
                    </dd>
                
                    <dt>CaptureZone</dt>
                    <dd>
                        <t>Optional. A string that describes the "capture zone" of the sensor,
                            as a JSON-serialized string.</t>
                        <t>Depending on the type of sensor, the capture zone may for instance
                            refer to:</t>
                        <ul>
                            <li>
                                <t>A JSON object describing a camera's settings (elevation, horizontal
                                    and vertical field of view, azimuth, etc.)</t>
                            </li>
                            <li>
                                <t>A description of the IP network where packet capture is taking place.</t>
                            </li>
                        </ul>
                    </dd>
                </dl>
      </section>
      <section anchor="class_source">
        <name>The Source Class</name>
        <t>The Source class describes the source(s) of the event(s) leading up to the alert.</t>
        <t>In this context, the Source always refers to the attacker, which may be different
                from the source in the context of a network connection.
                For instance, when a user connects to a webserver spreading malwares,
                the webserver will be listed as the IDMEF Source, even though it was initially
                the destination of the underlying HTTP(S) connection.</t>
        <figure anchor="class_source_diagram">
          <name>The Source class</name>
          <artwork type="ascii-art" align="center">+------------------------+
|         Source         |
+------------------------+
| IP         IP          |
| STRING     Hostname    |
| STRING     Note        |
| STRING[]   TI          |
| STRING     User        |
| EMAIL      Email       |
| PROTOCOL[] Protocol    |
| INT[]      Port        |
| GEOLOC     GeoLocation |
| UNLOCODE   UnLocation  |
| STRING     Location    |
| ID[]       Attachment  |
| ID[]       Observable  |
+------------------------+</artwork>
        </figure>
        <t>The Source class has the following attributes:</t>
        <dl newline="true">
                    <dt>IP</dt>
                    <dd>
                        <t>Optional. Source IP address.</t>
                    </dd>
                
                    <dt>Hostname</dt>
                    <dd>
                        <t>Optional. Hostname of this source.</t>
                        <t>This SHOULD be a fully qualified domain name, but may not conform
                            exactly because values extracted from logs, messages, DNS, etc.
                            may themselves be malformed.</t>
                        <t>An empty string MAY be used to explicitly state that this value
                            was inquired but not found (missing DNS entry).</t>
                    </dd>
                
                    <dt>Note</dt>
                    <dd>
                        <t>Optional. Free text human-readable additional note for this source.</t>
                    </dd>
                
                    <dt>TI</dt>
                    <dd>
                        <t>Optional. Threat Intelligence data about the source.</t>
                        <t>Values in this list MUST use the format "attribute:origin",
                            where "attribute" refers to the attribute inside this source
                            found inside a Threat Intelligence database, and "origin"
                            contains a short identifier for the Threat Intelligence database.
                            E.g. "IP:Dshield".</t>
                        <t>Please note that the same attribute may appear multiple times
                            inside the list (because a match was found in multiple
                            Threat Intelligence databases).</t>
                    </dd>
                
                    <dt>User</dt>
                    <dd>
                        <t>Optional. User ID or login responsible for the alert.</t>
                    </dd>
                
                    <dt>Email</dt>
                    <dd>
                        <t>Optional. Email address responsible for the alert.</t>
                        <t>E.g. the value of the "Reply-To" or "From" header inside
                            a phishing e-mail.</t>
                    </dd>
                
                    <dt>Protocol</dt>
                    <dd>
                        <t>Optional. Protocols related to connections from/to this source.</t>
                        <t>If several protocols are stacked, they MUST be ordered from
                            the lowest (the closest to the medium) to the highest (the closest
                            to the application) according to the ISO/OSI model.</t>
                    </dd>
                
                    <dt>Port</dt>
                    <dd>
                        <t>Optional. Source ports involved in the alert.</t>
                        <t>Values in this list MUST be integers and MUST be in the range 1-65535.</t>
                    </dd>
                
                    <dt>GeoLocation</dt>
                    <dd>
                        <t>Optional. GPS coordinates for the source.</t>
                    </dd>
                
                    <dt>UnLocation</dt>
                    <dd>
                        <t>Optional. Standard UN/Locode for the source.</t>
                    </dd>
                
                    <dt>Location</dt>
                    <dd>
                        <t>Optional. Internal name for the location of the source.</t>
                    </dd>
                
                    <dt>Attachment</dt>
                    <dd>
                        <t>Optional. Identifiers for attachments related to this source.</t>
                        <t>Each identifier listed here MUST match the "Name" attribute for one
                            of the attachments described using the <xref target="class_attachment">Attachment class</xref>.</t>
                    </dd>
                
                    <dt>Observable</dt>
                    <dd>
                        <t>Optional. Identifiers for observables related to this source.</t>
                        <t>Each identifier listed here MUST match the "Name" attribute for one
                            of the observables described using the <xref target="class_observable">Observable class</xref>.</t>
                    </dd>
                </dl>
      </section>
      <section anchor="class_target">
        <name>The Target Class</name>
        <t>The Target class describes the target(s) of the event(s) leading up to the alert.</t>
        <t>In this context, the Target always refers to the potential victim,
                which may be different from the destination in the context of a network connection.
                For instance, when a user connects to a webserver spreading malwares,
                the user will be listed as the IDMEF Target, even though it was initially
                the source of the underlying HTTP(S) connection.</t>
        <figure anchor="class_target_diagram">
          <name>The Target class</name>
          <artwork type="ascii-art" align="center">+------------------------+
|         Target         |
+------------------------+
| IP         IP          |
| STRING     Hostname    |
| STRING     Note        |
| STRING     Service     |
| STRING     User        |
| EMAIL      Email       |
| INT[]      Port        |
| GEOLOC     GeoLocation |
| UNLOCODE   UnLocation  |
| STRING     Location    |
| ID[]       Attachment  |
| ID[]       Observable  |
+------------------------+</artwork>
        </figure>
        <t>The Target class has the following attributes:</t>
        <dl newline="true">
                    <dt>IP</dt>
                    <dd>
                        <t>Optional. Target IP address.</t>
                    </dd>
                
                    <dt>Hostname</dt>
                    <dd>
                        <t>Optional. Hostname of this target.</t>
                        <t>This SHOULD be a fully qualified domain name, but may not conform
                            exactly because values extracted from logs, messages, DNS, etc.
                            may themselves be malformed.</t>
                        <t>An empty string MAY be used to explicitly state that this value
                            was inquired but not found (missing DNS entry).</t>
                    </dd>
                
                    <dt>Note</dt>
                    <dd>
                        <t>Optional. Free text human-readable additional note for this target.</t>
                    </dd>
                
                    <dt>Service</dt>
                    <dd>
                        <t>Optional. Service or process impacted by the alert.</t>
                    </dd>
                
                    <dt>User</dt>
                    <dd>
                        <t>Optional. User ID or login targeted by the alert.</t>
                    </dd>
                
                    <dt>Email</dt>
                    <dd>
                        <t>Optional. Email address targeted by the alert.</t>
                        <t>E.g. the value of the "To" header inside a phishing e-mail.</t>
                    </dd>
                
                    <dt>Port</dt>
                    <dd>
                        <t>Optional. Target ports involved in the alert.</t>
                        <t>Values in this list MUST be integers and MUST be in the range 1-65535.</t>
                    </dd>
                
                    <dt>GeoLocation</dt>
                    <dd>
                        <t>Optional. GPS coordinates for the target.</t>
                    </dd>
                
                    <dt>UnLocation</dt>
                    <dd>
                        <t>Optional. Standard UN/Locode for the target.</t>
                    </dd>
                
                    <dt>Location</dt>
                    <dd>
                        <t>Optional. Internal name for the location of the target.</t>
                    </dd>
                
                    <dt>Attachment</dt>
                    <dd>
                        <t>Optional. Identifiers for attachments related to this target.</t>
                        <t>Each identifier listed here MUST match the "Name" attribute for one
                            of the attachments described using the <xref target="class_attachment">Attachment class</xref>.</t>
                    </dd>
                
                    <dt>Observable</dt>
                    <dd>
                        <t>Optional. Identifiers for observables related to this target.</t>
                        <t>Each identifier listed here MUST match the "Name" attribute for one
                            of the observables described using the <xref target="class_observable">Observable class</xref>.</t>
                    </dd>
                </dl>
      </section>
      <section anchor="class_vector">
        <name>The Vector Class</name>
        <t>The Vector class describes the vector(s) of the event(s) leading up to the alert.
                •       Name, location, description, …</t>
        <figure anchor="class_vector_diagram">
          <name>The Vector class</name>
          <artwork type="ascii-art" align="center">+------------------------+
|         Vector         |
+------------------------+
| ENUM[]     Category    |
| STRING     Name        |
| ENUM       Size        |
| STRING     Note        |
| STRING[]   TI          |
| GEOLOC     GeoLocation |
| FLOAT      GeoRadius   |
| UNLOCODE   UnLocation  |
| STRING     Location    |
| ID[]       Attachment  |
| ID[]       Observable  |
+------------------------+</artwork>
        </figure>
        <t>The Vector class has the following attributes:</t>
        <dl newline="true">
                    <dt>Category</dt>
                    <dd>
                        <t>Mandatory. Category for the detected "vector".</t>
                        <t>FIXME: Les valeurs du domaine cyber n'ont pas été ajoutées car elles semblent redondantes avec la notion d'Observable.</t>
                        <table anchor="enum-vector-category"><name>Vector categories</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>Unknown</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>Face</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>2</t>
                                        </td>
                                        <td>
                                            <t>RunningMan</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>3</t>
                                        </td>
                                        <td>
                                            <t>Human</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>4</t>
                                        </td>
                                        <td>
                                            <t>Man</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>5</t>
                                        </td>
                                        <td>
                                            <t>Woman</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>6</t>
                                        </td>
                                        <td>
                                            <t>Children</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>7</t>
                                        </td>
                                        <td>
                                            <t>Animal</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>8</t>
                                        </td>
                                        <td>
                                            <t>Object</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>9</t>
                                        </td>
                                        <td>
                                            <t>Blast</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>10</t>
                                        </td>
                                        <td>
                                            <t>Fire</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>11</t>
                                        </td>
                                        <td>
                                            <t>Wind</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>12</t>
                                        </td>
                                        <td>
                                            <t>Snow</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>13</t>
                                        </td>
                                        <td>
                                            <t>Rain</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>14</t>
                                        </td>
                                        <td>
                                            <t>Chemical</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>15</t>
                                        </td>
                                        <td>
                                            <t>Smoke</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>16</t>
                                        </td>
                                        <td>
                                            <t>Vapors</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>17</t>
                                        </td>
                                        <td>
                                            <t>Drug</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>18</t>
                                        </td>
                                        <td>
                                            <t>Device</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>19</t>
                                        </td>
                                        <td>
                                            <t>Drone</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>20</t>
                                        </td>
                                        <td>
                                            <t>Car</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>21</t>
                                        </td>
                                        <td>
                                            <t>Truck</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>22</t>
                                        </td>
                                        <td>
                                            <t>Vehicle</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>23</t>
                                        </td>
                                        <td>
                                            <t>Bird</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>24</t>
                                        </td>
                                        <td>
                                            <t>Storm</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>25</t>
                                        </td>
                                        <td>
                                            <t>HighTemperature</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>26</t>
                                        </td>
                                        <td>
                                            <t>Artifact</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>27</t>
                                        </td>
                                        <td>
                                            <t>Autonomous System</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>28</t>
                                        </td>
                                        <td>
                                            <t>Directory</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>29</t>
                                        </td>
                                        <td>
                                            <t>Domain Name</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>30</t>
                                        </td>
                                        <td>
                                            <t>Email Address</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>31</t>
                                        </td>
                                        <td>
                                            <t>Email Message</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>32</t>
                                        </td>
                                        <td>
                                            <t>File</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>33</t>
                                        </td>
                                        <td>
                                            <t>IPv4 Address</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>34</t>
                                        </td>
                                        <td>
                                            <t>IPv6 Address</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>35</t>
                                        </td>
                                        <td>
                                            <t>Mutex</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>36</t>
                                        </td>
                                        <td>
                                            <t>Network Traffic</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>37</t>
                                        </td>
                                        <td>
                                            <t>Process</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>38</t>
                                        </td>
                                        <td>
                                            <t>URL</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>39</t>
                                        </td>
                                        <td>
                                            <t>User Account</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>40</t>
                                        </td>
                                        <td>
                                            <t>Windows Registry Key</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>41</t>
                                        </td>
                                        <td>
                                            <t>X509 Certificate</t>
                                        </td>
                                        <td>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>Name</dt>
                    <dd>
                        <t>Optional. Name of the detected vector or "Unknown".</t>
                        <t>Please note that this name does not need to be unique
                            across vectors.</t>
                    </dd>
                
                    <dt>Size</dt>
                    <dd>
                        <t>Optional. Rough estimate of the detected vector's size.</t>
                        <table anchor="enum-vector-size"><name>Vector sizes</name>
                            
                            <thead>
                                    <tr>
                                        <th>
                                            <t>Rank</t>
                                        </th>
                                        <th>
                                            <t>Keyword</t>
                                        </th>
                                        <th>
                                            <t>Description</t>
                                        </th>
                                    </tr>
                                </thead><tbody>
                                    <tr>
                                        <td>
                                            <t>0</t>
                                        </td>
                                        <td>
                                            <t>Small</t>
                                        </td>
                                        <td>
                                            <t>For things like a dog, a small drone, etc.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>1</t>
                                        </td>
                                        <td>
                                            <t>Medium</t>
                                        </td>
                                        <td>
                                            <t>For things like a person</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>2</t>
                                        </td>
                                        <td>
                                            <t>Large</t>
                                        </td>
                                        <td>
                                            <t>For things like a car, a truck, etc.</t>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td>
                                            <t>3</t>
                                        </td>
                                        <td>
                                            <t>Huge</t>
                                        </td>
                                        <td>
                                            <t>For things like a big crowd, a storm, etc.</t>
                                        </td>
                                    </tr>
                                </tbody>
                        </table>
                    </dd>
                
                    <dt>Note</dt>
                    <dd>
                        <t>Optional. Free text human-readable additional note for this vector.</t>
                    </dd>
                
                    <dt>TI</dt>
                    <dd>
                        <t>Optional. Threat Intelligence data about the vector.</t>
                        <t>Values in this list MUST use the format "attribute:origin",
                            where "attribute" refers to the attribute inside this vector
                            found inside a Threat Intelligence database, and "origin"
                            contains a short identifier for the Threat Intelligence database.
                            E.g. "Name:FBI-Wanted".</t>
                        <t>Please note that the same attribute may appear multiple times
                            inside the list (because a match was found in multiple
                            Threat Intelligence databases).</t>
                    </dd>
                
                    <dt>GeoLocation</dt>
                    <dd>
                        <t>Optional. GPS coordinates for the vector.</t>
                    </dd>
                
                    <dt>GeoRadius</dt>
                    <dd>
                        <t>Optional. Estimated radius around the provided geolocation in meters.</t>
                        <t>This attribute can be interpreted as an error margin related to
                            the detection of this vector.</t>
                    </dd>
                
                    <dt>UnLocation</dt>
                    <dd>
                        <t>Optional. Standard UN/Locode for the vector.</t>
                    </dd>
                
                    <dt>Location</dt>
                    <dd>
                        <t>Optional. Internal name for the location of the vector.</t>
                    </dd>
                
                    <dt>Attachment</dt>
                    <dd>
                        <t>Optional. Identifiers for attachments related to this vector.</t>
                        <t>Each identifier listed here MUST match the "Name" attribute for one
                            of the attachments described using the <xref target="class_attachment">Attachment class</xref>.</t>
                    </dd>
                
                    <dt>Observable</dt>
                    <dd>
                        <t>Optional. Identifiers for observables related to this vector.</t>
                        <t>Each identifier listed here MUST match the "Name" attribute for one
                            of the observables described using the <xref target="class_observable">Observable class</xref>.</t>
                    </dd>
                </dl>
      </section>
      <section anchor="class_attachment">
        <name>The Attachment Class</name>
        <t>The Attachment class contains additional data which was captured
                in relation with the event.</t>
        <figure anchor="class_attachment_diagram">
          <name>The Attachment class</name>
          <artwork type="ascii-art" align="center">+----------------------------+
|         Attachment         |
+----------------------------+
| ID         Name            |
| STRING     FileName        |
| HASH[]     Hash            |
| INT        Size            |
| URI[]      Ref             |
| URI[]      ExternalURI     |
| STRING     Note            |
| MEDIATYPE  ContentType     |
| STRING     ContentEncoding |
| STRING     Content         |
+----------------------------+</artwork>
        </figure>
        <t>The Attachment class has the following attributes:</t>
        <dl newline="true">
                    <dt>Name</dt>
                    <dd>
                        <t>Mandatory. A unique identifier among attachments that can be used
                            to reference this attachment from other classes using the
                            "Attachment" attribute.</t>
                    </dd>
                
                    <dt>FileName</dt>
                    <dd>
                        <t>Optional. Attachment filename.</t>
                        <t>This will usually be the original name of the captured file
                            or the name of the file containing the captured content
                            (e.g. a packet capture file).</t>
                    </dd>
                
                    <dt>Hash</dt>
                    <dd>
                        <t>Optional. A list of hash results for the attachment's Content.</t>
                        <t>The values in this list are computed by taking the raw value
                            of the attachment's "Content" attribute.
                            The hash result is computed before any other transformation
                            (e.g. Base64 encoding) is applied to the content, so that a
                            receiving IDMEF system may reverse the transformation, apply
                            the same hashing function and obtain the same hash result.
                            See also the definition for the "ContentEncoding" attribute below.</t>
                        <t>It is RECOMMENDED that compatible implementations use one of
                            the hashing functions from the SHA-2 <xref target="RFC6234"/> or
                            SHA-3 <xref target="NIST.FIPS.202"/> families to compute the hash
                            results in this list.</t>
                    </dd>
                
                    <dt>Size</dt>
                    <dd>
                        <t>Optional. Length of the content (in bytes).</t>
                        <t>This value MUST be a non-negative integer.</t>
                    </dd>
                
                    <dt>Ref</dt>
                    <dd>
                        <t>Optional.
                            References to sources of information related to the alert and/or
                            vulnerability, and specific to this attachment.</t>
                    </dd>
                
                    <dt>ExternalURI</dt>
                    <dd>
                        <t>Optional. If the attachment's content is available and/or recognizable
                            from an external resource, this is the URI (usually a URL) to that resource.</t>
                        <t>This MAY also be a URN in a registered or unregistered ad-hoc namespace
                            bearing reasonable information value and uniqueness, such as
                            "urn:mhr:55eaf7effadc07f866d1eaed9c64e7ee49fe081a" or
                            "magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C".</t>
                    </dd>
                
                    <dt>Note</dt>
                    <dd>
                        <t>Optional. Free text human-readable additional note for this attachment.</t>
                    </dd>
                
                    <dt>ContentType</dt>
                    <dd>
                        <t>Optional. Internet Media Type of the attachment.</t>
                        <t>For compatibility reasons, implementations SHOULD prefer one of the
                            well-known media types registered in IANA .</t>
                    </dd>
                
                    <dt>ContentEncoding</dt>
                    <dd>
                        <t>Optional. Content encoding.</t>
                        <t>The following encodings are defined in this version of the specification:</t>
                        <ul>
                            <li>
                                <t>"json": The content refers to a JSON object which has been serialized
                                    to a string using the serialization procedure defined in <xref target="RFC8259"/>.</t>
                            </li>
                            <li>
                                <t>"base64": The content has been serialized using the Base64 encoding
                                    defined in <xref target="RFC4648"/>.</t>
                            </li>
                        </ul>
                        <t>The "base64" encoding SHOULD be used when the content contains binary data.
                            If omitted, the "json" encoding MUST be assumed.</t>
                    </dd>
                
                    <dt>Content</dt>
                    <dd>
                        <t>Optional. The attachment's content, in case it is directly embedded
                            inside the message.</t>
                        <t>For large attachments, it is RECOMMENDED that implementations make use
                            of the "ExternalURI" attribute to refererence a copy of the content saved
                            in an external storage mechanism.</t>
                    </dd>
                </dl>
      </section>
      <section anchor="class_observable">
        <name>The Observable Class</name>
        <t>The Observable class describes a feature or phenomenon that can be observed
                or measured for the purposes of detecting malicious behavior.</t>
        <figure anchor="class_observable_diagram">
          <name>The Observable class</name>
          <artwork type="ascii-art" align="center">+------------------+
|    Observable    |
+------------------+
| ID     Name      |
| STRING Reference |
| STRING Content   |
+------------------+</artwork>
        </figure>
        <t>The Observable class has the following attributes:</t>
        <dl newline="true">
                    <dt>Name</dt>
                    <dd>
                        <t>Mandatory. A unique identifier among observables that can be used
                            to reference this observable from other classes using the
                            "Observable" attribute.</t>
                    </dd>
                
                    <dt>Reference</dt>
                    <dd>
                        <t>Optional. Name of the reference where the observable is specified.</t>
                        <t>This attribute is meant to help implementations in identifying
                            supported observables.</t>
                    </dd>
                
                    <dt>Content</dt>
                    <dd>
                        <t>Mandatory. Observable content.</t>
                    </dd>
                </dl>
      </section>
      <section anchor="json-sm">
        <name>The JavaScript Object Notation Serialization Method</name>
        <t>This serialization method aims to convert IDMEFv2 messages to a
                format that is easy to parse and process, both by software/hardware
                processors, as well as humans. It relies on the the JavaScript
                Object Notation (JSON) Data Interchange Format defined in [RFC8259].</t>
        <t>Conforming implementations MUST implement all the requirements
                specified in [RFC8259].</t>
        <t>In addition, the following rules MUST be observed when serializing an
                IDMEFv2 message:</t>
        <ul>
                <li>
                    <t>The top-level Alert class (Section 4.2) is represented as a JSON
                        object ([RFC8259]). This JSON object is returned to the calling
                        process at the end of the serialization process.</t>
                </li>
                <li>
                    <t>Aggregate classes are represented as JSON objects and stored as
                        members of the top-level JSON object, using the same name as in
                        the IDMEF data model. E.g. the appears under the name "Analyzer"
                        inside the top-level JSON object.</t>
                </li>
                <li>
                    <t>Attributes are stored as members of the JSON object representing
                        the class they belong to, using the same name as in the IDMEF data
                        model. E.g. the "Version" attribute from the is stored under the
                        name "Version" inside the top-level JSON object.</t>
                </li>
                <li>
                    <t>Lists from the IDMEF data model are represented as JSON arrays
                        ([RFC8259]). This also applies to aggregate classes where a list
                        is expected. E.g. the "Sensor" member inside the top-level JSON
                        object contains a list of objects, where each object represents an
                        instance of the .</t>
                </li>
                <li>
                    <t>The various string-based data types listed in Section 3 are
                        represented as JSON strings ([RFC8259]). Please note that the
                        issues outlined in [RFC8259] regarding strings processing also
                        apply here.</t>
                </li>
                <li>
                    <t>IDMEF attributes with the "NUMBER" data type are represented as
                        JSON numbers ([RFC8259]).</t>
                </li>
            </ul>
      </section>
      <section>
        <name>Attributes completeness</name>
        <t>The next table shows when each attributes is required depending on it's Type:
                physical, cyber or availability.</t>
        <t>Legend:</t>
        <ul>
                <li>
                    <t>R: REQUIRED</t>
                </li>
                <li>
                    <t>r: Recommanded</t>
                </li>
                <li>
                    <t>o: Optional</t>
                </li>
                <li>
                    <t>NA: Not Applicable</t>
                </li>
            </ul>
        <table><name>Attributes completness - Alert</name>
                
                <thead>
                        <tr>
                            <th>
                                <t>Attributes</t>
                            </th>
                            <th>
                                <t>Type</t>
                            </th>
                            <th>
                                <t>Phy</t>
                            </th>
                            <th>
                                <t>Cyb</t>
                            </th>
                            <th>
                                <t>Avail</t>
                            </th>
                        </tr>
                        <tr>
                            <th>
                                <t>Alert</t>
                            </th>
                            <th>
                            </th>
                            <th>
                            </th>
                            <th>
                            </th>
                            <th>
                            </th>
                        </tr>
                    </thead><tbody>
                        <tr>
                            <td>
                                <t>Version</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>ID</t>
                            </td>
                            <td>
                                <t>UUID</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Entity</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Category</t>
                            </td>
                            <td>
                                <t>Array of ENUM</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Cause</t>
                            </td>
                            <td>
                                <t>ENUM</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Description</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Status</t>
                            </td>
                            <td>
                                <t>ENUM</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Severity</t>
                            </td>
                            <td>
                                <t>ENUM</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Confidence</t>
                            </td>
                            <td>
                                <t>Number</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Note</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>CreateTime</t>
                            </td>
                            <td>
                                <t>Timestamp</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>StartTime</t>
                            </td>
                            <td>
                                <t>Timestamp</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>CeaseTime</t>
                            </td>
                            <td>
                                <t>Timestamp</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>DeleteTime</t>
                            </td>
                            <td>
                                <t>Timestamp</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>AltNames</t>
                            </td>
                            <td>
                                <t>Array of String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>AltCategory</t>
                            </td>
                            <td>
                                <t>Array of String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Ref</t>
                            </td>
                            <td>
                                <t>Array of URI</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>CorrelID</t>
                            </td>
                            <td>
                                <t>Array of UUID</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>AggrCondition</t>
                            </td>
                            <td>
                                <t>Array of String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>PredID</t>
                            </td>
                            <td>
                                <t>Array of UUID</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>RelID</t>
                            </td>
                            <td>
                                <t>Array of UUID</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                    </tbody>
            </table>
        <table><name>Attributes completness - Analyzer</name>
                
                <thead>
                        <tr>
                            <th>
                                <t>Attributes</t>
                            </th>
                            <th>
                                <t>Type</t>
                            </th>
                            <th>
                                <t>Phy</t>
                            </th>
                            <th>
                                <t>Cyb</t>
                            </th>
                            <th>
                                <t>Avail</t>
                            </th>
                        </tr>
                        <tr>
                            <th>
                                <t>Analyzer</t>
                            </th>
                            <th>
                                <t>Class</t>
                            </th>
                            <th>
                                <t>R</t>
                            </th>
                            <th>
                                <t>R</t>
                            </th>
                            <th>
                                <t>R</t>
                            </th>
                        </tr>
                    </thead><tbody>
                        <tr>
                            <td>
                                <t>IP</t>
                            </td>
                            <td>
                                <t>IPAddress</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Name</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Hostname</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Type</t>
                            </td>
                            <td>
                                <t>ENUM</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Model</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Category</t>
                            </td>
                            <td>
                                <t>Array of ENUM</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Data</t>
                            </td>
                            <td>
                                <t>Array of ENUM</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Method</t>
                            </td>
                            <td>
                                <t>Array of ENUM</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>GeoLocation</t>
                            </td>
                            <td>
                                <t>GeoLocation</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>UnLocation</t>
                            </td>
                            <td>
                                <t>UN/LOCODE</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Location</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                    </tbody>
            </table>
        <table><name>Attributes completness - Sensor</name>
                
                <thead>
                        <tr>
                            <th>
                                <t>Attributes</t>
                            </th>
                            <th>
                                <t>Type</t>
                            </th>
                            <th>
                                <t>Phy</t>
                            </th>
                            <th>
                                <t>Cyb</t>
                            </th>
                            <th>
                                <t>Avail</t>
                            </th>
                        </tr>
                        <tr>
                            <th>
                                <t>Sensor</t>
                            </th>
                            <th>
                                <t>Array of Class</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                        </tr>
                    </thead><tbody>
                        <tr>
                            <td>
                                <t>IP</t>
                            </td>
                            <td>
                                <t>IPAddress</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Name</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Hostname</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Model</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>UnLocation</t>
                            </td>
                            <td>
                                <t>UN/LOCODE</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Location</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>CaptureZone</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                    </tbody>
            </table>
        <table><name>Attributes completness - Source</name>
                
                <thead>
                        <tr>
                            <th>
                                <t>Attributes</t>
                            </th>
                            <th>
                                <t>Type</t>
                            </th>
                            <th>
                                <t>Phy</t>
                            </th>
                            <th>
                                <t>Cyb</t>
                            </th>
                            <th>
                                <t>Avail</t>
                            </th>
                        </tr>
                        <tr>
                            <th>
                                <t>Source</t>
                            </th>
                            <th>
                                <t>Array of Class</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                        </tr>
                    </thead><tbody>
                        <tr>
                            <td>
                                <t>UnLocation</t>
                            </td>
                            <td>
                                <t>UN/LOCODE</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Location</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>GeoLocation</t>
                            </td>
                            <td>
                                <t>GeoLocation</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Note</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>TI</t>
                            </td>
                            <td>
                                <t>Array of String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>IP</t>
                            </td>
                            <td>
                                <t>IPAddress</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Hostname</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>User</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Email</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Protocol</t>
                            </td>
                            <td>
                                <t>Array of ProtocolName</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Port</t>
                            </td>
                            <td>
                                <t>Array of Port</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Attachment</t>
                            </td>
                            <td>
                                <t>Array of AttachmentName</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Observable</t>
                            </td>
                            <td>
                                <t>Array of ObservableName</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                    </tbody>
            </table>
        <table><name>Attributes completness - Target</name>
                
                <thead>
                        <tr>
                            <th>
                                <t>Attributes</t>
                            </th>
                            <th>
                                <t>Type</t>
                            </th>
                            <th>
                                <t>Phy</t>
                            </th>
                            <th>
                                <t>Cyb</t>
                            </th>
                            <th>
                                <t>Avail</t>
                            </th>
                        </tr>
                        <tr>
                            <th>
                                <t>Target</t>
                            </th>
                            <th>
                                <t>Array of Class</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>R</t>
                            </th>
                            <th>
                                <t>R</t>
                            </th>
                        </tr>
                    </thead><tbody>
                        <tr>
                            <td>
                                <t>UnLocation</t>
                            </td>
                            <td>
                                <t>UN/LOCODE</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Location</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>GeoLocation</t>
                            </td>
                            <td>
                                <t>GeoLocation</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Note</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>IP</t>
                            </td>
                            <td>
                                <t>IPAddress</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Hostname</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Service</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>User</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Email</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Port</t>
                            </td>
                            <td>
                                <t>Array of Port</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Attachment</t>
                            </td>
                            <td>
                                <t>Array of AttachmentName</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Observable</t>
                            </td>
                            <td>
                                <t>Array of ObservableName</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                    </tbody>
            </table>
        <table><name>Attributes completness - Vector</name>
                
                <thead>
                        <tr>
                            <th>
                                <t>Attributes</t>
                            </th>
                            <th>
                                <t>Type</t>
                            </th>
                            <th>
                                <t>Phy</t>
                            </th>
                            <th>
                                <t>Cyb</t>
                            </th>
                            <th>
                                <t>Avail</t>
                            </th>
                        </tr>
                        <tr>
                            <th>
                                <t>Vector</t>
                            </th>
                            <th>
                                <t>Array of Class</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                        </tr>
                    </thead><tbody>
                        <tr>
                            <td>
                                <t>Category</t>
                            </td>
                            <td>
                                <t>Array of ENUM</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>TI</t>
                            </td>
                            <td>
                                <t>Array of String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Name</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Size</t>
                            </td>
                            <td>
                                <t>ENUM</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>UnLocation</t>
                            </td>
                            <td>
                                <t>UN/LOCODE</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>GeoLocation</t>
                            </td>
                            <td>
                                <t>GeoLocation</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>GeoRadius</t>
                            </td>
                            <td>
                                <t>Number</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Location</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Note</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Attachment</t>
                            </td>
                            <td>
                                <t>Array of AttachmentName</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Observable</t>
                            </td>
                            <td>
                                <t>Array of ObservableName</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>NA</t>
                            </td>
                        </tr>
                    </tbody>
            </table>
        <table><name>Attributes completness - Attachment</name>
                
                <thead>
                        <tr>
                            <th>
                                <t>Attributes</t>
                            </th>
                            <th>
                                <t>Type</t>
                            </th>
                            <th>
                                <t>Phy</t>
                            </th>
                            <th>
                                <t>Cyb</t>
                            </th>
                            <th>
                                <t>Avail</t>
                            </th>
                        </tr>
                        <tr>
                            <th>
                                <t>Attachment</t>
                            </th>
                            <th>
                                <t>Array of Class</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                        </tr>
                    </thead><tbody>
                        <tr>
                            <td>
                                <t>Name</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>FileName</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Hash</t>
                            </td>
                            <td>
                                <t>Array of Hashes</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Size</t>
                            </td>
                            <td>
                                <t>Number</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Ref</t>
                            </td>
                            <td>
                                <t>Array of URI</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>ExternalURI</t>
                            </td>
                            <td>
                                <t>Array of URI</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Note</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>ContentType</t>
                            </td>
                            <td>
                                <t>MediaType</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>ContentEncoding</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Content</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                            <td>
                                <t>o</t>
                            </td>
                        </tr>
                    </tbody>
            </table>
        <table><name>Attributes completness - Observable</name>
                
                <thead>
                        <tr>
                            <th>
                                <t>Attributes</t>
                            </th>
                            <th>
                                <t>Type</t>
                            </th>
                            <th>
                                <t>Phy</t>
                            </th>
                            <th>
                                <t>Cyb</t>
                            </th>
                            <th>
                                <t>Avail</t>
                            </th>
                        </tr>
                        <tr>
                            <th>
                                <t>Observable</t>
                            </th>
                            <th>
                                <t>Array of Class</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                            <th>
                                <t>o</t>
                            </th>
                        </tr>
                    </thead><tbody>
                        <tr>
                            <td>
                                <t>Name</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Reference</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                            <td>
                                <t>r</t>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <t>Content</t>
                            </td>
                            <td>
                                <t>String</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                            <td>
                                <t>R</t>
                            </td>
                        </tr>
                    </tbody>
            </table>
      </section>
    </section>
    <section>
      <name>Security Considerations</name>
      <t>This document describes a data representation for exchanging security-related
            information between incident detection system implementations.  Although there
            are no security concerns directly applicable to the format of this data, the
            data itself may contain security-sensitive information whose confidentiality,
            integrity, and/or availability may need to be protected.</t>
      <t>This suggests that the systems used to collect, transmit, process, and store
            this data should be protected against unauthorized use and that the data itself
            should be protected against unauthorized access.</t>
      <t>The underlying messaging format and protocol used to exchange instances of the
            IDMEF MUST provide appropriate guarantees of confidentiality, integrity, and
            authenticity. The use of a standardized security protocol is encouraged.</t>
      <t>The draft-poirotte-idmefv2-00.txt document defines the transportation of IDMEF over HTTPs that provides such
            security.</t>
    </section>
    <section>
      <name>IANA Considerations</name>
      <t>This document creates 10 identically structured registries to be
            managed by IANA:</t>
      <ul>
            <li>
                <t>Name of the parent registry: "Incident Detection Message Exchange Format v2 (IDMEF)"</t>
            </li>
            <li>
                <t>URL of the registry: &lt;http://www.iana.org/assignments/idmef2&gt;</t>
            </li>
            <li>
                <t>Namespace format: A registry entry consists of:</t>
                <ul>
                    <li>
                        <t>Value.  A value for a given IDMEF attribute.  It MUST conform
                            to the formatting specified by the IDMEF "ENUM" data type
                            (<xref target="data-types-enums"/>).</t>
                    </li>
                    <li>
                        <t>Description. A short description of the enumerated value.</t>
                    </li>
                    <li>
                        <t>Reference. An optional list of URIs to further describe the value.</t>
                    </li>
                </ul>
            </li>
            <li>
                <t>Allocation policy: Expert Review per <xref target="RFC8126"/>.
                    This reviewer will ensure that the requested registry entry conforms
                    to the prescribed formatting. The reviewer will also ensure that the
                    entry is an appropriate value for the attribute per the information
                    model (<xref target="model"/>).</t>
            </li>
        </ul>
      <t>The registries to be created are named in the "Registry Name" column
            of <xref target="iana-registries"/>. Each registry is initially populated
            with values and descriptions that come from an attribute specified
            in the IDMEF model (<xref target="model"/>).
            The initial values for the Value and Description fields of a given
            registry are listed in "Initial Values".
            The "Initial Values" column points to a table in this document that
            lists and describes each enumerated value. Each enumerated value
            in the table gets a corresponding entry in a given registry.
            The initial value of the Reference field of every registry entry
            described below should be this document.</t>
      <table anchor="iana-registries"><name>IANA Enumerated Value Registries</name>
            
            <thead>
                    <tr>
                        <th>
                            <t>Registry Name</t>
                        </th>
                        <th>
                            <t>Initial Values</t>
                        </th>
                    </tr>
                </thead><tbody>
                    <tr>
                        <td>
                            <t>Alert-Category</t>
                        </td>
                        <td>
                            <t><xref target="enum-alert-category"/> (<xref target="class_alert">Alert class</xref>)</t>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <t>Alert-Cause</t>
                        </td>
                        <td>
                            <t><xref target="enum-alert-cause"/> (<xref target="class_alert">Alert class</xref>)</t>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <t>Alert-Severity</t>
                        </td>
                        <td>
                            <t><xref target="enum-alert-severity"/> (<xref target="class_alert">Alert class</xref>)</t>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <t>Alert-Status</t>
                        </td>
                        <td>
                            <t><xref target="enum-alert-status"/> (<xref target="class_alert">Alert class</xref>)</t>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <t>Analyzer-Category</t>
                        </td>
                        <td>
                            <t><xref target="enum-analyzer-category"/> (<xref target="class_alert">Alert class</xref>)</t>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <t>Analyzer-Data</t>
                        </td>
                        <td>
                            <t><xref target="enum-analyzer-data"/> (<xref target="class_analyzer">Analyzer class</xref>)</t>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <t>Analayzer-Method</t>
                        </td>
                        <td>
                            <t><xref target="enum-analyzer-method"/> (<xref target="class_analyzer">Analyzer class</xref>)</t>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <t>Analyzer-Type</t>
                        </td>
                        <td>
                            <t><xref target="enum-analyzer-type"/> (<xref target="class_analyzer">Analyzer class</xref>)</t>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <t>Vector-Category</t>
                        </td>
                        <td>
                            <t><xref target="enum-vector-category"/> (<xref target="class_vector">Vector</xref>)</t>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <t>Vector-Size</t>
                        </td>
                        <td>
                            <t><xref target="enum-vector-size"/> (<xref target="class_vector">Vector</xref>)</t>
                        </td>
                    </tr>
                </tbody>
        </table>
    </section>
    <section>
      <name>Acknowledgement</name>
      <t>Thanks to the core participants of the SECEF (SECurity Exchange Format) project :</t>
      <ul>
            <li>
                <t>Herve Debar, Telecom SudParis</t>
            </li>
            <li>
                <t>Guillaume Hiet, CentraleSupelec</t>
            </li>
            <li>
                <t>Francois Dechelle, Teclib'</t>
            </li>
        </ul>
      <t>Thanks to the H2020 7SHIELD project (Safety and Security Standards of Space
            Systems, ground Segments and Satellite data assets, via prevention, detection,
            response and mitigation of physical and cyber threats) who implemented in real
            scale first versions of IDMEFv2 on different critical infrastructures around
            Europa helping greatly to improve it.</t>
      <t>Thanks to the CESNET team for their work on the <xref target="IDEA0"/> format (based on
            IDMEFv1) which inspired multiples concepts to IDMEFv2.
            (&lt;https://idea.cesnet.cz/en/index&gt;)</t>
    </section>
  </middle>
  <back>
    <references title="Normative References">
      <reference anchor="RFC5321" target="https://www.rfc-editor.org/info/rfc5321">
  <front>
    <title>Simple Mail Transfer Protocol</title>
    <author fullname="J. Klensin" initials="J." surname="Klensin"/>
    <date month="October" year="2008"/>
    <abstract>
      <t>This document is a specification of the basic protocol for Internet electronic mail transport.  It consolidates, updates, and clarifies several previous documents, making all or parts of most of them obsolete.  It covers the SMTP extension mechanisms and best practices for the contemporary Internet, but does not provide details about particular extensions.  Although SMTP was designed as a mail transport and delivery protocol, this specification also contains information that is important to its use as a "mail submission" protocol for "split-UA" (User Agent) mail reading systems and mobile environments. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5321"/>
  <seriesInfo name="DOI" value="10.17487/RFC5321"/>
</reference>
      <reference anchor="RFC2046" target="https://www.rfc-editor.org/info/rfc2046">
  <front>
    <title>Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types</title>
    <author fullname="N. Freed" initials="N." surname="Freed"/>
    <author fullname="N. Borenstein" initials="N." surname="Borenstein"/>
    <date month="November" year="1996"/>
    <abstract>
      <t>This second document defines the general structure of the MIME media typing system and defines an initial set of media types. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="2046"/>
  <seriesInfo name="DOI" value="10.17487/RFC2046"/>
</reference>
      <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized.  This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>
      <reference anchor="RFC5322" target="https://www.rfc-editor.org/info/rfc5322">
  <front>
    <title>Internet Message Format</title>
    <author fullname="P. Resnick" initials="P." role="editor" surname="Resnick"/>
    <date month="October" year="2008"/>
    <abstract>
      <t>This document specifies the Internet Message Format (IMF), a syntax for text messages that are sent between computer users, within the framework of "electronic mail" messages.  This specification is a revision of Request For Comments (RFC) 2822, which itself superseded Request For Comments (RFC) 822, "Standard for the Format of ARPA Internet Text Messages", updating it to reflect current practice and incorporating incremental changes that were specified in other RFCs. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5322"/>
  <seriesInfo name="DOI" value="10.17487/RFC5322"/>
</reference>
      <reference anchor="RFC3339" target="https://www.rfc-editor.org/info/rfc3339">
  <front>
    <title>Date and Time on the Internet: Timestamps</title>
    <author fullname="G. Klyne" initials="G." surname="Klyne"/>
    <author fullname="C. Newman" initials="C." surname="Newman"/>
    <date month="July" year="2002"/>
    <abstract>
      <t>This document defines a date and time format for use in Internet protocols that is a profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="3339"/>
  <seriesInfo name="DOI" value="10.17487/RFC3339"/>
</reference>
      <reference anchor="RFC3986" target="https://www.rfc-editor.org/info/rfc3986">
  <front>
    <title>Uniform Resource Identifier (URI): Generic Syntax</title>
    <author fullname="T. Berners-Lee" initials="T." surname="Berners-Lee"/>
    <author fullname="R. Fielding" initials="R." surname="Fielding"/>
    <author fullname="L. Masinter" initials="L." surname="Masinter"/>
    <date month="January" year="2005"/>
    <abstract>
      <t>A Uniform Resource Identifier (URI) is a compact sequence of characters that identifies an abstract or physical resource.  This specification defines the generic URI syntax and a process for resolving URI references that might be in relative form, along with guidelines and security considerations for the use of URIs on the Internet.  The URI syntax defines a grammar that is a superset of all valid URIs, allowing an implementation to parse the common components of a URI reference without knowing the scheme-specific requirements of every possible identifier.  This specification does not define a generative grammar for URIs; that task is performed by the individual specifications of each URI scheme. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="66"/>
  <seriesInfo name="RFC" value="3986"/>
  <seriesInfo name="DOI" value="10.17487/RFC3986"/>
</reference>
      <reference anchor="RFC4122" target="https://www.rfc-editor.org/info/rfc4122">
  <front>
    <title>A Universally Unique IDentifier (UUID) URN Namespace</title>
    <author fullname="P. Leach" initials="P." surname="Leach"/>
    <author fullname="M. Mealling" initials="M." surname="Mealling"/>
    <author fullname="R. Salz" initials="R." surname="Salz"/>
    <date month="July" year="2005"/>
    <abstract>
      <t>This specification defines a Uniform Resource Name namespace for UUIDs (Universally Unique IDentifier), also known as GUIDs (Globally Unique IDentifier). A UUID is 128 bits long, and can guarantee uniqueness across space and time. UUIDs were originally used in the Apollo Network Computing System and later in the Open Software Foundation\'s (OSF) Distributed Computing Environment (DCE), and then in Microsoft Windows platforms.</t>
      <t>This specification is derived from the DCE specification with the kind permission of the OSF (now known as The Open Group). Information from earlier versions of the DCE specification have been incorporated into this document. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4122"/>
  <seriesInfo name="DOI" value="10.17487/RFC4122"/>
</reference>
      <reference anchor="RFC4291" target="https://www.rfc-editor.org/info/rfc4291">
  <front>
    <title>IP Version 6 Addressing Architecture</title>
    <author fullname="R. Hinden" initials="R." surname="Hinden"/>
    <author fullname="S. Deering" initials="S." surname="Deering"/>
    <date month="February" year="2006"/>
    <abstract>
      <t>This specification defines the addressing architecture of the IP Version 6 (IPv6) protocol. The document includes the IPv6 addressing model, text representations of IPv6 addresses, definition of IPv6 unicast addresses, anycast addresses, and multicast addresses, and an IPv6 node's required addresses.</t>
      <t>This document obsoletes RFC 3513, "IP Version 6 Addressing Architecture". [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4291"/>
  <seriesInfo name="DOI" value="10.17487/RFC4291"/>
</reference>
      <reference anchor="RFC4648" target="https://www.rfc-editor.org/info/rfc4648">
  <front>
    <title>The Base16, Base32, and Base64 Data Encodings</title>
    <author fullname="S. Josefsson" initials="S." surname="Josefsson"/>
    <date month="October" year="2006"/>
    <abstract>
      <t>This document describes the commonly used base 64, base 32, and base 16 encoding schemes.  It also discusses the use of line-feeds in encoded data, use of padding in encoded data, use of non-alphabet characters in encoded data, use of different encoding alphabets, and canonical encodings. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4648"/>
  <seriesInfo name="DOI" value="10.17487/RFC4648"/>
</reference>
      <reference anchor="RFC5234" target="https://www.rfc-editor.org/info/rfc5234">
  <front>
    <title>Augmented BNF for Syntax Specifications: ABNF</title>
    <author fullname="D. Crocker" initials="D." role="editor" surname="Crocker"/>
    <author fullname="P. Overell" initials="P." surname="Overell"/>
    <date month="January" year="2008"/>
    <abstract>
      <t>Internet technical specifications often need to define a formal syntax.  Over the years, a modified version of Backus-Naur Form (BNF), called Augmented BNF (ABNF), has been popular among many Internet specifications.  The current specification documents ABNF.  It balances compactness and simplicity with reasonable representational power.  The differences between standard BNF and ABNF involve naming rules, repetition, alternatives, order-independence, and value ranges.  This specification also supplies additional rule definitions and encoding for a core lexical analyzer of the type common to several Internet specifications. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="68"/>
  <seriesInfo name="RFC" value="5234"/>
  <seriesInfo name="DOI" value="10.17487/RFC5234"/>
</reference>
      <reference anchor="RFC5952" target="https://www.rfc-editor.org/info/rfc5952">
  <front>
    <title>A Recommendation for IPv6 Address Text Representation</title>
    <author fullname="S. Kawamura" initials="S." surname="Kawamura"/>
    <author fullname="M. Kawashima" initials="M." surname="Kawashima"/>
    <date month="August" year="2010"/>
    <abstract>
      <t>As IPv6 deployment increases, there will be a dramatic increase in the need to use IPv6 addresses in text.  While the IPv6 address architecture in Section 2.2 of RFC 4291 describes a flexible model for text representation of an IPv6 address, this flexibility has been causing problems for operators, system engineers, and users.  This document defines a canonical textual representation format.  It does not define a format for internal storage, such as within an application or database.  It is expected that the canonical format will be followed by humans and systems when representing IPv6 addresses as text, but all implementations must accept and be able to handle any legitimate RFC 4291 format. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="5952"/>
  <seriesInfo name="DOI" value="10.17487/RFC5952"/>
</reference>
      <reference anchor="RFC8259" target="https://www.rfc-editor.org/info/rfc8259">
  <front>
    <title>The JavaScript Object Notation (JSON) Data Interchange Format</title>
    <author fullname="T. Bray" initials="T." role="editor" surname="Bray"/>
    <date month="December" year="2017"/>
    <abstract>
      <t>JavaScript Object Notation (JSON) is a lightweight, text-based, language-independent data interchange format. It was derived from the ECMAScript Programming Language Standard. JSON defines a small set of formatting rules for the portable representation of structured data.</t>
      <t>This document removes inconsistencies with other specifications of JSON, repairs specification errors, and offers experience-based interoperability guidance.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="90"/>
  <seriesInfo name="RFC" value="8259"/>
  <seriesInfo name="DOI" value="10.17487/RFC8259"/>
</reference>
      <reference target="https://www.unicode.org/versions/Unicode14.0.0/" anchor="UNICODE">
        <front>
          <title>Unicode Standard</title>
          <author>
            <organization>Unicode Consortium</organization>
          </author>
          <date day="14" month="September" year="2021"/>
        </front>
        <seriesInfo name="version" value="14.0.0"/>
      </reference>
      <reference target="https://www.enisa.europa.eu/publications/reference-incident-classification-taxonomy" anchor="ENISA-RIST">
        <front>
          <title>Reference Incident Classification Taxonomy</title>
          <author>
            <organization abbrev="ENISA">European Union Agency for Cybersecurity</organization>
          </author>
          <date day="26" month="January" year="2018"/>
        </front>
      </reference>
      <reference anchor="IANA_media_types" target="http://www.iana.org/assignments/media-types">
  <front>
    <title>Media Types</title>
    <author>
      <organization abbrev="IANA">Internet Assigned Numbers Authority</organization>
    </author>
    <date day="10" month="October" year="2022"/>
  </front>
</reference>
      <reference anchor="IANA_hash_function_text_names" target="http://www.iana.org/assignments/hash-function-text-names">
  <front>
    <title>Hash Function Textual Names</title>
    <author>
      <organization abbrev="IANA">Internet Assigned Numbers Authority</organization>
    </author>
    <date day="21" month="April" year="2006"/>
  </front>
</reference>
      <reference target="https://unece.org/trade/cefact/unlocode-code-list-country-and-territory" anchor="UN-LOCODE">
        <front>
          <title abbrev="UN/LOCODE">UN/LOCODE Code List by Country and Territory</title>
          <author>
            <organization abbrev="UNECE">United Nations Economic Commission for Europe</organization>
          </author>
          <date day="6" month="July" year="2021"/>
        </front>
      </reference>
    </references>
    <references title="Informative References">
      <reference anchor="RFC4765" target="https://www.rfc-editor.org/info/rfc4765">
  <front>
    <title>The Intrusion Detection Message Exchange Format (IDMEF)</title>
    <author fullname="H. Debar" initials="H." surname="Debar"/>
    <author fullname="D. Curry" initials="D." surname="Curry"/>
    <author fullname="B. Feinstein" initials="B." surname="Feinstein"/>
    <date month="March" year="2007"/>
    <abstract>
      <t>The purpose of the Intrusion Detection Message Exchange Format (IDMEF) is to define data formats and exchange procedures for sharing information of interest to intrusion detection and response systems and to the management systems that may need to interact with them.</t>
      <t>This document describes a data model to represent information exported by intrusion detection systems and explains the rationale for using this model. An implementation of the data model in the Extensible Markup Language (XML) is presented, an XML Document Type Definition is developed, and examples are provided. This memo defines an Experimental Protocol for the Internet community.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4765"/>
  <seriesInfo name="DOI" value="10.17487/RFC4765"/>
</reference>
      <reference anchor="RFC8126" target="https://www.rfc-editor.org/info/rfc8126">
  <front>
    <title>Guidelines for Writing an IANA Considerations Section in RFCs</title>
    <author fullname="M. Cotton" initials="M." surname="Cotton"/>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <author fullname="T. Narten" initials="T." surname="Narten"/>
    <date month="June" year="2017"/>
    <abstract>
      <t>Many protocols make use of points of extensibility that use constants to identify various protocol parameters. To ensure that the values in these fields do not have conflicting uses and to promote interoperability, their allocations are often coordinated by a central record keeper. For IETF protocols, that role is filled by the Internet Assigned Numbers Authority (IANA).</t>
      <t>To make assignments in a given registry prudently, guidance describing the conditions under which new values should be assigned, as well as when and how modifications to existing values can be made, is needed. This document defines a framework for the documentation of these guidelines by specification authors, in order to assure that the provided guidance for the IANA Considerations is clear and addresses the various issues that are likely in the operation of a registry.</t>
      <t>This is the third edition of this document; it obsoletes RFC 5226.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="26"/>
  <seriesInfo name="RFC" value="8126"/>
  <seriesInfo name="DOI" value="10.17487/RFC8126"/>
</reference>
      <reference anchor="RFC6234" target="https://www.rfc-editor.org/info/rfc6234">
  <front>
    <title>US Secure Hash Algorithms (SHA and SHA-based HMAC and HKDF)</title>
    <author fullname="D. Eastlake 3rd" initials="D." surname="Eastlake 3rd"/>
    <author fullname="T. Hansen" initials="T." surname="Hansen"/>
    <date month="May" year="2011"/>
    <abstract>
      <t>Federal Information Processing Standard, FIPS</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="6234"/>
  <seriesInfo name="DOI" value="10.17487/RFC6234"/>
</reference>
      <reference anchor="NIST.FIPS.202" target="https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf">
<front>
<title>SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions</title>
<author initials="Morris J." surname="Dworkin" fullname="Morris J. Dworkin">
<organization>Information Technology Laboratory</organization>
</author>
<date year="2015" month="July"/>
</front>
<seriesInfo name="NIST" value="NIST FIPS 202"/>
<seriesInfo name="DOI" value="10.6028/NIST.FIPS.202"/>
</reference>
      <reference target="https://apps.dtic.mil/sti/pdfs/ADA280358.pdf" anchor="WGS84">
        <front>
          <title>Department of Defense World Geodetic System 1984: Its Definition and Relationships with Local Geodetic Systems</title>
          <author>
            <organization>National Imagery and Mapping Agency</organization>
          </author>
          <date year="1984"/>
        </front>
        <seriesInfo name="Third" value="Edition"/>
      </reference>
      <reference target="https://idea.cesnet.cz/en/definition" anchor="IDEA0">
        <front>
          <title>Intrusion Detection Extensible Alert version 0</title>
          <author>
            <organization>CESNET</organization>
          </author>
          <date day="25" month="September" year="2015"/>
        </front>
      </reference>
    </references>
    <section>
      <name>Examples</name>
      <t>This section contains several examples of events/incidents which may be
            described using the IDMEF Data Model defined in.</t>
      <t>For each example, the serialization method listed in Section 5 was used on the
            original IDMEF message to produce a JSON representation.</t>
      <section>
        <name>Physical intrusion</name>
        <t>Listing 1 describes an incident where an unidentified man was detected on
                company premises near the building where server room A is located.</t>
        <sourcecode type="none">{
  "Version": "2.0",
  "ID": "819df7bc-35ef-40d8-bbee-1901117370b1",
  "Description": "Potential intruder detected",
  "Severity": "Low",
  "Status": "Incident",
  "Cause": "Malicious",
  "CreateTime": "2021-05-10T16:52:13.075994+00:00",
  "StartTime": "2021-05-10T16:52:13+00:00",
  "Category": [
    "Intrusion.Burglary"
  ],
  "Analyzer": {
    "Name": "BigBrother",
    "Hostname": "bb.example.com",
    "Type": "Physical",
    "Model": "Big Brother v42",
    "Category": [
      "HAR",
      "FRC"
    ],
    "Data": [
      "Images"
    ],
    "Method": [
      "Movement",
      "Biometric",
      "AI"
    ],
    "IP": "192.0.2.1"
  },
  "Sensor": [
    {
      "IP": "192.0.2.2",
      "Name": "Camera #23",
      "Model": "SuperDuper Camera v1",
      "Location": "Hallway to server room A1"
    }
  ],
  "Source": [
    {
      "Note": "Black Organization, aka. APT 4869"
    }
  ],
  "Vector": [
    {
      "Category": ["Man"],
      "TI": ["Name:FBI-Wanted"],
      "Name": "John Doe",
      "Note": "Codename Vodka, known henchman for APT 4869",
      "Size": "Medium",
      "Location": "Hallway to server room A1",
      "Attachment": ["pic01", "wanted"]
    }
  ],
  "Attachment": [
    {
      "Name": "wanted",
      "FileName": "fbi-wanted-poster.jpg",
      "Size": 1234567,
      "Ref": ["https://www.fbi.gov/wanted/topten"],
      "ContentType": "image/jpg",
      "ContentEncoding": "base64",
      "Content": "..."
    },
    {
      "Name": "pic01",
      "Note": "Hi-res picture showing John Doe near server room A1",
      "ExternalURI": ["ftps://192.0.2.1/cam23/20210510165211.jpg"],
      "ContentType": "image/jpg"
    }
  ]
}</sourcecode>
      </section>
      <section>
        <name>Cyberattack</name>
        <t>Listing 2 describes an incident related to a potential bruteforce attack
                against the "root" user account of the server at 192.0.2.2 and 2001:db8::/32.</t>
        <sourcecode type="none">{
  "Version": "2.0",
  "ID": "819df7bc-35ef-40d8-bbee-1901117370b2",
  "Description": "Potential bruteforce attack on root user account",
  "Severity": "Medium",
  "CreateTime": "2021-05-10T16:55:29.196408+00:00",
  "StartTime": "2021-05-10T16:55:29+00:00",
  "Category": [
    "Attempt.Login"
  ],
  "Analyzer": {
    "Name": "SIEM",
    "Hostname": "siem.example.com",
    "Type": "Cyber",
    "Model": "Prelude SIEM 5.2",
    "Category": [
      "SIEM",
      "LOG"
    ],
    "Data": [
      "Log"
    ],
    "Method": [
      "Monitor",
      "Signature"
    ],
    "IP": "192.0.2.1"
  },
  "Sensor": [
    {
      "IP": "192.0.2.5",
      "Name": "syslog",
      "Hostname": "www.example.com",
      "Model": "rsyslog 8.2110",
      "Location": "Server room A1, rack 10"
    }
  ],
  "Target": [
    {
      "IP": "192.0.2.2",
      "Hostname": "www.example.com",
      "Location": "Server room A1, rack 10",
      "User": "root"
    },
    {
      "IP": "2001:db8::/32",
      "Hostname": "www.example.com",
      "Location": "Server room A1, rack 10",
      "User": "root"
    }
  ]
}</sourcecode>
      </section>
      <section>
        <name>Server outage</name>
        <t>Listing 3 describes an incident where the webserver at "www.example.com"
                encountered some kind of failure condition resulting in an outage.</t>
        <sourcecode type="none">{
  "Version": "2.0",
  "ID": "819df7bc-35ef-40d8-bbee-1901117370b3",
  "Description": "A server did not reply to an ICMP ping request",
  "Severity": "Medium",
  "Status": "Incident",
  "Cause": "Unknown",
  "CreateTime": "2021-05-10T16:59:11.875209+00:00",
  "StartTime": "2021-05-10T16:59:11.875209+00:00",
  "Category": [
    "Availability.Outage"
  ],
  "Analyzer": {
    "Name": "NMS",
    "Hostname": "nms.example.com",
    "Type": "Availability",
    "Model": "Vigilo NMS 5.2",
    "Category": [
      "NMS"
    ],
    "Data": [
      "Network"
    ],
    "Method": [
      "Monitor"
    ],
    "IP": "192.0.2.1"
  },
  "Target": [
    {
      "IP": "192.168.1.2",
      "Hostname": "www.example.com",
      "Service": "website",
      "Location": "Server room A1, rack 10"
    }
  ]
}</sourcecode>
      </section>
      <section>
        <name>Combined incident</name>
        <t>Listing 4 describes a combined incident resulting from the correlation of the
                previous physical, cyber and availability incidents.</t>
        <sourcecode type="none">{
  "Version": "2.0",
  "ID": "819df7bc-35ef-40d8-bbee-1901117370b4",
  "Description": "Intrusion and Sabotage detected",
  "Severity": "High",
  "Status": "Incident",
  "Cause": "Malicious",
  "CreateTime": "2021-05-10T16:59:15.075994+00:00",
  "StartTime": "2021-05-10T16:52:11+00:00",
  "Category": [
    "Intrusion.Burglary",
    "Attempt.Login",
    "Intrusion.SysCompromise",
    "Availability.Outage",
    "Availability.Sabotage",
    "Availability.Failure"
  ],
  "CorrelID": [
    "819df7bc-35ef-40d8-bbee-1901117370b1",
    "819df7bc-35ef-40d8-bbee-1901117370b2",
    "819df7bc-35ef-40d8-bbee-1901117370b3"
  ],
  "Analyzer": {
    "Name": "Correlator",
    "Hostname": "correlator.example.com",
    "Type": "Combined",
    "Model": "Unity 360 Hybrid Correlator v5.2",
    "Category": [
    ],
    "Data": [
      "Alert"
    ],
    "Method": [
      "Correlation"
    ],
    "IP": "192.0.2.1"
  },
  "Source": [
    {
      "Note": "Black Organization, aka. APT 4869"
    }
  ],
  "Vector": [
    {
      "Category": ["Man"],
      "TI": ["Name:FBI-Wanted"],
      "Name": "John Doe",
      "Note": "Codename Vodka, known henchman for APT 4869",
      "Size": "Medium"
    }
  ],
  "Target": [
    {
      "Location": "Server room A1"
    },
    {
      "IP": "192.0.2.2",
      "Hostname": "www.example.com",
      "User": "root"
    },
    {
      "IP": "192.0.2.2",
      "Hostname": "www.example.com",
      "Service": "website"
    }
  ]
}</sourcecode>
      </section>
    </section>
    <section>
      <name>JSON Validation Schema (Non-normative)</name>
      <t>Listing 5 contains a JSON Schema that can be used to validate incoming IDMEF
            messages prior to processing. Please note that extraneous linebreaks have been
            included due to formatting constraints.</t>
      <t>FIXME: le type vectorCategoryEnum ne correspond pas a l'enumeration definie
            dans le document (voir remarque dans la classe Vector)</t>
      <sourcecode type="none">{
 "$schema": "http://json-schema.org/draft-04/schema#",
 "type": "object",
 "title": "IDMEF v2.0",
 "description": "JSON schema for IDMEF version 2",

 "definitions": {
  "attachmentNameType": {
   "description": "A unique identifier among attachments",
   "type": "string",
   "pattern": "^[a-zA-Z0-9]+$"
  },
  "observableNameType": {
   "description": "A unique identifier among observables",
   "type": "string",
   "pattern": "^[a-zA-Z0-9]+$"
  },
  "portType": {
   "description": "A network port number",
   "type": "integer",
   "minimum": 0,
   "maximum": 65535,
   "exclusiveMinimum": true
  },
  "timestampType": {
   "description": "A JSON string containing a timestamp (RFC 3339)",
   "type": "string",
   "pattern": "^[0-9]{4}-(0[0-9]|1[012])-([0-2][0-9]|3[01])T([0-1]
[0-9]|2[0-3]):[0-5][0-9]:([0-5][0-9]|60)(\\.[0-9]+)?(Z|[-+]([0-1]
[0-9]|2[0-3]):[0-5][0-9])?$"
  },
  "geoLocationType": {
   "description": "Geolocation coordinates (ISO 6709)",
   "type": "string",
   "pattern": "^[-+]?([0-9]+(\\.[0-9]*)?)(, ?[-+]?([0-9]+(\\.
[0-9]*)?)){1,2}$"
  },
  "unLocodeType": {
   "description": "A valid UN/LOCODE location (e.g. \"FR PAR\")",
   "type": "string",
   "pattern": "^[A-Z]{2} ?[A-Z]{3}$"
  },
  "ipAddressType": {
   "description": "An Internet Protocol address (version 4 or 6)",
   "type": "string",
   "pattern": "^(((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25
[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|([0-9a-fA-F]{1,4}:){7,7}[0-9a-f
A-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-f
A-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-f
A-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}
(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4})
{1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]
{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::
(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])
\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}
:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|
(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$"
  },
  "mediaTypeType": {
   "description": "A valid media type (RFC 7231)",
   "type": "string",
   "pattern": "^[-!#$%&amp;'*+.^_`|~0-9a-zA-Z]+/[-!#$%&amp;'*+.^_`|~0-9a-z
A-Z]+([ \t]*;[ \t]*[-!#$%&amp;'*+.^_`|~0-9a-zA-Z]+=([-!#$%&amp;'*+.^_`|~0-9
a-zA-Z]+|\"([]-~\t !#-[\\x80-\\xFF]|\\\\([\t 0-9a-zA-Z\\x80-\\xFF]
))*\"))*$"
  },
  "uuidType": {
   "description": "A Universally Unique IDentifier (RFC 4122)",
   "type": "string",
   "pattern": "^[0-9A-Fa-f]{8}(-[0-9A-Fa-f]{4}){3}-[0-9A-Fa-f]{12}$"
  },
  "protocolNameType": {
   "description": "A JSON string containing a service/protocol name",
   "type": "string",
   "pattern": "^[a-zA-Z0-9](-?[a-zA-Z0-9])*$"
  },
  "hashType": {
   "description": "A checksum (e.g. \"crc32:cbf43926\")",
   "type": "string",
   "pattern": "^[a-zA-Z0-9-]+:([a-fA-F0-9]{2})+$"
  },

  "statusEnum": {
   "description": "Possible alert statuses",
   "enum": [
    "Event",
    "Incident"
   ]
  },
  "causeEnum": {
   "description": "Possible alert causes",
   "enum": [
     "Normal",
     "Error",
     "Malicious",
     "Malfunction",
     "Natural",
     "Unknown"
   ]
  },
  "severityEnum": {
   "description": "Possible alert severities",
   "enum": [
    "Unknown",
    "Info",
    "Low",
    "Medium",
    "High"
   ]
  },
  "analyzerCategoryEnum": {
   "description": "Possible analyzer categories",
   "enum": [
    "1DLiS",
    "2DLiS",
    "3DLiS",
    "1DLaS",
    "2DLaS",
    "3DLaS",
    "VAD",
    "HAR",
    "FRC",
    "VNIR",
    "SWIR",
    "LWIR",
    "MWIR",
    "ADS",
    "ODC",
    "WEA",
    "DDOS",
    "SPAM",
    "AV",
    "EDR",
    "FW",
    "NIDS",
    "HIDS",
    "WIDS",
    "PROX",
    "WAF",
    "HPT",
    "LOG",
    "IAM",
    "VPN",
    "ETL",
    "RASP",
    "BAST",
    "NAC",
    "SIEM",
    "NMS"
   ]
  },
  "analyzerTypeEnum": {
   "description": "Possible analyzer types",
   "enum": [
    "Cyber",
    "Physical",
    "Availability",
    "Combined"
   ]
  },
  "analyzerDataEnum": {
   "description": "Possible types of data/sensors",
   "enum": [
    "Light",
    "Noise",
    "Touch",
    "Images",
    "Vibration",
    "Lidar",
    "Thermic",
    "Seismic",
    "Temperature",
    "Rain",
    "Water",
    "Humidity",
    "Particles",
    "Contact",
    "MagneticField",
    "Acoustics",
    "Fog",
    "External",
    "Reporting",
    "Connection",
    "Datagram",
    "Content",
    "Data",
    "File",
    "Flow",
    "Log",
    "Protocol",
    "Host",
    "Network",
    "Alert",
    "Relay",
    "Auth",
    "SNMP"
   ]
  },
  "analyzerMethodEnum": {
   "description": "Possible detection methods",
   "enum": [
    "Biometric",
    "Signature",
    "Monitor",
    "Policy",
    "Statistical",
    "AI",
    "Heat",
    "Movement",
    "Blackhole",
    "Heuristic",
    "Integrity",
    "Honeypot",
    "Tarpit",
    "Recon",
    "Correlation",
    "Threshold"
   ]
  },
  "vectorCategoryEnum": {
   "description": "Possible categories for attack vectors",
   "enum": [
    "Unknown",
    "Face",
    "RunningMan",
    "Human",
    "Man",
    "Woman",
    "Chilren",
    "Animal",
    "Object",
    "Blast",
    "Fire",
    "Wind",
    "Snow",
    "Rain",
    "Chemical",
    "Smoke",
    "Vapors",
    "Drug",
    "Device",
    "Drone",
    "Car",
    "Truck",
    "Vehicle",
    "Bird",
    "Storm",
    "HighTemperature",
    "Artifact",
    "AutonomousSystem",
    "Directory",
    "DomainName",
    "EmailAddress",
    "EmailMessage",
    "File",
    "IPv4Address",
    "IPv6Address",
    "Mutex",
    "NetworkTraffic",
    "Process",
    "URL",
    "UserAccount",
    "WindowsRegistryKey",
    "X509Certificate"
   ]
  },
  "vectorSizeEnum": {
   "description": "Possible sizes for attack vectors",
   "enum": [
    "Small",
    "Medium",
    "Large",
    "Huge"
   ]
  },

  "categoryEnum": {
   "description": "Possible alert categories",
   "enum": [
    "Abusive.Spam",
    "Abusive.Harassment",
    "Abusive.Illicit",
    "Malicious.System",
    "Malicious.Botnet",
    "Malicious.Distribution",
    "Malicious.Configuration",
    "Recon.Scanning",
    "Recon.Sniffing",
    "Recon.SocialEngineering",
    "Attempt.Exploit",
    "Attempt.Login",
    "Attempt.NewSignature",
    "Intrusion.AdminCompromise",
    "Intrusion.UserCompromise",
    "Intrusion.AppCompromise",
    "Intrusion.SysCompromise",
    "Intrusion.Burglary",
    "Availability.DoS",
    "Availability.DDoS",
    "Availability.Misconf",
    "Availability.Theft",
    "Availability.Sabotage",
    "Availability.Outage",
    "Availability.Failure",
    "Information.UnauthorizedAccess",
    "Information.UnauthorizedModification",
    "Information.DataLoss",
    "Information.DataLeak",
    "Fraud.UnauthorizedUsage",
    "Fraud.Copyright",
    "Fraud.Masquerade",
    "Fraud.Phishing",
    "Vulnerable.Crypto",
    "Vulnerable.DDoS",
    "Vulnerable.Surface",
    "Vulnerable.Disclosure",
    "Vulnerable.System",
    "Geophysical.Earthquake",
    "Geophysical.MassMovement",
    "Geophysical.Volcanic",
    "Meteorological.Temperature",
    "Meteorological.Fog",
    "Meteorological.Storm",
    "Hydrological.Flood",
    "Hydrological.Landslide",
    "Hydrological.Wave",
    "Climatological.Drought",
    "Climatological.LakeOutburst",
    "Climatological.Wildfire",
    "Biological.Epidemic",
    "Biological.Insect",
    "Biological.Animal",
    "Extraterrestrial.Impact",
    "Extraterrestrial.SpaceWeather",
    "Other.Uncategorized",
    "Other.Undetermined",
    "Test.Test"
   ]
  }
 },

 "required": [
  "Version",
  "ID",
  "CreateTime",
  "Analyzer"
 ],
 "additionalProperties": false,
 "properties": {
  "Version": {
   "description": "Version of the IDMEFv2 Format",
   "enum": ["2.0.3"]
  },
  "ID": {
   "description": "128-bit Universally Unique IDentifier (UUID)",
   "$ref": "#/definitions/uuidType"
  },
  "Entity": {
   "description": "Tenant identifier to support multi-tenancy",
   "type": "string"
  },
  "Category": {
   "description": "The ENISA:RIST incident category &amp; subcategory",
   "type": "array",
   "items": {
    "$ref": "#/definitions/categoryEnum"
   }
  },
  "Cause": {
   "description": "Alert cause's origin",
   "$ref": "#/definitions/causeEnum"
  },
  "Description": {
   "description": "Short free text human-readable description",
   "type": "string"
  },
  "Status": {
   "description": "Alert state in the overall alert lifecycle",
   "$ref": "#/definitions/statusEnum"
  },
  "Severity": {
   "description": "Severity of the alert",
   "$ref": "#/definitions/severityEnum"
  },
  "Confidence": {
   "description": "Confidence in detection",
   "type": "number",
   "minimum": 0,
   "maximum": 1
  },
  "Note": {
   "description": "Free text human-readable additional note",
   "type": "string"
  },
  "CreateTime": {
   "description": "Message creation timestamp",
   "$ref": "#/definitions/timestampType"
  },
  "StartTime": {
   "description": "Deduced start of the event",
   "$ref": "#/definitions/timestampType"
  },
  "CeaseTime": {
   "description": "Deduced end of the event",
   "$ref": "#/definitions/timestampType"
  },
  "DeleteTime": {
   "description": "Message deletion timestamp",
   "$ref": "#/definitions/timestampType"
  },
  "AltNames": {
   "description": "Alternative identifiers",
   "type": "array",
   "items": {
    "type": "string"
   }
  },
  "AltCategory": {
   "description": "Alternative categories",
   "type": "array",
   "items": {
    "type": "string"
   }
  },
  "Ref": {
   "description": "References related to the alert",
   "type": "array",
   "items": {
    "type": "string",
    "format": "uri"
   }
  },
  "CorrelID": {
   "description": "Messages used to create this message",
   "type": "array",
   "items": {
    "$ref": "#/definitions/uuidType"
   }
  },
  "AggrCondition": {
   "description": "Conditions used to aggregate messages",
   "type": "array",
   "items": {
    "type": "string"
   }
  },
  "PredID": {
   "description": "Previous messages which are now obsolete",
   "type": "array",
   "items": {
    "$ref": "#/definitions/uuidType"
   }
  },
  "RelID": {
   "description": "Other messages related to this message",
   "type": "array",
   "items": {
    "$ref": "#/definitions/uuidType"
   }
  },

  "Analyzer": {
   "description": "Analyzer from which the message originates",
   "type": "object",
   "required": [
    "IP",
    "Name",
    "Model",
    "Category",
    "Data",
    "Method"
   ],

   "additionalProperties": false,
   "properties": {
    "IP": {
     "description": "IP address",
     "$ref": "#/definitions/ipAddressType"
    },
    "Name": {
     "description": "Name of the analyzer",
     "type": "string"
    },
    "Hostname": {
     "description": "Hostname of this analyzer",
     "type": "string"
    },
    "Type": {
     "description": "Analyzer type",
     "$ref": "#/definitions/analyzerTypeEnum"
    },
    "Model": {
     "description": "Generic name, brand, version",
     "type": "string"
    },
    "Category": {
     "description": "Analyzer categories",
     "type": "array",
     "items": {
      "$ref": "#/definitions/analyzerCategoryEnum"
     }
    },
    "Data": {
     "description": "Data used during the detection",
     "type": "array",
     "items": {
      "$ref": "#/definitions/analyzerDataEnum"
     }
    },
    "Method": {
     "description": "Detection method",
     "type": "array",
     "items": {
      "$ref": "#/definitions/analyzerMethodEnum"
     }
    },
    "GeoLocation": {
     "description": "GPS coordinates for the analyzer",
     "$ref": "#/definitions/geoLocationType"
    },
    "UnLocation": {
     "description": "Standard UN/LOCODE location",
     "$ref": "#/definitions/unLocodeType"
    },
    "Location": {
     "description": "Internal location of the analyzer",
     "type": "string"
    }
   }
  },

  "Sensor": {
   "type": "array",
   "items": {
    "description": "Sensor(s) used by the analyzer for its analysis",
    "type": "object",
    "required": [
     "IP",
     "Name",
     "Model"
    ],

    "additionalProperties": false,
    "properties": {
     "IP": {
      "description": "The sensor's IP address",
      "$ref": "#/definitions/ipAddressType"
     },
     "Name": {
      "description": "Name of the sensor",
      "type": "string"
     },
     "Hostname": {
      "description": "Hostname of the sensor",
      "type": "string"
     },
     "Model": {
      "description": "Generic name, brand, version",
      "type": "string"
     },
     "UnLocation": {
      "description": "Standard UN/LOCODE location",
      "$ref": "#/definitions/unLocodeType"
     },
     "Location": {
      "description": "Internal location of the sensor",
      "type": "string"
     },
     "CaptureZone": {
      "description": "Sensor capture zone (as serialized JSON)",
      "type": "string"
     }
    }
   }
  },

  "Source": {
   "type": "array",
   "items": {
    "description": "Possible source(s) of the event",
    "type": "object",

    "additionalProperties": false,
    "properties": {
     "UnLocation": {
      "description": "Standard UN/LOCODE location for this source",
      "$ref": "#/definitions/unLocodeType"
     },
     "Location": {
      "description": "Internal location (for internal sources)",
      "type": "string"
     },
     "GeoLocation": {
      "description": "GPS coordinates for the source",
      "$ref": "#/definitions/geoLocationType"
     },
     "Note": {
      "description": "Free text human-readable additional note",
      "type": "string"
     },
     "TI": {
      "description": "Threat Intelligence about the source",
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "IP": {
      "description": "Source IP address",
      "$ref": "#/definitions/ipAddressType"
     },
     "Hostname": {
      "description": "Hostname of this source",
      "type": "string"
     },
     "User": {
      "description": "User ID or login responsible for the alert",
      "type": "string"
     },
     "Email": {
      "description": "Email address",
      "type": "string",
      "format": "email"
     },
     "Protocol": {
      "description": "Protocols in connections from/to this source",
      "type": "array",
      "items": {
       "$ref": "#/definitions/protocolNameType"
      }
     },
     "Port": {
      "description": "Source ports involved",
      "type": "array",
      "items": {
       "$ref": "#/definitions/portType"
      }
     },
     "Attachment": {
      "description": "Attachments related to this source",
      "type": "array",
      "items": {
       "$ref": "#/definitions/attachmentNameType"
      }
     },
     "Observable": {
      "description": "Observables related to this source",
      "type": "array",
      "items": {
       "$ref": "#/definitions/observableNameType"
      }
     }
    }
   }
  },

  "Target": {
   "type": "array",
   "items": {
    "description": "Possible target(s) of the event",
    "type": "object",

    "additionalProperties": false,
    "properties": {
     "UnLocation": {
      "description": "Standard UN/LOCODE location for this target",
      "$ref": "#/definitions/unLocodeType"
     },
     "Location": {
      "description": "Internal location of the target",
      "type": "string"
     },
     "GeoLocation": {
      "description": "GPS coordinates for the target",
      "$ref": "#/definitions/geoLocationType"
     },
     "Note": {
      "description": "Free text human-readable additional note",
      "type": "string"
     },
     "IP": {
      "description": "Target IP address",
      "$ref": "#/definitions/ipAddressType"
     },
     "Hostname": {
      "description": "Hostname of this target",
      "type": "string"
     },
     "Service": {
      "description": "Impacted service/process",
      "type": "string"
     },
     "User": {
      "description": "User ID or login targeted by the alert",
      "type": "string"
     },
     "Email": {
      "description": "Email address",
      "type": "string"
     },
     "Port": {
      "description": "Ports affected on this target",
      "type": "array",
      "items": {
       "$ref": "#/definitions/portType"
      }
     },
     "Attachment": {
      "description": "Attachments related to this target",
      "type": "array",
      "items": {
       "$ref": "#/definitions/attachmentNameType"
      }
     },
     "Observable": {
      "description": "Observables related to this target",
      "type": "array",
      "items": {
       "$ref": "#/definitions/observableNameType"
      }
     }
    }
   }
  },

  "Vector": {
   "type": "array",
   "items": {
    "description": "Vector(s) of the event",
    "type": "object",
    "required": [
     "Category"
    ],

    "additionalProperties": false,
    "properties": {
     "Category": {
      "description": "Category for the detected \"vector\"",
      "type": "array",
      "items": {
       "$ref": "#/definitions/vectorCategoryEnum"
      }
     },
     "TI": {
      "description": "Threat Intelligence about the vector",
      "type": "array",
      "items": {
       "type": "string"
      }
     },
     "Name": {
      "description": "Name of the detected vector or \"Unknown\"",
      "type": "string"
     },
     "Size": {
      "description": "Average size of the detected vector",
      "$ref": "#/definitions/vectorSizeEnum"
     },
     "UnLocation": {
      "description": "UN Location of the vector",
      "$ref": "#/definitions/unLocodeType"
     },
     "GeoLocation": {
      "description": "GPS coordinates for the vector",
      "$ref": "#/definitions/geoLocationType"
     },Acknowledgments
     "GeoRadius": {
      "description": "Error margin in meters",
      "type": "number"
     },
     "Location": {
      "description": "Internal location",
      "type": "string"
     },
     "Note": {
      "description": "Free text human-readable additional note",
      "type": "string"
     },
     "Attachment": {
      "description": "Attachments related to this vector",
      "type": "array",
      "items": {
       "$ref": "#/definitions/attachmentNameType"
      }
     },
     "Observable": {
      "description": "Observables related to this vector",
      "type": "array",
      "items": {
       "$ref": "#/definitions/observableNameType"
      }
     }
    }
   }
  },

  "Attachment": {
   "type": "array",
   "items": {
    "description": "Data linked to a source, target or vector",
    "type": "object",
    "required": [
     "Name"
    ],

    "additionalProperties": false,
    "properties": {
     "Name": {
      "description": "Unique identifier among attachments",
      "$ref": "#/definitions/attachmentNameType"
     },
     "FileName": {
      "description": "Attachment filename",
      "type": "string"
     },
     "Hash": {
      "description": "Checksum of the attachment's content",
      "type": "array",
      "items": {
       "$ref": "#/definitions/hashType"
      }
     },
     "Size": {
      "description": "Content length (in bytes)",
      "type": "integer"
     },
     "Ref": {
      "description": "Link to information about this attachment",
      "type": "array",
      "items": {
       "type": "string",
       "format": "uri"
      }
     },
     "ExternalURI": {
      "description": "Link to external copies (e.g. online copies)",
      "type": "array",
      "items": {
       "type": "string",
       "format": "uri"
      }
     },
     "Note": {
      "description": "Free text human-readable additional note",
      "type": "string"
     },
     "ContentType": {
      "description": "Media Type of the attachment (RFC 2046)",
      "$ref": "#/definitions/mediaTypeType"
     },
     "ContentEncoding": {
      "description": "Content encoding",
      "type": "string"
     },
     "Content": {
      "description": "The attachment's content (if embedded)",
      "type": "string"
     }
    }
   }
  },

  "Observable": {
   "type": "array",
   "items": {
    "description": "Metadata linked to a source, target or vector",
    "type": "object",
    "required": [
     "Name",
     "Content"
    ],

    "additionalProperties": false,
    "properties": {
     "Name": {
      "description": "Unique identifier among observables",
      "$ref": "#/definitions/observableNameType"
     },
     "Reference": {
      "description": "Reference to the observable's specification",
      "type": "string"
     },
     "Content": {
      "description": "Observable content",
      "type": "string"
     }
    }
   }
  }
 }
}</sourcecode>
    </section>
  </back>
</rfc>
