]> AND Private Git Repository - blast.git/blobdiff - reference.xsd
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
modif in VHDLConverter
[blast.git] / reference.xsd
index a5c2c2d0c612e32eaae9e8e361e4bc9be592d0c7..b219bfaf9aace74b4fee2c01b121388e691ccc6e 100644 (file)
@@ -4,10 +4,9 @@
     <!-- déclaration des groupes d'attributs -->
 
     <xs:attributeGroup name="parameterAttrGroup">
-       <xs:attribute ref="name" use="required"/>
-       <xs:attribute ref="type" use="required"/>
+      <xs:attribute ref="name" use="required"/>
+       <xs:attribute name="type" type="typeparam" use="required"/>
        <xs:attribute ref="wishbone" use="optional"/>
-       <xs:attribute ref="core" use="optional"/>
        <xs:attribute ref="value" use="optional"/>
        <xs:attribute ref="iface" use="optional"/>
        <xs:attribute ref="width" use="optional"/>      
@@ -17,7 +16,7 @@
     <xs:attributeGroup name="inOutAttrGroup">
        <xs:attribute ref="name" use="required"/>
        <xs:attribute ref="width" use="required"/>
-       <xs:attribute ref="type"/>
+       <xs:attribute name="type" type="typeiface"/>
        <xs:attribute ref="purpose"/>
        <xs:attribute ref="multiplicity"/>
     </xs:attributeGroup>
 
     <xs:attribute name="ids" type="xs:string"/>
     <xs:attribute name="name" type="xs:string"/>
-    <xs:attribute name="type" type="xs:string"/>
-    <xs:attribute name="core" type="xs:string"/>
+
+    <xs:simpleType name="typeparam">
+      <xs:restriction base="xs:string">
+       <xs:enumeration value="string"/>
+       <xs:enumeration value="expression"/>
+       <xs:enumeration value="boolean"/>
+       <xs:enumeration value="integer"/>
+       <xs:enumeration value="natural"/>
+       <xs:enumeration value="positive"/>
+       <xs:enumeration value="real"/>
+       <xs:enumeration value="time"/>
+      </xs:restriction>
+    </xs:simpleType>
+
+    <xs:simpleType name="typeiface">
+      <xs:restriction base="xs:string">
+       <xs:enumeration value="expression"/>
+       <xs:enumeration value="boolean"/>
+       <xs:enumeration value="natural"/>
+      </xs:restriction>
+    </xs:simpleType>
+      
     <xs:attribute name="wishbone" type="xs:string"/>
     <xs:attribute name="context" type="xs:string" />
     <xs:attribute name="multiplicity" type="xs:string" />
        </xs:complexType>
     </xs:element>
 
+    <xs:element name="control">
+       <xs:complexType>
+           <xs:attribute ref="iface"/>
+       </xs:complexType>
+    </xs:element>
+
     <xs:element name="inputs">
        <xs:complexType>
            <xs:sequence>
-               <xs:element ref="input" maxOccurs="unbounded" />
+             <xs:element ref="input" maxOccurs="unbounded" />
+             <xs:element ref="control" minOccurs="0" maxOccurs="unbounded" />
            </xs:sequence>
        </xs:complexType>
     </xs:element>
     <xs:element name="outputs">
        <xs:complexType>
            <xs:sequence>
-               <xs:element ref="output" maxOccurs="unbounded" />
+             <xs:element ref="output" maxOccurs="unbounded" />
+             <xs:element ref="control" minOccurs="0" maxOccurs="unbounded" />
            </xs:sequence>
        </xs:complexType>
     </xs:element>