added example profile

This commit is contained in:
Luca Frosini 2023-04-13 11:15:13 +02:00
parent 5d7d0d26d2
commit 08e7fd0ea9
1 changed files with 118 additions and 0 deletions

View File

@ -0,0 +1,118 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
vc:minVersion="1.1">
<xs:redefine schemaLocation="profile5.xsd">
<xs:complexType name="ExtraMetadataFieldType">
<xs:complexContent>
<xs:restriction base="ExtraMetadataFieldType">
<xs:sequence>
<xs:element type="GRSFType" name="grsf" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ExtraMetadataFormatType">
<xs:complexContent>
<xs:restriction base="ExtraMetadataFormatType">
<xs:sequence>
<xs:element name="grsfFields" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element type="GRSFType" name="grsfField" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</xs:redefine>
<xs:complexType name="GRSFType">
<xs:sequence>
<xs:element type="xs:string" name="srcField" minOccurs="1" maxOccurs="1" />
<xs:element type="SrcType" name="srcType" minOccurs="0" maxOccurs="1" />
<xs:element name="mandatory" minOccurs="1" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="true"/>
<xs:enumeration value="false"/>
<xs:enumeration value="aggregated"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element type="xs:boolean" name="isSensitive" minOccurs="1" maxOccurs="1" />
<xs:element name="dstTypes" minOccurs="1" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element type="DestinationType" name="dstType" minOccurs="0" maxOccurs="unbounded"/>
<xs:element type="xs:string" name="topField" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element type="xs:string" name="comments" minOccurs="0" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="BaseDestinationType">
<xs:restriction base="xs:string">
<xs:enumeration value="Field"/>
<xs:enumeration value="Resource"/>
<xs:enumeration value="TimeSeries"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="DestinationType">
<xs:simpleContent>
<xs:extension base="BaseDestinationType">
<xs:attribute type="xs:string" name="maxOccur" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
<xs:complexType name="FieldType">
<xs:sequence>
<xs:element type="xs:string" name="id" minOccurs="1" maxOccurs="1" />
<xs:element type="xs:string" name="type" minOccurs="1" maxOccurs="1" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="SrcType">
<xs:choice>
<xs:sequence>
<xs:choice>
<xs:element name="simpleType" minOccurs="1" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="String"/>
<xs:enumeration value="Boolean"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element type="VocabularyType" name="vocabulary" minOccurs="1" maxOccurs="1" />
</xs:choice>
</xs:sequence>
<xs:sequence>
<xs:element name="complexType" minOccurs="1" maxOccurs="1">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="JsonArray"/>
<xs:enumeration value="JsonObject"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="fields" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element type="FieldType" name="field" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:choice>
</xs:complexType>
</xs:schema>