| 1 | | * {{{ ASTNode.xsd }}} |
| 2 | | {{{ |
| 3 | | #!xml |
| 4 | | <?xml version="1.0"?> |
| 5 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/ASTNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:astnode="http://vsl.cis.udel.edu/ns/tass/ASTNode" xmlns:asn="http://vsl.cis.udel.edu/ns/tass/statement/expression/AssignmentNode" xmlns:asrn="http://vsl.cis.udel.edu/ns/tass/statement/AssertStatementNode" xmlns:atn="http://vsl.cis.udel.edu/ns/tass/type/ArrayTypeNode" xmlns:ben="http://vsl.cis.udel.edu/ns/tass/statement/expression/BindingExpressionNode" xmlns:bn="http://vsl.cis.udel.edu/ns/tass/statement/BlockNode" xmlns:btn="http://vsl.cis.udel.edu/ns/tass/type/BooleanTypeNode" xmlns:bvn="http://vsl.cis.udel.edu/ns/tass/declaration/BoundVariableDeclarationNode" xmlns:ctn="http://vsl.cis.udel.edu/ns/tass/type/CompositeTypeNode" xmlns:exn="http://vsl.cis.udel.edu/ns/tass/statement/expression/ExpressionNode" xmlns:fdn="http://vsl.cis.udel.edu/ns/tass/declaration/FunctionDeclarationNode" xmlns:fin="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionInvocationNode" xmlns:fln="http://vsl.cis.udel.edu/ns/tass/statement/ForLoopNode" xmlns:frn="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionReferenceNode" xmlns:fvdn="http://vsl.cis.udel.edu/ns/tass/declaration/FormalVariableDeclarationNode" xmlns:gsn="http://vsl.cis.udel.edu/ns/tass/GlobalScopeNode" xmlns:gvdn="http://vsl.cis.udel.edu/ns/tass/declaration/GlobalVariableDeclarationNode" xmlns:idn="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" xmlns:iln="http://vsl.cis.udel.edu/ns/tass/statement/expression/IntegerLiteralNode" xmlns:in="http://vsl.cis.udel.edu/ns/tass/statement/expression/IncrementNode" xmlns:ite="http://vsl.cis.udel.edu/ns/tass/statement/IfThenElseStatementNode" xmlns:itn="http://vsl.cis.udel.edu/ns/tass/type/IntegerTypeNode" xmlns:lbln="http://vsl.cis.udel.edu/ns/tass/LabelNode" xmlns:lhsn="http://vsl.cis.udel.edu/ns/tass/statement/expression/LHSExpressionNode" xmlns:ln="http://vsl.cis.udel.edu/ns/tass/statement/expression/LiteralNode" xmlns:loopn="http://vsl.cis.udel.edu/ns/tass/statement/LoopNode" xmlns:lvdn="http://vsl.cis.udel.edu/ns/tass/declaration/LocalVariableDeclarationNode" xmlns:mdn="http://vsl.cis.udel.edu/ns/tass/statement/expression/ModificationNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:on="http://vsl.cis.udel.edu/ns/tass/statement/expression/OperatorNode" xmlns:pen="http://vsl.cis.udel.edu/ns/tass/statement/expression/PureExpressionNode" xmlns:pn="http://vsl.cis.udel.edu/ns/tass/statement/PragmaNode" xmlns:pnn="http://vsl.cis.udel.edu/ns/tass/PairNode" xmlns:ptn="http://vsl.cis.udel.edu/ns/tass/type/PointerTypeNode" xmlns:retn="http://vsl.cis.udel.edu/ns/tass/statement/ReturnNode" xmlns:rln="http://vsl.cis.udel.edu/ns/tass/statement/expression/RealLiteralNode" xmlns:rn="http://vsl.cis.udel.edu/ns/tass/ReferenceNode" xmlns:rtn="http://vsl.cis.udel.edu/ns/tass/RootNode" xmlns:rtyn="http://vsl.cis.udel.edu/ns/tass/type/RealTypeNode" xmlns:seen="http://vsl.cis.udel.edu/ns/tass/statement/expression/SideEffectExpressionNode" xmlns:seq="http://vsl.cis.udel.edu/ns/tass/SequenceNode" xmlns:ssn="http://vsl.cis.udel.edu/ns/tass/statement/expression/SubscriptNode" xmlns:stn="http://vsl.cis.udel.edu/ns/tass/statement/StatementNode" xmlns:szn="http://vsl.cis.udel.edu/ns/tass/SizeableNode" xmlns:tdn="http://vsl.cis.udel.edu/ns/tass/TypeDefinitionNode" xmlns:trn="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" xmlns:tyn="http://vsl.cis.udel.edu/ns/tass/type/TypeNode" xmlns:vdn="http://vsl.cis.udel.edu/ns/tass/declaration/VariableDeclarationNode" xmlns:vrn="http://vsl.cis.udel.edu/ns/tass/statement/expression/VariableReferenceNode" xmlns:vtn="http://vsl.cis.udel.edu/ns/tass/type/VoidTypeNode"> |
| 6 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/AssignmentNode" schemaLocation="statement/expression/AssignmentNode.xsd"/> |
| 7 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/AssertStatementNode" schemaLocation="statement/AssertStatementNode.xsd"/> |
| 8 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/ArrayTypeNode" schemaLocation="type/ArrayTypeNode.xsd"/> |
| 9 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/BindingExpressionNode" schemaLocation="statement/expression/BindingExpressionNode.xsd"/> |
| 10 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/BlockNode" schemaLocation="statement/BlockNode.xsd"/> |
| 11 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/BooleanTypeNode" schemaLocation="type/BooleanTypeNode.xsd"/> |
| 12 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/BoundVariableDeclarationNode" schemaLocation="declaration/BoundVariableDeclarationNode.xsd"/> |
| 13 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/CompositeTypeNode" schemaLocation="type/CompositeTypeNode.xsd"/> |
| 14 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/ExpressionNode" schemaLocation="statement/expression/ExpressionNode.xsd"/> |
| 15 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/FunctionDeclarationNode" schemaLocation="declaration/FunctionDeclarationNode.xsd"/> |
| 16 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionInvocationNode" schemaLocation="statement/expression/FunctionInvocationNode.xsd"/> |
| 17 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/ForLoopNode" schemaLocation="statement/ForLoopNode.xsd"/> |
| 18 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionReferenceNode" schemaLocation="statement/expression/FunctionReferenceNode.xsd"/> |
| 19 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/FormalVariableDeclarationNode" schemaLocation="declaration/FormalVariableDeclarationNode.xsd"/> |
| 20 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/GlobalScopeNode" schemaLocation="GlobalScopeNode.xsd"/> |
| 21 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/GlobalVariableDeclarationNode" schemaLocation="declaration/GlobalVariableDeclarationNode.xsd"/> |
| 22 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" schemaLocation="IdentifierNode.xsd"/> |
| 23 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/IntegerLiteralNode" schemaLocation="statement/expression/IntegerLiteralNode.xsd"/> |
| 24 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/IncrementNode" schemaLocation="statement/expression/IncrementNode.xsd"/> |
| 25 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/IfThenElseStatementNode" schemaLocation="statement/IfThenElseStatementNode.xsd"/> |
| 26 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/IntegerTypeNode" schemaLocation="type/IntegerTypeNode.xsd"/> |
| 27 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/LabelNode" schemaLocation="LabelNode.xsd"/> |
| 28 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/LHSExpressionNode" schemaLocation="statement/expression/LHSExpressionNode.xsd"/> |
| 29 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/LiteralNode" schemaLocation="statement/expression/LiteralNode.xsd"/> |
| 30 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/LoopNode" schemaLocation="statement/LoopNode.xsd"/> |
| 31 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/LocalVariableDeclarationNode" schemaLocation="declaration/LocalVariableDeclarationNode.xsd"/> |
| 32 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/ModificationNode" schemaLocation="statement/expression/ModificationNode.xsd"/> |
| 33 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 34 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/OperatorNode" schemaLocation="statement/expression/OperatorNode.xsd"/> |
| 35 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/PureExpressionNode" schemaLocation="statement/expression/PureExpressionNode.xsd"/> |
| 36 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/PragmaNode" schemaLocation="statement/PragmaNode.xsd"/> |
| 37 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/PairNode" schemaLocation="PairNode.xsd"/> |
| 38 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/PointerTypeNode" schemaLocation="type/PointerTypeNode.xsd"/> |
| 39 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/ReturnNode" schemaLocation="statement/ReturnNode.xsd"/> |
| 40 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/RealLiteralNode" schemaLocation="statement/expression/RealLiteralNode.xsd"/> |
| 41 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/ReferenceNode" schemaLocation="ReferenceNode.xsd"/> |
| 42 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/RootNode" schemaLocation="RootNode.xsd"/> |
| 43 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/RealTypeNode" schemaLocation="type/RealTypeNode.xsd"/> |
| 44 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/SideEffectExpressionNode" schemaLocation="statement/expression/SideEffectExpressionNode.xsd"/> |
| 45 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/SequenceNode" schemaLocation="SequenceNode.xsd"/> |
| 46 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/SubscriptNode" schemaLocation="statement/expression/SubscriptNode.xsd"/> |
| 47 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/StatementNode" schemaLocation="statement/StatementNode.xsd"/> |
| 48 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/SizeableNode" schemaLocation="SizeableNode.xsd"/> |
| 49 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/TypeDefinitionNode" schemaLocation="TypeDefinitionNode.xsd"/> |
| 50 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" schemaLocation="TypeReferenceNode.xsd"/> |
| 51 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/TypeNode" schemaLocation="type/TypeNode.xsd"/> |
| 52 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/VariableDeclarationNode" schemaLocation="declaration/VariableDeclarationNode.xsd"/> |
| 53 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/VariableReferenceNode" schemaLocation="statement/expression/VariableReferenceNode.xsd"/> |
| 54 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/VoidTypeNode" schemaLocation="type/VoidTypeNode.xsd"/> |
| 55 | | <xs:group name="_ASTNodeGroup"> |
| 56 | | <xs:sequence> |
| 57 | | <xs:element name="id_ASTNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 58 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 59 | | </xs:sequence> |
| 60 | | </xs:group> |
| 61 | | <xs:complexType name="ASTNode"> |
| 62 | | <xs:choice> |
| 63 | | <xs:group ref="astnode:_ASTNodeGroup"/> |
| 64 | | <xs:group ref="vtn:_VoidTypeNodeGroup"/> |
| 65 | | <xs:group ref="vrn:_VariableReferenceNodeGroup"/> |
| 66 | | <xs:group ref="vdn:_VariableDeclarationNodeGroup"/> |
| 67 | | <xs:group ref="lvdn:_LocalVariableDeclarationNodeGroup"/> |
| 68 | | <xs:group ref="gvdn:_GlobalVariableDeclarationNodeGroup"/> |
| 69 | | <xs:group ref="fvdn:_FormalVariableDeclarationNodeGroup"/> |
| 70 | | <xs:group ref="bvn:_BoundVariableDeclarationNodeGroup"/> |
| 71 | | <xs:group ref="trn:_TypeReferenceNodeGroup"/> |
| 72 | | <xs:group ref="tyn:_TypeNodeGroup"/> |
| 73 | | <xs:group ref="rtyn:_RealTypeNodeGroup"/> |
| 74 | | <xs:group ref="ptn:_PointerTypeNodeGroup"/> |
| 75 | | <xs:group ref="itn:_IntegerTypeNodeGroup"/> |
| 76 | | <xs:group ref="ctn:_CompositeTypeNodeGroup"/> |
| 77 | | <xs:group ref="btn:_BooleanTypeNodeGroup"/> |
| 78 | | <xs:group ref="atn:_ArrayTypeNodeGroup"/> |
| 79 | | <xs:group ref="tdn:_TypeDefinitionNodeGroup"/> |
| 80 | | <xs:group ref="ssn:_SubscriptNodeGroup"/> |
| 81 | | <xs:group ref="stn:_StatementNodeGroup"/> |
| 82 | | <xs:group ref="seen:_SideEffectExpressionNodeGroup"/> |
| 83 | | <xs:group ref="mdn:_ModificationNodeGroup"/> |
| 84 | | <xs:group ref="in:_IncrementNodeGroup"/> |
| 85 | | <xs:group ref="asn:_AssignmentNodeGroup"/> |
| 86 | | <xs:group ref="retn:_ReturnNodeGroup"/> |
| 87 | | <xs:group ref="rln:_RealLiteralNodeGroup"/> |
| 88 | | <xs:group ref="pen:_PureExpressionNodeGroup"/> |
| 89 | | <xs:group ref="on:_OperatorNodeGroup"/> |
| 90 | | <xs:group ref="ln:_LiteralNodeGroup"/> |
| 91 | | <xs:group ref="iln:_IntegerLiteralNodeGroup"/> |
| 92 | | <xs:group ref="lhsn:_LHSExpressionNodeGroup"/> |
| 93 | | <xs:group ref="ben:_BindingExpressionNodeGroup"/> |
| 94 | | <xs:group ref="loopn:_LoopNodeGroup"/> |
| 95 | | <xs:group ref="fln:_ForLoopNodeGroup"/> |
| 96 | | <xs:group ref="ite:_IfThenElseStatementNodeGroup"/> |
| 97 | | <xs:group ref="frn:_FunctionReferenceNodeGroup"/> |
| 98 | | <xs:group ref="fin:_FunctionInvocationNodeGroup"/> |
| 99 | | <xs:group ref="exn:_ExpressionNodeGroup"/> |
| 100 | | <xs:group ref="bn:_BlockNodeGroup"/> |
| 101 | | <xs:group ref="asrn:_AssertStatementNodeGroup"/> |
| 102 | | <xs:group ref="szn:_SizeableNodeGroup"/> |
| 103 | | <xs:group ref="seq:_PairNode_IdentifierNode_TypeNodesGroup"/> |
| 104 | | <xs:group ref="seq:_VariableDeclarationNodesGroup"/> |
| 105 | | <xs:group ref="seq:_StatementNodesGroup"/> |
| 106 | | <xs:group ref="seq:_LabelNodesGroup"/> |
| 107 | | <xs:group ref="seq:_GlobalScopeNodesGroup"/> |
| 108 | | <xs:group ref="seq:_FormalVariableDeclarationNodesGroup"/> |
| 109 | | <xs:group ref="seq:_FileNodesGroup"/> |
| 110 | | <xs:group ref="seq:_ExpressionNodesGroup"/> |
| 111 | | <xs:group ref="rtn:_RootNodeGroup"/> |
| 112 | | <xs:group ref="rn:_ReferenceNodeGroup"/> |
| 113 | | <xs:group ref="pn:_PragmaNodeGroup"/> |
| 114 | | <xs:group ref="pnn:_PairNode_IdentifierNode_TypeNodeGroup"/> |
| 115 | | <xs:group ref="lbln:_LabelNodeGroup"/> |
| 116 | | <xs:group ref="idn:_IdentifierNodeGroup"/> |
| 117 | | <xs:group ref="gsn:_GlobalScopeNodeGroup"/> |
| 118 | | <xs:group ref="fdn:_FunctionDeclarationNodeGroup"/> |
| 119 | | </xs:choice> |
| 120 | | </xs:complexType> |
| 121 | | </xs:schema> |
| 122 | | }}} |
| 123 | | * {{{ FileNode.xsd }}} |
| 124 | | {{{ |
| 125 | | #!xml |
| 126 | | <?xml version="1.0"?> |
| 127 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/FileNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:file="http://vsl.cis.udel.edu/ns/tass/FileNode"> |
| 128 | | <xs:group name="_FileNodeGroup"> |
| 129 | | <xs:sequence> |
| 130 | | <xs:element name="id_FileNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 131 | | <xs:element name="fileName" type="xs:string" minOccurs="1" maxOccurs="1"/> |
| 132 | | <xs:element name="contents" type="xs:string" minOccurs="0" maxOccurs="1"/> |
| 133 | | <xs:element name="isSystem" type="xs:boolean" minOccurs="0" maxOccurs="1"/> |
| 134 | | </xs:sequence> |
| 135 | | </xs:group> |
| 136 | | <xs:complexType name="FileNode"> |
| 137 | | <xs:choice> |
| 138 | | <xs:group ref="file:_FileNodeGroup"/> |
| 139 | | </xs:choice> |
| 140 | | </xs:complexType> |
| 141 | | </xs:schema> |
| 142 | | }}} |
| 143 | | * {{{ GlobalScopeNode.xsd }}} |
| 144 | | {{{ |
| 145 | | #!xml |
| 146 | | <?xml version="1.0"?> |
| 147 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/GlobalScopeNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gsn="http://vsl.cis.udel.edu/ns/tass/GlobalScopeNode" xmlns:fdn="http://vsl.cis.udel.edu/ns/tass/declaration/FunctionDeclarationNode" xmlns:gvdn="http://vsl.cis.udel.edu/ns/tass/declaration/GlobalVariableDeclarationNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:tdn="http://vsl.cis.udel.edu/ns/tass/TypeDefinitionNode"> |
| 148 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/FunctionDeclarationNode" schemaLocation="declaration/FunctionDeclarationNode.xsd"/> |
| 149 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/GlobalVariableDeclarationNode" schemaLocation="declaration/GlobalVariableDeclarationNode.xsd"/> |
| 150 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 151 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/TypeDefinitionNode" schemaLocation="TypeDefinitionNode.xsd"/> |
| 152 | | <xs:group name="_GlobalScopeNodeGroup"> |
| 153 | | <xs:sequence> |
| 154 | | <xs:element name="id_GlobalScopeNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 155 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 156 | | </xs:sequence> |
| 157 | | </xs:group> |
| 158 | | <xs:complexType name="GlobalScopeNode"> |
| 159 | | <xs:choice> |
| 160 | | <xs:group ref="gsn:_GlobalScopeNodeGroup"/> |
| 161 | | <xs:group ref="tdn:_TypeDefinitionNodeGroup"/> |
| 162 | | <xs:group ref="gvdn:_GlobalVariableDeclarationNodeGroup"/> |
| 163 | | <xs:group ref="fdn:_FunctionDeclarationNodeGroup"/> |
| 164 | | </xs:choice> |
| 165 | | </xs:complexType> |
| 166 | | </xs:schema> |
| 167 | | }}} |
| 168 | | * {{{ IdentifierNode.xsd }}} |
| 169 | | {{{ |
| 170 | | #!xml |
| 171 | | <?xml version="1.0"?> |
| 172 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:idn="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" xmlns:frn="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionReferenceNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:rn="http://vsl.cis.udel.edu/ns/tass/ReferenceNode" xmlns:trn="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" xmlns:vrn="http://vsl.cis.udel.edu/ns/tass/statement/expression/VariableReferenceNode"> |
| 173 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionReferenceNode" schemaLocation="statement/expression/FunctionReferenceNode.xsd"/> |
| 174 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 175 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/ReferenceNode" schemaLocation="ReferenceNode.xsd"/> |
| 176 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" schemaLocation="TypeReferenceNode.xsd"/> |
| 177 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/VariableReferenceNode" schemaLocation="statement/expression/VariableReferenceNode.xsd"/> |
| 178 | | <xs:group name="_IdentifierNodeGroup"> |
| 179 | | <xs:sequence> |
| 180 | | <xs:element name="id_IdentifierNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 181 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 182 | | <xs:element name="identifier" type="xs:string" minOccurs="1" maxOccurs="1"/> |
| 183 | | </xs:sequence> |
| 184 | | </xs:group> |
| 185 | | <xs:complexType name="IdentifierNode"> |
| 186 | | <xs:choice> |
| 187 | | <xs:group ref="idn:_IdentifierNodeGroup"/> |
| 188 | | <xs:group ref="vrn:_VariableReferenceNodeGroup"/> |
| 189 | | <xs:group ref="trn:_TypeReferenceNodeGroup"/> |
| 190 | | <xs:group ref="rn:_ReferenceNodeGroup"/> |
| 191 | | <xs:group ref="frn:_FunctionReferenceNodeGroup"/> |
| 192 | | </xs:choice> |
| 193 | | </xs:complexType> |
| 194 | | </xs:schema> |
| 195 | | }}} |
| 196 | | * {{{ LabelNode.xsd }}} |
| 197 | | {{{ |
| 198 | | #!xml |
| 199 | | <?xml version="1.0"?> |
| 200 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/LabelNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:lbln="http://vsl.cis.udel.edu/ns/tass/LabelNode" xmlns:idn="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:stn="http://vsl.cis.udel.edu/ns/tass/statement/StatementNode"> |
| 201 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" schemaLocation="IdentifierNode.xsd"/> |
| 202 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 203 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/StatementNode" schemaLocation="statement/StatementNode.xsd"/> |
| 204 | | <xs:group name="_LabelNodeGroup"> |
| 205 | | <xs:sequence> |
| 206 | | <xs:element name="id_LabelNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 207 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 208 | | <xs:element name="stn_statement" type="xs:int" minOccurs="0" maxOccurs="1"/> |
| 209 | | <xs:element name="identifier" type="idn:IdentifierNode" minOccurs="1" maxOccurs="1"/> |
| 210 | | </xs:sequence> |
| 211 | | </xs:group> |
| 212 | | <xs:complexType name="LabelNode"> |
| 213 | | <xs:choice> |
| 214 | | <xs:group ref="lbln:_LabelNodeGroup"/> |
| 215 | | </xs:choice> |
| 216 | | </xs:complexType> |
| 217 | | </xs:schema> |
| 218 | | }}} |
| 219 | | * {{{ PairNode.xsd }}} |
| 220 | | {{{ |
| 221 | | #!xml |
| 222 | | <?xml version="1.0"?> |
| 223 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/PairNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:pnn="http://vsl.cis.udel.edu/ns/tass/PairNode" xmlns:idn="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:tyn="http://vsl.cis.udel.edu/ns/tass/type/TypeNode"> |
| 224 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" schemaLocation="IdentifierNode.xsd"/> |
| 225 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 226 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/TypeNode" schemaLocation="type/TypeNode.xsd"/> |
| 227 | | <xs:group name="_PairNode_IdentifierNode_TypeNodeGroup"> |
| 228 | | <xs:sequence> |
| 229 | | <xs:element name="id_PairNode_IdentifierNode_TypeNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 230 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 231 | | <xs:element name="left" type="idn:IdentifierNode" minOccurs="1" maxOccurs="1"/> |
| 232 | | <xs:element name="right" type="tyn:TypeNode" minOccurs="1" maxOccurs="1"/> |
| 233 | | </xs:sequence> |
| 234 | | </xs:group> |
| 235 | | <xs:complexType name="PairNode_IdentifierNode_TypeNode"> |
| 236 | | <xs:choice> |
| 237 | | <xs:group ref="pnn:_PairNode_IdentifierNode_TypeNodeGroup"/> |
| 238 | | </xs:choice> |
| 239 | | </xs:complexType> |
| 240 | | </xs:schema> |
| 241 | | }}} |
| 242 | | * {{{ ReferenceNode.xsd }}} |
| 243 | | {{{ |
| 244 | | #!xml |
| 245 | | <?xml version="1.0"?> |
| 246 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/ReferenceNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:rn="http://vsl.cis.udel.edu/ns/tass/ReferenceNode" xmlns:frn="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionReferenceNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:trn="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" xmlns:vrn="http://vsl.cis.udel.edu/ns/tass/statement/expression/VariableReferenceNode"> |
| 247 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionReferenceNode" schemaLocation="statement/expression/FunctionReferenceNode.xsd"/> |
| 248 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 249 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" schemaLocation="TypeReferenceNode.xsd"/> |
| 250 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/VariableReferenceNode" schemaLocation="statement/expression/VariableReferenceNode.xsd"/> |
| 251 | | <xs:group name="_ReferenceNodeGroup"> |
| 252 | | <xs:sequence> |
| 253 | | <xs:element name="id_ReferenceNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 254 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 255 | | <xs:element name="identifier" type="xs:string" minOccurs="1" maxOccurs="1"/> |
| 256 | | </xs:sequence> |
| 257 | | </xs:group> |
| 258 | | <xs:complexType name="ReferenceNode"> |
| 259 | | <xs:choice> |
| 260 | | <xs:group ref="rn:_ReferenceNodeGroup"/> |
| 261 | | <xs:group ref="vrn:_VariableReferenceNodeGroup"/> |
| 262 | | <xs:group ref="trn:_TypeReferenceNodeGroup"/> |
| 263 | | <xs:group ref="frn:_FunctionReferenceNodeGroup"/> |
| 264 | | </xs:choice> |
| 265 | | </xs:complexType> |
| 266 | | </xs:schema> |
| 267 | | }}} |
| 268 | | * {{{ RootNode.xsd }}} |
| 269 | | {{{ |
| 270 | | #!xml |
| 271 | | <?xml version="1.0"?> |
| 272 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/RootNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:rtn="http://vsl.cis.udel.edu/ns/tass/RootNode" xmlns:fdn="http://vsl.cis.udel.edu/ns/tass/declaration/FunctionDeclarationNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:seq="http://vsl.cis.udel.edu/ns/tass/SequenceNode"> |
| 273 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/FunctionDeclarationNode" schemaLocation="declaration/FunctionDeclarationNode.xsd"/> |
| 274 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 275 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/SequenceNode" schemaLocation="SequenceNode.xsd"/> |
| 276 | | <xs:group name="_RootNodeGroup"> |
| 277 | | <xs:sequence> |
| 278 | | <xs:element name="id_RootNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 279 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 280 | | <xs:element name="fdn_mainFunction" type="xs:int" minOccurs="0" maxOccurs="1"/> |
| 281 | | <xs:element name="globalScopeNodes" type="seq:GlobalScopeNodes" minOccurs="1" maxOccurs="1"/> |
| 282 | | <xs:element name="files" type="seq:FileNodes" minOccurs="1" maxOccurs="1"/> |
| 283 | | </xs:sequence> |
| 284 | | </xs:group> |
| 285 | | <xs:complexType name="RootNode"> |
| 286 | | <xs:choice> |
| 287 | | <xs:group ref="rtn:_RootNodeGroup"/> |
| 288 | | </xs:choice> |
| 289 | | </xs:complexType> |
| 290 | | </xs:schema> |
| 291 | | }}} |
| 292 | | * {{{ SequenceNode.xsd }}} |
| 293 | | {{{ |
| 294 | | #!xml |
| 295 | | <?xml version="1.0"?> |
| 296 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/SequenceNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:seq="http://vsl.cis.udel.edu/ns/tass/SequenceNode" xmlns:exn="http://vsl.cis.udel.edu/ns/tass/statement/expression/ExpressionNode" xmlns:file="http://vsl.cis.udel.edu/ns/tass/FileNode" xmlns:fvdn="http://vsl.cis.udel.edu/ns/tass/declaration/FormalVariableDeclarationNode" xmlns:gsn="http://vsl.cis.udel.edu/ns/tass/GlobalScopeNode" xmlns:lbln="http://vsl.cis.udel.edu/ns/tass/LabelNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:pnn="http://vsl.cis.udel.edu/ns/tass/PairNode" xmlns:stn="http://vsl.cis.udel.edu/ns/tass/statement/StatementNode" xmlns:vdn="http://vsl.cis.udel.edu/ns/tass/declaration/VariableDeclarationNode"> |
| 297 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/ExpressionNode" schemaLocation="statement/expression/ExpressionNode.xsd"/> |
| 298 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/FileNode" schemaLocation="FileNode.xsd"/> |
| 299 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/FormalVariableDeclarationNode" schemaLocation="declaration/FormalVariableDeclarationNode.xsd"/> |
| 300 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/GlobalScopeNode" schemaLocation="GlobalScopeNode.xsd"/> |
| 301 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/LabelNode" schemaLocation="LabelNode.xsd"/> |
| 302 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 303 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/PairNode" schemaLocation="PairNode.xsd"/> |
| 304 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/StatementNode" schemaLocation="statement/StatementNode.xsd"/> |
| 305 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/VariableDeclarationNode" schemaLocation="declaration/VariableDeclarationNode.xsd"/> |
| 306 | | <xs:group name="_ExpressionNodesGroup"> |
| 307 | | <xs:sequence> |
| 308 | | <xs:element name="id_ExpressionNodes" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 309 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 310 | | <xs:sequence maxOccurs="unbounded"> |
| 311 | | <xs:element name="child" type="exn:ExpressionNode" minOccurs="0" maxOccurs="1"/> |
| 312 | | </xs:sequence> |
| 313 | | </xs:sequence> |
| 314 | | </xs:group> |
| 315 | | <xs:group name="_FileNodesGroup"> |
| 316 | | <xs:sequence> |
| 317 | | <xs:element name="id_FileNodes" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 318 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 319 | | <xs:sequence maxOccurs="unbounded"> |
| 320 | | <xs:element name="child" type="file:FileNode" minOccurs="0" maxOccurs="1"/> |
| 321 | | </xs:sequence> |
| 322 | | </xs:sequence> |
| 323 | | </xs:group> |
| 324 | | <xs:group name="_FormalVariableDeclarationNodesGroup"> |
| 325 | | <xs:sequence> |
| 326 | | <xs:element name="id_FormalVariableDeclarationNodes" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 327 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 328 | | <xs:sequence maxOccurs="unbounded"> |
| 329 | | <xs:element name="child" type="fvdn:FormalVariableDeclarationNode" minOccurs="0" maxOccurs="1"/> |
| 330 | | </xs:sequence> |
| 331 | | </xs:sequence> |
| 332 | | </xs:group> |
| 333 | | <xs:group name="_GlobalScopeNodesGroup"> |
| 334 | | <xs:sequence> |
| 335 | | <xs:element name="id_GlobalScopeNodes" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 336 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 337 | | <xs:sequence maxOccurs="unbounded"> |
| 338 | | <xs:element name="child" type="gsn:GlobalScopeNode" minOccurs="0" maxOccurs="1"/> |
| 339 | | </xs:sequence> |
| 340 | | </xs:sequence> |
| 341 | | </xs:group> |
| 342 | | <xs:group name="_LabelNodesGroup"> |
| 343 | | <xs:sequence> |
| 344 | | <xs:element name="id_LabelNodes" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 345 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 346 | | <xs:sequence maxOccurs="unbounded"> |
| 347 | | <xs:element name="child" type="lbln:LabelNode" minOccurs="0" maxOccurs="1"/> |
| 348 | | </xs:sequence> |
| 349 | | </xs:sequence> |
| 350 | | </xs:group> |
| 351 | | <xs:group name="_StatementNodesGroup"> |
| 352 | | <xs:sequence> |
| 353 | | <xs:element name="id_StatementNodes" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 354 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 355 | | <xs:sequence maxOccurs="unbounded"> |
| 356 | | <xs:element name="child" type="stn:StatementNode" minOccurs="0" maxOccurs="1"/> |
| 357 | | </xs:sequence> |
| 358 | | </xs:sequence> |
| 359 | | </xs:group> |
| 360 | | <xs:group name="_VariableDeclarationNodesGroup"> |
| 361 | | <xs:sequence> |
| 362 | | <xs:element name="id_VariableDeclarationNodes" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 363 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 364 | | <xs:sequence maxOccurs="unbounded"> |
| 365 | | <xs:element name="child" type="vdn:VariableDeclarationNode" minOccurs="0" maxOccurs="1"/> |
| 366 | | </xs:sequence> |
| 367 | | </xs:sequence> |
| 368 | | </xs:group> |
| 369 | | <xs:group name="_PairNode_IdentifierNode_TypeNodesGroup"> |
| 370 | | <xs:sequence> |
| 371 | | <xs:element name="id_PairNode_IdentifierNode_TypeNodes" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 372 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 373 | | <xs:sequence maxOccurs="unbounded"> |
| 374 | | <xs:element name="child" type="pnn:PairNode_IdentifierNode_TypeNode" minOccurs="0" maxOccurs="1"/> |
| 375 | | </xs:sequence> |
| 376 | | </xs:sequence> |
| 377 | | </xs:group> |
| 378 | | <xs:complexType name="ExpressionNodes"> |
| 379 | | <xs:choice> |
| 380 | | <xs:group ref="seq:_ExpressionNodesGroup"/> |
| 381 | | </xs:choice> |
| 382 | | </xs:complexType> |
| 383 | | <xs:complexType name="FileNodes"> |
| 384 | | <xs:choice> |
| 385 | | <xs:group ref="seq:_FileNodesGroup"/> |
| 386 | | </xs:choice> |
| 387 | | </xs:complexType> |
| 388 | | <xs:complexType name="FormalVariableDeclarationNodes"> |
| 389 | | <xs:choice> |
| 390 | | <xs:group ref="seq:_FormalVariableDeclarationNodesGroup"/> |
| 391 | | </xs:choice> |
| 392 | | </xs:complexType> |
| 393 | | <xs:complexType name="GlobalScopeNodes"> |
| 394 | | <xs:choice> |
| 395 | | <xs:group ref="seq:_GlobalScopeNodesGroup"/> |
| 396 | | </xs:choice> |
| 397 | | </xs:complexType> |
| 398 | | <xs:complexType name="LabelNodes"> |
| 399 | | <xs:choice> |
| 400 | | <xs:group ref="seq:_LabelNodesGroup"/> |
| 401 | | </xs:choice> |
| 402 | | </xs:complexType> |
| 403 | | <xs:complexType name="StatementNodes"> |
| 404 | | <xs:choice> |
| 405 | | <xs:group ref="seq:_StatementNodesGroup"/> |
| 406 | | </xs:choice> |
| 407 | | </xs:complexType> |
| 408 | | <xs:complexType name="VariableDeclarationNodes"> |
| 409 | | <xs:choice> |
| 410 | | <xs:group ref="seq:_VariableDeclarationNodesGroup"/> |
| 411 | | </xs:choice> |
| 412 | | </xs:complexType> |
| 413 | | <xs:complexType name="PairNode_IdentifierNode_TypeNodes"> |
| 414 | | <xs:choice> |
| 415 | | <xs:group ref="seq:_PairNode_IdentifierNode_TypeNodesGroup"/> |
| 416 | | </xs:choice> |
| 417 | | </xs:complexType> |
| 418 | | </xs:schema> |
| 419 | | }}} |
| 420 | | * {{{ SizeableNode.xsd }}} |
| 421 | | {{{ |
| 422 | | #!xml |
| 423 | | <?xml version="1.0"?> |
| 424 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/SizeableNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:szn="http://vsl.cis.udel.edu/ns/tass/SizeableNode" xmlns:atn="http://vsl.cis.udel.edu/ns/tass/type/ArrayTypeNode" xmlns:btn="http://vsl.cis.udel.edu/ns/tass/type/BooleanTypeNode" xmlns:ctn="http://vsl.cis.udel.edu/ns/tass/type/CompositeTypeNode" xmlns:itn="http://vsl.cis.udel.edu/ns/tass/type/IntegerTypeNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:ptn="http://vsl.cis.udel.edu/ns/tass/type/PointerTypeNode" xmlns:rtyn="http://vsl.cis.udel.edu/ns/tass/type/RealTypeNode" xmlns:tyn="http://vsl.cis.udel.edu/ns/tass/type/TypeNode" xmlns:vtn="http://vsl.cis.udel.edu/ns/tass/type/VoidTypeNode"> |
| 425 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/ArrayTypeNode" schemaLocation="type/ArrayTypeNode.xsd"/> |
| 426 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/BooleanTypeNode" schemaLocation="type/BooleanTypeNode.xsd"/> |
| 427 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/CompositeTypeNode" schemaLocation="type/CompositeTypeNode.xsd"/> |
| 428 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/IntegerTypeNode" schemaLocation="type/IntegerTypeNode.xsd"/> |
| 429 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 430 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/PointerTypeNode" schemaLocation="type/PointerTypeNode.xsd"/> |
| 431 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/RealTypeNode" schemaLocation="type/RealTypeNode.xsd"/> |
| 432 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/TypeNode" schemaLocation="type/TypeNode.xsd"/> |
| 433 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/VoidTypeNode" schemaLocation="type/VoidTypeNode.xsd"/> |
| 434 | | <xs:group name="_SizeableNodeGroup"> |
| 435 | | <xs:sequence> |
| 436 | | <xs:element name="id_SizeableNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 437 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 438 | | </xs:sequence> |
| 439 | | </xs:group> |
| 440 | | <xs:complexType name="SizeableNode"> |
| 441 | | <xs:choice> |
| 442 | | <xs:group ref="szn:_SizeableNodeGroup"/> |
| 443 | | <xs:group ref="vtn:_VoidTypeNodeGroup"/> |
| 444 | | <xs:group ref="tyn:_TypeNodeGroup"/> |
| 445 | | <xs:group ref="rtyn:_RealTypeNodeGroup"/> |
| 446 | | <xs:group ref="ptn:_PointerTypeNodeGroup"/> |
| 447 | | <xs:group ref="itn:_IntegerTypeNodeGroup"/> |
| 448 | | <xs:group ref="ctn:_CompositeTypeNodeGroup"/> |
| 449 | | <xs:group ref="btn:_BooleanTypeNodeGroup"/> |
| 450 | | <xs:group ref="atn:_ArrayTypeNodeGroup"/> |
| 451 | | </xs:choice> |
| 452 | | </xs:complexType> |
| 453 | | </xs:schema> |
| 454 | | }}} |
| 455 | | * {{{ TypeDefinitionNode.xsd }}} |
| 456 | | {{{ |
| 457 | | #!xml |
| 458 | | <?xml version="1.0"?> |
| 459 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/TypeDefinitionNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tdn="http://vsl.cis.udel.edu/ns/tass/TypeDefinitionNode" xmlns:idn="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" xmlns:tyn="http://vsl.cis.udel.edu/ns/tass/type/TypeNode"> |
| 460 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" schemaLocation="IdentifierNode.xsd"/> |
| 461 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 462 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/TypeNode" schemaLocation="type/TypeNode.xsd"/> |
| 463 | | <xs:group name="_TypeDefinitionNodeGroup"> |
| 464 | | <xs:sequence> |
| 465 | | <xs:element name="id_TypeDefinitionNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 466 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 467 | | <xs:element name="identifier" type="idn:IdentifierNode" minOccurs="1" maxOccurs="1"/> |
| 468 | | <xs:element name="type" type="tyn:TypeNode" minOccurs="1" maxOccurs="1"/> |
| 469 | | </xs:sequence> |
| 470 | | </xs:group> |
| 471 | | <xs:complexType name="TypeDefinitionNode"> |
| 472 | | <xs:choice> |
| 473 | | <xs:group ref="tdn:_TypeDefinitionNodeGroup"/> |
| 474 | | </xs:choice> |
| 475 | | </xs:complexType> |
| 476 | | </xs:schema> |
| 477 | | }}} |
| 478 | | * {{{ TypeReferenceNode.xsd }}} |
| 479 | | {{{ |
| 480 | | #!xml |
| 481 | | <?xml version="1.0"?> |
| 482 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:trn="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc"> |
| 483 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/misc" schemaLocation="misc.xsd"/> |
| 484 | | <xs:group name="_TypeReferenceNodeGroup"> |
| 485 | | <xs:sequence> |
| 486 | | <xs:element name="id_TypeReferenceNode" type="xs:int" minOccurs="1" maxOccurs="1"/> |
| 487 | | <xs:element name="source" type="misc:Source" minOccurs="0" maxOccurs="1"/> |
| 488 | | <xs:element name="identifier" type="xs:string" minOccurs="1" maxOccurs="1"/> |
| 489 | | </xs:sequence> |
| 490 | | </xs:group> |
| 491 | | <xs:complexType name="TypeReferenceNode"> |
| 492 | | <xs:choice> |
| 493 | | <xs:group ref="trn:_TypeReferenceNodeGroup"/> |
| 494 | | </xs:choice> |
| 495 | | </xs:complexType> |
| 496 | | </xs:schema> |
| 497 | | }}} |
| 498 | | * {{{ misc.xsd }}} |
| 499 | | {{{ |
| 500 | | #!xml |
| 501 | | <?xml version="1.0"?> |
| 502 | | <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" |
| 503 | | targetNamespace="http://vsl.cis.udel.edu/ns/tass/misc" |
| 504 | | xmlns:misc="http://vsl.cis.udel.edu/ns/tass/misc" |
| 505 | | elementFormDefault="qualified"> |
| 506 | | |
| 507 | | <xs:simpleType name="Quantifier"> |
| 508 | | <xs:restriction base="xs:string"> |
| 509 | | <xs:enumeration value="FORALL" /> |
| 510 | | <xs:enumeration value="EXISTS" /> |
| 511 | | <xs:enumeration value="LAMBDA" /> |
| 512 | | <xs:enumeration value="UNIFORM" /> |
| 513 | | <xs:enumeration value="SUM" /> |
| 514 | | </xs:restriction> |
| 515 | | </xs:simpleType> |
| 516 | | |
| 517 | | <xs:simpleType name="AST_OPERATOR"> |
| 518 | | <xs:restriction base="xs:string"> |
| 519 | | <xs:whiteSpace value="collapse" /> |
| 520 | | <xs:enumeration value="ADD" /> |
| 521 | | <xs:enumeration value="ADD_POINTER_INT" /> |
| 522 | | <xs:enumeration value="ADDRESS_OF" /> |
| 523 | | <xs:enumeration value="BIT_AND" /> |
| 524 | | <xs:enumeration value="BIT_NOT" /> |
| 525 | | <xs:enumeration value="BIT_OR" /> |
| 526 | | <xs:enumeration value="BIT_XOR" /> |
| 527 | | <xs:enumeration value="COND" /> |
| 528 | | <xs:enumeration value="COMMA" /> |
| 529 | | <xs:enumeration value="DIVIDE" /> |
| 530 | | <xs:enumeration value="EQUALS" /> |
| 531 | | <xs:enumeration value="GREATER_THAN" /> |
| 532 | | <xs:enumeration value="GTE" /> |
| 533 | | <xs:enumeration value="LEQ" /> |
| 534 | | <xs:enumeration value="LESS_THAN" /> |
| 535 | | <xs:enumeration value="LOGICAL_AND" /> |
| 536 | | <xs:enumeration value="LOGICAL_NOT" /> |
| 537 | | <xs:enumeration value="LOGICAL_OR" /> |
| 538 | | <xs:enumeration value="MODULO" /> |
| 539 | | <xs:enumeration value="MULTIPLY" /> |
| 540 | | <xs:enumeration value="NEGATIVE" /> |
| 541 | | <xs:enumeration value="NOT_EQUALS" /> |
| 542 | | <xs:enumeration value="SHIFT_LEFT" /> |
| 543 | | <xs:enumeration value="SHIFT_RIGHT" /> |
| 544 | | <xs:enumeration value="SUBTRACT" /> |
| 545 | | <xs:enumeration value="SUBTRACT_POINTER_INT" /> |
| 546 | | <xs:enumeration value="SUBTRACT_POINTER_POINTER" /> |
| 547 | | </xs:restriction> |
| 548 | | </xs:simpleType> |
| 549 | | |
| 550 | | <xs:simpleType name="StorageClass"> |
| 551 | | <xs:restriction base="xs:string"> |
| 552 | | <xs:enumeration value="EXTERNAL" /> |
| 553 | | <xs:enumeration value="AUTO" /> |
| 554 | | <xs:enumeration value="STATIC" /> |
| 555 | | <xs:enumeration value="REGISTER" /> |
| 556 | | </xs:restriction> |
| 557 | | </xs:simpleType> |
| 558 | | |
| 559 | | <xs:simpleType name="AST_ASSIGNMENT_TYPE"> |
| 560 | | <xs:restriction base="xs:string"> |
| 561 | | <xs:whiteSpace value="collapse" /> |
| 562 | | <xs:enumeration value="SIMPLE" /> |
| 563 | | <xs:enumeration value="MULTIPLICATION" /> |
| 564 | | <xs:enumeration value="DIVISION" /> |
| 565 | | <xs:enumeration value="REMAINDER" /> |
| 566 | | <xs:enumeration value="ADDITION" /> |
| 567 | | <xs:enumeration value="SUBTRACTION" /> |
| 568 | | <xs:enumeration value="LEFT" /> |
| 569 | | <xs:enumeration value="RIGHT" /> |
| 570 | | <xs:enumeration value="AND" /> |
| 571 | | <xs:enumeration value="XOR" /> |
| 572 | | <xs:enumeration value="OR" /> |
| 573 | | </xs:restriction> |
| 574 | | </xs:simpleType> |
| 575 | | |
| 576 | | <xs:simpleType name="IntType"> |
| 577 | | <xs:restriction base="xs:string"> |
| 578 | | <xs:enumeration value="CHAR" /> |
| 579 | | <xs:enumeration value="SHORT" /> |
| 580 | | <xs:enumeration value="INT" /> |
| 581 | | <xs:enumeration value="LONG" /> |
| 582 | | <xs:enumeration value="LONGLONG" /> |
| 583 | | </xs:restriction> |
| 584 | | </xs:simpleType> |
| 585 | | |
| 586 | | <xs:simpleType name="FloatType"> |
| 587 | | <xs:restriction base="xs:string"> |
| 588 | | <xs:enumeration value="FLOAT" /> |
| 589 | | <xs:enumeration value="DOUBLE" /> |
| 590 | | <xs:enumeration value="LONG" /> |
| 591 | | </xs:restriction> |
| 592 | | </xs:simpleType> |
| 593 | | |
| 594 | | <xs:complexType name="Source"> |
| 595 | | <xs:attribute name="region" type="misc:SourceRegion" use="required" /> |
| 596 | | <xs:attribute name="fileRef" type="xs:integer" use="required" /> |
| 597 | | </xs:complexType> |
| 598 | | |
| 599 | | <xs:simpleType name="SourceRegion"> |
| 600 | | <xs:restriction base="xs:string"> |
| 601 | | <xs:annotation> |
| 602 | | <xs:documentation xml:lang="en-US"> |
| 603 | | This type represents a region of source file and is to be |
| 604 | | parsed as the following: |
| 605 | | [startLine],[startColumn],[endLine],[endColumn] |
| 606 | | It is assumed that: endLine >= startLine |
| 607 | | and if endLine == startLine that endColumn > startColumn |
| 608 | | </xs:documentation> |
| 609 | | </xs:annotation> |
| 610 | | <xs:pattern value="\d+,\d+,\d+,\d+" /> |
| 611 | | </xs:restriction> |
| 612 | | </xs:simpleType> |
| 613 | | |
| 614 | | </xs:schema> |
| 615 | | }}} |
| 616 | | * {{{ tass_ast.xsd }}} |
| 617 | | {{{ |
| 618 | | #!xml |
| 619 | | <?xml version="1.0"?> |
| 620 | | <xs:schema targetNamespace="http://vsl.cis.udel.edu/ns/tass/tass_ast" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:scroot="http://vsl.cis.udel.edu/ns/tass/tass_ast" xmlns:asn="http://vsl.cis.udel.edu/ns/tass/statement/expression/AssignmentNode" xmlns:asrn="http://vsl.cis.udel.edu/ns/tass/statement/AssertStatementNode" xmlns:astnode="http://vsl.cis.udel.edu/ns/tass/ASTNode" xmlns:atn="http://vsl.cis.udel.edu/ns/tass/type/ArrayTypeNode" xmlns:ben="http://vsl.cis.udel.edu/ns/tass/statement/expression/BindingExpressionNode" xmlns:bn="http://vsl.cis.udel.edu/ns/tass/statement/BlockNode" xmlns:btn="http://vsl.cis.udel.edu/ns/tass/type/BooleanTypeNode" xmlns:bvn="http://vsl.cis.udel.edu/ns/tass/declaration/BoundVariableDeclarationNode" xmlns:ctn="http://vsl.cis.udel.edu/ns/tass/type/CompositeTypeNode" xmlns:exn="http://vsl.cis.udel.edu/ns/tass/statement/expression/ExpressionNode" xmlns:fdn="http://vsl.cis.udel.edu/ns/tass/declaration/FunctionDeclarationNode" xmlns:file="http://vsl.cis.udel.edu/ns/tass/FileNode" xmlns:fin="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionInvocationNode" xmlns:fln="http://vsl.cis.udel.edu/ns/tass/statement/ForLoopNode" xmlns:frn="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionReferenceNode" xmlns:fvdn="http://vsl.cis.udel.edu/ns/tass/declaration/FormalVariableDeclarationNode" xmlns:gsn="http://vsl.cis.udel.edu/ns/tass/GlobalScopeNode" xmlns:gvdn="http://vsl.cis.udel.edu/ns/tass/declaration/GlobalVariableDeclarationNode" xmlns:idn="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" xmlns:iln="http://vsl.cis.udel.edu/ns/tass/statement/expression/IntegerLiteralNode" xmlns:in="http://vsl.cis.udel.edu/ns/tass/statement/expression/IncrementNode" xmlns:ite="http://vsl.cis.udel.edu/ns/tass/statement/IfThenElseStatementNode" xmlns:itn="http://vsl.cis.udel.edu/ns/tass/type/IntegerTypeNode" xmlns:lbln="http://vsl.cis.udel.edu/ns/tass/LabelNode" xmlns:lhsn="http://vsl.cis.udel.edu/ns/tass/statement/expression/LHSExpressionNode" xmlns:ln="http://vsl.cis.udel.edu/ns/tass/statement/expression/LiteralNode" xmlns:loopn="http://vsl.cis.udel.edu/ns/tass/statement/LoopNode" xmlns:lvdn="http://vsl.cis.udel.edu/ns/tass/declaration/LocalVariableDeclarationNode" xmlns:mdn="http://vsl.cis.udel.edu/ns/tass/statement/expression/ModificationNode" xmlns:on="http://vsl.cis.udel.edu/ns/tass/statement/expression/OperatorNode" xmlns:pen="http://vsl.cis.udel.edu/ns/tass/statement/expression/PureExpressionNode" xmlns:pn="http://vsl.cis.udel.edu/ns/tass/statement/PragmaNode" xmlns:pnn="http://vsl.cis.udel.edu/ns/tass/PairNode" xmlns:ptn="http://vsl.cis.udel.edu/ns/tass/type/PointerTypeNode" xmlns:retn="http://vsl.cis.udel.edu/ns/tass/statement/ReturnNode" xmlns:rln="http://vsl.cis.udel.edu/ns/tass/statement/expression/RealLiteralNode" xmlns:rn="http://vsl.cis.udel.edu/ns/tass/ReferenceNode" xmlns:rtn="http://vsl.cis.udel.edu/ns/tass/RootNode" xmlns:rtyn="http://vsl.cis.udel.edu/ns/tass/type/RealTypeNode" xmlns:seen="http://vsl.cis.udel.edu/ns/tass/statement/expression/SideEffectExpressionNode" xmlns:seq="http://vsl.cis.udel.edu/ns/tass/SequenceNode" xmlns:ssn="http://vsl.cis.udel.edu/ns/tass/statement/expression/SubscriptNode" xmlns:stn="http://vsl.cis.udel.edu/ns/tass/statement/StatementNode" xmlns:szn="http://vsl.cis.udel.edu/ns/tass/SizeableNode" xmlns:tdn="http://vsl.cis.udel.edu/ns/tass/TypeDefinitionNode" xmlns:trn="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" xmlns:tyn="http://vsl.cis.udel.edu/ns/tass/type/TypeNode" xmlns:vdn="http://vsl.cis.udel.edu/ns/tass/declaration/VariableDeclarationNode" xmlns:vrn="http://vsl.cis.udel.edu/ns/tass/statement/expression/VariableReferenceNode" xmlns:vtn="http://vsl.cis.udel.edu/ns/tass/type/VoidTypeNode"> |
| 621 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/AssignmentNode" schemaLocation="statement/expression/AssignmentNode.xsd"/> |
| 622 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/AssertStatementNode" schemaLocation="statement/AssertStatementNode.xsd"/> |
| 623 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/ASTNode" schemaLocation="ASTNode.xsd"/> |
| 624 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/ArrayTypeNode" schemaLocation="type/ArrayTypeNode.xsd"/> |
| 625 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/BindingExpressionNode" schemaLocation="statement/expression/BindingExpressionNode.xsd"/> |
| 626 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/BlockNode" schemaLocation="statement/BlockNode.xsd"/> |
| 627 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/BooleanTypeNode" schemaLocation="type/BooleanTypeNode.xsd"/> |
| 628 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/BoundVariableDeclarationNode" schemaLocation="declaration/BoundVariableDeclarationNode.xsd"/> |
| 629 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/CompositeTypeNode" schemaLocation="type/CompositeTypeNode.xsd"/> |
| 630 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/ExpressionNode" schemaLocation="statement/expression/ExpressionNode.xsd"/> |
| 631 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/FunctionDeclarationNode" schemaLocation="declaration/FunctionDeclarationNode.xsd"/> |
| 632 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/FileNode" schemaLocation="FileNode.xsd"/> |
| 633 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionInvocationNode" schemaLocation="statement/expression/FunctionInvocationNode.xsd"/> |
| 634 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/ForLoopNode" schemaLocation="statement/ForLoopNode.xsd"/> |
| 635 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/FunctionReferenceNode" schemaLocation="statement/expression/FunctionReferenceNode.xsd"/> |
| 636 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/FormalVariableDeclarationNode" schemaLocation="declaration/FormalVariableDeclarationNode.xsd"/> |
| 637 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/GlobalScopeNode" schemaLocation="GlobalScopeNode.xsd"/> |
| 638 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/GlobalVariableDeclarationNode" schemaLocation="declaration/GlobalVariableDeclarationNode.xsd"/> |
| 639 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/IdentifierNode" schemaLocation="IdentifierNode.xsd"/> |
| 640 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/IntegerLiteralNode" schemaLocation="statement/expression/IntegerLiteralNode.xsd"/> |
| 641 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/IncrementNode" schemaLocation="statement/expression/IncrementNode.xsd"/> |
| 642 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/IfThenElseStatementNode" schemaLocation="statement/IfThenElseStatementNode.xsd"/> |
| 643 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/IntegerTypeNode" schemaLocation="type/IntegerTypeNode.xsd"/> |
| 644 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/LabelNode" schemaLocation="LabelNode.xsd"/> |
| 645 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/LHSExpressionNode" schemaLocation="statement/expression/LHSExpressionNode.xsd"/> |
| 646 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/LiteralNode" schemaLocation="statement/expression/LiteralNode.xsd"/> |
| 647 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/LoopNode" schemaLocation="statement/LoopNode.xsd"/> |
| 648 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/LocalVariableDeclarationNode" schemaLocation="declaration/LocalVariableDeclarationNode.xsd"/> |
| 649 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/ModificationNode" schemaLocation="statement/expression/ModificationNode.xsd"/> |
| 650 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/OperatorNode" schemaLocation="statement/expression/OperatorNode.xsd"/> |
| 651 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/PureExpressionNode" schemaLocation="statement/expression/PureExpressionNode.xsd"/> |
| 652 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/PragmaNode" schemaLocation="statement/PragmaNode.xsd"/> |
| 653 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/PairNode" schemaLocation="PairNode.xsd"/> |
| 654 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/PointerTypeNode" schemaLocation="type/PointerTypeNode.xsd"/> |
| 655 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/ReturnNode" schemaLocation="statement/ReturnNode.xsd"/> |
| 656 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/RealLiteralNode" schemaLocation="statement/expression/RealLiteralNode.xsd"/> |
| 657 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/ReferenceNode" schemaLocation="ReferenceNode.xsd"/> |
| 658 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/RootNode" schemaLocation="RootNode.xsd"/> |
| 659 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/RealTypeNode" schemaLocation="type/RealTypeNode.xsd"/> |
| 660 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/SideEffectExpressionNode" schemaLocation="statement/expression/SideEffectExpressionNode.xsd"/> |
| 661 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/SequenceNode" schemaLocation="SequenceNode.xsd"/> |
| 662 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/SubscriptNode" schemaLocation="statement/expression/SubscriptNode.xsd"/> |
| 663 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/StatementNode" schemaLocation="statement/StatementNode.xsd"/> |
| 664 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/SizeableNode" schemaLocation="SizeableNode.xsd"/> |
| 665 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/TypeDefinitionNode" schemaLocation="TypeDefinitionNode.xsd"/> |
| 666 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/TypeReferenceNode" schemaLocation="TypeReferenceNode.xsd"/> |
| 667 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/TypeNode" schemaLocation="type/TypeNode.xsd"/> |
| 668 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/declaration/VariableDeclarationNode" schemaLocation="declaration/VariableDeclarationNode.xsd"/> |
| 669 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/statement/expression/VariableReferenceNode" schemaLocation="statement/expression/VariableReferenceNode.xsd"/> |
| 670 | | <xs:import namespace="http://vsl.cis.udel.edu/ns/tass/type/VoidTypeNode" schemaLocation="type/VoidTypeNode.xsd"/> |
| 671 | | <xs:element name="rootNode" type="rtn:RootNode"> |
| 672 | | <xs:unique name="_universal_uniqueness"> |
| 673 | | <xs:selector xpath=".//id_ASTNode|.//id_ArrayTypeNode|.//id_AssertStatementNode|.//id_AssignmentNode|.//id_BindingExpressionNode|.//id_BlockNode|.//id_BooleanTypeNode|.//id_BoundVariableDeclarationNode|.//id_CompositeTypeNode|.//id_ExpressionNode|.//id_FileNode|.//id_ForLoopNode|.//id_FormalVariableDeclarationNode|.//id_FunctionDeclarationNode|.//id_FunctionInvocationNode|.//id_FunctionReferenceNode|.//id_GlobalScopeNode|.//id_GlobalVariableDeclarationNode|.//id_IdentifierNode|.//id_IfThenElseStatementNode|.//id_IncrementNode|.//id_IntegerLiteralNode|.//id_IntegerTypeNode|.//id_LHSExpressionNode|.//id_LabelNode|.//id_LiteralNode|.//id_LocalVariableDeclarationNode|.//id_LoopNode|.//id_ModificationNode|.//id_OperatorNode|.//id_PairNode_IdentifierNode_TypeNode|.//id_PointerTypeNode|.//id_PragmaNode|.//id_PureExpressionNode|.//id_RealLiteralNode|.//id_RealTypeNode|.//id_ReferenceNode|.//id_ReturnNode|.//id_RootNode|.//id_ExpressionNodes|.//id_FileNodes|.//id_FormalVariableDeclarationNodes|.//id_GlobalScopeNodes|.//id_LabelNodes|.//id_StatementNodes|.//id_VariableDeclarationNodes|.//id_PairNode_IdentifierNode_TypeNodes|.//id_SideEffectExpressionNode|.//id_SizeableNode|.//id_StatementNode|.//id_SubscriptNode|.//id_TypeDefinitionNode|.//id_TypeNode|.//id_TypeReferenceNode|.//id_VariableDeclarationNode|.//id_VariableReferenceNode|.//id_VoidTypeNode"/> |
| 674 | | <xs:field xpath="."/> |
| 675 | | </xs:unique> |
| 676 | | <xs:unique name="_unique_ASTNode"> |
| 677 | | <xs:selector xpath=".//id_ASTNode|.//id_VoidTypeNode|.//id_VariableReferenceNode|.//id_VariableDeclarationNode|.//id_LocalVariableDeclarationNode|.//id_GlobalVariableDeclarationNode|.//id_FormalVariableDeclarationNode|.//id_BoundVariableDeclarationNode|.//id_TypeReferenceNode|.//id_TypeNode|.//id_RealTypeNode|.//id_PointerTypeNode|.//id_IntegerTypeNode|.//id_CompositeTypeNode|.//id_BooleanTypeNode|.//id_ArrayTypeNode|.//id_TypeDefinitionNode|.//id_SubscriptNode|.//id_StatementNode|.//id_SideEffectExpressionNode|.//id_ModificationNode|.//id_IncrementNode|.//id_AssignmentNode|.//id_ReturnNode|.//id_RealLiteralNode|.//id_PureExpressionNode|.//id_OperatorNode|.//id_LiteralNode|.//id_IntegerLiteralNode|.//id_LHSExpressionNode|.//id_BindingExpressionNode|.//id_LoopNode|.//id_ForLoopNode|.//id_IfThenElseStatementNode|.//id_FunctionReferenceNode|.//id_FunctionInvocationNode|.//id_ExpressionNode|.//id_BlockNode|.//id_AssertStatementNode|.//id_SizeableNode|.//id_PairNode_IdentifierNode_TypeNodes|.//id_VariableDeclarationNodes|.//id_StatementNodes|.//id_LabelNodes|.//id_GlobalScopeNodes|.//id_FormalVariableDeclarationNodes|.//id_FileNodes|.//id_ExpressionNodes|.//id_RootNode|.//id_ReferenceNode|.//id_PragmaNode|.//id_PairNode_IdentifierNode_TypeNode|.//id_LabelNode|.//id_IdentifierNode|.//id_GlobalScopeNode|.//id_FunctionDeclarationNode"/> |
| 678 | | <xs:field xpath="."/> |
| 679 | | </xs:unique> |
| 680 | | <xs:unique name="_unique_ArrayTypeNode"> |
| 681 | | <xs:selector xpath=".//id_ArrayTypeNode"/> |
| 682 | | <xs:field xpath="."/> |
| 683 | | </xs:unique> |
| 684 | | <xs:unique name="_unique_AssertStatementNode"> |
| 685 | | <xs:selector xpath=".//id_AssertStatementNode"/> |
| 686 | | <xs:field xpath="."/> |
| 687 | | </xs:unique> |
| 688 | | <xs:unique name="_unique_AssignmentNode"> |
| 689 | | <xs:selector xpath=".//id_AssignmentNode"/> |
| 690 | | <xs:field xpath="."/> |
| 691 | | </xs:unique> |
| 692 | | <xs:unique name="_unique_BindingExpressionNode"> |
| 693 | | <xs:selector xpath=".//id_BindingExpressionNode"/> |
| 694 | | <xs:field xpath="."/> |
| 695 | | </xs:unique> |
| 696 | | <xs:unique name="_unique_BlockNode"> |
| 697 | | <xs:selector xpath=".//id_BlockNode"/> |
| 698 | | <xs:field xpath="."/> |
| 699 | | </xs:unique> |
| 700 | | <xs:unique name="_unique_BooleanTypeNode"> |
| 701 | | <xs:selector xpath=".//id_BooleanTypeNode"/> |
| 702 | | <xs:field xpath="."/> |
| 703 | | </xs:unique> |
| 704 | | <xs:unique name="_unique_BoundVariableDeclarationNode"> |
| 705 | | <xs:selector xpath=".//id_BoundVariableDeclarationNode"/> |
| 706 | | <xs:field xpath="."/> |
| 707 | | </xs:unique> |
| 708 | | <xs:unique name="_unique_CompositeTypeNode"> |
| 709 | | <xs:selector xpath=".//id_CompositeTypeNode"/> |
| 710 | | <xs:field xpath="."/> |
| 711 | | </xs:unique> |
| 712 | | <xs:unique name="_unique_ExpressionNode"> |
| 713 | | <xs:selector xpath=".//id_ExpressionNode|.//id_VariableReferenceNode|.//id_SubscriptNode|.//id_SideEffectExpressionNode|.//id_ModificationNode|.//id_IncrementNode|.//id_AssignmentNode|.//id_RealLiteralNode|.//id_PureExpressionNode|.//id_OperatorNode|.//id_LiteralNode|.//id_IntegerLiteralNode|.//id_LHSExpressionNode|.//id_BindingExpressionNode|.//id_FunctionReferenceNode|.//id_FunctionInvocationNode"/> |
| 714 | | <xs:field xpath="."/> |
| 715 | | </xs:unique> |
| 716 | | <xs:unique name="_unique_FileNode"> |
| 717 | | <xs:selector xpath=".//id_FileNode"/> |
| 718 | | <xs:field xpath="."/> |
| 719 | | </xs:unique> |
| 720 | | <xs:unique name="_unique_ForLoopNode"> |
| 721 | | <xs:selector xpath=".//id_ForLoopNode"/> |
| 722 | | <xs:field xpath="."/> |
| 723 | | </xs:unique> |
| 724 | | <xs:unique name="_unique_FormalVariableDeclarationNode"> |
| 725 | | <xs:selector xpath=".//id_FormalVariableDeclarationNode"/> |
| 726 | | <xs:field xpath="."/> |
| 727 | | </xs:unique> |
| 728 | | <xs:unique name="_unique_FunctionDeclarationNode"> |
| 729 | | <xs:selector xpath=".//id_FunctionDeclarationNode"/> |
| 730 | | <xs:field xpath="."/> |
| 731 | | </xs:unique> |
| 732 | | <xs:unique name="_unique_FunctionInvocationNode"> |
| 733 | | <xs:selector xpath=".//id_FunctionInvocationNode"/> |
| 734 | | <xs:field xpath="."/> |
| 735 | | </xs:unique> |
| 736 | | <xs:unique name="_unique_FunctionReferenceNode"> |
| 737 | | <xs:selector xpath=".//id_FunctionReferenceNode"/> |
| 738 | | <xs:field xpath="."/> |
| 739 | | </xs:unique> |
| 740 | | <xs:unique name="_unique_GlobalScopeNode"> |
| 741 | | <xs:selector xpath=".//id_GlobalScopeNode|.//id_TypeDefinitionNode|.//id_GlobalVariableDeclarationNode|.//id_FunctionDeclarationNode"/> |
| 742 | | <xs:field xpath="."/> |
| 743 | | </xs:unique> |
| 744 | | <xs:unique name="_unique_GlobalVariableDeclarationNode"> |
| 745 | | <xs:selector xpath=".//id_GlobalVariableDeclarationNode"/> |
| 746 | | <xs:field xpath="."/> |
| 747 | | </xs:unique> |
| 748 | | <xs:unique name="_unique_IdentifierNode"> |
| 749 | | <xs:selector xpath=".//id_IdentifierNode|.//id_VariableReferenceNode|.//id_TypeReferenceNode|.//id_ReferenceNode|.//id_FunctionReferenceNode"/> |
| 750 | | <xs:field xpath="."/> |
| 751 | | </xs:unique> |
| 752 | | <xs:unique name="_unique_IfThenElseStatementNode"> |
| 753 | | <xs:selector xpath=".//id_IfThenElseStatementNode"/> |
| 754 | | <xs:field xpath="."/> |
| 755 | | </xs:unique> |
| 756 | | <xs:unique name="_unique_IncrementNode"> |
| 757 | | <xs:selector xpath=".//id_IncrementNode"/> |
| 758 | | <xs:field xpath="."/> |
| 759 | | </xs:unique> |
| 760 | | <xs:unique name="_unique_IntegerLiteralNode"> |
| 761 | | <xs:selector xpath=".//id_IntegerLiteralNode"/> |
| 762 | | <xs:field xpath="."/> |
| 763 | | </xs:unique> |
| 764 | | <xs:unique name="_unique_IntegerTypeNode"> |
| 765 | | <xs:selector xpath=".//id_IntegerTypeNode"/> |
| 766 | | <xs:field xpath="."/> |
| 767 | | </xs:unique> |
| 768 | | <xs:unique name="_unique_LHSExpressionNode"> |
| 769 | | <xs:selector xpath=".//id_LHSExpressionNode|.//id_VariableReferenceNode|.//id_SubscriptNode"/> |
| 770 | | <xs:field xpath="."/> |
| 771 | | </xs:unique> |
| 772 | | <xs:unique name="_unique_LabelNode"> |
| 773 | | <xs:selector xpath=".//id_LabelNode"/> |
| 774 | | <xs:field xpath="."/> |
| 775 | | </xs:unique> |
| 776 | | <xs:unique name="_unique_LiteralNode"> |
| 777 | | <xs:selector xpath=".//id_LiteralNode|.//id_RealLiteralNode|.//id_IntegerLiteralNode"/> |
| 778 | | <xs:field xpath="."/> |
| 779 | | </xs:unique> |
| 780 | | <xs:unique name="_unique_LocalVariableDeclarationNode"> |
| 781 | | <xs:selector xpath=".//id_LocalVariableDeclarationNode"/> |
| 782 | | <xs:field xpath="."/> |
| 783 | | </xs:unique> |
| 784 | | <xs:unique name="_unique_LoopNode"> |
| 785 | | <xs:selector xpath=".//id_LoopNode|.//id_ForLoopNode"/> |
| 786 | | <xs:field xpath="."/> |
| 787 | | </xs:unique> |
| 788 | | <xs:unique name="_unique_ModificationNode"> |
| 789 | | <xs:selector xpath=".//id_ModificationNode|.//id_IncrementNode|.//id_AssignmentNode"/> |
| 790 | | <xs:field xpath="."/> |
| 791 | | </xs:unique> |
| 792 | | <xs:unique name="_unique_OperatorNode"> |
| 793 | | <xs:selector xpath=".//id_OperatorNode"/> |
| 794 | | <xs:field xpath="."/> |
| 795 | | </xs:unique> |
| 796 | | <xs:unique name="_unique_PairNode_IdentifierNode_TypeNode"> |
| 797 | | <xs:selector xpath=".//id_PairNode_IdentifierNode_TypeNode"/> |
| 798 | | <xs:field xpath="."/> |
| 799 | | </xs:unique> |
| 800 | | <xs:unique name="_unique_PointerTypeNode"> |
| 801 | | <xs:selector xpath=".//id_PointerTypeNode"/> |
| 802 | | <xs:field xpath="."/> |
| 803 | | </xs:unique> |
| 804 | | <xs:unique name="_unique_PragmaNode"> |
| 805 | | <xs:selector xpath=".//id_PragmaNode"/> |
| 806 | | <xs:field xpath="."/> |
| 807 | | </xs:unique> |
| 808 | | <xs:unique name="_unique_PureExpressionNode"> |
| 809 | | <xs:selector xpath=".//id_PureExpressionNode|.//id_VariableReferenceNode|.//id_SubscriptNode|.//id_RealLiteralNode|.//id_OperatorNode|.//id_LiteralNode|.//id_IntegerLiteralNode|.//id_LHSExpressionNode|.//id_BindingExpressionNode"/> |
| 810 | | <xs:field xpath="."/> |
| 811 | | </xs:unique> |
| 812 | | <xs:unique name="_unique_RealLiteralNode"> |
| 813 | | <xs:selector xpath=".//id_RealLiteralNode"/> |
| 814 | | <xs:field xpath="."/> |
| 815 | | </xs:unique> |
| 816 | | <xs:unique name="_unique_RealTypeNode"> |
| 817 | | <xs:selector xpath=".//id_RealTypeNode"/> |
| 818 | | <xs:field xpath="."/> |
| 819 | | </xs:unique> |
| 820 | | <xs:unique name="_unique_ReferenceNode"> |
| 821 | | <xs:selector xpath=".//id_ReferenceNode|.//id_VariableReferenceNode|.//id_TypeReferenceNode|.//id_FunctionReferenceNode"/> |
| 822 | | <xs:field xpath="."/> |
| 823 | | </xs:unique> |
| 824 | | <xs:unique name="_unique_ReturnNode"> |
| 825 | | <xs:selector xpath=".//id_ReturnNode"/> |
| 826 | | <xs:field xpath="."/> |
| 827 | | </xs:unique> |
| 828 | | <xs:unique name="_unique_RootNode"> |
| 829 | | <xs:selector xpath=".//id_RootNode"/> |
| 830 | | <xs:field xpath="."/> |
| 831 | | </xs:unique> |
| 832 | | <xs:unique name="_unique_SequenceNode_ExpressionNode"> |
| 833 | | <xs:selector xpath=".//id_ExpressionNodes"/> |
| 834 | | <xs:field xpath="."/> |
| 835 | | </xs:unique> |
| 836 | | <xs:unique name="_unique_SequenceNode_FileNode"> |
| 837 | | <xs:selector xpath=".//id_FileNodes"/> |
| 838 | | <xs:field xpath="."/> |
| 839 | | </xs:unique> |
| 840 | | <xs:unique name="_unique_SequenceNode_FormalVariableDeclarationNode"> |
| 841 | | <xs:selector xpath=".//id_FormalVariableDeclarationNodes"/> |
| 842 | | <xs:field xpath="."/> |
| 843 | | </xs:unique> |
| 844 | | <xs:unique name="_unique_SequenceNode_GlobalScopeNode"> |
| 845 | | <xs:selector xpath=".//id_GlobalScopeNodes"/> |
| 846 | | <xs:field xpath="."/> |
| 847 | | </xs:unique> |
| 848 | | <xs:unique name="_unique_SequenceNode_LabelNode"> |
| 849 | | <xs:selector xpath=".//id_LabelNodes"/> |
| 850 | | <xs:field xpath="."/> |
| 851 | | </xs:unique> |
| 852 | | <xs:unique name="_unique_SequenceNode_StatementNode"> |
| 853 | | <xs:selector xpath=".//id_StatementNodes"/> |
| 854 | | <xs:field xpath="."/> |
| 855 | | </xs:unique> |
| 856 | | <xs:unique name="_unique_SequenceNode_VariableDeclarationNode"> |
| 857 | | <xs:selector xpath=".//id_VariableDeclarationNodes"/> |
| 858 | | <xs:field xpath="."/> |
| 859 | | </xs:unique> |
| 860 | | <xs:unique name="_unique_SequenceNode_PairNode_IdentifierNode_TypeNode"> |
| 861 | | <xs:selector xpath=".//id_PairNode_IdentifierNode_TypeNodes"/> |
| 862 | | <xs:field xpath="."/> |
| 863 | | </xs:unique> |
| 864 | | <xs:unique name="_unique_SideEffectExpressionNode"> |
| 865 | | <xs:selector xpath=".//id_SideEffectExpressionNode|.//id_ModificationNode|.//id_IncrementNode|.//id_AssignmentNode"/> |
| 866 | | <xs:field xpath="."/> |
| 867 | | </xs:unique> |
| 868 | | <xs:unique name="_unique_SizeableNode"> |
| 869 | | <xs:selector xpath=".//id_SizeableNode|.//id_VoidTypeNode|.//id_TypeNode|.//id_RealTypeNode|.//id_PointerTypeNode|.//id_IntegerTypeNode|.//id_CompositeTypeNode|.//id_BooleanTypeNode|.//id_ArrayTypeNode"/> |
| 870 | | <xs:field xpath="."/> |
| 871 | | </xs:unique> |
| 872 | | <xs:unique name="_unique_StatementNode"> |
| 873 | | <xs:selector xpath=".//id_StatementNode|.//id_VariableReferenceNode|.//id_SubscriptNode|.//id_SideEffectExpressionNode|.//id_ModificationNode|.//id_IncrementNode|.//id_AssignmentNode|.//id_ReturnNode|.//id_RealLiteralNode|.//id_PureExpressionNode|.//id_OperatorNode|.//id_LiteralNode|.//id_IntegerLiteralNode|.//id_LHSExpressionNode|.//id_BindingExpressionNode|.//id_LoopNode|.//id_ForLoopNode|.//id_IfThenElseStatementNode|.//id_FunctionReferenceNode|.//id_FunctionInvocationNode|.//id_ExpressionNode|.//id_BlockNode|.//id_AssertStatementNode"/> |
| 874 | | <xs:field xpath="."/> |
| 875 | | </xs:unique> |
| 876 | | <xs:unique name="_unique_SubscriptNode"> |
| 877 | | <xs:selector xpath=".//id_SubscriptNode"/> |
| 878 | | <xs:field xpath="."/> |
| 879 | | </xs:unique> |
| 880 | | <xs:unique name="_unique_TypeDefinitionNode"> |
| 881 | | <xs:selector xpath=".//id_TypeDefinitionNode"/> |
| 882 | | <xs:field xpath="."/> |
| 883 | | </xs:unique> |
| 884 | | <xs:unique name="_unique_TypeNode"> |
| 885 | | <xs:selector xpath=".//id_TypeNode|.//id_VoidTypeNode|.//id_RealTypeNode|.//id_PointerTypeNode|.//id_IntegerTypeNode|.//id_CompositeTypeNode|.//id_BooleanTypeNode|.//id_ArrayTypeNode"/> |
| 886 | | <xs:field xpath="."/> |
| 887 | | </xs:unique> |
| 888 | | <xs:unique name="_unique_TypeReferenceNode"> |
| 889 | | <xs:selector xpath=".//id_TypeReferenceNode"/> |
| 890 | | <xs:field xpath="."/> |
| 891 | | </xs:unique> |
| 892 | | <xs:unique name="_unique_VariableDeclarationNode"> |
| 893 | | <xs:selector xpath=".//id_VariableDeclarationNode|.//id_LocalVariableDeclarationNode|.//id_GlobalVariableDeclarationNode|.//id_FormalVariableDeclarationNode|.//id_BoundVariableDeclarationNode"/> |
| 894 | | <xs:field xpath="."/> |
| 895 | | </xs:unique> |
| 896 | | <xs:unique name="_unique_VariableReferenceNode"> |
| 897 | | <xs:selector xpath=".//id_VariableReferenceNode"/> |
| 898 | | <xs:field xpath="."/> |
| 899 | | </xs:unique> |
| 900 | | <xs:unique name="_unique_VoidTypeNode"> |
| 901 | | <xs:selector xpath=".//id_VoidTypeNode"/> |
| 902 | | <xs:field xpath="."/> |
| 903 | | </xs:unique> |
| 904 | | <xs:keyref name="_ref_ben_containingExpression" refer="scroot:_unique_BindingExpressionNode"> |
| 905 | | <xs:selector xpath=".//ben_containingExpression"/> |
| 906 | | <xs:field xpath="."/> |
| 907 | | </xs:keyref> |
| 908 | | <xs:keyref name="_ref_fdn_function" refer="scroot:_unique_FunctionDeclarationNode"> |
| 909 | | <xs:selector xpath=".//fdn_function"/> |
| 910 | | <xs:field xpath="."/> |
| 911 | | </xs:keyref> |
| 912 | | <xs:keyref name="_ref_fdn_definition" refer="scroot:_unique_FunctionDeclarationNode"> |
| 913 | | <xs:selector xpath=".//fdn_definition"/> |
| 914 | | <xs:field xpath="."/> |
| 915 | | </xs:keyref> |
| 916 | | <xs:keyref name="_ref_fdn_referent" refer="scroot:_unique_FunctionDeclarationNode"> |
| 917 | | <xs:selector xpath=".//fdn_referent"/> |
| 918 | | <xs:field xpath="."/> |
| 919 | | </xs:keyref> |
| 920 | | <xs:keyref name="_ref_vdn_definition" refer="scroot:_unique_VariableDeclarationNode"> |
| 921 | | <xs:selector xpath=".//vdn_definition"/> |
| 922 | | <xs:field xpath="."/> |
| 923 | | </xs:keyref> |
| 924 | | <xs:keyref name="_ref_stn_statement" refer="scroot:_unique_StatementNode"> |
| 925 | | <xs:selector xpath=".//stn_statement"/> |
| 926 | | <xs:field xpath="."/> |
| 927 | | </xs:keyref> |
| 928 | | <xs:keyref name="_ref_bn_block" refer="scroot:_unique_BlockNode"> |
| 929 | | <xs:selector xpath=".//bn_block"/> |
| 930 | | <xs:field xpath="."/> |
| 931 | | </xs:keyref> |
| 932 | | <xs:keyref name="_ref_fdn_mainFunction" refer="scroot:_unique_FunctionDeclarationNode"> |
| 933 | | <xs:selector xpath=".//fdn_mainFunction"/> |
| 934 | | <xs:field xpath="."/> |
| 935 | | </xs:keyref> |
| 936 | | <xs:keyref name="_ref_vdn_referent" refer="scro |