xPDK Header
The typical structure of the xPDK files is a header like below followed by the content. This common header allows to include documents via 
xs:include
. This is very handy to split up larger files as well as avoid duplication of data that is needed in multiple places.
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<xPDK_Header
         xmlns:xi="http://www.w3.org/2001/XInclude"
         xmlns="http://pdaflow.org/ns/xPDK"
  pdk_name="DemoPDK">
 <provider>Stichting PDAFlow Foundation</provider>
 <version>1.0.0</version>
  <license>
  Stichting PDAFlow Foundation, document in progress.
  Demo Material
  </license>
 <doc>
  The xPDK is a very flexible setuip.
 </doc>
  <global name="glbA" type="int"> 4 </global>
  <global name="glbB" type="double"> exp(glbA*3) </global>
  <!-- triggers "duplicate key-sequence" glbB -->
  <!-- <global name="glbB" type="double">exp(glbA*3)</global> -->
 <!-- Include files to ensure correct references.
  <xi:include href="someOtherXml.xml" parse="xml"/>
   -->
</xPDK_Header>
Most of the fields in this file are optional, only 
name is a required one. The XSD: 
xPDK_Base.xsd.
pdk_name
The 
name at the start (just below the 
xsi:noNamespaceSchemaLocation) defines the design kit name and is intended as a relatively short name. It should be unique enough to avoid confusion by designers.
provider
The 
provider field can be used for a full name of the design kit provider, so a full company name for example.
version
The 
version field defines the version of the design kit and is expected in
 - major.minor
 
- major.minor.patch
 
where a 
major number change indicates something big changed, while the 
minor is for more incremental changes. The 
patch indicates normally small data updates like new measurements.
license
The 
licensse states the basic conditions of using the file and typically refers to legal documents (NDA).
doc
The 
doc allows some (short, few lines) documentation to be written. It can be a long string, but the idea is not to replace a design manual.
globals
Use of 
globals allows the definition of a list of variables that can be used throughout the file in expressions. Using 
globals is handy for things that are repeatedly used, so instead of copy/paste long expressions, you can just use the global variables.
global
Insicde the 
globals you can define 
global variables with an expression, type and unit.
extend