关于ATML信号定义的理解-1

1.XML中的类型标签:

<xs:complexType>复合类型和<xs:simpleTyle>简单类型是数据结构类型,包含了各种类型的属性。可以被子类型继承,继承方式为<xs:extension base="SignalFunction"/>。

2.XML中的元素<xs:element>

元素是一个节点,每个元素一定会有一种数据类型,用Type="xxxx"描述该元素的类型。此外元素还有自己的属性(atrribute)。元素是不可以被继承的。

3.XML中的属性<xs:attribute>

属性可以是节点的属性,也可以是类型的属性。

对于STD信号而言,信号每个BSC信号最终的表现形式是元素,但是这些元素的类型都是它们自己的类型,且这些类型最终继承自signalFunction复合类型。

而<Signal>元素则规定了TSF信号是由那几个BSCs信号组合而成(如AC_SIGNAL信号由Constant信号、Add调节器、Sinusoid信号组成)

因此要规定BSC信号,先规定特定BSC信号的复合类型,而这些复合类型一方面继承了<signalFunction>类型,另一方面规定了自己的属性(如sinusoid信号规定了幅值、频率、相位)。

那么<signalFunction>复合类型规定了什么呢?

<xs:complexType name="SignalFunctionType" abstract="true">
        <xs:annotation>
            <xs:documentation>All BSCs originate from classes derived from the SignalFunction base class (see Table B.1). The SignalFunction class is described as a pure virtual class as it can only be used to derive classes rather than to create test objects</xs:documentation>
        </xs:annotation>
        <xs:attribute name="type" type="xs:string" use="optional"/>
        <xs:attribute name="reftype" type="xs:string" use="optional"/>
        <xs:attribute name="name" type="SignalID" use="required"/>
        <xs:attribute name="In" type="SignalREFS" use="optional"/>
        <xs:attribute name="channels" type="string" use="optional"/>
        <xs:attribute name="Gate" type="SignalREF" use="optional"/>
        <xs:attribute name="Sync" type="SignalREF" use="optional"/>
        <xs:attribute name="Conn" type="SignalREFS" use="optional"/>
        <xs:attribute name="pinsIn" type="pinString" use="optional"/>
        <xs:attribute name="pinsOut" type="pinString" use="optional"/>
        <xs:attribute name="pinsSync" type="pinString" use="optional"/>
        <xs:attribute name="pinsGate" type="pinString" use="optional"/>
        <xs:attribute ref="std:scriptEngine"/>
        <xs:anyAttribute namespace="##other" processContents="strict"/>
        <!--xs:anyAttribute namespace="##other" processContents="lax"/-->
    </xs:complexType>

规定了In接口、Conn接口、Sync接口等,这是每个信号都可能需要的接口。

原文地址:https://www.cnblogs.com/zhuluqing/p/8698299.html