aboutsummaryrefslogtreecommitdiffstats
path: root/tools/misc/policyprocessor/SecurityPolicySpec.xsd
blob: bb7265e6b0e3e7393942571cc9bfb8845450d031 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<?xml version="1.0" encoding="UTF-8"?>
<!-- Author: Ray Valdez, rvaldez@us.ibm.com -->
<!-- xml schema definition for xen xml policies -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.ibm.com"
xmlns="http://www.ibm.com" 
elementFormDefault="qualified">

<xsd:element name="TE" type="xsd:string" />
<xsd:element name="ChWall" type="xsd:string" />

<xsd:element name="Definition">
  <xsd:complexType>
 	<xsd:sequence>

	  <!-- simple type enforcement -->
	  <xsd:element name="Types" minOccurs ="0" maxOccurs="1">
		<xsd:complexType>
		  <xsd:sequence>
			<xsd:element ref="TE" minOccurs ="1" maxOccurs ="unbounded"/>
		  </xsd:sequence>
		</xsd:complexType>
	  </xsd:element>

	  <!-- chinese wall -->
	  <!--   type definition -->
	  <xsd:element name="ChWallTypes" minOccurs ="0" maxOccurs="1">
		<xsd:complexType>
		  <xsd:sequence>
			<xsd:element ref="ChWall"  minOccurs ="1" maxOccurs ="unbounded"/>

      	   	</xsd:sequence>
          </xsd:complexType>
	</xsd:element>

  	<!--   conflict set -->
	  <xsd:element name="ConflictSet" minOccurs ="0" maxOccurs="unbounded">
		<xsd:complexType>
		  <xsd:sequence>
			<xsd:element ref="ChWall"  minOccurs ="2" maxOccurs ="unbounded"/>
		  </xsd:sequence>
		</xsd:complexType>
	</xsd:element>

	</xsd:sequence>
  </xsd:complexType>
</xsd:element>

<xsd:element name="Policy">
    <xsd:complexType>
      <xsd:sequence>

	<xsd:element name="PolicyHeader">
    	<xsd:complexType>
      	   <xsd:all>
		<xsd:element name = "Name" type="xsd:string"/>
		<xsd:element name = "DateTime" type="xsd:dateTime"/>
		<xsd:element name = "Tag" minOccurs ="1" maxOccurs ="1" type="xsd:string"/>
		<xsd:element name = "TypeDefinition">
    		<xsd:complexType>
      	   	  <xsd:all>
			<xsd:element name = "url" type="xsd:string"/>
			<xsd:element name = "hash" minOccurs ="0" maxOccurs ="1" type="xsd:string"/>
      	   	  </xsd:all>
    		</xsd:complexType>
		</xsd:element>

      	   </xsd:all>
    	</xsd:complexType>
	</xsd:element>

	<xsd:element name="VM" minOccurs ="1" maxOccurs="unbounded">
    	  <xsd:complexType>
      	   <xsd:sequence>
		<xsd:element name="id" type="xsd:integer"/>
		<xsd:element ref="TE" minOccurs="0" maxOccurs="unbounded" />
		<xsd:element ref="ChWall" minOccurs ="0" maxOccurs="unbounded"/>
      	   </xsd:sequence>
    	  </xsd:complexType>
	</xsd:element>

	<xsd:element name="Vlan" minOccurs ="0" maxOccurs="unbounded">
    	  <xsd:complexType>
      	   <xsd:sequence>
		<xsd:element name="vid" type="xsd:integer"/>
		<xsd:element ref="TE" minOccurs="1" maxOccurs="unbounded" />
      	   </xsd:sequence>
    	  </xsd:complexType>
	</xsd:element>

	<xsd:element name="Slot" minOccurs ="0" maxOccurs="unbounded">
    	  <xsd:complexType>
      	   <xsd:sequence>
		<xsd:element name="bus" type="xsd:integer"/>
		<xsd:element name="slot" type="xsd:integer"/>
		<xsd:element ref="TE" minOccurs="1" maxOccurs="unbounded" />
      	   </xsd:sequence>
    	  </xsd:complexType>
	</xsd:element>


      </xsd:sequence>
    </xsd:complexType>
</xsd:element>

<!-- root element -->
<xsd:element name="SecurityPolicySpec">
    <xsd:complexType>
      <xsd:choice>
		<xsd:element ref="Definition" minOccurs ="1" maxOccurs="unbounded"/>
		<xsd:element ref="Policy" minOccurs ="1" maxOccurs="unbounded"/>
      </xsd:choice>
    </xsd:complexType>
</xsd:element>
</xsd:schema>