You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
148 lines
6.1 KiB
XML
148 lines
6.1 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<xsd:schema targetNamespace="http://www.profibus.com/GSDML/2003/11/Primitives" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.profibus.com/GSDML/2003/11/Primitives" version="1.0">
|
|
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
|
|
<!--_________________________________________________________-->
|
|
<!-- *** Base Data Types for GSDML Device Description ***-->
|
|
<!--_________________________________________________________-->
|
|
<!-- *** Object definition for GSDML ***-->
|
|
<xsd:complexType name="ObjectT">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Base definition for objects which can be referred.</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:attribute name="ID" type="IdT" use="required"/>
|
|
</xsd:complexType>
|
|
<xsd:simpleType name="IdT">
|
|
<xsd:annotation>
|
|
<xsd:documentation> Base type for object IDs. Any string without whitespaces at the beginning and end is allowed.</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:pattern value="(\S(.)*\S)|\S"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType name="ValueListT">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Base type for a list including ranges of unsigned values</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:pattern value="((\d+\.\.\d+)|(\d+))(( \d+\.\.\d+)|( \d+))*"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType name="SignedValueListT">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Base type for a list including ranges of signed values</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:pattern value="((\-?\d+\.\.\-?\d+)|(\-?\d+))(( \-?\d+\.\.\-?\d+)|( \-?\d+))*"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
<xsd:complexType name="TokenParameterT">
|
|
<xsd:annotation>
|
|
<xsd:documentation/>
|
|
</xsd:annotation>
|
|
<xsd:attribute name="Value" type="xsd:token" use="required"/>
|
|
</xsd:complexType>
|
|
<!--_________________________________________________________-->
|
|
<!-- *** Specialized Data Types from Primitives schema ***-->
|
|
<xsd:complexType name="LocalizableTextParameterT">
|
|
<xsd:attribute name="TextId" type="xsd:token" use="required"/>
|
|
</xsd:complexType>
|
|
<!--_________________________________________________________-->
|
|
<!-- *** Data Type aliases to map former GSD Datatypes ***-->
|
|
<xsd:simpleType name="unsigned8T">
|
|
<xsd:restriction base="xsd:unsignedByte"/>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType name="unsigned16T">
|
|
<xsd:restriction base="xsd:unsignedShort"/>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType name="unsigned32T">
|
|
<xsd:restriction base="xsd:unsignedInt"/>
|
|
</xsd:simpleType>
|
|
<!--_________________________________________________________-->
|
|
<!-- *** Data Type for enumerations ***-->
|
|
<xsd:complexType name="FamilyT">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Sets the Device family for identification purpose.</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:attribute name="MainFamily" type="FamilyEnumT" use="required"/>
|
|
<xsd:attribute name="ProductFamily" type="xsd:normalizedString" use="optional"/>
|
|
</xsd:complexType>
|
|
<xsd:simpleType name="FamilyEnumT">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Defines the possible settings for Family/MainFamily.</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="General"/>
|
|
<xsd:enumeration value="Drives"/>
|
|
<xsd:enumeration value="Switching Devices"/>
|
|
<xsd:enumeration value="I/O"/>
|
|
<xsd:enumeration value="Valves"/>
|
|
<xsd:enumeration value="Controllers"/>
|
|
<xsd:enumeration value="HMI"/>
|
|
<xsd:enumeration value="Encoders"/>
|
|
<xsd:enumeration value="NC/RC"/>
|
|
<xsd:enumeration value="Gateway"/>
|
|
<xsd:enumeration value="PLCs"/>
|
|
<xsd:enumeration value="Ident Systems"/>
|
|
<xsd:enumeration value="PA Profiles"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType name="GraphicsTypeEnumT">
|
|
<xsd:annotation>
|
|
<xsd:documentation>This is a list of possible types of a graphic representation of a module or submodule.</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="DeviceSymbol"/>
|
|
<xsd:enumeration value="DeviceIcon"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType name="DataItemTypeEnumT">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Defines the possible Datatypes for DataItems</xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Integer8"/>
|
|
<xsd:enumeration value="Integer16"/>
|
|
<xsd:enumeration value="Integer32"/>
|
|
<xsd:enumeration value="Integer64"/>
|
|
<xsd:enumeration value="Unsigned8"/>
|
|
<xsd:enumeration value="Unsigned16"/>
|
|
<xsd:enumeration value="Unsigned32"/>
|
|
<xsd:enumeration value="Unsigned64"/>
|
|
<xsd:enumeration value="Float32"/>
|
|
<xsd:enumeration value="Float64"/>
|
|
<xsd:enumeration value="Date"/>
|
|
<xsd:enumeration value="TimeOfDay with date indication"/>
|
|
<xsd:enumeration value="TimeOfDay without date indication"/>
|
|
<xsd:enumeration value="TimeDifference with date indication"/>
|
|
<xsd:enumeration value="TimeDifference without date indication"/>
|
|
<xsd:enumeration value="NetworkTime"/>
|
|
<xsd:enumeration value="NetworkTimeDifference"/>
|
|
<xsd:enumeration value="VisibleString"/>
|
|
<xsd:enumeration value="OctetString"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType name="IODataConsistencyEnumT">
|
|
<xsd:annotation>
|
|
<xsd:documentation>Specifies the consistency behaviour </xsd:documentation>
|
|
</xsd:annotation>
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Item consistency"/>
|
|
<xsd:enumeration value="All items consistency"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType name="DataTypeEnumT">
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Bit"/>
|
|
<xsd:enumeration value="BitArea"/>
|
|
<xsd:enumeration value="Integer8"/>
|
|
<xsd:enumeration value="Integer16"/>
|
|
<xsd:enumeration value="Integer32"/>
|
|
<xsd:enumeration value="Integer64"/>
|
|
<xsd:enumeration value="Unsigned8"/>
|
|
<xsd:enumeration value="Unsigned16"/>
|
|
<xsd:enumeration value="Unsigned32"/>
|
|
<xsd:enumeration value="Unsigned64"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
</xsd:schema>
|