FI Finnish
SE Swedish
FR French
PL Polish
DE German
US English (US)

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

English (US)
FI Finnish
SE Swedish
FR French
PL Polish
DE German
US English (US)
  • Log in
  • Home
  • Platform
  • ESM
  • Other Technical ESM Documentation

ESM Configuration Description

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Service Management
    Matrix42 Professional Solution Matrix42 Core Solution Enterprise Service Management Matrix42 Intelligence
  • Identity Governance and Administration (IGA)
    IGA overview IGA solution library
  • Platform
    ESM ESS2 ESS Efecte Chat for Service Management Integrations Add-ons
  • Release Notes for M42 Professional, IGA, Conversational AI
    2026.1 2025.3 2025.2 2025.1 2024.2 2024.1 2023.4 2023.3 2023.2 2023.1 2022.4 2022.3 Release Information and Policies
  • Other Material
    Terms & Documentation Guidelines Accessibility Statements
  • Services
+ More
    • Service Management

    • Identity Governance and Administration (IGA)

    • Platform

    • Release Notes for M42 Professional, IGA, Conversational AI

    • Other Material

    • Services

ESM Configuration Description

This document presents a description of the XML schemas for the Efecte platform. There are 2 XML schemas:

  • Schema for templates that define data cards.
  • Schema for data cards.

This document is intended for Efecte users and integration providers that need to understand the Efecte XML schemas. 
Comments and proposals for improvements may be directed to the following address: servicedesk@efecte.com.

The audience of this document is the technical staff of Efecte customers who wish to understand the possibilities offered by the Efecte XML schemas. The occasions when Efecte XML schemas need to be used can be, for instance:

  • Migrating data from existing systems to Efecte.
  • Integrating Efecte with existing information systems.
  • Updating Efecte data with data gathered by Efecte Inspector.

The following names and abbreviations are used throughout this document:

Name

Description

Attribute

Attributes are the smallest building blocks of information in Efecte data hierarchy. They label the data card fields and define rules and properties for the allowed data types.

Class

When creating a template, you can group attribute sets that typically appear together under a class so that you can re-use the group also in other templates.

Dangling reference

Reference from a data card to another data card, which does not contain any data.

Data card

Data card is where information is stored in Efecte and displayed to the users. A data card is based on a template that defines data card's appearance and the allowed information content.

Data card field

Data card fields store some part of the information of a data card. Data card field is defined by its associated attribute.

Embedded reference

A parent-child relationship between templates and thus the data cards presenting those templates.

HMAC

Message authentication using cryptographic hash function (MD5 or SHA-1) in combination with a secret shared key. XML Imports can be done from externals systems by using HMAC.

Reference

Reference is a link from an attribute to a template or templates or to an external address. On a data card, a reference appears as a link from a data card to another data card or to an external address.

Template

A template consists of classes and attributes that determine, for example, appearance and allowed content for data cards.

XML

XML stands for Extensible Markup Language. It is a way to present hierarchically structured data in a human-readable format.

Template Definition

Templates define the data structure for data cards in Efecte products. Templates contain classes that act as containers for attributes. Attributes define the properties of data card fields like their data type and how that type of data will be inserted and presented, i.e., type of input and output. Figure below shows the relationship between the Templates and Data cards. Notice that there is no shown relationship between classes and data, because classes are used mostly for organizing output data. Classes can also be used for sharing data across templates, they are "overloaded" and not just used for organizing output data

See the Efecte Administration Manual for more information about the template structure. The purpose of the following paragraphs is to explain the functionality of the Template XML interface. It is useful to understand the template structure to better understand the actual data card XML interface.

Template XML Export

Template XML export can be done from the Efecte web browser based UI or through the Efecte Web API. The resulting XML file will contain selected templates and all their properties. When copying templates between different Efecte instances, it is essential that all the templates that have references between each other are exported together so that these references will automatically be recreated when importing the XML into another Efecte instance. 

Configuration Transport Tool (CTT) can be used to help with template export & import process. Note that it can only handle one template at a time. For more information about the the CTT, check the article Configuration Transport Tool .

Template XML Import

Templates can be imported to an Efecte instance through the Efecte web browser based UI. No synchronization or updates to existing Template hierarchy data is done, which means that the Templates are created as new Template instances even if there already is a Template with the same identification information. This behavior is subject to change in future Efecte versions.

Data Card Definition

Data card XML format is used for transferring data card data between Efecte and external systems. Efecte web user interface and the Web API offer possibilities to create new data cards and also to update existing ones. The following chapters will first explain how the data card import works and then continue with explaining about the export functionality.

Importing Data Cards

Import Basics

Data imports are always targeted to a certain template. For example, in order to import users from external systems, a user template must exist in Efecte. The results of an import are either the creation of new data cards or updates to existing ones.

Template defines the data types of the data card, so imported data types should be considered when creating a template for data import. For example, if users are to be imported and external user data contains a date of birth, Efecte template should be created so that it also has a corresponding date field in the template.

Data card import supports all attribute types Efecte platform supports: 

Data type

Restrictions on form of data

String

Maximum length is defined in framework.properties file. Default is 450 characters. Databases support different lengths, so if the String length is increased from the default, database restrictions should be noted.

Number

Number is restricted by Java integer type: –2^31 – 2^31 and the possible database restrictions. Normally databases support at least the same range as Java integer.

Decimal number

Decimal number format is defined in framework.properties file. You can set the wanted precision for decimal numbers. Java BigDecimal and database number range define the valid number range for decimal numbers.

Date

Date input pattern is given in framework.properties file. If the original data has a different pattern, either the original data must be converted to follow the pattern in Efecte, or the input date pattern has to be added to Efecte. The minimum and maximum date values can be configured in framework.properties file and are also database dependent.

Date and time

Date and time input pattern is given in framework.properties file. If the original data has a different pattern, either the original data must be converted to follow the pattern in Efecte, or the input pattern has to be added to Efecte. The minimum and maximum date values can be configured in framework.properties file and are also database dependent.

Text

Text is restricted only by hardware limits (RAM and hard disk space).

References

References follow the same limitations as Strings.

Embedded references

Embedded references follow the same limitations as Strings.

External references

External references follow the same limitations as Strings.


External data can be imported to any of these types if validation succeeds for the selected type. The validation checks type correctness and also other possible constraints like uniqueness and is the value required.

Matching Incoming Data Card to a Template

Correct data card type – i.e., template – for the incoming XML data is defined by using a template code, which should be unique among the templates in an Efecte instance. Correspondingly, data card fields are matched to incoming XML data by using attribute codes. So, if we are to import computer data cards into Efecte and we have used a template code of “computer” for the computer template, we must use the same code in the incoming XML template element. Following XML excerpt shows the template element that makes the XML data match to a data card with a computer template.

<template code="computer"/>

Matching Incoming Data Card to Existing One

In order to be able to match incoming data card XML into an existing data card in Efecte, there must exist a data card field that has been defined as unique in the template attribute configuration. Efecte import interprets the incoming data based on the template information and when unique field is found, Efecte tries to match it to data in existing data cards. If a match is found, an existing data card will be updated.

Reference Fields

If imported data cards have reference fields (defined with attribute data type setting in the template hierarchy) those references are created in import by matching the XML attribute element’s value element data against unique field values in existing Efecte data cards. If we have a helpdesk ticket data card with a reference field to client template, we might have following kinds of lines in our XML to create a reference to the correct client.

<attribute code="job_client">
 <value>job.client@company.com</value>
</attribute>

If client template definition contains an email field that is defined to be unique and there exists a client data card in Efecte with the same email address as in the above XML, we would get a reference between the imported ticket and the existing client.

Dangling References

Sometimes data card that references another data card is imported to Efecte before the data card it refers to. In this case the dangling references functionality can be used to create the reference beforehand. Efecte accomplishes this by creating an empty data card in place of the referred data card. When the actual referred data card is imported, it will update the empty data card and as an end result we have both the data cards inside Efecte and a reference between them.

Embedded References

Embedded references are meant to create parent-child data card structures where the child data card lifecycle is dependent on the parent card. When the parent card of a card is removed, the child is also removed. Also, no other data card can reference the child; it is completely owned by its parent. Parent-child data card relationships can be imported into Efecte, but with a restriction: the parent and its childs have to be imported in the same XML document and they have to use the embeddedreference element to state the reference between them. Here’s an example how an embedded reference looks like in XML form inside the parent entity:

<attribute code="embedded_display">
   <embeddedreference id="559122" name="DISP0001"/>
</attribute>

Then, you would also have in the same XML the actual embedded data card with a matching id.

<entity id="559122" name="DISP0001">

Data Card Notes

Data card notes can also be created through the XML import interface. Here’s an example excerpt from XML showing a single note:

<note creator="user_1" timestamp="21.01.2004 00:42" follow-references="false">
   <name>Should this card be deleted?</name>
   <text><![CDATA[I think that this card could be removed from the system. Am I correct?]]></text>
</note>

Data Card Import Example

In Efecte Asset product there exists a Template called Computer in the default template selection. We will now demonstrate a scenario where new computer is created into Efecte through the XML import interface. For the sake of brevity, the XML is abbreviated to contain only a couple of data card fields. Here’s the XML:

<?xml version="1.0" encoding="UTF-8" ?>
<entityset>
   <entity name="COMPUTER001">
       <template code="computer"/>
       <attribute code="software">
           <value>ATI Display Driver</value>
           <value>Java Web Start</value>
       </attribute>
       <attribute code="host_name">
           <value>computer001</value>
       </attribute>
   </entity>
</entityset>

As can be seen from the XML, the imported computer contains two fields, software and host name. All we now need is to have our Computer template to have “computer” as its code and the two fields to have matching codes in the computer template. Let’s suppose that the host name is the unique identifier for computer data cards.

Our Computer template’s software attribute has been configured to be a reference to a Software template. This means that we have separate data cards for every software type. During the import references are created by matching the contents of the XML value elements against the unique fields in the Efecte instance. This means that in our example, we have to have defined at least 1 attribute as unique and the actual data fields defined by that attribute should contain the names of the software. As introduced in chapter 3.1.5, we can use dangling reference mode to create the software cards with the computer imports.

Sending an Import Request

There are a couple of different ways to access the data card XML import interface. The easiest way to run imports is through the Efecte web browser based UI. Data can also be imported by sending XML as an HTTP POST to a specified Efecte URL. A message authentication code (HMAC) has to be generated for the external software and this code will be sent as a parameter in the HTTP request. Efecte provides import tools that assist in generating the hashes and converting external data into acceptable XML form.

Efecte 4.0 introduced web API, which is the preferred way of importing data cards to Efecte. No tools for HMAC-generation are needed, because HTTP BASIC authentication is used; all you need is the user id and password. It is essential to use web API through HTTPS, so that confidential information is not transmitted in plain text form.

Exporting Data Cards

Data cards can be exported from Efecte in XML form. The Efecte search functionalities can be used to define the set of data cards that are exported. The appendices contains an example of how the exported data card XML looks like. As you can see, the XML format is quite similar as the import format. There are many optional attributes in the Data card XML schema because usually only a subset of the attributes is needed in import situations whereas more attributes are needed in the export format to preserve data card notes, embedded references and the like.

Efecte Service Management Tool (ESM)provides two different APIs: Web API and REST API (which is replacing the former), which can be used to search for data cards. This offers the possibility to get data card information out of Efecte. 

Appendices

Template Hierarchy Description

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
   <!--
   Efecte Template hierarchy XML Schema Definition
   
   $Revision: 19053 $
   $Date: 2006-03-14 15:07:15 +0200 $
   -->
   <xs:element name="templateset">
       <xs:complexType>
           <xs:sequence>
               <xs:element ref="template" minOccurs="1" maxOccurs="unbounded"/>
           </xs:sequence>
       </xs:complexType>
   </xs:element>
   <xs:element name="template">
       <xs:complexType>
           <xs:sequence>
               <xs:element ref="id" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="code" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="name" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="description" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="system-code" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="protected" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="reference-cascade" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="class" minOccurs="0" maxOccurs="unbounded"/>
           </xs:sequence>
       </xs:complexType>
   </xs:element>
   <xs:element name="id" type="xs:string"/>
   <xs:element name="code" type="xs:string"/>
   <xs:element name="name" type="xs:string"/>
   <xs:element name="description" type="xs:string"/>
   <xs:element name="system-code" type="xs:string"/>
   <xs:element name="protected" type="xs:boolean"/>
   <xs:element name="reference-cascade" type="xs:boolean"/>
   <xs:element name="class">
       <xs:complexType>
           <xs:sequence>
               <xs:element ref="id" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="name" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="order" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="attribute" minOccurs="0" maxOccurs="unbounded"/>
           </xs:sequence>
       </xs:complexType>
   </xs:element>
   <xs:element name="order" type="xs:nonNegativeInteger"/>
   <xs:element name="attribute">
       <xs:complexType>
           <xs:sequence>
               <xs:element ref="id" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="code" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="name" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="primary" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="datatype" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="references" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="description" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="default" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="multivalue" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="output-is-always-shown" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="static" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="static-values" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="hierarchy" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="hierarchy-leafs-only" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="special" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="expand-references-automatically" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="expand-complete-output-automatically" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="import-referenced-data-to-referrer" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="handler" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="header" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="footer" minOccurs="0" maxOccurs="1"/>
               <xs:element ref="large-text" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="query-hidden" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="output-hidden" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="query-header-hidden" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="output-header-hidden" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="field-width" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="field-height" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="space-demand" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="order" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="selected" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="unique" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="required" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="protected" minOccurs="1" maxOccurs="1"/>
               <xs:element ref="metadata" minOccurs="0" maxOccurs="unbounded"/>
           </xs:sequence>
       </xs:complexType>
   </xs:element>
   <xs:element name="primary" type="xs:boolean"/>
   <xs:element name="datatype">
       <xs:simpleType>
           <xs:restriction base="xs:string">
               <xs:enumeration value="date"/>
               <xs:enumeration value="datetime"/>
               <xs:enumeration value="embeddedreference"/>
               <xs:enumeration value="externalreference"/>
               <xs:enumeration value="float"/>
               <xs:enumeration value="integer"/>
               <xs:enumeration value="reference"/>
               <xs:enumeration value="string"/>
               <xs:enumeration value="text"/>
           </xs:restriction>
       </xs:simpleType>
   </xs:element>
   <xs:element name="references">
       <xs:complexType>
           <xs:sequence>
               <xs:element name="reference" type="xs:string" minOccurs="1" maxOccurs="unbounded"/>
           </xs:sequence>
       </xs:complexType>
   </xs:element>
   <xs:element name="default" type="xs:string"/>
   <xs:element name="multivalue" type="xs:boolean"/>
   <xs:element name="output-is-always-shown" type="xs:boolean"/>
   <xs:element name="static" type="xs:boolean"/>
   <xs:element name="static-values">
       <xs:complexType>
           <xs:sequence>
               <xs:element ref="static-value" minOccurs="1" maxOccurs="unbounded"/>
           </xs:sequence>
       </xs:complexType>
   </xs:element>
   <xs:element name="static-value">
       <xs:complexType>
           <xs:sequence>
               <xs:element ref="value" minoccurs="0" maxOccurs="1"/>
               <xs:element ref="static-value" minOccurs="0" maxOccurs="unbounded"/>
           </xs:sequence>
           <xs:attribute name="value" type="xs:string" use="optional"/>
       </xs:complexType>
   </xs:element>
   <xs:element name="value" type="xs:string"/>
   <xs:element name="hierarchy" type="xs:boolean"/>
   <xs:element name="hierarchy-leafs-only" type="xs:boolean"/>
   <xs:element name="special" type="xs:boolean"/>
   <xs:element name="expand-references-automatically" type="xs:boolean"/>
   <xs:element name="expand-complete-output-automatically" type="xs:boolean"/>
   <xs:element name="import-referenced-data-to-referrer" type="xs:boolean"/>
   <xs:element name="handler" type="xs:string"/>
   <xs:element name="header" type="xs:string"/>
   <xs:element name="footer" type="xs:string"/>
   <xs:element name="large-text" type="xs:boolean"/>
   <xs:element name="query-hidden" type="xs:boolean"/>
   <xs:element name="output-hidden" type="xs:boolean"/>
   <xs:element name="query-header-hidden" type="xs:boolean"/>
   <xs:element name="output-header-hidden" type="xs:boolean"/>
   <xs:element name="field-width" type="xs:nonNegativeInteger"/>
   <xs:element name="field-height" type="xs:nonNegativeInteger"/>
   <xs:element name="space-demand">
       <xs:simpleType>
           <xs:restriction base="xs:integer">
               <xs:minInclusive value="1"/>
               <xs:maxInclusive value="4"/>
           </xs:restriction>
       </xs:simpleType>
   </xs:element>
   <xs:element name="selected" type="xs:boolean"/>
   <xs:element name="unique" type="xs:boolean"/>
   <xs:element name="required" type="xs:boolean"/>
   <xs:element name="metadata">
       <xs:complexType>
           <xs:attribute name="name" type="xs:string" use="required"/>
           <xs:attribute name="value" type="xs:string" use="required"/>
       </xs:complexType>
   </xs:element>
</xs:schema>

Template XML Example

<?xml version="1.0" encoding="UTF-8"?>
<templateset>
 <template>
   <id>171</id>
   <code>client_contact</code>
   <name>Contact</name>
   <system-code>client</system-code>
   <protected>false</protected>
   <reference-cascade>false</reference-cascade>
   <class>
     <id>279</id>
     <name>Contact information</name>
     <order>0</order>
     <attribute>
       <code>contact_first_name</code>
       <name>First name</name>
       <datatype>string</datatype>
       <multivalue>false</multivalue>
       <output-is-always-shown>false</output-is-always-shown>
       <static>false</static>
       <hierarchy>false</hierarchy>
       <hierarchy-leafs-only>false</hierarchy-leafs-only>
       <special>false</special>
       <expand-references-automatically>false</expand-references-automatically>
       <expand-complete-output-automatically>false</expand-complete-output-automatically>
       <import-referenced-data-to-referrer>false</import-referenced-data-to-referrer>
       <large-text>false</large-text>
       <query-hidden>false</query-hidden>
       <output-hidden>false</output-hidden>
       <query-header-hidden>false</query-header-hidden>
       <output-header-hidden>false</output-header-hidden>
       <field-width>25</field-width>
       <field-height>1</field-height>
       <space-demand>3</space-demand>
       <order>100</order>
       <selected>false</selected>
       <unique>false</unique>
       <required>false</required>
       <protected>false</protected>
   </attribute>
   <attribute>
       <name>Photo</name>
       <datatype>externalreference</datatype>
       <multivalue>false</multivalue>
       <output-is-always-shown>false</output-is-always-shown>
       <static>false</static>
       <hierarchy>false</hierarchy>
       <hierarchy-leafs-only>false</hierarchy-leafs-only>
       <special>true</special>
       <expand-references-automatically>false</expand-references-automatically>
       <expand-complete-output-automatically>false</expand-complete-output-automatically>
       <import-referenced-data-to-referrer>false</import-referenced-data-to-referrer>
       <handler>com.bitmount.equipment.entitydatahandler.plugin.ImageHandler</handler>
       <large-text>false</large-text>
       <query-hidden>true</query-hidden>
       <output-hidden>true</output-hidden>
       <query-header-hidden>false</query-header-hidden>
       <output-header-hidden>false</output-header-hidden>
       <field-width>40</field-width>
       <field-height>1</field-height>
       <space-demand>4</space-demand>
       <order>100</order>
       <selected>false</selected>
       <unique>false</unique>
       <required>false</required>
       <protected>false</protected>
   </attribute>
   <attribute>
       <code>contact_last_name</code>
       <name>Last name</name>
       <datatype>string</datatype>
       <multivalue>false</multivalue>
       <output-is-always-shown>false</output-is-always-shown>
       <static>false</static>
       <hierarchy>false</hierarchy>
       <hierarchy-leafs-only>false</hierarchy-leafs-only>
       <special>false</special>
       <expand-references-automatically>false</expand-references-automatically>
       <expand-complete-output-automatically>false</expand-complete-output-automatically>
       <import-referenced-data-to-referrer>false</import-referenced-data-to-referrer>
       <large-text>false</large-text>
       <query-hidden>false</query-hidden>
       <output-hidden>false</output-hidden>
       <query-header-hidden>false</query-header-hidden>
       <output-header-hidden>false</output-header-hidden>
       <field-width>25</field-width>
       <field-height>1</field-height>
       <space-demand>3</space-demand>
       <order>200</order>
       <selected>false</selected>
       <unique>false</unique>
       <required>false</required>
       <protected>false</protected>
   </attribute>
   <attribute>
       <code>contact_full_name</code>
       <name>Full name</name>
       <primary>true</primary>
       <datatype>string</datatype>
       <multivalue>false</multivalue>
       <output-is-always-shown>false</output-is-always-shown>
       <static>false</static>
       <hierarchy>false</hierarchy>
       <hierarchy-leafs-only>false</hierarchy-leafs-only>
       <special>true</special>
       <expand-references-automatically>false</expand-references-automatically>
       <expand-complete-output-automatically>false</expand-complete-output-automatically>
       <import-referenced-data-to-referrer>false</import-referenced-data-to-referrer>
       <handler>com.bitmount.equipment.entitydatahandler.plugin.AttributeCombinerHandler</handler>
       <large-text>false</large-text>
       <query-hidden>false</query-hidden>
       <output-hidden>false</output-hidden>
       <query-header-hidden>false</query-header-hidden>
       <output-header-hidden>false</output-header-hidden>
       <field-width>25</field-width>
       <field-height>1</field-height>
       <space-demand>3</space-demand>
       <order>300</order>
       <selected>true</selected>
       <unique>true</unique>
       <required>false</required>
       <protected>false</protected>
       <metadata name="contact_first_name" value="20"/>
       <metadata name="contact_last_name" value="10"/>
       <metadata name="separator" value=","/>
   </attribute>
   <attribute>
       <code>contact_company</code>
       <name>Company</name>
       <datatype>string</datatype>
       <multivalue>false</multivalue>
       <output-is-always-shown>false</output-is-always-shown>
       <static>true</static>
       <static-values>
           <static-value>
               <value>Company 1</value>
           </static-value>
           <static-value>
               <value>Company 2</value>
           </static-value>
       </static-values>
       <hierarchy>false</hierarchy>
       <hierarchy-leafs-only>false</hierarchy-leafs-only>
       <special>false</special>
       <expand-references-automatically>false</expand-references-automatically>
       <expand-complete-output-automatically>false</expand-complete-output-automatically>
       <import-referenced-data-to-referrer>false</import-referenced-data-to-referrer>
       <large-text>false</large-text>
       <query-hidden>false</query-hidden>
       <output-hidden>false</output-hidden>
       <query-header-hidden>false</query-header-hidden>
       <output-header-hidden>false</output-header-hidden>
       <field-width>25</field-width>
       <field-height>1</field-height>
       <space-demand>1</space-demand>
       <order>350</order>
       <selected>false</selected>
       <unique>false</unique>
       <required>false</required>
       <protected>false</protected>
   </attribute>
   <attribute>
       <code>email</code>
       <name>Email</name>
       <datatype>string</datatype>
       <multivalue>false</multivalue>
       <output-is-always-shown>false</output-is-always-shown>
       <static>false</static>
       <hierarchy>false</hierarchy>
       <hierarchy-leafs-only>false</hierarchy-leafs-only>
       <special>false</special>
       <expand-references-automatically>false</expand-references-automatically>
       <expand-complete-output-automatically>false</expand-complete-output-automatically>
       <import-referenced-data-to-referrer>false</import-referenced-data-to-referrer>
       <large-text>false</large-text>
       <query-hidden>false</query-hidden>
       <output-hidden>false</output-hidden>
       <query-header-hidden>false</query-header-hidden>
       <output-header-hidden>false</output-header-hidden>
       <field-width>25</field-width>
       <field-height>1</field-height>
       <space-demand>3</space-demand>
       <order>400</order>
       <selected>true</selected>
       <unique>true</unique>
       <required>true</required>
       <protected>false</protected>
   </attribute>
   <attribute>
       <code>contact_phone_number</code>
       <name>Phone number</name>
       <datatype>string</datatype>
       <multivalue>false</multivalue>
       <output-is-always-shown>false</output-is-always-shown>
       <static>false</static>
       <hierarchy>false</hierarchy>
       <hierarchy-leafs-only>false</hierarchy-leafs-only>
       <special>false</special>
       <expand-references-automatically>false</expand-references-automatically>
       <expand-complete-output-automatically>false</expand-complete-output-automatically>
       <import-referenced-data-to-referrer>false</import-referenced-data-to-referrer>
       <large-text>false</large-text>
       <query-hidden>false</query-hidden>
       <output-hidden>false</output-hidden>
       <query-header-hidden>false</query-header-hidden>
       <output-header-hidden>false</output-header-hidden>
       <field-width>25</field-width>
       <field-height>1</field-height>
       <space-demand>1</space-demand>
       <order>450</order>
       <selected>false</selected>
       <unique>false</unique>
       <required>false</required>
       <protected>false</protected>
   </attribute>
   <attribute>
       <code>contact_address</code>
       <name>Address</name>
       <datatype>text</datatype>
       <multivalue>false</multivalue>
       <output-is-always-shown>false</output-is-always-shown>
       <static>false</static>
       <hierarchy>false</hierarchy>
       <hierarchy-leafs-only>false</hierarchy-leafs-only>
       <special>false</special>
       <expand-references-automatically>false</expand-references-automatically>
       <expand-complete-output-automatically>false</expand-complete-output-automatically>
       <import-referenced-data-to-referrer>false</import-referenced-data-to-referrer>
       <large-text>false</large-text>
       <query-hidden>false</query-hidden>
       <output-hidden>false</output-hidden>
       <query-header-hidden>false</query-header-hidden>
       <output-header-hidden>false</output-header-hidden>
       <field-width>25</field-width>
       <field-height>4</field-height>
       <space-demand>3</space-demand>
       <order>600</order>
       <selected>false</selected>
       <unique>false</unique>
       <required>false</required>
       <protected>false</protected>
   </attribute>
   </class>
 </template>
</templateset>

Efecte Data Card XML Schema

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
 <xs:element name="entityset">
   <xs:complexType>
     <xs:sequence>
       <xs:element ref="entity" minOccurs="1" maxOccurs="unbounded"/>
     </xs:sequence>
   </xs:complexType>
 </xs:element>
 <!-- entity element contains the data for one card -->
 <xs:element name="entity">
   <xs:complexType>
     <!-- entity element contains either scanner error or data elements -->
     <xs:choice>
       <xs:element ref="error" minOccurs="1" maxOccurs="1"/>
       <xs:group ref="standardEntityElements"/>
     </xs:choice>
     <xs:attribute name="id" type="xs:string" use="optional"/>
     <xs:attribute name="name" type="xs:string" use="optional"/>
     <xs:attribute name="ip" type="xs:string" use="optional"/>
     <!-- If card is marked as hidden, it is not defaultly shown in -->
     <!-- Efecte UI. This mode is used for Efecte Help closed jobs  -->
     <xs:attribute name="hidden" type="xs:boolean" use="optional"/>
   </xs:complexType>
 </xs:element>
 <xs:element name="error" type="xs:string"/>
 <xs:group name="standardEntityElements">
   <xs:sequence>
     <xs:element ref="template" minOccurs="1" maxOccurs="1"/>
     <xs:element ref="attribute" maxOccurs="unbounded"/>
     <xs:element ref="note" minOccurs="0" maxOccurs="unbounded"/>
   </xs:sequence>
 </xs:group>
 <xs:element name="template">
   <xs:complexType>
     <xs:attribute name="id" type="xs:string" use="optional"/>
     <xs:attribute name="name" type="xs:string" use="optional"/>
     <xs:attribute name="code" type="xs:string" use="required"/>
   </xs:complexType>
 </xs:element>
 <xs:element name="attribute">
   <xs:complexType>
     <xs:sequence>
       <xs:element ref="header" minOccurs="0"/>
       <xs:choice>
         <xs:element ref="value" maxOccurs="unbounded"/>
         <xs:element ref="reference" maxOccurs="unbounded"/>
         <xs:element ref="embeddedreference" maxOccurs="unbounded"/>
         <xs:element ref="externalreference" maxOccurs="unbounded"/>
       </xs:choice>
       <xs:element ref="footer" minOccurs="0"/>
     </xs:sequence>
     <xs:attribute name="id" type="xs:string" use="optional"/>
     <xs:attribute name="name" type="xs:string" use="optional"/>
     <xs:attribute name="code" type="xs:string" use="required"/>
   </xs:complexType>
 </xs:element>
 <xs:element name="reference">
   <xs:complexType>
     <xs:attribute name="id" type="xs:string" use="optional"/>
     <xs:attribute name="name" type="xs:string" use="optional"/>
   </xs:complexType>
 </xs:element>
 <xs:element name="embeddedreference">
   <xs:complexType>
     <xs:attribute name="id" type="xs:string" use="optional"/>
     <xs:attribute name="name" type="xs:string" use="optional"/>
   </xs:complexType>
 </xs:element>
 <xs:element name="externalreference">
   <xs:complexType>
     <xs:attribute name="name" type="xs:string" use="optional"/>
     <xs:attribute name="location" type="xs:string" use="optional"/>
   </xs:complexType>
 </xs:element>
 <xs:element name="header" type="xs:string"/>
 <xs:element name="value" type="xs:string"/>
 <xs:element name="footer" type="xs:string"/>
 <xs:element name="note">
   <xs:complexType>
     <xs:sequence>
       <xs:element ref="name" minOccurs="1" maxOccurs="1"/>
       <xs:element ref="text" minOccurs="1" maxOccurs="1"/>
     </xs:sequence>
     <xs:attribute name="creator" type="xs:string" use="required"/>
     <xs:attribute name="timestamp" type="xs:string" use="optional"/>
     <xs:attribute name="follow-references" type="xs:boolean" use="required"/>
   </xs:complexType>
 </xs:element>
 <xs:element name="name" type="xs:string"/>
 <xs:element name="text" type="xs:string"/>
</xs:schema>

Efecte Data Card XML Example 1 (Exported from Efecte)

<?xml version="1.0" encoding="ISO-8859-15"?>
<entityset>
   <entity id="230626" name="Amarillion Amanda">
       <template id="26" name="Contact" code="client"/>
       <attribute id="1100" name="Last name" code="last_name">
           <value>Amarillion</value>
       </attribute>
       <attribute id="1099" name="First name" code="first_name">
           <value>Amanda</value>
       </attribute>
       <attribute id="1584" name="Company" code="company">
           <reference id="230404" name="Customer Company"/>
       </attribute>
       <attribute id="1974" name="Title" code="title">
           <value>Senior Manager</value>
       </attribute>
       <attribute id="1112" name="Email" code="email">
           <value>amanda.amarillion@customercompany.com</value>
       </attribute>
       <attribute id="1101" name="Full name" code="full_name">
           <value>Amarillion Amanda</value>
       </attribute>
       <attribute id="1201" name="ID" code="person_number">
           <value>CLIENT10379</value>
       </attribute>
       <attribute id="1206" name="Direct phone" code="direct_phone">
           <value>555 5555</value>
       </attribute>
       <attribute id="2194" name="Mobile phone" code="gsm">
           <value>055 555 5555</value>
       </attribute>
       <attribute id="458456" name="Department" code="department">
           <value>LEGAL</value>
       </attribute>
   </entity>
</entityset>

Efecte Data Card XML Example 2 (Returned by Efecte Inspector)

<?xml version="1.0" encoding="UTF-8" ?>
<entityset>
   <entity name="COMPUTER001">
       <template code="computer"/>
       <attribute code="computer_name">
           <value>COMPUTER001</value>
       </attribute>
       <attribute code="scanning_date">
           <value>2004-05-21 14:22:27</value>
       </attribute>
       <attribute code="ram">
           <value>1023</value>
           <footer>MB</footer>
       </attribute>
       <attribute code="software">
           <value>ArGoSoft Mail Server Pro</value>
           <value>ATI Display Driver</value>
           <value>BEA WebLogic Platform 8.1</value>
           <value>F-Secure Anti-Virus for Windows NT Server</value>
           <value>F-Secure BackWeb</value>
           <value>F-Secure Management Agent</value>
           <value>Internet Explorer Q831167</value>
           <value>Java Web Start</value>
       </attribute>
       <attribute code="computer_product_serial">
           <value></value>
       </attribute>
       <attribute code="bios_serial_number">
           <value></value>
       </attribute>
       <attribute code="mother_board_serial_number">
           <value>AZMV30807979</value>
       </attribute>
       <attribute code="display_adapter">
           <value>Radeon 7000 / Radeon VE</value>
       </attribute>
       <attribute code="processor_count">
           <value>1</value>
       </attribute>
       <attribute code="system_environment_variables">
           <value>ComSpec=%SystemRoot%\system32\cmd.exe</value>
           <value>NUMBER_OF_PROCESSORS=1</value>
           <value>OS=Windows_NT</value>
           <value>Os2LibPath=%SystemRoot%\system32\os2\dll;</value>
           <value>PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH</value>
           <value>PROCESSOR_ARCHITECTURE=x86</value>
           <value>PROCESSOR_IDENTIFIER=x86 Family 15 Model 2 Stepping 7, GenuineIntel</value>
           <value>PROCESSOR_LEVEL=15</value>
           <value>PROCESSOR_REVISION=0207</value>
           <value>Path=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Resource
               Kit\</value>
           <value>TEMP=%SystemRoot%\TEMP</value>
           <value>TMP=%SystemRoot%\TEMP</value>
           <value>windir=%SystemRoot%</value>
       </attribute>
       <attribute code="service">
           <value>Alerter</value>
           <value>F-Secure BackWeb</value>
           <value>beasvc mydomain_myserver</value>
           <value>Efecte Inspector Proxy</value>
           <value>Background Intelligent Transfer Service</value>
           <value>Computer Browser</value>
           <value>Distributed File System</value>
           <value>DHCP Client</value>
           <value>Logical Disk Manager</value>
           <value>DNS Server</value>
           <value>DNS Client</value>
           <value>Event Log</value>
           <value>COM+ Event System</value>
           <value>F-Secure Gatekeeper Handler Starter</value>
           <value>F-Secure Network Request Broker</value>
           <value>F-Secure Management Agent</value>
           <value>Intersite Messaging</value>
           <value>Kerberos Key Distribution Center</value>
           <value>Server</value>
           <value>Workstation</value>
           <value>License Logging Service</value>
           <value>TCP/IP NetBIOS Helper Service</value>
           <value>Mercury</value>
           <value>Messenger</value>
           <value>Distributed Transaction Coordinator</value>
           <value>Net Logon</value>
           <value>Network Connections</value>
           <value>File Replication Service</value>
           <value>NT LM Security Support Provider</value>
           <value>Removable Storage</value>
           <value>Plug and Play</value>
           <value>IPSEC Policy Agent</value>
           <value>Protected Storage</value>
           <value>Remote Access Auto Connection Manager</value>
           <value>Remote Access Connection Manager</value>
           <value>Efecte Remote</value>
           <value>Remote Registry Service</value>
           <value>Remote Procedure Call (RPC) Locator</value>
           <value>Remote Procedure Call (RPC)</value>
           <value>Security Accounts Manager</value>
           <value>Task Scheduler</value>
           <value>RunAs Service</value>
           <value>System Event Notification</value>
           <value>SoundMAX Agent Service</value>
           <value>Print Spooler</value>
           <value>Telephony</value>
           <value>Terminal Services</value>
           <value>Distributed Link Tracking Server</value>
           <value>Distributed Link Tracking Client</value>
           <value>Windows Time</value>
           <value>Windows Management Instrumentation</value>
           <value>Windows Management Instrumentation Driver Extensions</value>
           <value>Automatic Updates</value>
           <value>Efecte Inspector Agent</value>
       </attribute>
       <attribute code="windows_domain">
           <value>TEST</value>
       </attribute>
       <attribute code="host_name">
           <value>computer001</value>
       </attribute>
       <attribute code="domain">
           <value>mydomain.com</value>
       </attribute>
       <attribute code="bios_date">
           <value>10/25/02</value>
       </attribute>
       <attribute code="system_type">
           <value>x86</value>
       </attribute>
       <attribute code="system_manufacturer">
           <value>D850MV</value>
       </attribute>
       <attribute code="system_model">
           <value>MV85010A</value>
       </attribute>
       <attribute code="hard_disk">
           <value>Maxtor 6E040L0 (atapi)</value>
       </attribute>
       <attribute code="drive">
           <value>C:\ 30.87 GB / 38.28 GB</value>
       </attribute>
       <attribute code="cdrom">
           <value>HL-DT-ST DVD-ROM GDR8161B (atapi)</value>
       </attribute>
       <attribute code="drive_capacity">
           <value>38.28</value>
           <footer>GB</footer>
       </attribute>
       <attribute code="processor_speed">
           <value>2407</value>
           <footer>MHz</footer>
       </attribute>
       <attribute code="last_logged_user">
           <value>Administrator</value>
       </attribute>
       <attribute code="os">
           <value>Windows 2000 Server</value>
       </attribute>
       <attribute code="service_pack">
           <value>Service Pack 4</value>
       </attribute>
       <attribute code="product_id">
           <value>51876-335-7841125-05307</value>
       </attribute>
       <attribute code="ip_address">
           <value>10.1.1.51</value>
           <value>10.1.1.50</value>
       </attribute>
       <attribute code="ip_type">
           <value>static</value>
       </attribute>
       <attribute code="default_gateway">
           <value>10.1.1.1</value>
       </attribute>
       <attribute code="subnet_mask">
           <value>255.255.255.0</value>
           <value>255.255.255.0</value>
       </attribute>
       <attribute code="mac_address">
           <value>00-04-75-C2-2F-51</value>
       </attribute>
       <attribute code="network_adapter">
           <value>3Com EtherLink PCI</value>
       </attribute>
       <attribute code="fully_qualified_domain_name">
           <value>computer001.mycompany.com</value>
       </attribute>
       <attribute code="processor_vendor">
           <value>Intel</value>
       </attribute>
       <attribute code="processor_model">
           <value>Intel(R) Pentium(R) 4 CPU 2.40GHz</value>
       </attribute>
       <attribute code="users">
           <value>Administrator</value>
       </attribute>
       <attribute code="inspector_agent_version">
           <value>2.0.20</value>
       </attribute>
       <attribute code="unique_id">
           <value>c14a2a0f-b0d5-4019-bbb28018efef318b</value>
       </attribute>
   </entity>
</entityset>
description esm xml schema admin

Was this article helpful?

Yes
No
Give feedback about this article

Table of Contents

Related Articles

  • ESM Listener XML Structure
  • Detailed Descriptions of ESM Listener Actions
  • ESM Listener - Debugging and Code Examples

Copyright 2026 – Matrix42 Professional.

Matrix42 homepage


Knowledge Base Software powered by Helpjuice

0
0
Expand