<!doctype html>

<html>

<head>
<title>ETSI CTI - doc2tosca details</title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>

<div class="container-fluid">

{% with messages = get_flashed_messages() %}
  {% if messages %}
   <div class="alert alert-warning" role="alert">
    <ul class=flashes>
    {% for message in messages %}
      <li>{{ message }}</li>
    {% endfor %}
    </ul>
   </div>
  {% endif %}
{% endwith %}

<center>
<h1>doc2tosca details</h1>
<a href="/tosca-ie">Home</a>
<h5 style="margin-bottom: 50px">v {{ VERSION }}</h5>
</center>

<h4>Overview
</h4>

<p>The tool works as follows:</p>
<h2 id="step-1-uploading-the-files">Step 1: Uploading the files</h2>
<p>In the uploaded Document it searches for headings equal to:</p>
<ul>
<li><code>6\tVNFD TOSCA model</code></li>
<li><code>7\tNSD TOSCA model</code></li>
<li><code>8\tPNFD TOSCA model</code>,</li>
<li><code>9\tCommon Definitions</code>,</li>
</ul>
<h2 id="step-2-generation-of-data-types">Step 2, generation of data types</h2>
<p>For each of the section after the heading the tool searches for tables with the following properties:</p>
<ul>
<li>It contains only one cell (i.e. one row and one column) and</li>
<li>the content matches the regular expression <code>^tosca\.[a-zA-Z\.:0-9\s]*$</code>, i.e. the text starts with <code>tosca.</code> and contains letters, numbers, <code>:</code> or white space.</li>
</ul>
<h2 id="step-3-generation-of-examples">Step 3, generation of examples</h2>
<p>Within Annex A, each example is identified by a set of lines starting with <code>tosca_definitions_version</code>. If the last text line before the start of the example contains the name of a YAML file, that name is used to name the generated file for the example. Otherwise a incremented, 2-digit integer number is used. Filename is prepended with the number of the clause where the example is found.</p>
<h2 id="step-4-generation-of-files">Step 4: Generation of files</h2>
<p>The four sets of generated definitions and all identified Annex A examples are written to files named:</p>
<ul>
<li><code>generated_etsi_nfv_sol001_vnfd_types.yaml</code></li>
<li><code>generated_etsi_nfv_sol001_nsd_types.yaml</code></li>
<li><code>generated_etsi_nfv_sol001_pnfd_types.yaml</code></li>
<li><code>generated_etsi_nfv_sol001_common_types.yaml</code></li>
<li><code>example_&lt;clause&gt;_&lt;examplename&gt;.yaml</code></li>
</ul>
<h2 id="step-5-download">Step 5: Download</h2>
<p>The files are archived in a zip file named <code>tosca_defs.zip</code> which is served as a response.</p>

<center>
<p>
The tools available on this page are provided with NO GUARANTEES and shall be used ONLY for validation of ETSI Specifications. 
<br/>
For any inquiry, contact <a href="mailto:cti_support@etsi.org">ETSI CTI</a></p>
	<small>Copyright &copy; ETSI 2019. All rights reserved.</small>
</center>
</body>

</html>
