os/persistentdata/traceservices/tracefw/dictionary/dictionaryschema.xsd
author sl@SLION-WIN7.fritz.box
Fri, 15 Jun 2012 03:10:57 +0200
changeset 0 bde4ae8d615e
permissions -rw-r--r--
First public contribution.
sl@0
     1
<?xml version="1.0" encoding="UTF-8"?>
sl@0
     2
<!-- Copyright (c) 2006 Symbian Software Ltd. All rights reserved. -->
sl@0
     3
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
sl@0
     4
	<!-- root element for dictionary -->
sl@0
     5
	<xs:element name="tracedictionary">
sl@0
     6
		<xs:complexType>
sl@0
     7
			<xs:sequence>
sl@0
     8
				<xs:element name="metadata" type="options" minOccurs="0"/>
sl@0
     9
				<xs:element name="typedef" type="typedef" minOccurs="0"/>
sl@0
    10
				<xs:element name="data" type="data" minOccurs="0"/>
sl@0
    11
				<xs:element name="locations" type="locations" minOccurs="0"/>
sl@0
    12
				<xs:element name="component" type="component" minOccurs="0" maxOccurs="unbounded"/>
sl@0
    13
			</xs:sequence>
sl@0
    14
			<xs:attribute name="version" type="xs:float" default="1.0"/>
sl@0
    15
		</xs:complexType>
sl@0
    16
	</xs:element>
sl@0
    17
	<!--typemember type definition-->
sl@0
    18
	<xs:complexType name="typemember">
sl@0
    19
		<xs:sequence/>
sl@0
    20
		<xs:attribute name="name" type="xs:string" use="required"/>
sl@0
    21
		<xs:attribute name="type" type="xs:string" use="optional"/>
sl@0
    22
		<xs:attribute name="value" type="xs:integer" use="optional"/>
sl@0
    23
	</xs:complexType>
sl@0
    24
	<!--object type-->
sl@0
    25
	<xs:complexType name="object">
sl@0
    26
		<xs:sequence>
sl@0
    27
			<xs:element name="member" type="typemember" minOccurs="0" maxOccurs="unbounded"/>
sl@0
    28
		</xs:sequence>
sl@0
    29
		<xs:attribute name="type" type="xs:string" use="required"/>
sl@0
    30
		<xs:attribute name="classification" type="datatype" use="required"/>
sl@0
    31
		<xs:attribute name="size" type="xs:positiveInteger" use="optional"/>
sl@0
    32
		<xs:attribute name="formatchar" type="xs:string" use="optional"/>
sl@0
    33
	</xs:complexType>
sl@0
    34
	<!--Typedef object-->
sl@0
    35
	<xs:complexType name="typedef">
sl@0
    36
		<xs:sequence>
sl@0
    37
			<xs:element name="external-def" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
sl@0
    38
			<xs:element name="object" type="object" maxOccurs="unbounded"/>
sl@0
    39
		</xs:sequence>
sl@0
    40
	</xs:complexType>
sl@0
    41
	<!--enumeration for data->type attributes-->
sl@0
    42
	<xs:simpleType name="datatype">
sl@0
    43
		<xs:restriction base="xs:string">
sl@0
    44
			<xs:enumeration value="string"/>
sl@0
    45
			<xs:enumeration value="integer"/>
sl@0
    46
			<xs:enumeration value="float"/>
sl@0
    47
			<xs:enumeration value="hex"/>
sl@0
    48
			<xs:enumeration value="binary"/>
sl@0
    49
			<xs:enumeration value="octal"/>
sl@0
    50
			<xs:enumeration value="enum"/>
sl@0
    51
			<xs:enumeration value="raw"/>
sl@0
    52
			<xs:enumeration value="compound"/>
sl@0
    53
		</xs:restriction>
sl@0
    54
	</xs:simpleType>
sl@0
    55
	<!--Options type-->
sl@0
    56
	<xs:complexType name="options">
sl@0
    57
		<xs:sequence>
sl@0
    58
			<xs:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
sl@0
    59
		</xs:sequence>
sl@0
    60
	</xs:complexType>
sl@0
    61
	<!--def type definition-->
sl@0
    62
	<xs:complexType name="def">
sl@0
    63
		<xs:simpleContent>
sl@0
    64
			<xs:extension base="xs:string">
sl@0
    65
				<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
sl@0
    66
				<xs:attribute name="type" type="datatype" default="string"/>
sl@0
    67
			</xs:extension>
sl@0
    68
		</xs:simpleContent>
sl@0
    69
	</xs:complexType>
sl@0
    70
	<!--data type definition-->
sl@0
    71
	<xs:complexType name="data">
sl@0
    72
		<xs:sequence>
sl@0
    73
			<xs:element name="def" type="def" maxOccurs="unbounded"/>
sl@0
    74
		</xs:sequence>
sl@0
    75
	</xs:complexType>
sl@0
    76
	<!--file type definition-->
sl@0
    77
	<xs:complexType name="file">
sl@0
    78
		<xs:simpleContent>
sl@0
    79
			<xs:extension base="xs:string">
sl@0
    80
				<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
sl@0
    81
			</xs:extension>
sl@0
    82
		</xs:simpleContent>
sl@0
    83
	</xs:complexType>
sl@0
    84
	<!--path type definition-->
sl@0
    85
	<xs:complexType name="path">
sl@0
    86
		<xs:sequence>
sl@0
    87
			<xs:element name="file" type="file" maxOccurs="unbounded"/>
sl@0
    88
		</xs:sequence>
sl@0
    89
		<xs:attribute name="val" type="xs:string" use="required"/>
sl@0
    90
	</xs:complexType>
sl@0
    91
	<!--locations type definition-->
sl@0
    92
	<xs:complexType name="locations">
sl@0
    93
		<xs:sequence>
sl@0
    94
			<xs:element name="path" type="path" maxOccurs="unbounded"/>
sl@0
    95
		</xs:sequence>
sl@0
    96
	</xs:complexType>
sl@0
    97
	<!--instance type definition-->
sl@0
    98
	<xs:complexType name="instance">
sl@0
    99
		<xs:all>
sl@0
   100
			<xs:element name="options" type="options" minOccurs="0"/>
sl@0
   101
		</xs:all>
sl@0
   102
		<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
sl@0
   103
		<xs:attribute name="loc-ref" type="xs:positiveInteger" use="required"/>
sl@0
   104
		<xs:attribute name="line" type="xs:positiveInteger" use="required"/>
sl@0
   105
		<xs:attribute name="methodname" type="xs:string" use="required"/>
sl@0
   106
		<xs:attribute name="classname" type="xs:string" use="optional"/>
sl@0
   107
	</xs:complexType>
sl@0
   108
	<!--trace type definition-->
sl@0
   109
	<xs:complexType name="trace">
sl@0
   110
		<xs:sequence>
sl@0
   111
			<xs:element name="options" type="options" minOccurs="0"/>
sl@0
   112
			<xs:element name="instance" type="instance" minOccurs="0" maxOccurs="unbounded"/>
sl@0
   113
		</xs:sequence>
sl@0
   114
		<xs:attribute name="data-ref" type="xs:positiveInteger" use="optional"/>
sl@0
   115
	</xs:complexType>
sl@0
   116
	<!--tracetype type definition-->
sl@0
   117
	<xs:complexType name="group">
sl@0
   118
		<xs:sequence>
sl@0
   119
			<xs:element name="options" type="options" minOccurs="0"/>
sl@0
   120
			<xs:element name="trace" type="trace" maxOccurs="unbounded"/>
sl@0
   121
		</xs:sequence>
sl@0
   122
		<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
sl@0
   123
		<xs:attribute name="name" type="xs:string" use="required"/>
sl@0
   124
		<xs:attribute name="prefix" type="xs:string" use="optional"/>
sl@0
   125
		<xs:attribute name="suffix" type="xs:string" use="optional"/>
sl@0
   126
	</xs:complexType>
sl@0
   127
	<!--copmponent type definition-->
sl@0
   128
	<xs:complexType name="component">
sl@0
   129
		<xs:sequence>
sl@0
   130
			<xs:element name="options" type="options" minOccurs="0"/>
sl@0
   131
			<xs:element name="group" type="group" maxOccurs="unbounded"/>
sl@0
   132
		</xs:sequence>
sl@0
   133
		<xs:attribute name="id" type="xs:integer" use="required"/>
sl@0
   134
		<xs:attribute name="name" type="xs:string" use="required"/>
sl@0
   135
		<xs:attribute name="prefix" type="xs:string" use="optional"/>
sl@0
   136
		<xs:attribute name="suffix" type="xs:string" use="optional"/>
sl@0
   137
	</xs:complexType>
sl@0
   138
</xs:schema>