0022627: Change OCCT memory management defaults
[occt.git] / src / XmlOcafResource / XmlOcaf_TNaming.xsd
1 <schema targetNamespace="http://www.opencascade.org/OCAF/XML"
2         xmlns="http://www.w3.org/2001/XMLSchema"
3         xmlns:ocaf="http://www.opencascade.org/OCAF/XML"
4         elementFormDefault="qualified">
5
6 <annotation>
7   <documentation xml:lang="en">
8     Open Cascade Application Framework: Definition of attributes from TNaming package
9     This file is included in XmlOcaf.xsd
10     URL: $(CASROOT)/src/XmlOcafResource/XmlOcaf_TNaming.xsd
11   </documentation>
12 </annotation>
13
14 <complexType name="ArrayOfShapes">
15   <sequence>
16     <element name="shape" minOccurs="0" maxOccurs="unbounded">
17       <complexType>
18         <attribute name="tshape" use="required">
19           <simpleType>
20             <restriction base="string">
21               <pattern value="[+-ie]\d+"/>
22             </restriction>
23           </simpleType>
24         </attribute>
25         <attribute name="location" type="positiveInteger"/>
26         <attribute name="index" type="positiveInteger" use="required"/>
27         <attribute name="x" type="float"/>
28         <attribute name="y" type="float"/>
29         <attribute name="z" type="float"/>
30       </complexType>
31     </element>                              <!-- end of 'shape' -->
32   </sequence>
33   <attribute name="lower" type="positiveInteger" default="1"/>
34   <attribute name="upper" type="positiveInteger" default="1"/>
35 </complexType>
36
37 <element name="TNaming_NamedShape" substitutionGroup="ocaf:AbstractAttribute">
38   <complexType>
39     <complexContent>
40       <extension base="ocaf:AbstractAttributeType">
41         <sequence>
42           <element name="olds" type="ocaf:ArrayOfShapes" minOccurs="0"/>
43           <element name="news" type="ocaf:ArrayOfShapes" minOccurs="0"/>
44         </sequence>
45         <attribute name="evolution" use="required">
46           <simpleType>
47             <restriction base="string">
48               <enumeration value="primitive"/>
49               <enumeration value="generated"/>
50               <enumeration value="modify"/>
51               <enumeration value="delete"/>
52               <enumeration value="selected"/>
53               <enumeration value="replace"/>
54             </restriction>
55           </simpleType>
56         </attribute>
57         <attribute name="version" type="positiveInteger" default="0"/>
58       </extension>
59     </complexContent>
60   </complexType>
61   <unique name="OldShapeIndexUniq">
62     <selector xpath="."/>
63     <field xpath="@id"/>
64     <field xpath="ocaf:olds/ocaf:shape/@index"/>
65   </unique>
66   <unique name="NewShapeIndexUniq">
67     <selector xpath="."/>
68     <field xpath="@id"/>
69     <field xpath="ocaf:news/ocaf:shape/@index"/>
70   </unique>
71 </element>
72
73 <element name="TNaming_Naming" substitutionGroup="ocaf:AbstractAttribute">
74   <complexType>
75     <complexContent>
76       <extension base="ocaf:AbstractAttributeType">
77         <attribute name="index" type="int" use="required"/>
78         <attribute name="stopNS" type="positiveInteger"/>
79         <attribute name="nametype" use="required">
80           <simpleType>
81             <restriction base="string">
82               <enumeration value="unknown"/>
83               <enumeration value="identity"/>
84               <enumeration value="modifuntil"/>
85               <enumeration value="generation"/>
86               <enumeration value="intersection"/>
87               <enumeration value="union"/>
88               <enumeration value="subtraction"/>
89               <enumeration value="constshape"/>
90               <enumeration value="filterbyneigh"/>
91             </restriction>
92           </simpleType>
93         </attribute>
94         <attribute name="shapetype" use="required">
95           <simpleType>
96             <restriction base="string">
97               <enumeration value="compound"/>
98               <enumeration value="compsolid"/>
99               <enumeration value="solid"/>
100               <enumeration value="shell"/>
101               <enumeration value="face"/>
102               <enumeration value="wire"/>
103               <enumeration value="edge"/>
104               <enumeration value="vertex"/>
105               <enumeration value="shape"/>
106             </restriction>
107           </simpleType>
108         </attribute>
109         <attribute name="arguments" type="ocaf:ListOfInteger"/>
110       </extension>
111     </complexContent>
112   </complexType>
113 </element>
114
115 </schema>